From 86390feff938f2e0c43c7824ebf8dc3461641dec Mon Sep 17 00:00:00 2001 From: SHAOJIAHAO <55341701@qq.com> Date: Tue, 2 Jun 2020 10:09:22 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=96=B0=E5=A2=9E]=E6=90=AD=E7=BD=91=E7=9B=98?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=A1=86=E6=9E=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .editorconfig | 13 + .gitignore | 46 + angular.json | 132 + browserslist | 12 + e2e/protractor.conf.js | 32 + e2e/src/app.e2e-spec.ts | 23 + e2e/src/app.po.ts | 11 + e2e/tsconfig.json | 13 + karma.conf.js | 32 + package-lock.json | 17754 ++++++++++++++++ package.json | 60 + proxy.config.json | 7 + reset.css | 27 + src/app/_theming.scss | 5098 +++++ src/app/app-routing.module.ts | 34 + src/app/app.component.html | 1 + src/app/app.component.scss | 0 src/app/app.component.spec.ts | 35 + src/app/app.component.ts | 63 + src/app/app.module.ts | 40 + src/app/auth.guard.ts | 31 + src/app/http-interceptors/base-interceptor.ts | 71 + .../http-interceptors/cache-token.service.ts | 116 + src/app/http-interceptors/index.ts | 9 + src/app/http-interceptors/tree.service.ts | 38 + src/app/interface.ts | 14 + src/app/navigation/navigation.component.html | 24 + src/app/navigation/navigation.component.scss | 144 + .../navigation/navigation.component.spec.ts | 25 + src/app/navigation/navigation.component.ts | 33 + src/app/navigation/navigation.module.ts | 114 + .../lockscreen/lockscreen.component.html | 28 + .../lockscreen/lockscreen.component.scss | 111 + .../lockscreen/lockscreen.component.spec.ts | 25 + .../pages/lockscreen/lockscreen.component.ts | 21 + src/app/pages/login/login.component.html | 52 + src/app/pages/login/login.component.scss | 115 + src/app/pages/login/login.component.spec.ts | 25 + src/app/pages/login/login.component.ts | 66 + src/app/pages/pages-routing.module.ts | 17 + src/app/pages/pages.component.html | 1 + src/app/pages/pages.component.scss | 0 src/app/pages/pages.component.spec.ts | 25 + src/app/pages/pages.component.ts | 15 + src/app/pages/pages.module.ts | 112 + .../personaldata/personaldata.component.html | 280 + .../personaldata/personaldata.component.scss | 110 + .../personaldata.component.spec.ts | 25 + .../personaldata/personaldata.component.ts | 15 + .../pages/register/register.component.html | 81 + .../pages/register/register.component.scss | 88 + .../pages/register/register.component.spec.ts | 25 + src/app/pages/register/register.component.ts | 19 + src/app/pipes/boolean.pipe.ts | 13 + src/app/pipes/time.pipe.ts | 9 + src/app/tabbar/tabbar.component.html | 63 + src/app/tabbar/tabbar.component.scss | 41 + src/app/tabbar/tabbar.component.spec.ts | 25 + src/app/tabbar/tabbar.component.ts | 105 + src/app/theme.scss | 18 + src/app/ui/all-file/all-file.component.html | 1 + src/app/ui/all-file/all-file.component.scss | 0 .../ui/all-file/all-file.component.spec.ts | 25 + src/app/ui/all-file/all-file.component.ts | 15 + .../changepassword.component.html | 48 + .../changepassword.component.scss | 15 + .../changepassword.component.ts | 38 + .../equal-validator.directive.ts | 31 + src/app/ui/ui-routing.module.ts | 12 + src/app/ui/ui.module.ts | 111 + src/assets/.gitkeep | 0 src/assets/images/bg_login.jpg | Bin 0 -> 249242 bytes src/assets/images/login.gif | Bin 0 -> 7823 bytes src/assets/images/logo.png | Bin 0 -> 20693 bytes src/environments/environment.prod.ts | 3 + src/environments/environment.ts | 16 + src/favicon.ico | Bin 0 -> 948 bytes src/index.html | 16 + src/main.ts | 13 + src/polyfills.ts | 63 + src/styles.scss | 61 + src/test.ts | 20 + tsconfig.app.json | 18 + tsconfig.json | 26 + tsconfig.spec.json | 18 + tslint.json | 91 + yarn.lock | 7996 +++++++ 87 files changed, 34219 insertions(+) create mode 100644 .editorconfig create mode 100644 .gitignore create mode 100644 angular.json create mode 100644 browserslist create mode 100644 e2e/protractor.conf.js create mode 100644 e2e/src/app.e2e-spec.ts create mode 100644 e2e/src/app.po.ts create mode 100644 e2e/tsconfig.json create mode 100644 karma.conf.js create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 proxy.config.json create mode 100644 reset.css create mode 100644 src/app/_theming.scss create mode 100644 src/app/app-routing.module.ts create mode 100644 src/app/app.component.html create mode 100644 src/app/app.component.scss create mode 100644 src/app/app.component.spec.ts create mode 100644 src/app/app.component.ts create mode 100644 src/app/app.module.ts create mode 100644 src/app/auth.guard.ts create mode 100644 src/app/http-interceptors/base-interceptor.ts create mode 100644 src/app/http-interceptors/cache-token.service.ts create mode 100644 src/app/http-interceptors/index.ts create mode 100644 src/app/http-interceptors/tree.service.ts create mode 100644 src/app/interface.ts create mode 100644 src/app/navigation/navigation.component.html create mode 100644 src/app/navigation/navigation.component.scss create mode 100644 src/app/navigation/navigation.component.spec.ts create mode 100644 src/app/navigation/navigation.component.ts create mode 100644 src/app/navigation/navigation.module.ts create mode 100644 src/app/pages/lockscreen/lockscreen.component.html create mode 100644 src/app/pages/lockscreen/lockscreen.component.scss create mode 100644 src/app/pages/lockscreen/lockscreen.component.spec.ts create mode 100644 src/app/pages/lockscreen/lockscreen.component.ts create mode 100644 src/app/pages/login/login.component.html create mode 100644 src/app/pages/login/login.component.scss create mode 100644 src/app/pages/login/login.component.spec.ts create mode 100644 src/app/pages/login/login.component.ts create mode 100644 src/app/pages/pages-routing.module.ts create mode 100644 src/app/pages/pages.component.html create mode 100644 src/app/pages/pages.component.scss create mode 100644 src/app/pages/pages.component.spec.ts create mode 100644 src/app/pages/pages.component.ts create mode 100644 src/app/pages/pages.module.ts create mode 100644 src/app/pages/personaldata/personaldata.component.html create mode 100644 src/app/pages/personaldata/personaldata.component.scss create mode 100644 src/app/pages/personaldata/personaldata.component.spec.ts create mode 100644 src/app/pages/personaldata/personaldata.component.ts create mode 100644 src/app/pages/register/register.component.html create mode 100644 src/app/pages/register/register.component.scss create mode 100644 src/app/pages/register/register.component.spec.ts create mode 100644 src/app/pages/register/register.component.ts create mode 100644 src/app/pipes/boolean.pipe.ts create mode 100644 src/app/pipes/time.pipe.ts create mode 100644 src/app/tabbar/tabbar.component.html create mode 100644 src/app/tabbar/tabbar.component.scss create mode 100644 src/app/tabbar/tabbar.component.spec.ts create mode 100644 src/app/tabbar/tabbar.component.ts create mode 100644 src/app/theme.scss create mode 100644 src/app/ui/all-file/all-file.component.html create mode 100644 src/app/ui/all-file/all-file.component.scss create mode 100644 src/app/ui/all-file/all-file.component.spec.ts create mode 100644 src/app/ui/all-file/all-file.component.ts create mode 100644 src/app/ui/changepassword/changepassword.component.html create mode 100644 src/app/ui/changepassword/changepassword.component.scss create mode 100644 src/app/ui/changepassword/changepassword.component.ts create mode 100644 src/app/ui/changepassword/equal-validator.directive.ts create mode 100644 src/app/ui/ui-routing.module.ts create mode 100644 src/app/ui/ui.module.ts create mode 100644 src/assets/.gitkeep create mode 100644 src/assets/images/bg_login.jpg create mode 100644 src/assets/images/login.gif create mode 100644 src/assets/images/logo.png create mode 100644 src/environments/environment.prod.ts create mode 100644 src/environments/environment.ts create mode 100644 src/favicon.ico create mode 100644 src/index.html create mode 100644 src/main.ts create mode 100644 src/polyfills.ts create mode 100644 src/styles.scss create mode 100644 src/test.ts create mode 100644 tsconfig.app.json create mode 100644 tsconfig.json create mode 100644 tsconfig.spec.json create mode 100644 tslint.json create mode 100644 yarn.lock diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..e89330a --- /dev/null +++ b/.editorconfig @@ -0,0 +1,13 @@ +# Editor configuration, see https://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..86d943a --- /dev/null +++ b/.gitignore @@ -0,0 +1,46 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. + +# compiled output +/dist +/tmp +/out-tsc +# Only exists if Bazel was run +/bazel-out + +# dependencies +/node_modules + +# profiling files +chrome-profiler-events*.json +speed-measure-plugin*.json + +# IDEs and editors +/.idea +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +.history/* + +# misc +/.sass-cache +/connect.lock +/coverage +/libpeerconnection.log +npm-debug.log +yarn-error.log +testem.log +/typings + +# System Files +.DS_Store +Thumbs.db diff --git a/angular.json b/angular.json new file mode 100644 index 0000000..1b51971 --- /dev/null +++ b/angular.json @@ -0,0 +1,132 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "version": 1, + "newProjectRoot": "projects", + "projects": { + "anxin119": { + "projectType": "application", + "schematics": { + "@schematics/angular:component": { + "style": "scss", + "spec": false + } + }, + "root": "", + "sourceRoot": "src", + "prefix": "app", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist/anxin119", + "index": "src/index.html", + "main": "src/main.ts", + "polyfills": "src/polyfills.ts", + "tsConfig": "tsconfig.app.json", + "aot": true, + "assets": [ + "src/favicon.ico", + "src/assets" + ], + "styles": [ + "src/styles.scss" + ], + "scripts": [ + "node_modules/echarts/dist/echarts.js" + ] + }, + "configurations": { + "production": { + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.prod.ts" + } + ], + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true, + "budgets": [ + { + "type": "initial", + "maximumWarning": "2mb", + "maximumError": "5mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "6kb", + "maximumError": "10kb" + } + ] + } + } + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "options": { + "browserTarget": "anxin119:build", + "proxyConfig": "proxy.config.json" + }, + "configurations": { + "production": { + "browserTarget": "anxin119:build:production" + } + } + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "anxin119:build" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "src/test.ts", + "polyfills": "src/polyfills.ts", + "tsConfig": "tsconfig.spec.json", + "karmaConfig": "karma.conf.js", + "assets": [ + "src/favicon.ico", + "src/assets" + ], + "styles": [ + "src/styles.scss" + ], + "scripts": [] + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "tsconfig.app.json", + "tsconfig.spec.json", + "e2e/tsconfig.json" + ], + "exclude": [ + "**/node_modules/**" + ] + } + }, + "e2e": { + "builder": "@angular-devkit/build-angular:protractor", + "options": { + "protractorConfig": "e2e/protractor.conf.js", + "devServerTarget": "anxin119:serve" + }, + "configurations": { + "production": { + "devServerTarget": "anxin119:serve:production" + } + } + } + } + }}, + "defaultProject": "anxin119" +} \ No newline at end of file diff --git a/browserslist b/browserslist new file mode 100644 index 0000000..8084853 --- /dev/null +++ b/browserslist @@ -0,0 +1,12 @@ +# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. +# For additional information regarding the format and rule options, please see: +# https://github.com/browserslist/browserslist#queries + +# You can see what browsers were selected by your queries by running: +# npx browserslist + +> 0.5% +last 2 versions +Firefox ESR +not dead +not IE 9-11 # For IE 9-11 support, remove 'not'. \ No newline at end of file diff --git a/e2e/protractor.conf.js b/e2e/protractor.conf.js new file mode 100644 index 0000000..7c798cf --- /dev/null +++ b/e2e/protractor.conf.js @@ -0,0 +1,32 @@ +// @ts-check +// Protractor configuration file, see link for more information +// https://github.com/angular/protractor/blob/master/lib/config.ts + +const { SpecReporter } = require('jasmine-spec-reporter'); + +/** + * @type { import("protractor").Config } + */ +exports.config = { + allScriptsTimeout: 11000, + specs: [ + './src/**/*.e2e-spec.ts' + ], + capabilities: { + browserName: 'chrome' + }, + directConnect: true, + baseUrl: 'http://localhost:4200/', + framework: 'jasmine', + jasmineNodeOpts: { + showColors: true, + defaultTimeoutInterval: 30000, + print: function() {} + }, + onPrepare() { + require('ts-node').register({ + project: require('path').join(__dirname, './tsconfig.json') + }); + jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); + } +}; \ No newline at end of file diff --git a/e2e/src/app.e2e-spec.ts b/e2e/src/app.e2e-spec.ts new file mode 100644 index 0000000..c33b59d --- /dev/null +++ b/e2e/src/app.e2e-spec.ts @@ -0,0 +1,23 @@ +import { AppPage } from './app.po'; +import { browser, logging } from 'protractor'; + +describe('workspace-project App', () => { + let page: AppPage; + + beforeEach(() => { + page = new AppPage(); + }); + + it('should display welcome message', () => { + page.navigateTo(); + expect(page.getTitleText()).toEqual('anxin119 app is running!'); + }); + + afterEach(async () => { + // Assert that there are no errors emitted from the browser + const logs = await browser.manage().logs().get(logging.Type.BROWSER); + expect(logs).not.toContain(jasmine.objectContaining({ + level: logging.Level.SEVERE, + } as logging.Entry)); + }); +}); diff --git a/e2e/src/app.po.ts b/e2e/src/app.po.ts new file mode 100644 index 0000000..b8498c2 --- /dev/null +++ b/e2e/src/app.po.ts @@ -0,0 +1,11 @@ +import { browser, by, element } from 'protractor'; + +export class AppPage { + navigateTo() { + return browser.get(browser.baseUrl) as Promise; + } + + getTitleText() { + return element(by.css('app-root .content span')).getText() as Promise; + } +} diff --git a/e2e/tsconfig.json b/e2e/tsconfig.json new file mode 100644 index 0000000..39b800f --- /dev/null +++ b/e2e/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../out-tsc/e2e", + "module": "commonjs", + "target": "es5", + "types": [ + "jasmine", + "jasminewd2", + "node" + ] + } +} diff --git a/karma.conf.js b/karma.conf.js new file mode 100644 index 0000000..45eb74b --- /dev/null +++ b/karma.conf.js @@ -0,0 +1,32 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage-istanbul-reporter'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + coverageIstanbulReporter: { + dir: require('path').join(__dirname, './coverage/anxin119'), + reports: ['html', 'lcovonly', 'text-summary'], + fixWebpackSourcePaths: true + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..d88c972 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,17754 @@ +{ + "name": "anxin119", + "version": "0.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@angular-devkit/architect": { + "version": "0.900.1", + "resolved": "https://registry.npm.taobao.org/@angular-devkit/architect/download/@angular-devkit/architect-0.900.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40angular-devkit%2Farchitect%2Fdownload%2F%40angular-devkit%2Farchitect-0.900.1.tgz", + "integrity": "sha1-YKOaOI0a8ktk8BwW2FJ3fpVddto=", + "dev": true, + "requires": { + "@angular-devkit/core": "9.0.1", + "rxjs": "6.5.3" + }, + "dependencies": { + "rxjs": { + "version": "6.5.3", + "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.3.tgz", + "integrity": "sha1-UQ4mMX9NuRp+sd532d2boKSJmjo=", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } + } + }, + "@angular-devkit/build-angular": { + "version": "0.900.1", + "resolved": "https://registry.npm.taobao.org/@angular-devkit/build-angular/download/@angular-devkit/build-angular-0.900.1.tgz?cache=0&sync_timestamp=1581037635842&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40angular-devkit%2Fbuild-angular%2Fdownload%2F%40angular-devkit%2Fbuild-angular-0.900.1.tgz", + "integrity": "sha1-hOmJ6Y0luHwGxfuFL6aj9PxyPbE=", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.900.1", + "@angular-devkit/build-optimizer": "0.900.1", + "@angular-devkit/build-webpack": "0.900.1", + "@angular-devkit/core": "9.0.1", + "@babel/core": "7.7.7", + "@babel/generator": "7.7.7", + "@babel/preset-env": "7.7.7", + "@ngtools/webpack": "9.0.1", + "ajv": "6.10.2", + "autoprefixer": "9.7.1", + "babel-loader": "8.0.6", + "browserslist": "4.8.3", + "cacache": "13.0.1", + "caniuse-lite": "1.0.30001020", + "circular-dependency-plugin": "5.2.0", + "copy-webpack-plugin": "5.1.1", + "core-js": "3.6.0", + "coverage-istanbul-loader": "2.0.3", + "cssnano": "4.1.10", + "file-loader": "4.2.0", + "find-cache-dir": "3.0.0", + "glob": "7.1.5", + "jest-worker": "24.9.0", + "karma-source-map-support": "1.4.0", + "less": "3.10.3", + "less-loader": "5.0.0", + "license-webpack-plugin": "2.1.3", + "loader-utils": "1.2.3", + "magic-string": "0.25.4", + "mini-css-extract-plugin": "0.8.0", + "minimatch": "3.0.4", + "open": "7.0.0", + "parse5": "4.0.0", + "postcss": "7.0.21", + "postcss-import": "12.0.1", + "postcss-loader": "3.0.0", + "raw-loader": "3.1.0", + "regenerator-runtime": "0.13.3", + "rimraf": "3.0.0", + "rollup": "1.25.2", + "rxjs": "6.5.3", + "sass": "1.23.3", + "sass-loader": "8.0.0", + "semver": "6.3.0", + "source-map": "0.7.3", + "source-map-loader": "0.2.4", + "source-map-support": "0.5.16", + "speed-measure-webpack-plugin": "1.3.1", + "style-loader": "1.0.0", + "stylus": "0.54.7", + "stylus-loader": "3.0.2", + "terser": "4.5.1", + "terser-webpack-plugin": "2.3.3", + "tree-kill": "1.2.2", + "webpack": "4.41.2", + "webpack-dev-middleware": "3.7.2", + "webpack-dev-server": "3.9.0", + "webpack-merge": "4.2.2", + "webpack-sources": "1.4.3", + "webpack-subresource-integrity": "1.3.4", + "worker-plugin": "3.2.0" + }, + "dependencies": { + "glob": { + "version": "7.1.5", + "resolved": "https://registry.npm.taobao.org/glob/download/glob-7.1.5.tgz?cache=0&sync_timestamp=1573078079496&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglob%2Fdownload%2Fglob-7.1.5.tgz", + "integrity": "sha1-ZxTGm+4g88PmTE3ZBVU+UytAzcA=", + "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" + } + }, + "rimraf": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/rimraf/download/rimraf-3.0.0.tgz?cache=0&sync_timestamp=1581257110269&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frimraf%2Fdownload%2Frimraf-3.0.0.tgz", + "integrity": "sha1-YUF21LMBC3Xlw5DrDulvbcDOu5s=", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "rxjs": { + "version": "6.5.3", + "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.3.tgz", + "integrity": "sha1-UQ4mMX9NuRp+sd532d2boKSJmjo=", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "source-map-support": { + "version": "0.5.16", + "resolved": "https://registry.npm.taobao.org/source-map-support/download/source-map-support-0.5.16.tgz", + "integrity": "sha1-CuBp5/47p1OMZMmFFeNTOerFoEI=", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + } + } + }, + "@angular-devkit/build-optimizer": { + "version": "0.900.1", + "resolved": "https://registry.npm.taobao.org/@angular-devkit/build-optimizer/download/@angular-devkit/build-optimizer-0.900.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40angular-devkit%2Fbuild-optimizer%2Fdownload%2F%40angular-devkit%2Fbuild-optimizer-0.900.1.tgz", + "integrity": "sha1-uWIajmI00yM7YbqbqG5dZLjkErU=", + "dev": true, + "requires": { + "loader-utils": "1.2.3", + "source-map": "0.7.3", + "tslib": "1.10.0", + "typescript": "3.6.4", + "webpack-sources": "1.4.3" + }, + "dependencies": { + "typescript": { + "version": "3.6.4", + "resolved": "https://registry.npm.taobao.org/typescript/download/typescript-3.6.4.tgz", + "integrity": "sha1-sYdSuzeSvBoCgTNff26/G7/FuR0=", + "dev": true + } + } + }, + "@angular-devkit/build-webpack": { + "version": "0.900.1", + "resolved": "https://registry.npm.taobao.org/@angular-devkit/build-webpack/download/@angular-devkit/build-webpack-0.900.1.tgz", + "integrity": "sha1-G5DJyH7Cb6i0cezBcXXFvF9sdKQ=", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.900.1", + "@angular-devkit/core": "9.0.1", + "rxjs": "6.5.3" + }, + "dependencies": { + "rxjs": { + "version": "6.5.3", + "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.3.tgz", + "integrity": "sha1-UQ4mMX9NuRp+sd532d2boKSJmjo=", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } + } + }, + "@angular-devkit/core": { + "version": "9.0.1", + "resolved": "https://registry.npm.taobao.org/@angular-devkit/core/download/@angular-devkit/core-9.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40angular-devkit%2Fcore%2Fdownload%2F%40angular-devkit%2Fcore-9.0.1.tgz", + "integrity": "sha1-7xB7Dp7uGiiSTN+SEIzdWrjfm2k=", + "dev": true, + "requires": { + "ajv": "6.10.2", + "fast-json-stable-stringify": "2.0.0", + "magic-string": "0.25.4", + "rxjs": "6.5.3", + "source-map": "0.7.3" + }, + "dependencies": { + "rxjs": { + "version": "6.5.3", + "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.3.tgz", + "integrity": "sha1-UQ4mMX9NuRp+sd532d2boKSJmjo=", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } + } + }, + "@angular-devkit/schematics": { + "version": "9.0.1", + "resolved": "https://registry.npm.taobao.org/@angular-devkit/schematics/download/@angular-devkit/schematics-9.0.1.tgz", + "integrity": "sha1-onororX+ySszVkvFB4xfE8lpkxo=", + "dev": true, + "requires": { + "@angular-devkit/core": "9.0.1", + "ora": "4.0.2", + "rxjs": "6.5.3" + }, + "dependencies": { + "rxjs": { + "version": "6.5.3", + "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.3.tgz", + "integrity": "sha1-UQ4mMX9NuRp+sd532d2boKSJmjo=", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } + } + }, + "@angular/animations": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/animations/download/@angular/animations-9.0.0.tgz", + "integrity": "sha1-jSuFLFJzvMFh0T+C+q81ZqtWKVE=" + }, + "@angular/cdk": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/cdk/download/@angular/cdk-9.0.0.tgz", + "integrity": "sha1-VzSBeulwRPkNME+g8lycGn+gv5Y=", + "requires": { + "parse5": "^5.0.0" + }, + "dependencies": { + "parse5": { + "version": "5.1.1", + "resolved": "https://registry.npm.taobao.org/parse5/download/parse5-5.1.1.tgz?cache=0&sync_timestamp=1573036762880&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparse5%2Fdownload%2Fparse5-5.1.1.tgz", + "integrity": "sha1-9o5OW6GFKsLK3AD0VV//bCq7YXg=", + "optional": true + } + } + }, + "@angular/cli": { + "version": "9.0.1", + "resolved": "https://registry.npm.taobao.org/@angular/cli/download/@angular/cli-9.0.1.tgz?cache=0&sync_timestamp=1581037644954&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40angular%2Fcli%2Fdownload%2F%40angular%2Fcli-9.0.1.tgz", + "integrity": "sha1-OZzcT4UlYHS4CHOLo6TexBZ99To=", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.900.1", + "@angular-devkit/core": "9.0.1", + "@angular-devkit/schematics": "9.0.1", + "@schematics/angular": "9.0.1", + "@schematics/update": "0.900.1", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.1", + "debug": "^4.1.1", + "ini": "1.3.5", + "inquirer": "7.0.0", + "npm-package-arg": "6.1.1", + "npm-pick-manifest": "3.0.2", + "open": "7.0.0", + "pacote": "9.5.8", + "read-package-tree": "5.3.1", + "rimraf": "3.0.0", + "semver": "6.3.0", + "symbol-observable": "1.2.0", + "universal-analytics": "^0.4.20", + "uuid": "^3.3.2" + }, + "dependencies": { + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/ansi-colors/download/ansi-colors-4.1.1.tgz", + "integrity": "sha1-y7muJWv3UK8eqzRPIpqif+lLo0g=", + "dev": true + }, + "rimraf": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/rimraf/download/rimraf-3.0.0.tgz", + "integrity": "sha1-YUF21LMBC3Xlw5DrDulvbcDOu5s=", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "@angular/common": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/common/download/@angular/common-9.0.0.tgz", + "integrity": "sha1-DjskUtQvh9GCWkSKMa1yxZPuB4U=" + }, + "@angular/compiler": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/compiler/download/@angular/compiler-9.0.0.tgz", + "integrity": "sha1-h+C+9MNptsra4H46QpV3j8k3mdU=" + }, + "@angular/compiler-cli": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/compiler-cli/download/@angular/compiler-cli-9.0.0.tgz", + "integrity": "sha1-7M5oCCByWIX+0pivaZRr2qEtc9M=", + "dev": true, + "requires": { + "canonical-path": "1.0.0", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.7.2", + "fs-extra": "4.0.2", + "magic-string": "^0.25.0", + "minimist": "^1.2.0", + "reflect-metadata": "^0.1.2", + "semver": "^6.3.0", + "source-map": "^0.6.1", + "yargs": "13.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz", + "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz", + "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=", + "dev": true + }, + "fs-extra": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/fs-extra/download/fs-extra-4.0.2.tgz", + "integrity": "sha1-+RcExT0bRh+JNFKwwwfZmXZHq2s=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npm.taobao.org/get-caller-file/download/get-caller-file-2.0.5.tgz", + "integrity": "sha1-T5RBKoLbMvNuOwuXQfipf+sDH34=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/require-main-filename/download/require-main-filename-2.0.0.tgz", + "integrity": "sha1-0LMp7MfMD2Fkn2IhW+aa9UqomJs=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz", + "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz", + "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "yargs": { + "version": "13.1.0", + "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-13.1.0.tgz?cache=0&sync_timestamp=1577940861093&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-13.1.0.tgz", + "integrity": "sha1-snKc5L/AxYSTlxlRQJnYqRatIwE=", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.0.0" + } + }, + "yargs-parser": { + "version": "13.1.1", + "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-13.1.1.tgz?cache=0&sync_timestamp=1572648717575&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-13.1.1.tgz", + "integrity": "sha1-0mBYUyqgbTZf4JH2ofwGsvfl7KA=", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "@angular/core": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/core/download/@angular/core-9.0.0.tgz", + "integrity": "sha1-In3FPhrIGCT5mMbnYAC378UiZB4=" + }, + "@angular/fire": { + "version": "5.4.2", + "resolved": "https://registry.npm.taobao.org/@angular/fire/download/@angular/fire-5.4.2.tgz", + "integrity": "sha1-+y1Uk13g2DeJ6UDl9Xpv/A4e9Os=" + }, + "@angular/forms": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/forms/download/@angular/forms-9.0.0.tgz", + "integrity": "sha1-IBfk3e4QH6V9xdyboRObHwJJlCI=" + }, + "@angular/language-service": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/language-service/download/@angular/language-service-9.0.0.tgz", + "integrity": "sha1-JLpjrl21ZrcPfEC7FI3Deneqo3M=", + "dev": true + }, + "@angular/material": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/material/download/@angular/material-9.0.0.tgz", + "integrity": "sha1-ZVv9TUBHM36ESAufkr6Oga83W5I=" + }, + "@angular/platform-browser": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/platform-browser/download/@angular/platform-browser-9.0.0.tgz", + "integrity": "sha1-uUVPKdjtrwJGaLqp4HCD7vc96sI=" + }, + "@angular/platform-browser-dynamic": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/platform-browser-dynamic/download/@angular/platform-browser-dynamic-9.0.0.tgz", + "integrity": "sha1-G4c1XCDQsqBGwZFAhXAaPVztUto=" + }, + "@angular/router": { + "version": "9.0.0", + "resolved": "https://registry.npm.taobao.org/@angular/router/download/@angular/router-9.0.0.tgz", + "integrity": "sha1-EXhPyM6cszFMfsEIP/m+fGERgcI=" + }, + "@babel/code-frame": { + "version": "7.5.5", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.5.5.tgz", + "integrity": "sha1-vAeC9tafe31JUxIZaZuYj2aaj50=", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/core": { + "version": "7.7.7", + "resolved": "https://registry.npm.taobao.org/@babel/core/download/@babel/core-7.7.7.tgz?cache=0&sync_timestamp=1580387977677&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fcore%2Fdownload%2F%40babel%2Fcore-7.7.7.tgz", + "integrity": "sha1-7hVdLhIwC8wM/2qK1G8q9QY4A+k=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.7.7", + "@babel/helpers": "^7.7.4", + "@babel/parser": "^7.7.7", + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@babel/types": "^7.7.4", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "json5": "^2.1.0", + "lodash": "^4.17.13", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "json5": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/json5/download/json5-2.1.1.tgz", + "integrity": "sha1-gbbLBOm6SW8ccAXQe0NoomOPkLY=", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.7.7", + "resolved": "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.7.7.tgz", + "integrity": "sha1-hZrHM8RMdBSOGnKYCmTshLhfT0U=", + "dev": true, + "requires": { + "@babel/types": "^7.7.4", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-annotate-as-pure/download/@babel/helper-annotate-as-pure-7.8.3.tgz", + "integrity": "sha1-YLwLxlf2Ogkk/5pLSgskoTz03u4=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-builder-binary-assignment-operator-visitor/download/@babel/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz", + "integrity": "sha1-yECXpCegYaxWocMOv1S3si0kFQM=", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.8.3", + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-call-delegate": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-call-delegate/download/@babel/helper-call-delegate-7.8.3.tgz", + "integrity": "sha1-3oJhmJiqYF1AnEK+b/uNcgRXlpI=", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.8.3", + "@babel/traverse": "^7.8.3", + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/generator": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.8.4.tgz", + "integrity": "sha1-NbvHRIaVb+QlGCn59sSDMOjQmF4=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + } + }, + "@babel/helper-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.8.3.tgz", + "integrity": "sha1-7utmWgGx8RBo6fuGrVahyxqCTMo=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha1-ManzAHD5E2inGCzwX4MXgQZfx6k=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/traverse": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.8.4.tgz", + "integrity": "sha1-8IRYIjZfnVsOMS7TlZ0/gn+Gnjw=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.8.4", + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/parser": "^7.8.4", + "@babel/types": "^7.8.3", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-create-regexp-features-plugin/download/@babel/helper-create-regexp-features-plugin-7.8.3.tgz", + "integrity": "sha1-x3QmjJXsB+6SR2o4YrdcwoOb63k=", + "dev": true, + "requires": { + "@babel/helper-regex": "^7.8.3", + "regexpu-core": "^4.6.0" + } + }, + "@babel/helper-define-map": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-define-map/download/@babel/helper-define-map-7.8.3.tgz", + "integrity": "sha1-oGVcrVRRw3YLcm66h18c2PqgLBU=", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.8.3", + "@babel/types": "^7.8.3", + "lodash": "^4.17.13" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/helper-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.8.3.tgz", + "integrity": "sha1-7utmWgGx8RBo6fuGrVahyxqCTMo=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-explode-assignable-expression/download/@babel/helper-explode-assignable-expression-7.8.3.tgz", + "integrity": "sha1-pyjcW06J4w/C38fQT6KKkwZT+YI=", + "dev": true, + "requires": { + "@babel/traverse": "^7.8.3", + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/generator": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.8.4.tgz", + "integrity": "sha1-NbvHRIaVb+QlGCn59sSDMOjQmF4=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + } + }, + "@babel/helper-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.8.3.tgz", + "integrity": "sha1-7utmWgGx8RBo6fuGrVahyxqCTMo=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha1-ManzAHD5E2inGCzwX4MXgQZfx6k=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/traverse": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.8.4.tgz", + "integrity": "sha1-8IRYIjZfnVsOMS7TlZ0/gn+Gnjw=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.8.4", + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/parser": "^7.8.4", + "@babel/types": "^7.8.3", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.7.4", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.7.4.tgz", + "integrity": "sha1-q24EHnE11DbY8KPsoV3ltno0Gi4=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.7.4", + "@babel/template": "^7.7.4", + "@babel/types": "^7.7.4" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.7.4", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.7.4.tgz", + "integrity": "sha1-y0Y0jS+ICOYy8KsEgXITDmNgBfA=", + "dev": true, + "requires": { + "@babel/types": "^7.7.4" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-hoist-variables/download/@babel/helper-hoist-variables-7.8.3.tgz", + "integrity": "sha1-Hb6ba1XXjJtBg/yM3G4wzrg7cTQ=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-member-expression-to-functions/download/@babel/helper-member-expression-to-functions-7.8.3.tgz", + "integrity": "sha1-ZZtxBJjqbB2ZB+DHPyBu7n2twkw=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-module-imports": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-module-imports/download/@babel/helper-module-imports-7.8.3.tgz", + "integrity": "sha1-f+OVibOcAWMxtrjD9EHo8LFBlJg=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-module-transforms": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-module-transforms/download/@babel/helper-module-transforms-7.8.3.tgz", + "integrity": "sha1-0wXjXQK+5yD7wsPDYjqgwxbAFZA=", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.8.3", + "@babel/helper-simple-access": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3", + "lodash": "^4.17.13" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha1-ManzAHD5E2inGCzwX4MXgQZfx6k=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-optimise-call-expression/download/@babel/helper-optimise-call-expression-7.8.3.tgz", + "integrity": "sha1-ftBxgT0Jx1KY708giVYAa2ER7Lk=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-plugin-utils": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-plugin-utils/download/@babel/helper-plugin-utils-7.8.3.tgz", + "integrity": "sha1-nqKTvhm6vA9S/4yoizTDYRsghnA=", + "dev": true + }, + "@babel/helper-regex": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-regex/download/@babel/helper-regex-7.8.3.tgz", + "integrity": "sha1-E5dyYH1RuT8j7/5yEFsxnSpMaWU=", + "dev": true, + "requires": { + "lodash": "^4.17.13" + } + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-remap-async-to-generator/download/@babel/helper-remap-async-to-generator-7.8.3.tgz", + "integrity": "sha1-JzxgDYub9QBhQsHjWIfVVcEu3YY=", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.8.3", + "@babel/helper-wrap-function": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/traverse": "^7.8.3", + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/generator": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.8.4.tgz", + "integrity": "sha1-NbvHRIaVb+QlGCn59sSDMOjQmF4=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + } + }, + "@babel/helper-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.8.3.tgz", + "integrity": "sha1-7utmWgGx8RBo6fuGrVahyxqCTMo=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha1-ManzAHD5E2inGCzwX4MXgQZfx6k=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/traverse": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.8.4.tgz", + "integrity": "sha1-8IRYIjZfnVsOMS7TlZ0/gn+Gnjw=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.8.4", + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/parser": "^7.8.4", + "@babel/types": "^7.8.3", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-replace-supers": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-replace-supers/download/@babel/helper-replace-supers-7.8.3.tgz", + "integrity": "sha1-kRktJfarvNQdqKmJ1EkldPsVMLw=", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.8.3", + "@babel/helper-optimise-call-expression": "^7.8.3", + "@babel/traverse": "^7.8.3", + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/generator": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.8.4.tgz", + "integrity": "sha1-NbvHRIaVb+QlGCn59sSDMOjQmF4=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + } + }, + "@babel/helper-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.8.3.tgz", + "integrity": "sha1-7utmWgGx8RBo6fuGrVahyxqCTMo=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha1-ManzAHD5E2inGCzwX4MXgQZfx6k=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/traverse": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.8.4.tgz", + "integrity": "sha1-8IRYIjZfnVsOMS7TlZ0/gn+Gnjw=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.8.4", + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/parser": "^7.8.4", + "@babel/types": "^7.8.3", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-simple-access": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-simple-access/download/@babel/helper-simple-access-7.8.3.tgz", + "integrity": "sha1-f4EJkotNq0ZUB2mGr1dSMd62Oa4=", + "dev": true, + "requires": { + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.7.4", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.7.4.tgz", + "integrity": "sha1-Vykq9gRDxKNiLPdAQN3Cjmgzb9g=", + "dev": true, + "requires": { + "@babel/types": "^7.7.4" + } + }, + "@babel/helper-wrap-function": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-wrap-function/download/@babel/helper-wrap-function-7.8.3.tgz", + "integrity": "sha1-nb2yu1XvFKqgH+jJm2Kb1TUthhA=", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/traverse": "^7.8.3", + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/generator": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.8.4.tgz", + "integrity": "sha1-NbvHRIaVb+QlGCn59sSDMOjQmF4=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + } + }, + "@babel/helper-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.8.3.tgz", + "integrity": "sha1-7utmWgGx8RBo6fuGrVahyxqCTMo=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha1-ManzAHD5E2inGCzwX4MXgQZfx6k=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/traverse": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.8.4.tgz", + "integrity": "sha1-8IRYIjZfnVsOMS7TlZ0/gn+Gnjw=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.8.4", + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/parser": "^7.8.4", + "@babel/types": "^7.8.3", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helpers": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/helpers/download/@babel/helpers-7.8.4.tgz", + "integrity": "sha1-dU6z7nJ8Fl4KJA1sIH3nxFXzb3M=", + "dev": true, + "requires": { + "@babel/template": "^7.8.3", + "@babel/traverse": "^7.8.4", + "@babel/types": "^7.8.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/generator": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.8.4.tgz", + "integrity": "sha1-NbvHRIaVb+QlGCn59sSDMOjQmF4=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + } + }, + "@babel/helper-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.8.3.tgz", + "integrity": "sha1-7utmWgGx8RBo6fuGrVahyxqCTMo=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha1-ManzAHD5E2inGCzwX4MXgQZfx6k=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/traverse": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.8.4.tgz", + "integrity": "sha1-8IRYIjZfnVsOMS7TlZ0/gn+Gnjw=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.8.4", + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/parser": "^7.8.4", + "@babel/types": "^7.8.3", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/highlight": { + "version": "7.5.0", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.5.0.tgz?cache=0&sync_timestamp=1562245140883&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhighlight%2Fdownload%2F%40babel%2Fhighlight-7.5.0.tgz", + "integrity": "sha1-VtETEr2SSPphlZHQJHK+boyzJUA=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.7.7", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.7.7.tgz", + "integrity": "sha1-G4hllUGc+S2BExbVtxWlP/OLSTc=", + "dev": true + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-async-generator-functions/download/@babel/plugin-proposal-async-generator-functions-7.8.3.tgz", + "integrity": "sha1-utMpxnCzgliXIbJ1QMfSiGAcbm8=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-remap-async-to-generator": "^7.8.3", + "@babel/plugin-syntax-async-generators": "^7.8.0" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-dynamic-import/download/@babel/plugin-proposal-dynamic-import-7.8.3.tgz", + "integrity": "sha1-OMT+VVdEgm6X4q6TCw+0zAfmYFQ=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-dynamic-import": "^7.8.0" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-json-strings/download/@babel/plugin-proposal-json-strings-7.8.3.tgz", + "integrity": "sha1-2lIWsjipi1ih4F1oUhBLEPmnDWs=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.0" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-object-rest-spread/download/@babel/plugin-proposal-object-rest-spread-7.8.3.tgz?cache=0&sync_timestamp=1578956763418&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-object-rest-spread%2Fdownload%2F%40babel%2Fplugin-proposal-object-rest-spread-7.8.3.tgz", + "integrity": "sha1-61rjZhGN3KZ77Vg7U9dVTK2ZUbs=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-optional-catch-binding/download/@babel/plugin-proposal-optional-catch-binding-7.8.3.tgz", + "integrity": "sha1-ne6WqxZQ7tiGRq6XNMoWesSpxck=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-unicode-property-regex/download/@babel/plugin-proposal-unicode-property-regex-7.8.3.tgz", + "integrity": "sha1-tkbDrepfmIAMmrRRBaw00GzUpH8=", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-async-generators/download/@babel/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha1-qYP7Gusuw/btBCohD2QOkOeG/g0=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-dynamic-import/download/@babel/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha1-Yr+Ysto80h1iYVT8lu5bPLaOrLM=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-json-strings/download/@babel/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha1-AcohtmjNghjJ5kDLbdiMVBKyyWo=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-object-rest-spread/download/@babel/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha1-YOIl7cvZimQDMqLnLdPmbxr1WHE=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-optional-catch-binding/download/@babel/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha1-YRGiZbz7Ag6579D9/X0mQCue1sE=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-top-level-await/download/@babel/plugin-syntax-top-level-await-7.8.3.tgz", + "integrity": "sha1-Os3s5pXmsTqvV/wpHRqACVDHE5E=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-arrow-functions/download/@babel/plugin-transform-arrow-functions-7.8.3.tgz", + "integrity": "sha1-gndsLtDNnhpJlW2uuJYCTJRzuLY=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-async-to-generator/download/@babel/plugin-transform-async-to-generator-7.8.3.tgz", + "integrity": "sha1-Qwj60NlAnXHq+5sabuNfnWS2QIY=", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-remap-async-to-generator": "^7.8.3" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-block-scoped-functions/download/@babel/plugin-transform-block-scoped-functions-7.8.3.tgz", + "integrity": "sha1-Q37sW3mbWFIHIISzrl72boNJ6KM=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-block-scoping/download/@babel/plugin-transform-block-scoping-7.8.3.tgz", + "integrity": "sha1-l9Ndq2aFekN8FmNYuR0JBQyGjzo=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "lodash": "^4.17.13" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-classes/download/@babel/plugin-transform-classes-7.8.3.tgz", + "integrity": "sha1-Rv16nSu56onOiHIEd5ef4NcbIbg=", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.8.3", + "@babel/helper-define-map": "^7.8.3", + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-optimise-call-expression": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-replace-supers": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "globals": "^11.1.0" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/helper-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.8.3.tgz", + "integrity": "sha1-7utmWgGx8RBo6fuGrVahyxqCTMo=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha1-ManzAHD5E2inGCzwX4MXgQZfx6k=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-computed-properties/download/@babel/plugin-transform-computed-properties-7.8.3.tgz", + "integrity": "sha1-ltDSi3985OtbEguy4OlDNDyG+Bs=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-destructuring/download/@babel/plugin-transform-destructuring-7.8.3.tgz", + "integrity": "sha1-IN372eRnaQaxBW7mCviFkMx6qgs=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-dotall-regex/download/@babel/plugin-transform-dotall-regex-7.8.3.tgz", + "integrity": "sha1-w8bsXuYSXGmTxcvKINyGIanqem4=", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-duplicate-keys/download/@babel/plugin-transform-duplicate-keys-7.8.3.tgz", + "integrity": "sha1-jRLfMJqlN/JyiZxWXqF2jihuIfE=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-exponentiation-operator/download/@babel/plugin-transform-exponentiation-operator-7.8.3.tgz", + "integrity": "sha1-WBptf1aXDga/UVYM1k9elHtw17c=", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-for-of/download/@babel/plugin-transform-for-of-7.8.4.tgz?cache=0&sync_timestamp=1580387791572&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-for-of%2Fdownload%2F%40babel%2Fplugin-transform-for-of-7.8.4.tgz", + "integrity": "sha1-b+jq5daHUIbuGF3QsJioUTeDtH0=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-function-name/download/@babel/plugin-transform-function-name-7.8.3.tgz", + "integrity": "sha1-J5NzyycyKqrWfCaD53bfxHGW7Ys=", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.8.3.tgz", + "integrity": "sha1-M+JZA9dIEYFTThLsCiXxa2/PQZ4=", + "dev": true, + "requires": { + "@babel/highlight": "^7.8.3" + } + }, + "@babel/helper-function-name": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.8.3.tgz", + "integrity": "sha1-7utmWgGx8RBo6fuGrVahyxqCTMo=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/highlight": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.8.3.tgz", + "integrity": "sha1-KPFz0EIj6qpZvB1Dmjg25tEmV5c=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.8.4.tgz", + "integrity": "sha1-0dvmRpHWA1ipdClfpT2gdN0s6Og=", + "dev": true + }, + "@babel/template": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.8.3.tgz", + "integrity": "sha1-4CrQT+JipleAkyf1eAVsoV/U0bg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/plugin-transform-literals": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-literals/download/@babel/plugin-transform-literals-7.8.3.tgz", + "integrity": "sha1-rvI5gj2RmU7Hto5VGTUl1229XcE=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-member-expression-literals/download/@babel/plugin-transform-member-expression-literals-7.8.3.tgz", + "integrity": "sha1-lj/tS2IKx8v2Apx1VCQCn6OkBBA=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-amd/download/@babel/plugin-transform-modules-amd-7.8.3.tgz?cache=0&sync_timestamp=1578956828453&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-modules-amd%2Fdownload%2F%40babel%2Fplugin-transform-modules-amd-7.8.3.tgz", + "integrity": "sha1-ZWBtRGFrUCJedvVXjzPFaKC4dqU=", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "babel-plugin-dynamic-import-node": "^2.3.0" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-commonjs/download/@babel/plugin-transform-modules-commonjs-7.8.3.tgz", + "integrity": "sha1-3yUXBuwzG9BYo0vdcmE5FfgpKKU=", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-simple-access": "^7.8.3", + "babel-plugin-dynamic-import-node": "^2.3.0" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-systemjs/download/@babel/plugin-transform-modules-systemjs-7.8.3.tgz", + "integrity": "sha1-2LvyIsHb42YfRA8vAMFum7fQ1CA=", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.8.3", + "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "babel-plugin-dynamic-import-node": "^2.3.0" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-umd/download/@babel/plugin-transform-modules-umd-7.8.3.tgz", + "integrity": "sha1-WS1XjOBsUvW5iwL5E9ZT/+lyZho=", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-named-capturing-groups-regex/download/@babel/plugin-transform-named-capturing-groups-regex-7.8.3.tgz", + "integrity": "sha1-oqcr/6ICrA4tBQav0JOcXsvEjGw=", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.8.3" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-new-target/download/@babel/plugin-transform-new-target-7.8.3.tgz", + "integrity": "sha1-YMwq5m2FyVq1QOs0urtkNNTHDEM=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-object-super/download/@babel/plugin-transform-object-super-7.8.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-object-super%2Fdownload%2F%40babel%2Fplugin-transform-object-super-7.8.3.tgz", + "integrity": "sha1-67ah56hv+paFi9asAQLWWUQmFyU=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-replace-supers": "^7.8.3" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-parameters/download/@babel/plugin-transform-parameters-7.8.4.tgz?cache=0&sync_timestamp=1580387794920&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-parameters%2Fdownload%2F%40babel%2Fplugin-transform-parameters-7.8.4.tgz", + "integrity": "sha1-HVFV3gtl2wzPmXEWV0XTu5kNd9M=", + "dev": true, + "requires": { + "@babel/helper-call-delegate": "^7.8.3", + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" + }, + "dependencies": { + "@babel/helper-get-function-arity": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha1-uJS5R70AQ4HOY+odufCFR+kgq9U=", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, + "@babel/types": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.8.3.tgz", + "integrity": "sha1-Wjg9/6VBbbG3Pe3/0xH/0HiPsxw=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-property-literals/download/@babel/plugin-transform-property-literals-7.8.3.tgz", + "integrity": "sha1-MxlDANhTnB7SjGKtUIe6OAe5gmM=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-regenerator/download/@babel/plugin-transform-regenerator-7.8.3.tgz", + "integrity": "sha1-sxAx6AWcB0lb8jYUyX89lpi8bsg=", + "dev": true, + "requires": { + "regenerator-transform": "^0.14.0" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-reserved-words/download/@babel/plugin-transform-reserved-words-7.8.3.tgz", + "integrity": "sha1-mgY1rE5mXSmxYoN908xQdF398fU=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-shorthand-properties/download/@babel/plugin-transform-shorthand-properties-7.8.3.tgz", + "integrity": "sha1-KFRSFuAjqDLU06EYXtSSvP6sCMg=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-spread/download/@babel/plugin-transform-spread-7.8.3.tgz", + "integrity": "sha1-nI/+gXD9+4ixFOy5ILgvtulf5eg=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-sticky-regex/download/@babel/plugin-transform-sticky-regex-7.8.3.tgz", + "integrity": "sha1-vnoSkPgdrnZ0dUUhmeH3bWF1sQA=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-regex": "^7.8.3" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-template-literals/download/@babel/plugin-transform-template-literals-7.8.3.tgz", + "integrity": "sha1-e/pHMrRV6mpDEwrcC6dn7A5AKoA=", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.8.4", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-typeof-symbol/download/@babel/plugin-transform-typeof-symbol-7.8.4.tgz?cache=0&sync_timestamp=1580387785094&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-typeof-symbol%2Fdownload%2F%40babel%2Fplugin-transform-typeof-symbol-7.8.4.tgz", + "integrity": "sha1-7eQGIxXOCq+KZXqSCFjxovNfxBI=", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-unicode-regex/download/@babel/plugin-transform-unicode-regex-7.8.3.tgz", + "integrity": "sha1-DO8247pz5cVyc+/7GC9GuRoeyq0=", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/preset-env": { + "version": "7.7.7", + "resolved": "https://registry.npm.taobao.org/@babel/preset-env/download/@babel/preset-env-7.7.7.tgz?cache=0&sync_timestamp=1580387976946&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fpreset-env%2Fdownload%2F%40babel%2Fpreset-env-7.7.7.tgz", + "integrity": "sha1-wpQWe5HlPn422CDpQ+zo0Mf+Rqw=", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.7.4", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-async-generator-functions": "^7.7.4", + "@babel/plugin-proposal-dynamic-import": "^7.7.4", + "@babel/plugin-proposal-json-strings": "^7.7.4", + "@babel/plugin-proposal-object-rest-spread": "^7.7.7", + "@babel/plugin-proposal-optional-catch-binding": "^7.7.4", + "@babel/plugin-proposal-unicode-property-regex": "^7.7.7", + "@babel/plugin-syntax-async-generators": "^7.7.4", + "@babel/plugin-syntax-dynamic-import": "^7.7.4", + "@babel/plugin-syntax-json-strings": "^7.7.4", + "@babel/plugin-syntax-object-rest-spread": "^7.7.4", + "@babel/plugin-syntax-optional-catch-binding": "^7.7.4", + "@babel/plugin-syntax-top-level-await": "^7.7.4", + "@babel/plugin-transform-arrow-functions": "^7.7.4", + "@babel/plugin-transform-async-to-generator": "^7.7.4", + "@babel/plugin-transform-block-scoped-functions": "^7.7.4", + "@babel/plugin-transform-block-scoping": "^7.7.4", + "@babel/plugin-transform-classes": "^7.7.4", + "@babel/plugin-transform-computed-properties": "^7.7.4", + "@babel/plugin-transform-destructuring": "^7.7.4", + "@babel/plugin-transform-dotall-regex": "^7.7.7", + "@babel/plugin-transform-duplicate-keys": "^7.7.4", + "@babel/plugin-transform-exponentiation-operator": "^7.7.4", + "@babel/plugin-transform-for-of": "^7.7.4", + "@babel/plugin-transform-function-name": "^7.7.4", + "@babel/plugin-transform-literals": "^7.7.4", + "@babel/plugin-transform-member-expression-literals": "^7.7.4", + "@babel/plugin-transform-modules-amd": "^7.7.5", + "@babel/plugin-transform-modules-commonjs": "^7.7.5", + "@babel/plugin-transform-modules-systemjs": "^7.7.4", + "@babel/plugin-transform-modules-umd": "^7.7.4", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.7.4", + "@babel/plugin-transform-new-target": "^7.7.4", + "@babel/plugin-transform-object-super": "^7.7.4", + "@babel/plugin-transform-parameters": "^7.7.7", + "@babel/plugin-transform-property-literals": "^7.7.4", + "@babel/plugin-transform-regenerator": "^7.7.5", + "@babel/plugin-transform-reserved-words": "^7.7.4", + "@babel/plugin-transform-shorthand-properties": "^7.7.4", + "@babel/plugin-transform-spread": "^7.7.4", + "@babel/plugin-transform-sticky-regex": "^7.7.4", + "@babel/plugin-transform-template-literals": "^7.7.4", + "@babel/plugin-transform-typeof-symbol": "^7.7.4", + "@babel/plugin-transform-unicode-regex": "^7.7.4", + "@babel/types": "^7.7.4", + "browserslist": "^4.6.0", + "core-js-compat": "^3.6.0", + "invariant": "^2.2.2", + "js-levenshtein": "^1.1.3", + "semver": "^5.5.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "@babel/template": { + "version": "7.7.4", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.7.4.tgz", + "integrity": "sha1-Qop9nuz/4n3qwKmOI7+ONnXSp3s=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.4", + "@babel/types": "^7.7.4" + } + }, + "@babel/traverse": { + "version": "7.7.4", + "resolved": "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.7.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Ftraverse%2Fdownload%2F%40babel%2Ftraverse-7.7.4.tgz", + "integrity": "sha1-nB58YPtnn+T8+qQlAIMzM8IFhVg=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.7.4", + "@babel/helper-function-name": "^7.7.4", + "@babel/helper-split-export-declaration": "^7.7.4", + "@babel/parser": "^7.7.4", + "@babel/types": "^7.7.4", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.7.4", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.7.4.tgz", + "integrity": "sha1-UWVw1TnkTd8wjAdWnCWP+U/ekZM=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "@firebase/analytics": { + "version": "0.2.13", + "resolved": "https://registry.npm.taobao.org/@firebase/analytics/download/@firebase/analytics-0.2.13.tgz", + "integrity": "sha1-Vfqp16h/oIt2TAjT4Cbacdp3V3o=", + "requires": { + "@firebase/analytics-types": "0.2.6", + "@firebase/component": "0.1.5", + "@firebase/installations": "0.4.2", + "@firebase/util": "0.2.40", + "tslib": "1.10.0" + } + }, + "@firebase/analytics-types": { + "version": "0.2.6", + "resolved": "https://registry.npm.taobao.org/@firebase/analytics-types/download/@firebase/analytics-types-0.2.6.tgz", + "integrity": "sha1-yPQQLCxkkvVjpTOBoNtiDdasFxE=" + }, + "@firebase/app": { + "version": "0.5.4", + "resolved": "https://registry.npm.taobao.org/@firebase/app/download/@firebase/app-0.5.4.tgz", + "integrity": "sha1-PCPqvQ87L0jao1MPbGsY7rlqjsI=", + "requires": { + "@firebase/app-types": "0.5.1", + "@firebase/component": "0.1.5", + "@firebase/logger": "0.1.35", + "@firebase/util": "0.2.40", + "dom-storage": "2.1.0", + "tslib": "1.10.0", + "xmlhttprequest": "1.8.0" + } + }, + "@firebase/app-types": { + "version": "0.5.1", + "resolved": "https://registry.npm.taobao.org/@firebase/app-types/download/@firebase/app-types-0.5.1.tgz", + "integrity": "sha1-it1B0QxTN1moCjdtCdJK8KEAk0M=" + }, + "@firebase/auth": { + "version": "0.13.5", + "resolved": "https://registry.npm.taobao.org/@firebase/auth/download/@firebase/auth-0.13.5.tgz", + "integrity": "sha1-L8CuyJdERj0+FGCL9v4obyNBjaM=", + "requires": { + "@firebase/auth-types": "0.9.5" + } + }, + "@firebase/auth-interop-types": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/@firebase/auth-interop-types/download/@firebase/auth-interop-types-0.1.2.tgz", + "integrity": "sha1-L3aro5tPIsUrtLLrfzG+tuwxKzM=" + }, + "@firebase/auth-types": { + "version": "0.9.5", + "resolved": "https://registry.npm.taobao.org/@firebase/auth-types/download/@firebase/auth-types-0.9.5.tgz", + "integrity": "sha1-FtbsLKAlkVKAiIQPgmymbjlPxP0=" + }, + "@firebase/component": { + "version": "0.1.5", + "resolved": "https://registry.npm.taobao.org/@firebase/component/download/@firebase/component-0.1.5.tgz", + "integrity": "sha1-V4NjOQc+vrrVy/yB2D0FB7NjDKY=", + "requires": { + "@firebase/util": "0.2.40", + "tslib": "1.10.0" + } + }, + "@firebase/database": { + "version": "0.5.21", + "resolved": "https://registry.npm.taobao.org/@firebase/database/download/@firebase/database-0.5.21.tgz", + "integrity": "sha1-JUQ5mp4Bi6tCQVWZMsyuaprhyzU=", + "requires": { + "@firebase/auth-interop-types": "0.1.2", + "@firebase/component": "0.1.5", + "@firebase/database-types": "0.4.11", + "@firebase/logger": "0.1.35", + "@firebase/util": "0.2.40", + "faye-websocket": "0.11.3", + "tslib": "1.10.0" + }, + "dependencies": { + "faye-websocket": { + "version": "0.11.3", + "resolved": "https://registry.npm.taobao.org/faye-websocket/download/faye-websocket-0.11.3.tgz", + "integrity": "sha1-XA6aiWjokSwoZjn96XeosgnyUI4=", + "requires": { + "websocket-driver": ">=0.5.1" + } + } + } + }, + "@firebase/database-types": { + "version": "0.4.11", + "resolved": "https://registry.npm.taobao.org/@firebase/database-types/download/@firebase/database-types-0.4.11.tgz", + "integrity": "sha1-92oeZo5yFaKFXe0qB0YBoJEda9s=", + "requires": { + "@firebase/app-types": "0.5.1" + } + }, + "@firebase/firestore": { + "version": "1.10.1", + "resolved": "https://registry.npm.taobao.org/@firebase/firestore/download/@firebase/firestore-1.10.1.tgz", + "integrity": "sha1-0AzPH281biuguv7nGglkbOu/qG8=", + "requires": { + "@firebase/component": "0.1.5", + "@firebase/firestore-types": "1.9.1", + "@firebase/logger": "0.1.35", + "@firebase/util": "0.2.40", + "@firebase/webchannel-wrapper": "0.2.35", + "@grpc/proto-loader": "^0.5.0", + "grpc": "1.24.2", + "tslib": "1.10.0" + } + }, + "@firebase/firestore-types": { + "version": "1.9.1", + "resolved": "https://registry.npm.taobao.org/@firebase/firestore-types/download/@firebase/firestore-types-1.9.1.tgz", + "integrity": "sha1-KlNys/MUkBGG7b/US4mPkSDPOkg=" + }, + "@firebase/functions": { + "version": "0.4.32", + "resolved": "https://registry.npm.taobao.org/@firebase/functions/download/@firebase/functions-0.4.32.tgz", + "integrity": "sha1-HXO6BmtuIaSOGySeCIMRGU4olFE=", + "requires": { + "@firebase/component": "0.1.5", + "@firebase/functions-types": "0.3.14", + "@firebase/messaging-types": "0.4.2", + "isomorphic-fetch": "2.2.1", + "tslib": "1.10.0" + } + }, + "@firebase/functions-types": { + "version": "0.3.14", + "resolved": "https://registry.npm.taobao.org/@firebase/functions-types/download/@firebase/functions-types-0.3.14.tgz", + "integrity": "sha1-ar3r/ibAiW4Bdu39F1AgEbaMMlk=" + }, + "@firebase/installations": { + "version": "0.4.2", + "resolved": "https://registry.npm.taobao.org/@firebase/installations/download/@firebase/installations-0.4.2.tgz", + "integrity": "sha1-Rxpsk2sCmqFeJQXceSV+KUdGddQ=", + "requires": { + "@firebase/component": "0.1.5", + "@firebase/installations-types": "0.3.1", + "@firebase/util": "0.2.40", + "idb": "3.0.2", + "tslib": "1.10.0" + } + }, + "@firebase/installations-types": { + "version": "0.3.1", + "resolved": "https://registry.npm.taobao.org/@firebase/installations-types/download/@firebase/installations-types-0.3.1.tgz", + "integrity": "sha1-+fkmQWgIEGDvgAfRoCtaJTF8MXY=" + }, + "@firebase/logger": { + "version": "0.1.35", + "resolved": "https://registry.npm.taobao.org/@firebase/logger/download/@firebase/logger-0.1.35.tgz", + "integrity": "sha1-6ZOOyl2BtytYG5pMkDH/69sx5W0=" + }, + "@firebase/messaging": { + "version": "0.6.4", + "resolved": "https://registry.npm.taobao.org/@firebase/messaging/download/@firebase/messaging-0.6.4.tgz", + "integrity": "sha1-YLZTfD6ubQm58WeMXi/s7Z282yg=", + "requires": { + "@firebase/component": "0.1.5", + "@firebase/installations": "0.4.2", + "@firebase/messaging-types": "0.4.2", + "@firebase/util": "0.2.40", + "idb": "3.0.2", + "tslib": "1.10.0" + } + }, + "@firebase/messaging-types": { + "version": "0.4.2", + "resolved": "https://registry.npm.taobao.org/@firebase/messaging-types/download/@firebase/messaging-types-0.4.2.tgz", + "integrity": "sha1-fNhIn7zOF8HzVTdkHEF4gyafrQI=" + }, + "@firebase/performance": { + "version": "0.2.32", + "resolved": "https://registry.npm.taobao.org/@firebase/performance/download/@firebase/performance-0.2.32.tgz", + "integrity": "sha1-D4VUD3/mFtIknqYFBHHws/rJhZg=", + "requires": { + "@firebase/component": "0.1.5", + "@firebase/installations": "0.4.2", + "@firebase/logger": "0.1.35", + "@firebase/performance-types": "0.0.9", + "@firebase/util": "0.2.40", + "tslib": "1.10.0" + } + }, + "@firebase/performance-types": { + "version": "0.0.9", + "resolved": "https://registry.npm.taobao.org/@firebase/performance-types/download/@firebase/performance-types-0.0.9.tgz", + "integrity": "sha1-JyJ7kRSc9Xw/WxX8GiNP3HkaZa4=" + }, + "@firebase/polyfill": { + "version": "0.3.31", + "resolved": "https://registry.npm.taobao.org/@firebase/polyfill/download/@firebase/polyfill-0.3.31.tgz", + "integrity": "sha1-4ixRtuSBla14huvvJakA3rCGYOQ=", + "requires": { + "core-js": "3.6.2", + "promise-polyfill": "8.1.3", + "whatwg-fetch": "2.0.4" + }, + "dependencies": { + "core-js": { + "version": "3.6.2", + "resolved": "https://registry.npm.taobao.org/core-js/download/core-js-3.6.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-3.6.2.tgz", + "integrity": "sha1-J5nqGlkFDwrPUN/om5FtZQOxbKo=" + }, + "whatwg-fetch": { + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/whatwg-fetch/download/whatwg-fetch-2.0.4.tgz", + "integrity": "sha1-3eal3zFfnTmZGqF2IYU9cguFVm8=" + } + } + }, + "@firebase/remote-config": { + "version": "0.1.13", + "resolved": "https://registry.npm.taobao.org/@firebase/remote-config/download/@firebase/remote-config-0.1.13.tgz", + "integrity": "sha1-SuKavyThP8ZzKdCaCOB/pmSG3ZI=", + "requires": { + "@firebase/component": "0.1.5", + "@firebase/installations": "0.4.2", + "@firebase/logger": "0.1.35", + "@firebase/remote-config-types": "0.1.6", + "@firebase/util": "0.2.40", + "tslib": "1.10.0" + } + }, + "@firebase/remote-config-types": { + "version": "0.1.6", + "resolved": "https://registry.npm.taobao.org/@firebase/remote-config-types/download/@firebase/remote-config-types-0.1.6.tgz", + "integrity": "sha1-n4Hl7e5nscKiWM9gnHxVFKBXXoY=" + }, + "@firebase/storage": { + "version": "0.3.26", + "resolved": "https://registry.npm.taobao.org/@firebase/storage/download/@firebase/storage-0.3.26.tgz", + "integrity": "sha1-QGggkoHlafGC/IowSgzBNgEZW74=", + "requires": { + "@firebase/component": "0.1.5", + "@firebase/storage-types": "0.3.9", + "@firebase/util": "0.2.40", + "tslib": "1.10.0" + } + }, + "@firebase/storage-types": { + "version": "0.3.9", + "resolved": "https://registry.npm.taobao.org/@firebase/storage-types/download/@firebase/storage-types-0.3.9.tgz", + "integrity": "sha1-Do9lMcgMYRDfgAtg1MMBN1REALA=" + }, + "@firebase/util": { + "version": "0.2.40", + "resolved": "https://registry.npm.taobao.org/@firebase/util/download/@firebase/util-0.2.40.tgz", + "integrity": "sha1-uMM0N8Y+CHScTIcgJdcHIdaQqmk=", + "requires": { + "tslib": "1.10.0" + } + }, + "@firebase/webchannel-wrapper": { + "version": "0.2.35", + "resolved": "https://registry.npm.taobao.org/@firebase/webchannel-wrapper/download/@firebase/webchannel-wrapper-0.2.35.tgz", + "integrity": "sha1-Iy6FdpjvswzdqYtvanoxqQXRYUc=" + }, + "@grpc/proto-loader": { + "version": "0.5.3", + "resolved": "https://registry.npm.taobao.org/@grpc/proto-loader/download/@grpc/proto-loader-0.5.3.tgz", + "integrity": "sha1-ojMHByC/dWDE1w4p55UMclSaEyw=", + "requires": { + "lodash.camelcase": "^4.3.0", + "protobufjs": "^6.8.6" + } + }, + "@istanbuljs/schema": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/@istanbuljs/schema/download/@istanbuljs/schema-0.1.2.tgz", + "integrity": "sha1-JlIL8Jq+SlZEzVQU43ElqJVCQd0=", + "dev": true + }, + "@ngtools/webpack": { + "version": "9.0.1", + "resolved": "https://registry.npm.taobao.org/@ngtools/webpack/download/@ngtools/webpack-9.0.1.tgz", + "integrity": "sha1-Nv/1smmVmzfu5MI8jCK9doaqSGA=", + "dev": true, + "requires": { + "@angular-devkit/core": "9.0.1", + "enhanced-resolve": "4.1.1", + "rxjs": "6.5.3", + "webpack-sources": "1.4.3" + }, + "dependencies": { + "rxjs": { + "version": "6.5.3", + "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.3.tgz", + "integrity": "sha1-UQ4mMX9NuRp+sd532d2boKSJmjo=", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } + } + }, + "@protobufjs/aspromise": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@protobufjs/aspromise/download/@protobufjs/aspromise-1.1.2.tgz", + "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" + }, + "@protobufjs/base64": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@protobufjs/base64/download/@protobufjs/base64-1.1.2.tgz", + "integrity": "sha1-TIVzDlm5ofHzSQR9vyQpYDS7JzU=" + }, + "@protobufjs/codegen": { + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/@protobufjs/codegen/download/@protobufjs/codegen-2.0.4.tgz", + "integrity": "sha1-fvN/DQEPsCitGtWXIuUG2SYoFcs=" + }, + "@protobufjs/eventemitter": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/@protobufjs/eventemitter/download/@protobufjs/eventemitter-1.1.0.tgz", + "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" + }, + "@protobufjs/fetch": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/@protobufjs/fetch/download/@protobufjs/fetch-1.1.0.tgz", + "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", + "requires": { + "@protobufjs/aspromise": "^1.1.1", + "@protobufjs/inquire": "^1.1.0" + } + }, + "@protobufjs/float": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/@protobufjs/float/download/@protobufjs/float-1.0.2.tgz", + "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" + }, + "@protobufjs/inquire": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/@protobufjs/inquire/download/@protobufjs/inquire-1.1.0.tgz", + "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" + }, + "@protobufjs/path": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@protobufjs/path/download/@protobufjs/path-1.1.2.tgz", + "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" + }, + "@protobufjs/pool": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/@protobufjs/pool/download/@protobufjs/pool-1.1.0.tgz", + "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" + }, + "@protobufjs/utf8": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/@protobufjs/utf8/download/@protobufjs/utf8-1.1.0.tgz", + "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" + }, + "@schematics/angular": { + "version": "9.0.1", + "resolved": "https://registry.npm.taobao.org/@schematics/angular/download/@schematics/angular-9.0.1.tgz", + "integrity": "sha1-GwjJONpNzuJHK0ZB88vJBtbriK8=", + "dev": true, + "requires": { + "@angular-devkit/core": "9.0.1", + "@angular-devkit/schematics": "9.0.1" + } + }, + "@schematics/update": { + "version": "0.900.1", + "resolved": "https://registry.npm.taobao.org/@schematics/update/download/@schematics/update-0.900.1.tgz", + "integrity": "sha1-SSO+iLlLXbCwTNLH8+deZ6ShNog=", + "dev": true, + "requires": { + "@angular-devkit/core": "9.0.1", + "@angular-devkit/schematics": "9.0.1", + "@yarnpkg/lockfile": "1.1.0", + "ini": "1.3.5", + "npm-package-arg": "^7.0.0", + "pacote": "9.5.8", + "rxjs": "6.5.3", + "semver": "6.3.0", + "semver-intersect": "1.4.0" + }, + "dependencies": { + "npm-package-arg": { + "version": "7.0.0", + "resolved": "https://registry.npm.taobao.org/npm-package-arg/download/npm-package-arg-7.0.0.tgz", + "integrity": "sha1-Us3wi0kcDFnfaHxMklqJEC73lKU=", + "dev": true, + "requires": { + "hosted-git-info": "^3.0.2", + "osenv": "^0.1.5", + "semver": "^5.6.0", + "validate-npm-package-name": "^3.0.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1580434257623&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "rxjs": { + "version": "6.5.3", + "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.3.tgz", + "integrity": "sha1-UQ4mMX9NuRp+sd532d2boKSJmjo=", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } + } + }, + "@turf/along": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/along/download/@turf/along-5.1.5.tgz", + "integrity": "sha1-YdbmplhKzdq1asVYTge/jL5fi+s=", + "requires": { + "@turf/bearing": "^5.1.5", + "@turf/destination": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5" + } + }, + "@turf/area": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/area/download/@turf/area-5.1.5.tgz", + "integrity": "sha1-79iZv9Jgzb0VQbKjwVX4pdLu+h0=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/bbox": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/bbox/download/@turf/bbox-5.1.5.tgz", + "integrity": "sha1-MFHfUUrUxQ9KT5uKLRX9i2hA7aM=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/bbox-clip": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/bbox-clip/download/@turf/bbox-clip-5.1.5.tgz", + "integrity": "sha1-M2S1Mo3/nzz0HZ4C7a/zdNFQzIQ=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "lineclip": "^1.1.5" + } + }, + "@turf/bbox-polygon": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/bbox-polygon/download/@turf/bbox-polygon-5.1.5.tgz", + "integrity": "sha1-auuk7VHYXSluD3w4uIwznwHu4CQ=", + "requires": { + "@turf/helpers": "^5.1.5" + } + }, + "@turf/bearing": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/bearing/download/@turf/bearing-5.1.5.tgz", + "integrity": "sha1-egt5ATbE70eX8CRjBdRcvi0ns/c=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/bezier-spline": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/bezier-spline/download/@turf/bezier-spline-5.1.5.tgz", + "integrity": "sha1-WaJ7ul17l+8Vqz/VpA+9I4cEm8o=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/boolean-clockwise": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-clockwise/download/@turf/boolean-clockwise-5.1.5.tgz", + "integrity": "sha1-MwK32sYsXikaB4nimvcoM4f6nes=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/boolean-contains": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-contains/download/@turf/boolean-contains-5.1.5.tgz", + "integrity": "sha1-WW1jruY2961T7pn5/yTJaZSg7xQ=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/boolean-point-on-line": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/boolean-crosses": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-crosses/download/@turf/boolean-crosses-5.1.5.tgz", + "integrity": "sha1-Ab+uollvFk3kpNMlCU3HwlXHFdY=", + "requires": { + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/line-intersect": "^5.1.5", + "@turf/polygon-to-line": "^5.1.5" + } + }, + "@turf/boolean-disjoint": { + "version": "5.1.6", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-disjoint/download/@turf/boolean-disjoint-5.1.6.tgz", + "integrity": "sha1-P72HCEsmkTP1/RVyXes8ZnX7ip0=", + "requires": { + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/line-intersect": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/polygon-to-line": "^5.1.5" + } + }, + "@turf/boolean-equal": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-equal/download/@turf/boolean-equal-5.1.5.tgz", + "integrity": "sha1-Kfj21gu4RQff12WzIlTbjnLJOKQ=", + "requires": { + "@turf/clean-coords": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "geojson-equality": "0.1.6" + } + }, + "@turf/boolean-overlap": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-overlap/download/@turf/boolean-overlap-5.1.5.tgz", + "integrity": "sha1-DU5kxSx3CijpPZ7834qLg3OsznU=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/line-intersect": "^5.1.5", + "@turf/line-overlap": "^5.1.5", + "@turf/meta": "^5.1.5", + "geojson-equality": "0.1.6" + } + }, + "@turf/boolean-parallel": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-parallel/download/@turf/boolean-parallel-5.1.5.tgz", + "integrity": "sha1-c5NYR16ltlx+GCejw+DopofTqF0=", + "requires": { + "@turf/clean-coords": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/line-segment": "^5.1.5", + "@turf/rhumb-bearing": "^5.1.5" + } + }, + "@turf/boolean-point-in-polygon": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-point-in-polygon/download/@turf/boolean-point-in-polygon-5.1.5.tgz", + "integrity": "sha1-8BzBlNHgMKVIv9qYHLpDz9YpQbc=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/boolean-point-on-line": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-point-on-line/download/@turf/boolean-point-on-line-5.1.5.tgz", + "integrity": "sha1-9jPF/4Aq0ku48Vja269v9KAj3Xs=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/boolean-within": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/boolean-within/download/@turf/boolean-within-5.1.5.tgz", + "integrity": "sha1-RxBdVtB1Kp0Pv81Dw2pfkUnchpc=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/boolean-point-on-line": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/buffer": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/buffer/download/@turf/buffer-5.1.5.tgz", + "integrity": "sha1-hByWJ8+5dLEirE4alW8EZrwCMcQ=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/center": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/projection": "^5.1.5", + "d3-geo": "1.7.1", + "turf-jsts": "*" + } + }, + "@turf/center": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/center/download/@turf/center-5.1.5.tgz", + "integrity": "sha1-RKss2VT2PA03dX9xWKmcPvURS4A=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/helpers": "^5.1.5" + } + }, + "@turf/center-mean": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/center-mean/download/@turf/center-mean-5.1.5.tgz", + "integrity": "sha1-jI6YdTkeXwnw5uePXWYbiLIQigo=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/center-median": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/center-median/download/@turf/center-median-5.1.5.tgz", + "integrity": "sha1-u0Yb/noqSGAdikcnaFcYcjoUqHI=", + "requires": { + "@turf/center-mean": "^5.1.5", + "@turf/centroid": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/center-of-mass": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/center-of-mass/download/@turf/center-of-mass-5.1.5.tgz", + "integrity": "sha1-TTvXnYhJjbq4Mk1PafAyL2Uguco=", + "requires": { + "@turf/centroid": "^5.1.5", + "@turf/convex": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/centroid": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/centroid/download/@turf/centroid-5.1.5.tgz", + "integrity": "sha1-d4radCFjNQIa2P0OemWoNJ1Tx2k=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/circle": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/circle/download/@turf/circle-5.1.5.tgz", + "integrity": "sha1-mxV3g1UIq1L7HBCypQZcuiuHtqU=", + "requires": { + "@turf/destination": "^5.1.5", + "@turf/helpers": "^5.1.5" + } + }, + "@turf/clean-coords": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/clean-coords/download/@turf/clean-coords-5.1.5.tgz", + "integrity": "sha1-EoAKmKeMmkUqcuxChJPEOs8q2h8=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/clone": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/clone/download/@turf/clone-5.1.5.tgz", + "integrity": "sha1-JT6NNUdxgZduM636tQoPAqfw42c=", + "requires": { + "@turf/helpers": "^5.1.5" + } + }, + "@turf/clusters": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/clusters/download/@turf/clusters-5.1.5.tgz", + "integrity": "sha1-ZzpeXxsZycq6vFfJCO6t1oIiTdQ=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/clusters-dbscan": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/clusters-dbscan/download/@turf/clusters-dbscan-5.1.5.tgz", + "integrity": "sha1-V4H7TmVsdHoLjpk333MYHAMJ4m8=", + "requires": { + "@turf/clone": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "density-clustering": "1.3.0" + } + }, + "@turf/clusters-kmeans": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/clusters-kmeans/download/@turf/clusters-kmeans-5.1.5.tgz", + "integrity": "sha1-/W3+qLEzuovcI3CsPKzuFYejAvE=", + "requires": { + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "skmeans": "0.9.7" + } + }, + "@turf/collect": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/collect/download/@turf/collect-5.1.5.tgz", + "integrity": "sha1-/pjJqMIY7PJP/DPXApUXt8GbKj4=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/helpers": "^5.1.5", + "rbush": "^2.0.1" + }, + "dependencies": { + "quickselect": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/quickselect/download/quickselect-1.1.1.tgz", + "integrity": "sha1-hS5BLOQY8jetW2YNcM/6xkeulMI=" + }, + "rbush": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/rbush/download/rbush-2.0.2.tgz", + "integrity": "sha1-u2AFwnMbe6HVqaA1dykn0WphRgU=", + "requires": { + "quickselect": "^1.0.1" + } + } + } + }, + "@turf/combine": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/combine/download/@turf/combine-5.1.5.tgz", + "integrity": "sha1-uxS976VVBDVxlfwaEkzX1TqMiQU=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/concave": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/concave/download/@turf/concave-5.1.5.tgz", + "integrity": "sha1-I7uqw4fQNLlldKG9cNBZI3qdIRA=", + "requires": { + "@turf/clone": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/tin": "^5.1.5", + "topojson-client": "3.x", + "topojson-server": "3.x" + } + }, + "@turf/convex": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/convex/download/@turf/convex-5.1.5.tgz", + "integrity": "sha1-Dfk3fdACIWzpghsH9wXgN9rj4B0=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5", + "concaveman": "*" + } + }, + "@turf/destination": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/destination/download/@turf/destination-5.1.5.tgz", + "integrity": "sha1-7TU4G9zoO73cvQei4rzivd/7zCY=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/difference": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/difference/download/@turf/difference-5.1.5.tgz", + "integrity": "sha1-ok1pCnvKgD8QkKnuO52Qb8Q3H0I=", + "requires": { + "@turf/area": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "turf-jsts": "*" + } + }, + "@turf/dissolve": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/dissolve/download/@turf/dissolve-5.1.5.tgz", + "integrity": "sha1-LPEzqQIdIWODHD16lY1lB/nYGTg=", + "requires": { + "@turf/boolean-overlap": "^5.1.5", + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/line-intersect": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/union": "^5.1.5", + "geojson-rbush": "2.1.0", + "get-closest": "*" + } + }, + "@turf/distance": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/distance/download/@turf/distance-5.1.5.tgz", + "integrity": "sha1-Oc8YIEu/h1h9cH5gmmARiQkVZAk=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/ellipse": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/ellipse/download/@turf/ellipse-5.1.5.tgz", + "integrity": "sha1-1XyrhTmFkgzeYCKKeNgEWAJcVL4=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/rhumb-destination": "^5.1.5", + "@turf/transform-rotate": "^5.1.5" + } + }, + "@turf/envelope": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/envelope/download/@turf/envelope-5.1.5.tgz", + "integrity": "sha1-UBMwnFP91D369LWIplw/7X28EIo=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/bbox-polygon": "^5.1.5", + "@turf/helpers": "^5.1.5" + } + }, + "@turf/explode": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/explode/download/@turf/explode-5.1.5.tgz", + "integrity": "sha1-sSsvd0AEobSPYrqVsgocZVo94Rg=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/flatten": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/flatten/download/@turf/flatten-5.1.5.tgz", + "integrity": "sha1-2iknBnEz7WFpsLnWB7khVoiqE1g=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/flip": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/flip/download/@turf/flip-5.1.5.tgz", + "integrity": "sha1-Q29kOnIvDKU7n85jjkaT2zYIpoo=", + "requires": { + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/great-circle": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/great-circle/download/@turf/great-circle-5.1.5.tgz", + "integrity": "sha1-3r+2cc5HVQnLY3MBwV/PzPo1mpM=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/helpers": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/helpers/download/@turf/helpers-5.1.5.tgz", + "integrity": "sha1-FTQFInq5M9AEpbuWQantmZ/L4M8=" + }, + "@turf/hex-grid": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/hex-grid/download/@turf/hex-grid-5.1.5.tgz", + "integrity": "sha1-m3ul/s9QUfHoWJL3E/zlxVBQKmo=", + "requires": { + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/intersect": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/interpolate": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/interpolate/download/@turf/interpolate-5.1.5.tgz", + "integrity": "sha1-DxLwq3VtbdEK+ykMpuh3ve8BPqo=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/centroid": "^5.1.5", + "@turf/clone": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/hex-grid": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/point-grid": "^5.1.5", + "@turf/square-grid": "^5.1.5", + "@turf/triangle-grid": "^5.1.5" + } + }, + "@turf/intersect": { + "version": "5.1.6", + "resolved": "https://registry.npm.taobao.org/@turf/intersect/download/@turf/intersect-5.1.6.tgz", + "integrity": "sha1-E//M63pSnCp+XWaBqzumcfho6V8=", + "requires": { + "@turf/clean-coords": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/truncate": "^5.1.5", + "turf-jsts": "*" + } + }, + "@turf/invariant": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/invariant/download/@turf/invariant-5.1.5.tgz", + "integrity": "sha1-9Z9P76CSJLFdzhZR+QPIaNV6JOE=", + "requires": { + "@turf/helpers": "^5.1.5" + } + }, + "@turf/isobands": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/isobands/download/@turf/isobands-5.1.5.tgz", + "integrity": "sha1-a0TO9YTVUaMTBBh68jtKFYLj8I0=", + "requires": { + "@turf/area": "^5.1.5", + "@turf/bbox": "^5.1.5", + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/explode": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/isolines": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/isolines/download/@turf/isolines-5.1.5.tgz", + "integrity": "sha1-irTn9Cuz38VGFOW/FVln9+VdLeE=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/kinks": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/kinks/download/@turf/kinks-5.1.5.tgz", + "integrity": "sha1-irtpYdm7AQchO63fLCwmQNAlaYA=", + "requires": { + "@turf/helpers": "^5.1.5" + } + }, + "@turf/length": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/length/download/@turf/length-5.1.5.tgz", + "integrity": "sha1-86X4ZMK5lqi7RxeUU1ofrxLuvvs=", + "requires": { + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/line-arc": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-arc/download/@turf/line-arc-5.1.5.tgz", + "integrity": "sha1-AHinRHg1oSrkFKIR+aZNEYYVDhU=", + "requires": { + "@turf/circle": "^5.1.5", + "@turf/destination": "^5.1.5", + "@turf/helpers": "^5.1.5" + } + }, + "@turf/line-chunk": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-chunk/download/@turf/line-chunk-5.1.5.tgz", + "integrity": "sha1-kQqFwFwG2dD5w4l3oF4IGNUIXEI=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/length": "^5.1.5", + "@turf/line-slice-along": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/line-intersect": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-intersect/download/@turf/line-intersect-5.1.5.tgz", + "integrity": "sha1-DikHGuQDKV5JFyO8SfXPrI0R3fM=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/line-segment": "^5.1.5", + "@turf/meta": "^5.1.5", + "geojson-rbush": "2.1.0" + } + }, + "@turf/line-offset": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-offset/download/@turf/line-offset-5.1.5.tgz", + "integrity": "sha1-KrWy8In4yRPiMdmUN4553KkLWh4=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/line-overlap": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-overlap/download/@turf/line-overlap-5.1.5.tgz", + "integrity": "sha1-lDxvh6A4bcQ9+sEdKz/5wRLNP2A=", + "requires": { + "@turf/boolean-point-on-line": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/line-segment": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/nearest-point-on-line": "^5.1.5", + "geojson-rbush": "2.1.0" + } + }, + "@turf/line-segment": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-segment/download/@turf/line-segment-5.1.5.tgz", + "integrity": "sha1-Mgeq7lRqskw9jcPMY/kcdwuAE+U=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/line-slice": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-slice/download/@turf/line-slice-5.1.5.tgz", + "integrity": "sha1-Hs/OFGKjeFeXVM7fRGTN4mgp8rU=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/nearest-point-on-line": "^5.1.5" + } + }, + "@turf/line-slice-along": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-slice-along/download/@turf/line-slice-along-5.1.5.tgz", + "integrity": "sha1-7drQoh70efKWihG9LdcomiEy6aU=", + "requires": { + "@turf/bearing": "^5.1.5", + "@turf/destination": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5" + } + }, + "@turf/line-split": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-split/download/@turf/line-split-5.1.5.tgz", + "integrity": "sha1-Wy30w3YZty73JbUWPPmSbVVArLc=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/line-intersect": "^5.1.5", + "@turf/line-segment": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/nearest-point-on-line": "^5.1.5", + "@turf/square": "^5.1.5", + "@turf/truncate": "^5.1.5", + "geojson-rbush": "2.1.0" + } + }, + "@turf/line-to-polygon": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/line-to-polygon/download/@turf/line-to-polygon-5.1.5.tgz", + "integrity": "sha1-ITz0Gmj4Ikd4ujnTGH3sPouBhlo=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/mask": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/mask/download/@turf/mask-5.1.5.tgz", + "integrity": "sha1-mrD+8aJyyY/j70kvn/thggayQtU=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/union": "^5.1.5", + "rbush": "^2.0.1" + }, + "dependencies": { + "quickselect": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/quickselect/download/quickselect-1.1.1.tgz", + "integrity": "sha1-hS5BLOQY8jetW2YNcM/6xkeulMI=" + }, + "rbush": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/rbush/download/rbush-2.0.2.tgz", + "integrity": "sha1-u2AFwnMbe6HVqaA1dykn0WphRgU=", + "requires": { + "quickselect": "^1.0.1" + } + } + } + }, + "@turf/meta": { + "version": "5.1.6", + "resolved": "https://registry.npm.taobao.org/@turf/meta/download/@turf/meta-5.1.6.tgz", + "integrity": "sha1-wgqGPt7Qhp+yhUje6Ik0G8y0akY=", + "requires": { + "@turf/helpers": "^5.1.5" + } + }, + "@turf/midpoint": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/midpoint/download/@turf/midpoint-5.1.5.tgz", + "integrity": "sha1-4mH2srDqgSTM7/VSomLdRlydBfA=", + "requires": { + "@turf/bearing": "^5.1.5", + "@turf/destination": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5" + } + }, + "@turf/nearest-point": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/nearest-point/download/@turf/nearest-point-5.1.5.tgz", + "integrity": "sha1-EgUN5Bw5hEMiTHl43g9iE5ANNPs=", + "requires": { + "@turf/clone": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/nearest-point-on-line": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/nearest-point-on-line/download/@turf/nearest-point-on-line-5.1.5.tgz", + "integrity": "sha1-VgauKX8VlHUkvqUaKp71HsG/nDY=", + "requires": { + "@turf/bearing": "^5.1.5", + "@turf/destination": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/line-intersect": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/nearest-point-to-line": { + "version": "5.1.6", + "resolved": "https://registry.npm.taobao.org/@turf/nearest-point-to-line/download/@turf/nearest-point-to-line-5.1.6.tgz", + "integrity": "sha1-0wt2BuVqPc6X9NttRdNSRw4LP4g=", + "requires": { + "@turf/helpers": "6.x", + "@turf/invariant": "6.x", + "@turf/meta": "6.x", + "@turf/point-to-line-distance": "^5.1.5", + "object-assign": "*" + }, + "dependencies": { + "@turf/helpers": { + "version": "6.1.4", + "resolved": "https://registry.npm.taobao.org/@turf/helpers/download/@turf/helpers-6.1.4.tgz", + "integrity": "sha1-1v1+vmeC3ZyH3KVVm9pcSK5MODY=" + }, + "@turf/invariant": { + "version": "6.1.2", + "resolved": "https://registry.npm.taobao.org/@turf/invariant/download/@turf/invariant-6.1.2.tgz", + "integrity": "sha1-YBPtYhn5rC7a2psx4d+lkY6wovc=", + "requires": { + "@turf/helpers": "6.x" + } + }, + "@turf/meta": { + "version": "6.0.2", + "resolved": "https://registry.npm.taobao.org/@turf/meta/download/@turf/meta-6.0.2.tgz", + "integrity": "sha1-65KVESbSSmE6wbe5nXM/zCD9MM8=", + "requires": { + "@turf/helpers": "6.x" + } + } + } + }, + "@turf/planepoint": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/planepoint/download/@turf/planepoint-5.1.5.tgz", + "integrity": "sha1-GLvfAG91ne9eQsagBsn53oGyt/8=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/point-grid": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/point-grid/download/@turf/point-grid-5.1.5.tgz", + "integrity": "sha1-MFFBJI9Quv42zn5mukuX56sjaIc=", + "requires": { + "@turf/boolean-within": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/point-on-feature": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/point-on-feature/download/@turf/point-on-feature-5.1.5.tgz", + "integrity": "sha1-MMfwMkMCd8ZBjZbSieRba/shP+c=", + "requires": { + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/center": "^5.1.5", + "@turf/explode": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/nearest-point": "^5.1.5" + } + }, + "@turf/point-to-line-distance": { + "version": "5.1.6", + "resolved": "https://registry.npm.taobao.org/@turf/point-to-line-distance/download/@turf/point-to-line-distance-5.1.6.tgz", + "integrity": "sha1-lU9stoVGQgoDDYSAOSUDJklw0tg=", + "requires": { + "@turf/bearing": "6.x", + "@turf/distance": "6.x", + "@turf/helpers": "6.x", + "@turf/invariant": "6.x", + "@turf/meta": "6.x", + "@turf/projection": "6.x", + "@turf/rhumb-bearing": "6.x", + "@turf/rhumb-distance": "6.x" + }, + "dependencies": { + "@turf/bearing": { + "version": "6.0.1", + "resolved": "https://registry.npm.taobao.org/@turf/bearing/download/@turf/bearing-6.0.1.tgz", + "integrity": "sha1-jaXRcJLlcfFwzee/suWw10kjyS0=", + "requires": { + "@turf/helpers": "6.x", + "@turf/invariant": "6.x" + } + }, + "@turf/clone": { + "version": "6.0.2", + "resolved": "https://registry.npm.taobao.org/@turf/clone/download/@turf/clone-6.0.2.tgz", + "integrity": "sha1-dWPOu7Pi4Z82FZm7JERn4NzCBck=", + "requires": { + "@turf/helpers": "6.x" + } + }, + "@turf/distance": { + "version": "6.0.1", + "resolved": "https://registry.npm.taobao.org/@turf/distance/download/@turf/distance-6.0.1.tgz", + "integrity": "sha1-B2Hyh4QobnhlpCfE5+NZNWnC3qg=", + "requires": { + "@turf/helpers": "6.x", + "@turf/invariant": "6.x" + } + }, + "@turf/helpers": { + "version": "6.1.4", + "resolved": "https://registry.npm.taobao.org/@turf/helpers/download/@turf/helpers-6.1.4.tgz", + "integrity": "sha1-1v1+vmeC3ZyH3KVVm9pcSK5MODY=" + }, + "@turf/invariant": { + "version": "6.1.2", + "resolved": "https://registry.npm.taobao.org/@turf/invariant/download/@turf/invariant-6.1.2.tgz", + "integrity": "sha1-YBPtYhn5rC7a2psx4d+lkY6wovc=", + "requires": { + "@turf/helpers": "6.x" + } + }, + "@turf/meta": { + "version": "6.0.2", + "resolved": "https://registry.npm.taobao.org/@turf/meta/download/@turf/meta-6.0.2.tgz", + "integrity": "sha1-65KVESbSSmE6wbe5nXM/zCD9MM8=", + "requires": { + "@turf/helpers": "6.x" + } + }, + "@turf/projection": { + "version": "6.0.1", + "resolved": "https://registry.npm.taobao.org/@turf/projection/download/@turf/projection-6.0.1.tgz", + "integrity": "sha1-vecK6EQbnO/d8m1xx9t0vD2XkrE=", + "requires": { + "@turf/clone": "6.x", + "@turf/helpers": "6.x", + "@turf/meta": "6.x" + } + }, + "@turf/rhumb-bearing": { + "version": "6.0.1", + "resolved": "https://registry.npm.taobao.org/@turf/rhumb-bearing/download/@turf/rhumb-bearing-6.0.1.tgz", + "integrity": "sha1-GCxMIf6VHgl/tGiuEo3CLvYHjz8=", + "requires": { + "@turf/helpers": "6.x", + "@turf/invariant": "6.x" + } + }, + "@turf/rhumb-distance": { + "version": "6.0.1", + "resolved": "https://registry.npm.taobao.org/@turf/rhumb-distance/download/@turf/rhumb-distance-6.0.1.tgz", + "integrity": "sha1-rhxcgjtLBPdc1/wkD3+TZH24vdQ=", + "requires": { + "@turf/helpers": "6.x", + "@turf/invariant": "6.x" + } + } + } + }, + "@turf/points-within-polygon": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/points-within-polygon/download/@turf/points-within-polygon-5.1.5.tgz", + "integrity": "sha1-K4VaXfOq2lfC7oIKB1SrlJKKIzc=", + "requires": { + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/polygon-tangents": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/polygon-tangents/download/@turf/polygon-tangents-5.1.5.tgz", + "integrity": "sha1-K/AJkUcwJbF44lDcfLmuVAm71lI=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/polygon-to-line": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/polygon-to-line/download/@turf/polygon-to-line-5.1.5.tgz", + "integrity": "sha1-I7tEjYTcTGUZmaxhGjbZHFklA2o=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/polygonize": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/polygonize/download/@turf/polygonize-5.1.5.tgz", + "integrity": "sha1-BJP6EYefOdELmtAs5qI+lC0IqjI=", + "requires": { + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/envelope": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/projection": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/projection/download/@turf/projection-5.1.5.tgz", + "integrity": "sha1-JFF+7rLzaBa6n3EueubWo2jt91c=", + "requires": { + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/random": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/random/download/@turf/random-5.1.5.tgz", + "integrity": "sha1-sy78k0Vgroulfo67UfJBw5+6Lns=", + "requires": { + "@turf/helpers": "^5.1.5" + } + }, + "@turf/rewind": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/rewind/download/@turf/rewind-5.1.5.tgz", + "integrity": "sha1-nqPbSmi3PB/R3RH1djGxQ8/vock=", + "requires": { + "@turf/boolean-clockwise": "^5.1.5", + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/rhumb-bearing": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/rhumb-bearing/download/@turf/rhumb-bearing-5.1.5.tgz", + "integrity": "sha1-rPalAkJ+uMSeGM2mrg7/qwxd3NI=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/rhumb-destination": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/rhumb-destination/download/@turf/rhumb-destination-5.1.5.tgz", + "integrity": "sha1-sbKuuSFUfyrAwamUtqEw+SRjx0I=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/rhumb-distance": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/rhumb-distance/download/@turf/rhumb-distance-5.1.5.tgz", + "integrity": "sha1-GAaFdiX0IlOE2tQT5p85U4/192U=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/sample": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/sample/download/@turf/sample-5.1.5.tgz", + "integrity": "sha1-6ctEikeJzFbuPeLdZ4HiNDQ1tBE=", + "requires": { + "@turf/helpers": "^5.1.5" + } + }, + "@turf/sector": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/sector/download/@turf/sector-5.1.5.tgz", + "integrity": "sha1-rCu5TBPt1gNPb9wrZwCBNdIPXgc=", + "requires": { + "@turf/circle": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/line-arc": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/shortest-path": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/shortest-path/download/@turf/shortest-path-5.1.5.tgz", + "integrity": "sha1-hUroCW9rw+EwD6ynfz6PZ9j5Nas=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/bbox-polygon": "^5.1.5", + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/clean-coords": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/transform-scale": "^5.1.5" + } + }, + "@turf/simplify": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/simplify/download/@turf/simplify-5.1.5.tgz", + "integrity": "sha1-Csjyei60IYGD7dmZjDJ1q+QIuSY=", + "requires": { + "@turf/clean-coords": "^5.1.5", + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/square": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/square/download/@turf/square-5.1.5.tgz", + "integrity": "sha1-qnsh5gM8ySUsOlvW89iNq9b+0YA=", + "requires": { + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5" + } + }, + "@turf/square-grid": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/square-grid/download/@turf/square-grid-5.1.5.tgz", + "integrity": "sha1-G9X3uesU8LYLwjH+/nNR0aMvGlE=", + "requires": { + "@turf/boolean-contains": "^5.1.5", + "@turf/boolean-overlap": "^5.1.5", + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/intersect": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/standard-deviational-ellipse": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/standard-deviational-ellipse/download/@turf/standard-deviational-ellipse-5.1.5.tgz", + "integrity": "sha1-hc0oO14ayljyG9ZkEuQUtW2FIyQ=", + "requires": { + "@turf/center-mean": "^5.1.5", + "@turf/ellipse": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/points-within-polygon": "^5.1.5" + } + }, + "@turf/tag": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/tag/download/@turf/tag-5.1.5.tgz", + "integrity": "sha1-0e4aUIjs/UoUEQGcmCOczypJfSA=", + "requires": { + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/tesselate": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/tesselate/download/@turf/tesselate-5.1.5.tgz", + "integrity": "sha1-MqWU6cIaAEIKn5DSxD3z4RZgYc0=", + "requires": { + "@turf/helpers": "^5.1.5", + "earcut": "^2.0.0" + } + }, + "@turf/tin": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/tin/download/@turf/tin-5.1.5.tgz", + "integrity": "sha1-KCI+r8X76a6azKgc3P6l0UJMkX0=", + "requires": { + "@turf/helpers": "^5.1.5" + } + }, + "@turf/transform-rotate": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/transform-rotate/download/@turf/transform-rotate-5.1.5.tgz", + "integrity": "sha1-0Jbt2eMA/jFQadVNjkWMQJIh7fs=", + "requires": { + "@turf/centroid": "^5.1.5", + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/rhumb-bearing": "^5.1.5", + "@turf/rhumb-destination": "^5.1.5", + "@turf/rhumb-distance": "^5.1.5" + } + }, + "@turf/transform-scale": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/transform-scale/download/@turf/transform-scale-5.1.5.tgz", + "integrity": "sha1-cP064BhWz3uunxWtVhzf6PiQAbk=", + "requires": { + "@turf/bbox": "^5.1.5", + "@turf/center": "^5.1.5", + "@turf/centroid": "^5.1.5", + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/rhumb-bearing": "^5.1.5", + "@turf/rhumb-destination": "^5.1.5", + "@turf/rhumb-distance": "^5.1.5" + } + }, + "@turf/transform-translate": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/transform-translate/download/@turf/transform-translate-5.1.5.tgz", + "integrity": "sha1-Uwolf7Hccmja3Ks05nkB6yo97GM=", + "requires": { + "@turf/clone": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "@turf/meta": "^5.1.5", + "@turf/rhumb-destination": "^5.1.5" + } + }, + "@turf/triangle-grid": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/triangle-grid/download/@turf/triangle-grid-5.1.5.tgz", + "integrity": "sha1-ezZ2IQhVTBTyjK/zxIsc/ILI3IE=", + "requires": { + "@turf/distance": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/intersect": "^5.1.5", + "@turf/invariant": "^5.1.5" + } + }, + "@turf/truncate": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/truncate/download/@turf/truncate-5.1.5.tgz", + "integrity": "sha1-nu37Oxi6gfLJjT6tCUMcyhiErYk=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5" + } + }, + "@turf/turf": { + "version": "5.1.6", + "resolved": "https://registry.npm.taobao.org/@turf/turf/download/@turf/turf-5.1.6.tgz", + "integrity": "sha1-wxIlkoh+0jS3VGi4qMRb+Ib7+PY=", + "requires": { + "@turf/along": "5.1.x", + "@turf/area": "5.1.x", + "@turf/bbox": "5.1.x", + "@turf/bbox-clip": "5.1.x", + "@turf/bbox-polygon": "5.1.x", + "@turf/bearing": "5.1.x", + "@turf/bezier-spline": "5.1.x", + "@turf/boolean-clockwise": "5.1.x", + "@turf/boolean-contains": "5.1.x", + "@turf/boolean-crosses": "5.1.x", + "@turf/boolean-disjoint": "5.1.x", + "@turf/boolean-equal": "5.1.x", + "@turf/boolean-overlap": "5.1.x", + "@turf/boolean-parallel": "5.1.x", + "@turf/boolean-point-in-polygon": "5.1.x", + "@turf/boolean-point-on-line": "5.1.x", + "@turf/boolean-within": "5.1.x", + "@turf/buffer": "5.1.x", + "@turf/center": "5.1.x", + "@turf/center-mean": "5.1.x", + "@turf/center-median": "5.1.x", + "@turf/center-of-mass": "5.1.x", + "@turf/centroid": "5.1.x", + "@turf/circle": "5.1.x", + "@turf/clean-coords": "5.1.x", + "@turf/clone": "5.1.x", + "@turf/clusters": "5.1.x", + "@turf/clusters-dbscan": "5.1.x", + "@turf/clusters-kmeans": "5.1.x", + "@turf/collect": "5.1.x", + "@turf/combine": "5.1.x", + "@turf/concave": "5.1.x", + "@turf/convex": "5.1.x", + "@turf/destination": "5.1.x", + "@turf/difference": "5.1.x", + "@turf/dissolve": "5.1.x", + "@turf/distance": "5.1.x", + "@turf/ellipse": "5.1.x", + "@turf/envelope": "5.1.x", + "@turf/explode": "5.1.x", + "@turf/flatten": "5.1.x", + "@turf/flip": "5.1.x", + "@turf/great-circle": "5.1.x", + "@turf/helpers": "5.1.x", + "@turf/hex-grid": "5.1.x", + "@turf/interpolate": "5.1.x", + "@turf/intersect": "5.1.x", + "@turf/invariant": "5.1.x", + "@turf/isobands": "5.1.x", + "@turf/isolines": "5.1.x", + "@turf/kinks": "5.1.x", + "@turf/length": "5.1.x", + "@turf/line-arc": "5.1.x", + "@turf/line-chunk": "5.1.x", + "@turf/line-intersect": "5.1.x", + "@turf/line-offset": "5.1.x", + "@turf/line-overlap": "5.1.x", + "@turf/line-segment": "5.1.x", + "@turf/line-slice": "5.1.x", + "@turf/line-slice-along": "5.1.x", + "@turf/line-split": "5.1.x", + "@turf/line-to-polygon": "5.1.x", + "@turf/mask": "5.1.x", + "@turf/meta": "5.1.x", + "@turf/midpoint": "5.1.x", + "@turf/nearest-point": "5.1.x", + "@turf/nearest-point-on-line": "5.1.x", + "@turf/nearest-point-to-line": "5.1.x", + "@turf/planepoint": "5.1.x", + "@turf/point-grid": "5.1.x", + "@turf/point-on-feature": "5.1.x", + "@turf/point-to-line-distance": "5.1.x", + "@turf/points-within-polygon": "5.1.x", + "@turf/polygon-tangents": "5.1.x", + "@turf/polygon-to-line": "5.1.x", + "@turf/polygonize": "5.1.x", + "@turf/projection": "5.1.x", + "@turf/random": "5.1.x", + "@turf/rewind": "5.1.x", + "@turf/rhumb-bearing": "5.1.x", + "@turf/rhumb-destination": "5.1.x", + "@turf/rhumb-distance": "5.1.x", + "@turf/sample": "5.1.x", + "@turf/sector": "5.1.x", + "@turf/shortest-path": "5.1.x", + "@turf/simplify": "5.1.x", + "@turf/square": "5.1.x", + "@turf/square-grid": "5.1.x", + "@turf/standard-deviational-ellipse": "5.1.x", + "@turf/tag": "5.1.x", + "@turf/tesselate": "5.1.x", + "@turf/tin": "5.1.x", + "@turf/transform-rotate": "5.1.x", + "@turf/transform-scale": "5.1.x", + "@turf/transform-translate": "5.1.x", + "@turf/triangle-grid": "5.1.x", + "@turf/truncate": "5.1.x", + "@turf/union": "5.1.x", + "@turf/unkink-polygon": "5.1.x", + "@turf/voronoi": "5.1.x" + } + }, + "@turf/union": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/union/download/@turf/union-5.1.5.tgz", + "integrity": "sha1-UyhbYJQEf8WNlqrA6pCGXsNNRUs=", + "requires": { + "@turf/helpers": "^5.1.5", + "turf-jsts": "*" + } + }, + "@turf/unkink-polygon": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/unkink-polygon/download/@turf/unkink-polygon-5.1.5.tgz", + "integrity": "sha1-ewGEfFD7V0riV54Z5Ey6hSbSE8M=", + "requires": { + "@turf/area": "^5.1.5", + "@turf/boolean-point-in-polygon": "^5.1.5", + "@turf/helpers": "^5.1.5", + "@turf/meta": "^5.1.5", + "rbush": "^2.0.1" + }, + "dependencies": { + "quickselect": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/quickselect/download/quickselect-1.1.1.tgz", + "integrity": "sha1-hS5BLOQY8jetW2YNcM/6xkeulMI=" + }, + "rbush": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/rbush/download/rbush-2.0.2.tgz", + "integrity": "sha1-u2AFwnMbe6HVqaA1dykn0WphRgU=", + "requires": { + "quickselect": "^1.0.1" + } + } + } + }, + "@turf/voronoi": { + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/@turf/voronoi/download/@turf/voronoi-5.1.5.tgz", + "integrity": "sha1-6FbpQG3MLyXWbdyJhYTifC6/ymY=", + "requires": { + "@turf/helpers": "^5.1.5", + "@turf/invariant": "^5.1.5", + "d3-voronoi": "1.1.2" + } + }, + "@types/bytebuffer": { + "version": "5.0.40", + "resolved": "https://registry.npm.taobao.org/@types/bytebuffer/download/@types/bytebuffer-5.0.40.tgz", + "integrity": "sha1-1vqsQNz7Cc2FbNxMAdNpC6U20+4=", + "requires": { + "@types/long": "*", + "@types/node": "*" + } + }, + "@types/cesium": { + "version": "1.65.3", + "resolved": "https://registry.npm.taobao.org/@types/cesium/download/@types/cesium-1.65.3.tgz", + "integrity": "sha1-vG0xrx67i8IAIsKtXHqnDIaNp5I=" + }, + "@types/estree": { + "version": "0.0.42", + "resolved": "https://registry.npm.taobao.org/@types/estree/download/@types/estree-0.0.42.tgz", + "integrity": "sha1-jQwfSAM57+2z5GBw4i3WPgQw3RE=", + "dev": true + }, + "@types/events": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/@types/events/download/@types/events-3.0.0.tgz?cache=0&sync_timestamp=1572461527196&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fevents%2Fdownload%2F%40types%2Fevents-3.0.0.tgz", + "integrity": "sha1-KGLz9Yqaf3w+eNefEw3U1xwlwqc=", + "dev": true + }, + "@types/glob": { + "version": "7.1.1", + "resolved": "https://registry.npm.taobao.org/@types/glob/download/@types/glob-7.1.1.tgz", + "integrity": "sha1-qlmhxuP7xCHgfM0xqUTDDrpSFXU=", + "dev": true, + "requires": { + "@types/events": "*", + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/jasmine": { + "version": "3.3.16", + "resolved": "https://registry.npm.taobao.org/@types/jasmine/download/@types/jasmine-3.3.16.tgz", + "integrity": "sha1-fIQHT11/hNqaFPgWzPua602hPyc=", + "dev": true + }, + "@types/jasminewd2": { + "version": "2.0.8", + "resolved": "https://registry.npm.taobao.org/@types/jasminewd2/download/@types/jasminewd2-2.0.8.tgz", + "integrity": "sha1-Z6/lCY1e8jhgc6e3OEtpqEDf6Ts=", + "dev": true, + "requires": { + "@types/jasmine": "*" + } + }, + "@types/long": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/@types/long/download/@types/long-4.0.1.tgz", + "integrity": "sha1-RZxl+hhn2v5qjzIsTFFpVmPMVek=" + }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npm.taobao.org/@types/minimatch/download/@types/minimatch-3.0.3.tgz?cache=0&sync_timestamp=1572464707542&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fminimatch%2Fdownload%2F%40types%2Fminimatch-3.0.3.tgz", + "integrity": "sha1-PcoOPzOyAPx9ETnAzZbBJoyt/Z0=", + "dev": true + }, + "@types/node": { + "version": "12.12.26", + "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-12.12.26.tgz?cache=0&sync_timestamp=1580843161457&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-12.12.26.tgz", + "integrity": "sha1-IT4VO6usDtFp1EptkZUB5o9Z3qk=" + }, + "@types/q": { + "version": "0.0.32", + "resolved": "https://registry.npm.taobao.org/@types/q/download/@types/q-0.0.32.tgz", + "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=", + "dev": true + }, + "@types/selenium-webdriver": { + "version": "3.0.16", + "resolved": "https://registry.npm.taobao.org/@types/selenium-webdriver/download/@types/selenium-webdriver-3.0.16.tgz?cache=0&sync_timestamp=1576496118589&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fselenium-webdriver%2Fdownload%2F%40types%2Fselenium-webdriver-3.0.16.tgz", + "integrity": "sha1-UKR1X44z7azZxAZynpuTDSRRkCo=", + "dev": true + }, + "@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/@types/source-list-map/download/@types/source-list-map-0.1.2.tgz", + "integrity": "sha1-AHiDYGP/rxdBI0m7o2QIfgrALsk=", + "dev": true + }, + "@types/webpack-sources": { + "version": "0.1.6", + "resolved": "https://registry.npm.taobao.org/@types/webpack-sources/download/@types/webpack-sources-0.1.6.tgz", + "integrity": "sha1-PSHfwuwK0Md3WOeTYkJqm6fXy8s=", + "dev": true, + "requires": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "@webassemblyjs/ast": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/ast/download/@webassemblyjs/ast-1.8.5.tgz", + "integrity": "sha1-UbHF/mV2o0lTv0slPfnw1JDZ41k=", + "dev": true, + "requires": { + "@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.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/floating-point-hex-parser/download/@webassemblyjs/floating-point-hex-parser-1.8.5.tgz", + "integrity": "sha1-G6kmopI2E+3OSW/VsC6M6KX0lyE=", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-api-error/download/@webassemblyjs/helper-api-error-1.8.5.tgz", + "integrity": "sha1-xJ2tIvZFInxe22EL25aX8aq3Ifc=", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-buffer/download/@webassemblyjs/helper-buffer-1.8.5.tgz", + "integrity": "sha1-/qk+Qphj3V5DOFVfQikjhaZT8gQ=", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-code-frame/download/@webassemblyjs/helper-code-frame-1.8.5.tgz", + "integrity": "sha1-mnQP9I4/qjAisd/1RCPfmqKTwl4=", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.8.5" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-fsm/download/@webassemblyjs/helper-fsm-1.8.5.tgz", + "integrity": "sha1-ugt9Oz9+RzPaYFnJMyJ12GBwJFI=", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-module-context/download/@webassemblyjs/helper-module-context-1.8.5.tgz", + "integrity": "sha1-3vS5knsBAdyMu9jR7bW3ucguskU=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "mamacro": "^0.0.3" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-wasm-bytecode/download/@webassemblyjs/helper-wasm-bytecode-1.8.5.tgz", + "integrity": "sha1-U3p1Dt31weky83RCBlUckcG5PmE=", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-wasm-section/download/@webassemblyjs/helper-wasm-section-1.8.5.tgz", + "integrity": "sha1-dMpqa8vhnlCjtrRihH5pUD5r/L8=", + "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/ieee754": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/ieee754/download/@webassemblyjs/ieee754-1.8.5.tgz", + "integrity": "sha1-cSMp2+8kDza/V70ve4+5v0FUQh4=", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/leb128/download/@webassemblyjs/leb128-1.8.5.tgz", + "integrity": "sha1-BE7es06mefPgTNT9mCTV41dnrhA=", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/utf8/download/@webassemblyjs/utf8-1.8.5.tgz", + "integrity": "sha1-qL87XY/+mGx8Hjc8y9wqCRXwztw=", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-edit/download/@webassemblyjs/wasm-edit-1.8.5.tgz", + "integrity": "sha1-li2hKqWswcExyBxCMpkcgs5W4Bo=", + "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.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-gen/download/@webassemblyjs/wasm-gen-1.8.5.tgz", + "integrity": "sha1-VIQHZsLBAC62TtGr5yCt7XFPmLw=", + "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/wasm-opt": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-opt/download/@webassemblyjs/wasm-opt-1.8.5.tgz", + "integrity": "sha1-sk2fa6UDlK8TSfUQr6j/y4pj0mQ=", + "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/wasm-parser": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-parser/download/@webassemblyjs/wasm-parser-1.8.5.tgz", + "integrity": "sha1-IVdvDsiLkUJzV7hTY4NmjvfGa40=", + "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/wast-parser": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wast-parser/download/@webassemblyjs/wast-parser-1.8.5.tgz", + "integrity": "sha1-4Q7s1ULQ5705T2gnxJ899tTu+4w=", + "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", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.8.5", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wast-printer/download/@webassemblyjs/wast-printer-1.8.5.tgz", + "integrity": "sha1-EUu8SB/RDKDiOzVg+oEnSLC65bw=", + "dev": true, + "requires": { + "@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.npm.taobao.org/@xtuc/ieee754/download/@xtuc/ieee754-1.2.0.tgz", + "integrity": "sha1-7vAUoxRa5Hehy8AM0eVSM23Ot5A=", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npm.taobao.org/@xtuc/long/download/@xtuc/long-4.2.2.tgz", + "integrity": "sha1-0pHGpOl5ibXGHZrPOWrk/hM6cY0=", + "dev": true + }, + "@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/@yarnpkg/lockfile/download/@yarnpkg/lockfile-1.1.0.tgz", + "integrity": "sha1-53qX+9NFt22DJF7c0X05OxtB+zE=", + "dev": true + }, + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npm.taobao.org/JSONStream/download/JSONStream-1.3.5.tgz", + "integrity": "sha1-MgjB8I06TZkmGrZPkjArwV4RHKA=", + "dev": true, + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npm.taobao.org/accepts/download/accepts-1.3.7.tgz", + "integrity": "sha1-UxvHJlF6OytB+FACHGzBXqq1B80=", + "dev": true, + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "7.1.0", + "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-7.1.0.tgz?cache=0&sync_timestamp=1574807785634&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-7.1.0.tgz", + "integrity": "sha1-lJ028sKSU12mAig1hsJHfFfrLWw=", + "dev": true + }, + "adm-zip": { + "version": "0.4.13", + "resolved": "https://registry.npm.taobao.org/adm-zip/download/adm-zip-0.4.13.tgz", + "integrity": "sha1-WX4vjMNnIVHhMH0+lc3bx1ZyMUo=", + "dev": true + }, + "after": { + "version": "0.8.2", + "resolved": "https://registry.npm.taobao.org/after/download/after-0.8.2.tgz", + "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", + "dev": true + }, + "agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npm.taobao.org/agent-base/download/agent-base-4.3.0.tgz", + "integrity": "sha1-gWXwHENgCbzK0LHRIvBe13Dvxu4=", + "dev": true, + "requires": { + "es6-promisify": "^5.0.0" + } + }, + "agentkeepalive": { + "version": "3.5.2", + "resolved": "https://registry.npm.taobao.org/agentkeepalive/download/agentkeepalive-3.5.2.tgz", + "integrity": "sha1-oROSTdP6JKC8O3gQjEUMKr7gD2c=", + "dev": true, + "requires": { + "humanize-ms": "^1.2.1" + } + }, + "aggregate-error": { + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/aggregate-error/download/aggregate-error-3.0.1.tgz?cache=0&sync_timestamp=1570168672550&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Faggregate-error%2Fdownload%2Faggregate-error-3.0.1.tgz", + "integrity": "sha1-2y/nJG5Tb0DZtUQqOeEX191qJOA=", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.10.2", + "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-6.10.2.tgz", + "integrity": "sha1-086gTWsBeyiUrWkED+yLYj60vVI=", + "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" + } + }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/ajv-errors/download/ajv-errors-1.0.1.tgz", + "integrity": "sha1-81mGrOuRr63sQQL72FAUlQzvpk0=", + "dev": true + }, + "ajv-keywords": { + "version": "3.4.1", + "resolved": "https://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-3.4.1.tgz", + "integrity": "sha1-75FuJxxkrBIXH9g4TqrmsjRYVNo=", + "dev": true + }, + "alphanum-sort": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/alphanum-sort/download/alphanum-sort-1.0.2.tgz", + "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", + "dev": true + }, + "angular-calendar": { + "version": "0.28.2", + "resolved": "https://registry.npm.taobao.org/angular-calendar/download/angular-calendar-0.28.2.tgz", + "integrity": "sha1-x/xtKUZcJc1vGxrRRN7FK3tigpM=", + "requires": { + "angular-draggable-droppable": "^4.3.8", + "angular-resizable-element": "^3.2.6", + "calendar-utils": "^0.7.0", + "positioning": "^2.0.0", + "tslib": "^1.9.0" + } + }, + "angular-draggable-droppable": { + "version": "4.3.8", + "resolved": "https://registry.npm.taobao.org/angular-draggable-droppable/download/angular-draggable-droppable-4.3.8.tgz", + "integrity": "sha1-+xOjWAFUeBUr0GbHCZ3QDTIBmB8=", + "requires": { + "dom-autoscroller": "^2.3.4", + "tslib": "^1.9.0" + } + }, + "angular-resizable-element": { + "version": "3.3.0", + "resolved": "https://registry.npm.taobao.org/angular-resizable-element/download/angular-resizable-element-3.3.0.tgz", + "integrity": "sha1-eSf3LtK3gpYeGDe5palWaSStIBM=", + "requires": { + "tslib": "^1.9.0" + } + }, + "animation-frame-polyfill": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/animation-frame-polyfill/download/animation-frame-polyfill-1.0.1.tgz", + "integrity": "sha1-X1rZk6eHlL0Xas3lttzmKGdBDJ0=" + }, + "ansi-colors": { + "version": "3.2.4", + "resolved": "https://registry.npm.taobao.org/ansi-colors/download/ansi-colors-3.2.4.tgz", + "integrity": "sha1-46PaS/uubIapwoViXeEkojQCb78=", + "dev": true + }, + "ansi-escapes": { + "version": "4.3.0", + "resolved": "https://registry.npm.taobao.org/ansi-escapes/download/ansi-escapes-4.3.0.tgz", + "integrity": "sha1-pM4rM9ayFLeVDYWVwhLxKsnMVp0=", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + } + }, + "ansi-html": { + "version": "0.0.7", + "resolved": "https://registry.npm.taobao.org/ansi-html/download/ansi-html-0.0.7.tgz", + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-3.2.1.tgz", + "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/anymatch/download/anymatch-3.1.1.tgz", + "integrity": "sha1-xV7PAhheJGklk5kxDBc84xIzsUI=", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "app-root-path": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/app-root-path/download/app-root-path-2.2.1.tgz?cache=0&sync_timestamp=1572535971842&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fapp-root-path%2Fdownload%2Fapp-root-path-2.2.1.tgz", + "integrity": "sha1-0N9KaC7kCCc1g9Q/b3npiSYkvJo=", + "dev": true + }, + "append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/append-transform/download/append-transform-1.0.0.tgz?cache=0&sync_timestamp=1568135722905&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fappend-transform%2Fdownload%2Fappend-transform-1.0.0.tgz", + "integrity": "sha1-BGpSrlgqIovXL1is++KWfGeHWas=", + "dev": true, + "requires": { + "default-require-extensions": "^2.0.0" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/aproba/download/aproba-1.2.0.tgz", + "integrity": "sha1-aALmJk79GMeQobDVF/DyYnvyyUo=", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npm.taobao.org/argparse/download/argparse-1.0.10.tgz", + "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "aria-query": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/aria-query/download/aria-query-3.0.0.tgz", + "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", + "dev": true, + "requires": { + "ast-types-flow": "0.0.7", + "commander": "^2.11.0" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/arr-diff/download/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/arr-flatten/download/arr-flatten-1.1.0.tgz", + "integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE=", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/arr-union/download/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/array-flatten/download/array-flatten-2.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farray-flatten%2Fdownload%2Farray-flatten-2.1.2.tgz", + "integrity": "sha1-JO+AoowaiTYX4hSbDG0NeIKTsJk=", + "dev": true + }, + "array-from": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/array-from/download/array-from-2.1.1.tgz", + "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=" + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/array-union/download/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.npm.taobao.org/array-uniq/download/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npm.taobao.org/array-unique/download/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "arraybuffer.slice": { + "version": "0.0.7", + "resolved": "https://registry.npm.taobao.org/arraybuffer.slice/download/arraybuffer.slice-0.0.7.tgz", + "integrity": "sha1-O7xCdd1YTMGxCAm4nU6LY6aednU=", + "dev": true + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/arrify/download/arrify-1.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farrify%2Fdownload%2Farrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npm.taobao.org/asap/download/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true + }, + "ascli": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/ascli/download/ascli-1.0.1.tgz", + "integrity": "sha1-vPpZdKYvGOgcq660lzKrSoj5Brw=", + "requires": { + "colour": "~0.7.1", + "optjs": "~3.2.2" + } + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npm.taobao.org/asn1/download/asn1-0.2.4.tgz", + "integrity": "sha1-jSR136tVO7M+d7VOWeiAu4ziMTY=", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npm.taobao.org/asn1.js/download/asn1.js-4.10.1.tgz", + "integrity": "sha1-ucK/WAXx5kqt7tbfOiv6+1pz9aA=", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npm.taobao.org/assert/download/assert-1.5.0.tgz", + "integrity": "sha1-VcEJqvbgrv2z3EtxJAxwv1dLGOs=", + "dev": true, + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/inherits/download/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npm.taobao.org/util/download/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.npm.taobao.org/assert-plus/download/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/assign-symbols/download/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npm.taobao.org/ast-types-flow/download/ast-types-flow-0.0.7.tgz", + "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", + "dev": true + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npm.taobao.org/async/download/async-2.6.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fasync%2Fdownload%2Fasync-2.6.3.tgz", + "integrity": "sha1-1yYl4jRKNlbjo61Pp0n6gymdgv8=", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/async-each/download/async-each-1.0.3.tgz", + "integrity": "sha1-tyfb+H12UWAvBvTUrDh/R9kbDL8=", + "dev": true + }, + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/async-limiter/download/async-limiter-1.0.1.tgz?cache=0&sync_timestamp=1574271725892&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fasync-limiter%2Fdownload%2Fasync-limiter-1.0.1.tgz", + "integrity": "sha1-3TeelPDbgxCwgpH51kwyCXZmF/0=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npm.taobao.org/asynckit/download/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz", + "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=", + "dev": true + }, + "autoprefixer": { + "version": "9.7.1", + "resolved": "https://registry.npm.taobao.org/autoprefixer/download/autoprefixer-9.7.1.tgz", + "integrity": "sha1-n/xExV9cqJJT2btxhs77Ae9XdH8=", + "dev": true, + "requires": { + "browserslist": "^4.7.2", + "caniuse-lite": "^1.0.30001006", + "chalk": "^2.4.2", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.21", + "postcss-value-parser": "^4.0.2" + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npm.taobao.org/aws-sign2/download/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/aws4/download/aws4-1.9.0.tgz?cache=0&sync_timestamp=1574808901079&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Faws4%2Fdownload%2Faws4-1.9.0.tgz", + "integrity": "sha1-JDkOatYThrCnRyZXVNKhchnehiw=", + "dev": true + }, + "axobject-query": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/axobject-query/download/axobject-query-2.0.2.tgz", + "integrity": "sha1-6hh6vluQArN3+SXYv30cVhrfOPk=", + "dev": true, + "requires": { + "ast-types-flow": "0.0.7" + } + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npm.taobao.org/babel-code-frame/download/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.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz?cache=0&sync_timestamp=1573282918610&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-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.npm.taobao.org/js-tokens/download/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-2.0.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-loader": { + "version": "8.0.6", + "resolved": "https://registry.npm.taobao.org/babel-loader/download/babel-loader-8.0.6.tgz", + "integrity": "sha1-4zvbbzYrA/S7FBoMIauHxQG3Dfs=", + "dev": true, + "requires": { + "find-cache-dir": "^2.0.0", + "loader-utils": "^1.0.2", + "mkdirp": "^0.5.1", + "pify": "^4.0.1" + }, + "dependencies": { + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-2.1.0.tgz", + "integrity": "sha1-jQ+UzRP+Q8bHwmGg2GEVypGMBfc=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + } + } + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/babel-plugin-dynamic-import-node/download/babel-plugin-dynamic-import-node-2.3.0.tgz", + "integrity": "sha1-8A9Qe9qjw+P/bn5emNkKesq5b38=", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "backo2": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/backo2/download/backo2-1.0.2.tgz", + "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npm.taobao.org/base/download/base-0.11.2.tgz", + "integrity": "sha1-e95c7RRbbVUakNuH+DxVi060io8=", + "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.npm.taobao.org/define-property/download/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.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "base64-arraybuffer": { + "version": "0.1.5", + "resolved": "https://registry.npm.taobao.org/base64-arraybuffer/download/base64-arraybuffer-0.1.5.tgz", + "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", + "dev": true + }, + "base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/base64-js/download/base64-js-1.3.1.tgz", + "integrity": "sha1-WOzoy3XdB+ce0IxzarxfrE2/jfE=", + "dev": true + }, + "base64id": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/base64id/download/base64id-1.0.0.tgz", + "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=", + "dev": true + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/batch/download/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "better-assert": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/better-assert/download/better-assert-1.0.2.tgz", + "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", + "dev": true, + "requires": { + "callsite": "1.0.0" + } + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npm.taobao.org/big.js/download/big.js-5.2.2.tgz", + "integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=", + "dev": true + }, + "binary-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-2.0.0.tgz", + "integrity": "sha1-I8DfFPaogHf1+YbA0WfsA8PVU3w=", + "dev": true + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npm.taobao.org/bindings/download/bindings-1.5.0.tgz", + "integrity": "sha1-EDU8npRTNLwFEabZCzj7x8nFBN8=", + "dev": true, + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "blob": { + "version": "0.0.5", + "resolved": "https://registry.npm.taobao.org/blob/download/blob-0.0.5.tgz", + "integrity": "sha1-1oDu7yX4zZGtUz9bAe7UjmTK9oM=", + "dev": true + }, + "blocking-proxy": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/blocking-proxy/download/blocking-proxy-1.0.1.tgz", + "integrity": "sha1-gdb9H+E6TA1pV99/kbdemNrEDLI=", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npm.taobao.org/bluebird/download/bluebird-3.7.2.tgz", + "integrity": "sha1-nyKcFb4nJFT/qXOs4NvueaGww28=", + "dev": true + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.8.tgz", + "integrity": "sha1-LN4J617jQfSEdGuwMJsyU7GxRC8=", + "dev": true + }, + "body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npm.taobao.org/body-parser/download/body-parser-1.19.0.tgz", + "integrity": "sha1-lrJwnlfJxOCab9Zqj9l5hE9p8Io=", + "dev": true, + "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" + }, + "dependencies": { + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/bytes/download/bytes-3.1.0.tgz", + "integrity": "sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz", + "integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw=", + "dev": true + } + } + }, + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npm.taobao.org/bonjour/download/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "requires": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/boolbase/download/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz", + "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/braces/download/braces-3.0.2.tgz", + "integrity": "sha1-NFThpGLujVmeI23zNs2epPiv4Qc=", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/brorand/download/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/browserify-aes/download/browserify-aes-1.2.0.tgz", + "integrity": "sha1-Mmc0ZC9APavDADIJhTu3CtQo70g=", + "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.npm.taobao.org/browserify-cipher/download/browserify-cipher-1.0.1.tgz", + "integrity": "sha1-jWR0wbhwv9q807z8wZNKEOlPFfA=", + "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.npm.taobao.org/browserify-des/download/browserify-des-1.0.2.tgz", + "integrity": "sha1-OvTx9Zg5QDVy8cZiBDdfen9wPpw=", + "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.npm.taobao.org/browserify-rsa/download/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npm.taobao.org/browserify-sign/download/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "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" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npm.taobao.org/browserify-zlib/download/browserify-zlib-0.2.0.tgz", + "integrity": "sha1-KGlFnZqjviRf6P4sofRuLn9U1z8=", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.8.3", + "resolved": "https://registry.npm.taobao.org/browserslist/download/browserslist-4.8.3.tgz?cache=0&sync_timestamp=1580344947770&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbrowserslist%2Fdownload%2Fbrowserslist-4.8.3.tgz", + "integrity": "sha1-ZYAvzXcXfIeOAV8OMYnyxPYnukQ=", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001017", + "electron-to-chromium": "^1.3.322", + "node-releases": "^1.1.44" + } + }, + "browserstack": { + "version": "1.5.3", + "resolved": "https://registry.npm.taobao.org/browserstack/download/browserstack-1.5.3.tgz", + "integrity": "sha1-k6tIeZoS75nb0HTdWVQQ3bGWp6w=", + "dev": true, + "requires": { + "https-proxy-agent": "^2.2.1" + } + }, + "buffer": { + "version": "4.9.2", + "resolved": "https://registry.npm.taobao.org/buffer/download/buffer-4.9.2.tgz?cache=0&sync_timestamp=1573257749794&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbuffer%2Fdownload%2Fbuffer-4.9.2.tgz", + "integrity": "sha1-Iw6tNEACmIZEhBqwJEr4xEu+Pvg=", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/buffer-alloc/download/buffer-alloc-1.2.0.tgz", + "integrity": "sha1-iQ3ZDZI6hz4I4Q5f1RpX5bfM4Ow=", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/buffer-alloc-unsafe/download/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha1-vX3CauKXLQ7aJTvgYdupkjScGfA=", + "dev": true + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/buffer-fill/download/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/buffer-from/download/buffer-from-1.1.1.tgz", + "integrity": "sha1-MnE7wCj3XAL9txDXx7zsHyxgcO8=", + "dev": true + }, + "buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/buffer-indexof/download/buffer-indexof-1.1.1.tgz", + "integrity": "sha1-Uvq8xqYG0aADAoAmSO9o9jnaJow=", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/buffer-xor/download/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/builtin-modules/download/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/builtin-status-codes/download/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "builtins": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/builtins/download/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "dev": true + }, + "bytebuffer": { + "version": "5.0.1", + "resolved": "https://registry.npm.taobao.org/bytebuffer/download/bytebuffer-5.0.1.tgz", + "integrity": "sha1-WC7qSxqHO20CCkjVjfhfC7ps/d0=", + "requires": { + "long": "~3" + }, + "dependencies": { + "long": { + "version": "3.2.0", + "resolved": "https://registry.npm.taobao.org/long/download/long-3.2.0.tgz", + "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=" + } + } + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/bytes/download/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "cacache": { + "version": "13.0.1", + "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-13.0.1.tgz?cache=0&sync_timestamp=1580176348786&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-13.0.1.tgz", + "integrity": "sha1-qAAMIWlwiQgvhSh6GuxuOCAkpxw=", + "dev": true, + "requires": { + "chownr": "^1.1.2", + "figgy-pudding": "^3.5.1", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.2", + "infer-owner": "^1.0.4", + "lru-cache": "^5.1.1", + "minipass": "^3.0.0", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "p-map": "^3.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^2.7.1", + "ssri": "^7.0.0", + "unique-filename": "^1.1.1" + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/cache-base/download/cache-base-1.0.1.tgz", + "integrity": "sha1-Cn9GQWgxyLZi7jb+TnxZ129marI=", + "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" + } + }, + "calendar-utils": { + "version": "0.7.0", + "resolved": "https://registry.npm.taobao.org/calendar-utils/download/calendar-utils-0.7.0.tgz", + "integrity": "sha1-1X5X7v6ExNl/LO2FwPxfW/eyF2g=" + }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/caller-callsite/download/caller-callsite-2.0.0.tgz?cache=0&sync_timestamp=1562668977312&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcaller-callsite%2Fdownload%2Fcaller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "dev": true, + "requires": { + "callsites": "^2.0.0" + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/caller-path/download/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dev": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, + "callsite": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/callsite/download/callsite-1.0.0.tgz", + "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", + "dev": true + }, + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/callsites/download/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz", + "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=", + "dev": true + }, + "caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/caniuse-api/download/caniuse-api-3.0.0.tgz", + "integrity": "sha1-Xk2Q4idJYdRikZl99Znj7QCO5MA=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "caniuse-lite": { + "version": "1.0.30001020", + "resolved": "https://registry.npm.taobao.org/caniuse-lite/download/caniuse-lite-1.0.30001020.tgz", + "integrity": "sha1-PwTBc3UA/9p4vpvrC1weIHDhWSY=", + "dev": true + }, + "canonical-path": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/canonical-path/download/canonical-path-1.0.0.tgz", + "integrity": "sha1-/LRwwjlY3vhQgYVr56hukE8YDR0=", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npm.taobao.org/caseless/download/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "cesium": { + "version": "1.66.0", + "resolved": "https://registry.npm.taobao.org/cesium/download/cesium-1.66.0.tgz", + "integrity": "sha1-rIqYWDKXQOsiMEk2B26m+Ob6rYI=", + "requires": { + "esm": "^3.2.25" + } + }, + "cesium-typings": { + "version": "1.50.2", + "resolved": "https://registry.npm.taobao.org/cesium-typings/download/cesium-typings-1.50.2.tgz", + "integrity": "sha1-/Osooxu2SGDHIRFTP/Df/d3S8Zc=" + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-2.4.2.tgz?cache=0&sync_timestamp=1573282918610&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-2.4.2.tgz", + "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npm.taobao.org/chardet/download/chardet-0.7.0.tgz", + "integrity": "sha1-kAlISfCTfy7twkJdDSip5fDLrZ4=", + "dev": true + }, + "chokidar": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/chokidar/download/chokidar-3.3.1.tgz", + "integrity": "sha1-yE5bPRjZpNd1WP70ZrG/FrvrNFA=", + "dev": 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.3.0" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.0", + "resolved": "https://registry.npm.taobao.org/glob-parent/download/glob-parent-5.1.0.tgz?cache=0&sync_timestamp=1569136652060&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglob-parent%2Fdownload%2Fglob-parent-5.1.0.tgz", + "integrity": "sha1-X0wdHnSNMM1zrSlEs1d6gbCB6MI=", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "chownr": { + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/chownr/download/chownr-1.1.3.tgz", + "integrity": "sha1-Qtg31SOWiNVfMDADpQgjD6ZycUI=", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/chrome-trace-event/download/chrome-trace-event-1.0.2.tgz", + "integrity": "sha1-I0CQ7pfH1K0aLEvq4nUF3v/GCKQ=", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/cipher-base/download/cipher-base-1.0.4.tgz", + "integrity": "sha1-h2Dk7MJy9MNjUy+SbYdKriwTl94=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "circular-dependency-plugin": { + "version": "5.2.0", + "resolved": "https://registry.npm.taobao.org/circular-dependency-plugin/download/circular-dependency-plugin-5.2.0.tgz", + "integrity": "sha1-4J28LdPikoRCQD4tRbQc6ga8CpM=", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npm.taobao.org/class-utils/download/class-utils-0.3.6.tgz", + "integrity": "sha1-+TNprouafOAv1B+q0MqDAzGQxGM=", + "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.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/clean-stack/download/clean-stack-2.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fclean-stack%2Fdownload%2Fclean-stack-2.2.0.tgz", + "integrity": "sha1-7oRy27Ep5yezHooQpCfe6d/kAIs=", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/cli-cursor/download/cli-cursor-3.1.0.tgz", + "integrity": "sha1-JkMFp65JDR0Dvwybp8kl0XU68wc=", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-spinners": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/cli-spinners/download/cli-spinners-2.2.0.tgz", + "integrity": "sha1-6LmI2SBsaSMC2O6DTnqFwBRNj3c=", + "dev": true + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/cli-width/download/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-4.1.0.tgz?cache=0&sync_timestamp=1573943458671&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcliui%2Fdownload%2Fcliui-4.1.0.tgz", + "integrity": "sha1-NIQi2+gtgAswIu709qwQvy5NG0k=", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/clone/download/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true + }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/clone-deep/download/clone-deep-4.0.1.tgz", + "integrity": "sha1-wZ/Zvbv4WUK0/ZechNz31fB8I4c=", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "coa": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/coa/download/coa-2.0.2.tgz", + "integrity": "sha1-Q/bCEVG07yv1cYfbDXPeIp4+fsM=", + "dev": true, + "requires": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + }, + "dependencies": { + "@types/q": { + "version": "1.5.2", + "resolved": "https://registry.npm.taobao.org/@types/q/download/@types/q-1.5.2.tgz", + "integrity": "sha1-aQoUdbhPKohP0HzXl8APXzE1bqg=", + "dev": true + } + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/code-point-at/download/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "codelyzer": { + "version": "5.2.1", + "resolved": "https://registry.npm.taobao.org/codelyzer/download/codelyzer-5.2.1.tgz", + "integrity": "sha1-RP1DHhKACfOMdhgowz66y6lUnTI=", + "dev": true, + "requires": { + "app-root-path": "^2.2.1", + "aria-query": "^3.0.0", + "axobject-query": "2.0.2", + "css-selector-tokenizer": "^0.7.1", + "cssauron": "^1.4.0", + "damerau-levenshtein": "^1.0.4", + "semver-dsl": "^1.0.1", + "source-map": "^0.5.7", + "sprintf-js": "^1.1.2" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsprintf-js%2Fdownload%2Fsprintf-js-1.1.2.tgz", + "integrity": "sha1-2hdlJiv4wPVxdJ8q1sJjACB65nM=", + "dev": true + } + } + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color": { + "version": "3.1.2", + "resolved": "https://registry.npm.taobao.org/color/download/color-3.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcolor%2Fdownload%2Fcolor-3.1.2.tgz", + "integrity": "sha1-aBSOf4XUGtdknF+oyBBvCY0inhA=", + "dev": true, + "requires": { + "color-convert": "^1.9.1", + "color-string": "^1.5.2" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz", + "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "color-string": { + "version": "1.5.3", + "resolved": "https://registry.npm.taobao.org/color-string/download/color-string-1.5.3.tgz", + "integrity": "sha1-ybvF8BtYtUkvPWhXRZy2WQziBMw=", + "dev": true, + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/colors/download/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "colour": { + "version": "0.7.1", + "resolved": "https://registry.npm.taobao.org/colour/download/colour-0.7.1.tgz", + "integrity": "sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g=" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npm.taobao.org/combined-stream/download/combined-stream-1.0.8.tgz", + "integrity": "sha1-w9RaizT9cwYxoRCoolIGgrMdWn8=", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.20.3.tgz", + "integrity": "sha1-/UhehMA+tIgcIHIrpIA16FMa6zM=" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/commondir/download/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "compare-versions": { + "version": "3.5.1", + "resolved": "https://registry.npm.taobao.org/compare-versions/download/compare-versions-3.5.1.tgz?cache=0&sync_timestamp=1564604665649&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcompare-versions%2Fdownload%2Fcompare-versions-3.5.1.tgz", + "integrity": "sha1-JuH1zw1Ip37O1QRrn2e2thB1o5M=", + "dev": true + }, + "component-bind": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/component-bind/download/component-bind-1.0.0.tgz", + "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npm.taobao.org/component-emitter/download/component-emitter-1.3.0.tgz", + "integrity": "sha1-FuQHD7qK4ptnnyIVhT7hgasuq8A=", + "dev": true + }, + "component-inherit": { + "version": "0.0.3", + "resolved": "https://registry.npm.taobao.org/component-inherit/download/component-inherit-0.0.3.tgz", + "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", + "dev": true + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npm.taobao.org/compressible/download/compressible-2.0.18.tgz", + "integrity": "sha1-r1PMprBw1MPAdQ+9dyhqbXzEb7o=", + "dev": true, + "requires": { + "mime-db": ">= 1.43.0 < 2" + }, + "dependencies": { + "mime-db": { + "version": "1.43.0", + "resolved": "https://registry.npm.taobao.org/mime-db/download/mime-db-1.43.0.tgz", + "integrity": "sha1-ChLgUCZQ5HPXNVNQUOfI9OtPrlg=", + "dev": true + } + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz", + "integrity": "sha1-lVI+/xcMpXwpoMpB5v4TH0Hlu48=", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npm.taobao.org/concat-stream/download/concat-stream-1.6.2.tgz", + "integrity": "sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ=", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "concaveman": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/concaveman/download/concaveman-1.1.1.tgz", + "integrity": "sha1-bCSCWAslI874L8K+wAoEFebmgWI=", + "requires": { + "monotone-convex-hull-2d": "^1.0.1", + "point-in-polygon": "^1.0.1", + "rbush": "^2.0.1", + "robust-orientation": "^1.1.3", + "tinyqueue": "^1.1.0" + }, + "dependencies": { + "quickselect": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/quickselect/download/quickselect-1.1.1.tgz", + "integrity": "sha1-hS5BLOQY8jetW2YNcM/6xkeulMI=" + }, + "rbush": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/rbush/download/rbush-2.0.2.tgz", + "integrity": "sha1-u2AFwnMbe6HVqaA1dykn0WphRgU=", + "requires": { + "quickselect": "^1.0.1" + } + } + } + }, + "connect": { + "version": "3.7.0", + "resolved": "https://registry.npm.taobao.org/connect/download/connect-3.7.0.tgz", + "integrity": "sha1-XUk0iRDKpeB6AYALAw0MNfIEhPg=", + "dev": true, + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npm.taobao.org/connect-history-api-fallback/download/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha1-izIIk1kwjRERFdgcrT/Oq4iPl7w=", + "dev": true + }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/console-browserify/download/console-browserify-1.2.0.tgz?cache=0&sync_timestamp=1572252287978&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconsole-browserify%2Fdownload%2Fconsole-browserify-1.2.0.tgz", + "integrity": "sha1-ZwY871fOts9Jk6KrOlWECujEkzY=", + "dev": true + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/constants-browserify/download/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.3.tgz", + "integrity": "sha1-4TDK9+cnkIfFYWwgB9BIVpiYT70=", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/content-type/download/content-type-1.0.4.tgz", + "integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js=", + "dev": true + }, + "convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npm.taobao.org/convert-source-map/download/convert-source-map-1.7.0.tgz?cache=0&sync_timestamp=1573003862096&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconvert-source-map%2Fdownload%2Fconvert-source-map-1.7.0.tgz", + "integrity": "sha1-F6LLiC1/d9NJBYXizmxSRCSjpEI=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npm.taobao.org/cookie/download/cookie-0.4.0.tgz", + "integrity": "sha1-vrQ35wIrO21JAZ0IhmUwPr6cFLo=", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npm.taobao.org/cookie-signature/download/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npm.taobao.org/copy-concurrently/download/copy-concurrently-1.0.5.tgz", + "integrity": "sha1-kilzmMrjSTf8r9bsgTnBgFHwteA=", + "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" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "copy-webpack-plugin": { + "version": "5.1.1", + "resolved": "https://registry.npm.taobao.org/copy-webpack-plugin/download/copy-webpack-plugin-5.1.1.tgz?cache=0&sync_timestamp=1576145009360&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcopy-webpack-plugin%2Fdownload%2Fcopy-webpack-plugin-5.1.1.tgz", + "integrity": "sha1-VIGgPeoRI9iKmIxv+LeCRyFPC4g=", + "dev": true, + "requires": { + "cacache": "^12.0.3", + "find-cache-dir": "^2.1.0", + "glob-parent": "^3.1.0", + "globby": "^7.1.1", + "is-glob": "^4.0.1", + "loader-utils": "^1.2.3", + "minimatch": "^3.0.4", + "normalize-path": "^3.0.0", + "p-limit": "^2.2.1", + "schema-utils": "^1.0.0", + "serialize-javascript": "^2.1.2", + "webpack-log": "^2.0.0" + }, + "dependencies": { + "cacache": { + "version": "12.0.3", + "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-12.0.3.tgz", + "integrity": "sha1-vpmruk4b9d9GHNWiwQcfxDJXM5A=", + "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" + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-2.1.0.tgz", + "integrity": "sha1-jQ+UzRP+Q8bHwmGg2GEVypGMBfc=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npm.taobao.org/ssri/download/ssri-6.0.1.tgz?cache=0&sync_timestamp=1571961490394&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssri%2Fdownload%2Fssri-6.0.1.tgz", + "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + } + } + }, + "core-js": { + "version": "3.6.0", + "resolved": "https://registry.npm.taobao.org/core-js/download/core-js-3.6.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-3.6.0.tgz", + "integrity": "sha1-K4VORR3hln0eKYlgJc3BOiUY2eo=", + "dev": true + }, + "core-js-compat": { + "version": "3.6.4", + "resolved": "https://registry.npm.taobao.org/core-js-compat/download/core-js-compat-3.6.4.tgz", + "integrity": "sha1-k4R2Vp67bNqA0zm88Zn65PFv/xc=", + "dev": true, + "requires": { + "browserslist": "^4.8.3", + "semver": "7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-7.0.0.tgz", + "integrity": "sha1-XzyjV2HkfgWyBsba/yz4FPAxa44=", + "dev": true + } + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/core-util-is/download/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npm.taobao.org/cosmiconfig/download/cosmiconfig-5.2.1.tgz", + "integrity": "sha1-BA9yaAnFked6F8CjYmykW08Wixo=", + "dev": true, + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + } + }, + "coverage-istanbul-loader": { + "version": "2.0.3", + "resolved": "https://registry.npm.taobao.org/coverage-istanbul-loader/download/coverage-istanbul-loader-2.0.3.tgz", + "integrity": "sha1-h9QvA/oP0/qHQ+x2lF2dZ/EFcio=", + "dev": true, + "requires": { + "convert-source-map": "^1.7.0", + "istanbul-lib-instrument": "^4.0.0", + "loader-utils": "^1.2.3", + "merge-source-map": "^1.1.0", + "schema-utils": "^2.6.1" + }, + "dependencies": { + "schema-utils": { + "version": "2.6.4", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.6.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.6.4.tgz", + "integrity": "sha1-on779uTnhonZGHLuPM+lfXvdD1M=", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1" + } + } + } + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npm.taobao.org/create-ecdh/download/create-ecdh-4.0.3.tgz", + "integrity": "sha1-yREbbzMEXEaX8UR4f5JUzcd8Rf8=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/create-hash/download/create-hash-1.2.0.tgz", + "integrity": "sha1-iJB4rxGmN1a8+1m9IhmWvjqe8ZY=", + "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.npm.taobao.org/create-hmac/download/create-hmac-1.1.7.tgz", + "integrity": "sha1-aRcMeLOrlXFHsriwRXLkfq0iQ/8=", + "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" + } + }, + "create-point-cb": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/create-point-cb/download/create-point-cb-1.2.0.tgz", + "integrity": "sha1-G85H/E/AGFXuEhONZ2sMsqfLznE=", + "requires": { + "type-func": "^1.0.1" + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-6.0.5.tgz?cache=0&sync_timestamp=1570440024132&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcross-spawn%2Fdownload%2Fcross-spawn-6.0.5.tgz", + "integrity": "sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q=", + "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" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npm.taobao.org/crypto-browserify/download/crypto-browserify-3.12.0.tgz", + "integrity": "sha1-OWz58xN/A+S45TLFj2mCVOAPgOw=", + "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" + } + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npm.taobao.org/css/download/css-2.2.4.tgz", + "integrity": "sha1-xkZ1XHOXHyu6amAeLPL9cbEpiSk=", + "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.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "css-color-names": { + "version": "0.0.4", + "resolved": "https://registry.npm.taobao.org/css-color-names/download/css-color-names-0.0.4.tgz", + "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=", + "dev": true + }, + "css-declaration-sorter": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/css-declaration-sorter/download/css-declaration-sorter-4.0.1.tgz?cache=0&sync_timestamp=1581171003780&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss-declaration-sorter%2Fdownload%2Fcss-declaration-sorter-4.0.1.tgz", + "integrity": "sha1-wZiUD2OnbX42wecQGLABchBUyyI=", + "dev": true, + "requires": { + "postcss": "^7.0.1", + "timsort": "^0.3.0" + } + }, + "css-parse": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/css-parse/download/css-parse-2.0.0.tgz", + "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", + "dev": true, + "requires": { + "css": "^2.0.0" + } + }, + "css-select": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/css-select/download/css-select-2.1.0.tgz", + "integrity": "sha1-ajRlM1ZjWTSoG6ymjQJVQyEF2+8=", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npm.taobao.org/css-select-base-adapter/download/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha1-Oy/0lyzDYquIVhUHqVQIoUMhNdc=", + "dev": true + }, + "css-selector-tokenizer": { + "version": "0.7.1", + "resolved": "https://registry.npm.taobao.org/css-selector-tokenizer/download/css-selector-tokenizer-0.7.1.tgz", + "integrity": "sha1-oXcnGovKUBkXL0+JH8bu2cv2jV0=", + "dev": true, + "requires": { + "cssesc": "^0.1.0", + "fastparse": "^1.1.1", + "regexpu-core": "^1.0.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npm.taobao.org/jsesc/download/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "regexpu-core": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-1.0.0.tgz?cache=0&sync_timestamp=1568402850982&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregexpu-core%2Fdownload%2Fregexpu-core-1.0.0.tgz", + "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", + "dev": true, + "requires": { + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npm.taobao.org/regjsgen/download/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npm.taobao.org/regjsparser/download/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + } + } + } + }, + "css-tree": { + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.37.tgz?cache=0&sync_timestamp=1575583542748&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss-tree%2Fdownload%2Fcss-tree-1.0.0-alpha.37.tgz", + "integrity": "sha1-mL69YsTB2flg7DQM+fdSLjBwmiI=", + "dev": true, + "requires": { + "mdn-data": "2.0.4", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "css-unit-converter": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/css-unit-converter/download/css-unit-converter-1.1.1.tgz", + "integrity": "sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY=", + "dev": true + }, + "css-what": { + "version": "3.2.1", + "resolved": "https://registry.npm.taobao.org/css-what/download/css-what-3.2.1.tgz", + "integrity": "sha1-9KjxJCEGRiG0VnVeNKA6LCLfXaE=", + "dev": true + }, + "cssauron": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/cssauron/download/cssauron-1.4.0.tgz", + "integrity": "sha1-pmAt/34EqDBtwNuaVR6S6LVmKtg=", + "dev": true, + "requires": { + "through": "X.X.X" + } + }, + "cssesc": { + "version": "0.1.0", + "resolved": "https://registry.npm.taobao.org/cssesc/download/cssesc-0.1.0.tgz", + "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", + "dev": true + }, + "cssnano": { + "version": "4.1.10", + "resolved": "https://registry.npm.taobao.org/cssnano/download/cssnano-4.1.10.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcssnano%2Fdownload%2Fcssnano-4.1.10.tgz", + "integrity": "sha1-CsQfCxPRPUZUh+ERt3jULaYxuLI=", + "dev": true, + "requires": { + "cosmiconfig": "^5.0.0", + "cssnano-preset-default": "^4.0.7", + "is-resolvable": "^1.0.0", + "postcss": "^7.0.0" + } + }, + "cssnano-preset-default": { + "version": "4.0.7", + "resolved": "https://registry.npm.taobao.org/cssnano-preset-default/download/cssnano-preset-default-4.0.7.tgz", + "integrity": "sha1-UexmLM/KD4izltzZZ5zbkxvhf3Y=", + "dev": true, + "requires": { + "css-declaration-sorter": "^4.0.1", + "cssnano-util-raw-cache": "^4.0.1", + "postcss": "^7.0.0", + "postcss-calc": "^7.0.1", + "postcss-colormin": "^4.0.3", + "postcss-convert-values": "^4.0.1", + "postcss-discard-comments": "^4.0.2", + "postcss-discard-duplicates": "^4.0.2", + "postcss-discard-empty": "^4.0.1", + "postcss-discard-overridden": "^4.0.1", + "postcss-merge-longhand": "^4.0.11", + "postcss-merge-rules": "^4.0.3", + "postcss-minify-font-values": "^4.0.2", + "postcss-minify-gradients": "^4.0.2", + "postcss-minify-params": "^4.0.2", + "postcss-minify-selectors": "^4.0.2", + "postcss-normalize-charset": "^4.0.1", + "postcss-normalize-display-values": "^4.0.2", + "postcss-normalize-positions": "^4.0.2", + "postcss-normalize-repeat-style": "^4.0.2", + "postcss-normalize-string": "^4.0.2", + "postcss-normalize-timing-functions": "^4.0.2", + "postcss-normalize-unicode": "^4.0.1", + "postcss-normalize-url": "^4.0.1", + "postcss-normalize-whitespace": "^4.0.2", + "postcss-ordered-values": "^4.1.2", + "postcss-reduce-initial": "^4.0.3", + "postcss-reduce-transforms": "^4.0.2", + "postcss-svgo": "^4.0.2", + "postcss-unique-selectors": "^4.0.1" + } + }, + "cssnano-util-get-arguments": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/cssnano-util-get-arguments/download/cssnano-util-get-arguments-4.0.0.tgz", + "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=", + "dev": true + }, + "cssnano-util-get-match": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/cssnano-util-get-match/download/cssnano-util-get-match-4.0.0.tgz", + "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=", + "dev": true + }, + "cssnano-util-raw-cache": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/cssnano-util-raw-cache/download/cssnano-util-raw-cache-4.0.1.tgz", + "integrity": "sha1-sm1f1fcqEd/np4RvtMZyYPlr8oI=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "cssnano-util-same-parent": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/cssnano-util-same-parent/download/cssnano-util-same-parent-4.0.1.tgz", + "integrity": "sha1-V0CC+yhZ0ttDOFWDXZqEVuoYu/M=", + "dev": true + }, + "csso": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/csso/download/csso-4.0.2.tgz", + "integrity": "sha1-5fgas6Vrju+38Aks5yeTKfRU3j0=", + "dev": true, + "requires": { + "css-tree": "1.0.0-alpha.37" + } + }, + "custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/custom-event/download/custom-event-1.0.1.tgz", + "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", + "dev": true + }, + "cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/cyclist/download/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "dev": true + }, + "d3-array": { + "version": "1.2.4", + "resolved": "https://registry.npm.taobao.org/d3-array/download/d3-array-1.2.4.tgz", + "integrity": "sha1-Y1zk1e6nWfb2BYY9vPww7cc39x8=" + }, + "d3-geo": { + "version": "1.7.1", + "resolved": "https://registry.npm.taobao.org/d3-geo/download/d3-geo-1.7.1.tgz", + "integrity": "sha1-RLvHohix/YWfPY/XxEPKg2Vpzpk=", + "requires": { + "d3-array": "1" + } + }, + "d3-voronoi": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/d3-voronoi/download/d3-voronoi-1.1.2.tgz", + "integrity": "sha1-Fodmfo8TotFYyAwUgMWinLDYlzw=" + }, + "damerau-levenshtein": { + "version": "1.0.5", + "resolved": "https://registry.npm.taobao.org/damerau-levenshtein/download/damerau-levenshtein-1.0.5.tgz", + "integrity": "sha1-eAz3FE6y6NvRw7uDrjEQDMwxpBQ=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npm.taobao.org/dashdash/download/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-fns": { + "version": "2.9.0", + "resolved": "https://registry.npm.taobao.org/date-fns/download/date-fns-2.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdate-fns%2Fdownload%2Fdate-fns-2.9.0.tgz", + "integrity": "sha1-0LF1pcN+1fF7l+InK7wfpa7Gd9I=" + }, + "date-format": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/date-format/download/date-format-2.1.0.tgz?cache=0&sync_timestamp=1572559173297&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdate-format%2Fdownload%2Fdate-format-2.1.0.tgz", + "integrity": "sha1-MdW16iEc9f12TNOLr50DPffhJc8=", + "dev": true + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "debuglog": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/debuglog/download/debuglog-1.0.1.tgz", + "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=", + "dev": true + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/decamelize/download/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npm.taobao.org/decode-uri-component/download/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/deep-equal/download/deep-equal-1.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdeep-equal%2Fdownload%2Fdeep-equal-1.1.1.tgz", + "integrity": "sha1-tcmMlCzv+vfLBR4k4UNKJaLmB2o=", + "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" + } + }, + "default-gateway": { + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/default-gateway/download/default-gateway-4.2.0.tgz", + "integrity": "sha1-FnEEx1AMIRX23WmwpTa7jtcgVSs=", + "dev": true, + "requires": { + "execa": "^1.0.0", + "ip-regex": "^2.1.0" + } + }, + "default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/default-require-extensions/download/default-require-extensions-2.0.0.tgz", + "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "dev": true, + "requires": { + "strip-bom": "^3.0.0" + } + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/defaults/download/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "requires": { + "clone": "^1.0.2" + }, + "dependencies": { + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/clone/download/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true + } + } + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/define-properties/download/define-properties-1.1.3.tgz", + "integrity": "sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=", + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz", + "integrity": "sha1-1Flono1lS6d+AqgX+HENcCyxbp0=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "del": { + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/del/download/del-4.1.1.tgz", + "integrity": "sha1-no8RciLqRKMf86FWwEm5kFKp8LQ=", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "globby": "^6.1.0", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" + }, + "dependencies": { + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npm.taobao.org/globby/download/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "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.npm.taobao.org/pify/download/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "p-map": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/p-map/download/p-map-2.1.0.tgz?cache=0&sync_timestamp=1563032875018&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-map%2Fdownload%2Fp-map-2.1.0.tgz", + "integrity": "sha1-MQko/u+cnsxltosXaTAYpmXOoXU=", + "dev": true + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/delayed-stream/download/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "density-clustering": { + "version": "1.3.0", + "resolved": "https://registry.npm.taobao.org/density-clustering/download/density-clustering-1.3.0.tgz", + "integrity": "sha1-3J9ZyPCrl+FiSsZJMP0xlIF9ysU=" + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "dependency-graph": { + "version": "0.7.2", + "resolved": "https://registry.npm.taobao.org/dependency-graph/download/dependency-graph-0.7.2.tgz", + "integrity": "sha1-kdud5utyaZIJ2IrqTB/VIhysHEk=", + "dev": true + }, + "des.js": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/des.js/download/des.js-1.0.1.tgz", + "integrity": "sha1-U4IULhvcU/hdhtU+X0qn3rkeCEM=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/detect-node/download/detect-node-2.0.4.tgz", + "integrity": "sha1-AU7o+PZpxcWAI9pkuBecCDooxGw=", + "dev": true + }, + "dezalgo": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/dezalgo/download/dezalgo-1.0.3.tgz", + "integrity": "sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY=", + "dev": true, + "requires": { + "asap": "^2.0.0", + "wrappy": "1" + } + }, + "di": { + "version": "0.0.1", + "resolved": "https://registry.npm.taobao.org/di/download/di-0.0.1.tgz", + "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", + "dev": true + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npm.taobao.org/diff/download/diff-3.5.0.tgz", + "integrity": "sha1-gAwN0eCov7yVg1wgKtIg/jF+WhI=", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npm.taobao.org/diffie-hellman/download/diffie-hellman-5.0.3.tgz", + "integrity": "sha1-QOjumPVaIUlgcUaSHGPhrl89KHU=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "dir-glob": { + "version": "2.2.2", + "resolved": "https://registry.npm.taobao.org/dir-glob/download/dir-glob-2.2.2.tgz", + "integrity": "sha1-+gnwaUFTyJGLGLoN6vrpR2n8UMQ=", + "dev": true, + "requires": { + "path-type": "^3.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/dns-equal/download/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "dns-packet": { + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/dns-packet/download/dns-packet-1.3.1.tgz", + "integrity": "sha1-EqpCaYEHW+UAuRDu3NC0fdfe2lo=", + "dev": true, + "requires": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/dns-txt/download/dns-txt-2.0.2.tgz", + "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "dev": true, + "requires": { + "buffer-indexof": "^1.0.0" + } + }, + "dom-autoscroller": { + "version": "2.3.4", + "resolved": "https://registry.npm.taobao.org/dom-autoscroller/download/dom-autoscroller-2.3.4.tgz", + "integrity": "sha1-HtJcveK9878+t2KTcImyDs7xkL0=", + "requires": { + "animation-frame-polyfill": "^1.0.0", + "create-point-cb": "^1.0.0", + "dom-mousemove-dispatcher": "^1.0.1", + "dom-plane": "^1.0.1", + "dom-set": "^1.0.1", + "type-func": "^1.0.1" + } + }, + "dom-mousemove-dispatcher": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/dom-mousemove-dispatcher/download/dom-mousemove-dispatcher-1.0.1.tgz", + "integrity": "sha1-okpt35Oye7NpT3IIdUalf8fpFA8=" + }, + "dom-plane": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/dom-plane/download/dom-plane-1.0.2.tgz", + "integrity": "sha1-+MheaXxYfxR+j8L6wd4HjB/kFyw=", + "requires": { + "create-point-cb": "^1.0.0" + } + }, + "dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/dom-serialize/download/dom-serialize-2.2.1.tgz", + "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "dev": true, + "requires": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npm.taobao.org/dom-serializer/download/dom-serializer-0.2.2.tgz", + "integrity": "sha1-GvuB9TNxcXXUeGVd68XjMtn5u1E=", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/domelementtype/download/domelementtype-2.0.1.tgz", + "integrity": "sha1-H4vf6R9aeAYydOgDtL3O326U+U0=", + "dev": true + } + } + }, + "dom-set": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/dom-set/download/dom-set-1.1.1.tgz", + "integrity": "sha1-XCxhDuSDm1IO1fmN28vjFMD6lUo=", + "requires": { + "array-from": "^2.1.1", + "is-array": "^1.0.1", + "iselement": "^1.1.4" + } + }, + "dom-storage": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/dom-storage/download/dom-storage-2.1.0.tgz", + "integrity": "sha1-APuGi8kgE1fqJDx7z9MwTB406jk=" + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/domain-browser/download/domain-browser-1.2.0.tgz", + "integrity": "sha1-PTH1AZGmdJ3RN1p/Ui6CPULlTto=", + "dev": true + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/domelementtype/download/domelementtype-1.3.1.tgz", + "integrity": "sha1-0EjESzew0Qp/Kj1f7j9DM9eQSB8=", + "dev": true + }, + "domutils": { + "version": "1.7.0", + "resolved": "https://registry.npm.taobao.org/domutils/download/domutils-1.7.0.tgz", + "integrity": "sha1-Vuo0HoNOBuZ0ivehyyXaZ+qfjCo=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/dot-prop/download/dot-prop-4.2.0.tgz", + "integrity": "sha1-HxngwuGqDjJ5fEl5nyg3rGr2nFc=", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npm.taobao.org/duplexify/download/duplexify-3.7.1.tgz", + "integrity": "sha1-Kk31MX9sz9kfhtb9JdjYoQO4gwk=", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "e-ngx-cesium": { + "version": "6.3.2", + "resolved": "https://registry.npm.taobao.org/e-ngx-cesium/download/e-ngx-cesium-6.3.2.tgz", + "integrity": "sha1-IwpQcI56SjWDuIqabN65MQYMUKQ=", + "requires": { + "@turf/turf": "^5.1.5", + "cesium": "^1.50.0", + "cesium-typings": "^1.50.0", + "font-awesome": "^4.7.0", + "lodash": "^4.17.4" + } + }, + "earcut": { + "version": "2.2.2", + "resolved": "https://registry.npm.taobao.org/earcut/download/earcut-2.2.2.tgz", + "integrity": "sha1-QbC8NfY+D+gNp83f8oUR5+LoDRE=" + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/ecc-jsbn/download/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "echarts": { + "version": "4.6.0", + "resolved": "https://registry.npm.taobao.org/echarts/download/echarts-4.6.0.tgz?cache=0&sync_timestamp=1577438297540&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fecharts%2Fdownload%2Fecharts-4.6.0.tgz", + "integrity": "sha1-taR6EEbOyTzu75VPnuVHUTQFWOw=", + "requires": { + "zrender": "4.2.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.346", + "resolved": "https://registry.npm.taobao.org/electron-to-chromium/download/electron-to-chromium-1.3.346.tgz", + "integrity": "sha1-sIvsv71kpCBhGVr9Okkj0EFsXUY=", + "dev": true + }, + "elliptic": { + "version": "6.5.2", + "resolved": "https://registry.npm.taobao.org/elliptic/download/elliptic-6.5.2.tgz?cache=0&sync_timestamp=1574449990666&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Felliptic%2Fdownload%2Felliptic-6.5.2.tgz", + "integrity": "sha1-BcVnjXFzwEnYykM1UiJKSV0ON2I=", + "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" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-8.0.0.tgz", + "integrity": "sha1-6Bj9ac5cz8tARZT4QpY79TFkzDc=", + "dev": true + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/emojis-list/download/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npm.taobao.org/encoding/download/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "requires": { + "iconv-lite": "~0.4.13" + } + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.4.tgz?cache=0&sync_timestamp=1569416272686&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fend-of-stream%2Fdownload%2Fend-of-stream-1.4.4.tgz", + "integrity": "sha1-WuZKX0UFe682JuwU2gyl5LJDHrA=", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "engine.io": { + "version": "3.2.1", + "resolved": "https://registry.npm.taobao.org/engine.io/download/engine.io-3.2.1.tgz?cache=0&sync_timestamp=1568404651035&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fengine.io%2Fdownload%2Fengine.io-3.2.1.tgz", + "integrity": "sha1-tgKBw1SEpw7gNR6g6/+D7IyVIqI=", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "base64id": "1.0.0", + "cookie": "0.3.1", + "debug": "~3.1.0", + "engine.io-parser": "~2.1.0", + "ws": "~3.3.1" + }, + "dependencies": { + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npm.taobao.org/cookie/download/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", + "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "ws": { + "version": "3.3.3", + "resolved": "https://registry.npm.taobao.org/ws/download/ws-3.3.3.tgz", + "integrity": "sha1-8c+E/i1ekB686U767OeF8YeiKPI=", + "dev": true, + "requires": { + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" + } + } + } + }, + "engine.io-client": { + "version": "3.2.1", + "resolved": "https://registry.npm.taobao.org/engine.io-client/download/engine.io-client-3.2.1.tgz?cache=0&sync_timestamp=1568404651365&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fengine.io-client%2Fdownload%2Fengine.io-client-3.2.1.tgz", + "integrity": "sha1-b1TAR13khxWKGnx30QF4cItq3TY=", + "dev": true, + "requires": { + "component-emitter": "1.2.1", + "component-inherit": "0.0.3", + "debug": "~3.1.0", + "engine.io-parser": "~2.1.1", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "parseqs": "0.0.5", + "parseuri": "0.0.5", + "ws": "~3.3.1", + "xmlhttprequest-ssl": "~1.5.4", + "yeast": "0.1.2" + }, + "dependencies": { + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/component-emitter/download/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", + "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "ws": { + "version": "3.3.3", + "resolved": "https://registry.npm.taobao.org/ws/download/ws-3.3.3.tgz", + "integrity": "sha1-8c+E/i1ekB686U767OeF8YeiKPI=", + "dev": true, + "requires": { + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" + } + } + } + }, + "engine.io-parser": { + "version": "2.1.3", + "resolved": "https://registry.npm.taobao.org/engine.io-parser/download/engine.io-parser-2.1.3.tgz", + "integrity": "sha1-dXq5cPvy37Mse3SwMyFtVznveaY=", + "dev": true, + "requires": { + "after": "0.8.2", + "arraybuffer.slice": "~0.0.7", + "base64-arraybuffer": "0.1.5", + "blob": "0.0.5", + "has-binary2": "~1.0.2" + } + }, + "enhanced-resolve": { + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.1.1.tgz?cache=0&sync_timestamp=1572991320122&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.1.1.tgz", + "integrity": "sha1-KTfiuAZs0P584JkKmPDXGjUYn2Y=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + } + }, + "ent": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/ent/download/ent-2.2.0.tgz", + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "dev": true + }, + "entities": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/entities/download/entities-2.0.0.tgz", + "integrity": "sha1-aNYITKsbB5dnVA2A5Wo5tCPkq/Q=", + "dev": true + }, + "err-code": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/err-code/download/err-code-1.1.2.tgz?cache=0&sync_timestamp=1563379842735&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ferr-code%2Fdownload%2Ferr-code-1.1.2.tgz", + "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=", + "dev": true + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npm.taobao.org/errno/download/errno-0.1.7.tgz", + "integrity": "sha1-RoTXF3mtOa8Xfj8AeZb3xnyFJhg=", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npm.taobao.org/error-ex/download/error-ex-1.3.2.tgz", + "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.17.0", + "resolved": "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.17.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes-abstract%2Fdownload%2Fes-abstract-1.17.0.tgz", + "integrity": "sha1-9CpRfQA2pVkduyxGNZHci7UDCbE=", + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.1.5", + "is-regex": "^1.0.5", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimleft": "^2.1.1", + "string.prototype.trimright": "^2.1.1" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.1.tgz?cache=0&sync_timestamp=1573280885098&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes-to-primitive%2Fdownload%2Fes-to-primitive-1.2.1.tgz", + "integrity": "sha1-5VzUyc3BiLzvsDs2bHNjI/xciYo=", + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npm.taobao.org/es6-promise/download/es6-promise-4.2.8.tgz", + "integrity": "sha1-TrIVlMlyvEBVPSduUQU5FD21Pgo=", + "dev": true + }, + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/es6-promisify/download/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "dev": true, + "requires": { + "es6-promise": "^4.0.3" + } + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-4.0.3.tgz", + "integrity": "sha1-ygODMxD2iJoyZHgaqC5j65z+eEg=", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "esm": { + "version": "3.2.25", + "resolved": "https://registry.npm.taobao.org/esm/download/esm-3.2.25.tgz", + "integrity": "sha1-NCwYwp1WFXaIulzjH4Qx+7eVzBA=" + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz", + "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=", + "dev": true + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npm.taobao.org/esrecurse/download/esrecurse-4.2.1.tgz", + "integrity": "sha1-AHo7n9vCs7uH5IeeoZyS/b05Qs8=", + "dev": true, + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npm.taobao.org/estraverse/download/estraverse-4.3.0.tgz?cache=0&sync_timestamp=1565734335990&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Festraverse%2Fdownload%2Festraverse-4.3.0.tgz", + "integrity": "sha1-OYrT88WiSUi+dyXoPRGn3ijNvR0=", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npm.taobao.org/esutils/download/esutils-2.0.3.tgz", + "integrity": "sha1-dNLrTeC42hKTcRkQ1Qd1ubcQ72Q=", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "eventemitter3": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-4.0.0.tgz", + "integrity": "sha1-1lF2FjiH7lnzhtZMgmELaWpKdOs=", + "dev": true + }, + "events": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/events/download/events-3.1.0.tgz", + "integrity": "sha1-hCea8bNMt1qoi/X/KR9tC9mzGlk=", + "dev": true + }, + "eventsource": { + "version": "1.0.7", + "resolved": "https://registry.npm.taobao.org/eventsource/download/eventsource-1.0.7.tgz", + "integrity": "sha1-j7xyyT/NNAiAkLwKTmT0tc7m2NA=", + "dev": true, + "requires": { + "original": "^1.0.0" + } + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/evp_bytestokey/download/evp_bytestokey-1.0.3.tgz", + "integrity": "sha1-f8vbGY3HGVlDLv4ThCaE4FJaywI=", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/execa/download/execa-1.0.0.tgz?cache=0&sync_timestamp=1576776304100&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fexeca%2Fdownload%2Fexeca-1.0.0.tgz", + "integrity": "sha1-xiNqW7TfbW8V6I5/AXeYIWdJ3dg=", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.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.npm.taobao.org/exit/download/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npm.taobao.org/expand-brackets/download/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": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npm.taobao.org/define-property/download/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.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "express": { + "version": "4.17.1", + "resolved": "https://registry.npm.taobao.org/express/download/express-4.17.1.tgz", + "integrity": "sha1-RJH8OGBc9R+GKdOcK10Cb5ikwTQ=", + "dev": true, + "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": { + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/array-flatten/download/array-flatten-1.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farray-flatten%2Fdownload%2Farray-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz", + "integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw=", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz", + "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo=", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/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.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/external-editor/download/external-editor-3.1.0.tgz", + "integrity": "sha1-ywP3QL764D6k0oPK7SdBqD8zVJU=", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/extglob/download/extglob-2.0.4.tgz", + "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", + "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.npm.taobao.org/define-property/download/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.npm.taobao.org/extend-shallow/download/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.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npm.taobao.org/extsprintf/download/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/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.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-json-stable-stringify%2Fdownload%2Ffast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fastparse": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/fastparse/download/fastparse-1.1.2.tgz", + "integrity": "sha1-kXKMWllC7O2FMSg8eUQe5BIsNak=", + "dev": true + }, + "faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npm.taobao.org/faye-websocket/download/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "figgy-pudding": { + "version": "3.5.1", + "resolved": "https://registry.npm.taobao.org/figgy-pudding/download/figgy-pudding-3.5.1.tgz", + "integrity": "sha1-hiRwESkBxyeg5JWoB0S9W6odZ5A=", + "dev": true + }, + "figures": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/figures/download/figures-3.1.0.tgz?cache=0&sync_timestamp=1571715625804&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffigures%2Fdownload%2Ffigures-3.1.0.tgz", + "integrity": "sha1-SxmN0H2NcVMGQoZK8tRd2eRZxOw=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-loader": { + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/file-loader/download/file-loader-4.2.0.tgz", + "integrity": "sha1-X7Ek0jadcHXXCppavs0S5gqVIV4=", + "dev": true, + "requires": { + "loader-utils": "^1.2.3", + "schema-utils": "^2.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "2.6.4", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.6.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.6.4.tgz", + "integrity": "sha1-on779uTnhonZGHLuPM+lfXvdD1M=", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1" + } + } + } + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/file-uri-to-path/download/file-uri-to-path-1.0.0.tgz", + "integrity": "sha1-VTp7hEb/b2hDWcRF8eN6BdrMM90=", + "dev": true, + "optional": true + }, + "fileset": { + "version": "2.0.3", + "resolved": "https://registry.npm.taobao.org/fileset/download/fileset-2.0.3.tgz", + "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", + "dev": true, + "requires": { + "glob": "^7.0.3", + "minimatch": "^3.0.3" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npm.taobao.org/fill-range/download/fill-range-7.0.1.tgz", + "integrity": "sha1-GRmmp8df44ssfHflGYU12prN2kA=", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/finalhandler/download/finalhandler-1.1.2.tgz", + "integrity": "sha1-t+fQAP/RGTjQ/bBTUG9uur6fWH0=", + "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" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "find-cache-dir": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-3.0.0.tgz", + "integrity": "sha1-zUt92Xtxhbfhfb/i1uQRXuPuuPw=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.0", + "pkg-dir": "^4.1.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-4.1.0.tgz", + "integrity": "sha1-l6/n1s3AvFkoWEt8jXsW6KmqXRk=", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-5.0.0.tgz", + "integrity": "sha1-Gvujlq/WdqbUJQTQpno6frn2KqA=", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "make-dir": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-3.0.0.tgz", + "integrity": "sha1-G1859rknDtM/nwVMXA+EMEmJ+AE=", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-4.1.0.tgz", + "integrity": "sha1-o0KLtwiLOmApL2aRkni3wpetTwc=", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/path-exists/download/path-exists-4.0.0.tgz", + "integrity": "sha1-UTvb4tO5XXdi6METfvoZXGxhtbM=", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/pkg-dir/download/pkg-dir-4.2.0.tgz", + "integrity": "sha1-8JkTPfft5CLoHR2ESCcO6z5CYfM=", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz", + "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "firebase": { + "version": "7.8.1", + "resolved": "https://registry.npm.taobao.org/firebase/download/firebase-7.8.1.tgz", + "integrity": "sha1-HyoXcdiazxqsGjb7NdWHCk2k2VM=", + "requires": { + "@firebase/analytics": "0.2.13", + "@firebase/app": "0.5.4", + "@firebase/app-types": "0.5.1", + "@firebase/auth": "0.13.5", + "@firebase/database": "0.5.21", + "@firebase/firestore": "1.10.1", + "@firebase/functions": "0.4.32", + "@firebase/installations": "0.4.2", + "@firebase/messaging": "0.6.4", + "@firebase/performance": "0.2.32", + "@firebase/polyfill": "0.3.31", + "@firebase/remote-config": "0.1.13", + "@firebase/storage": "0.3.26", + "@firebase/util": "0.2.40" + } + }, + "flatted": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/flatted/download/flatted-2.0.1.tgz", + "integrity": "sha1-aeV8qo8OrLwoHS4stFjUb9tEngg=", + "dev": true + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/flush-write-stream/download/flush-write-stream-1.1.1.tgz", + "integrity": "sha1-jdfYc6G6vCB9lOrQwuDkQnbr8ug=", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "follow-redirects": { + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.9.0.tgz", + "integrity": "sha1-jVvNxltxCP4VCGScecEtcy3O208=", + "dev": true, + "requires": { + "debug": "^3.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "font-awesome": { + "version": "4.7.0", + "resolved": "https://registry.npm.taobao.org/font-awesome/download/font-awesome-4.7.0.tgz", + "integrity": "sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM=" + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/for-in/download/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/forever-agent/download/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npm.taobao.org/form-data/download/form-data-2.3.3.tgz", + "integrity": "sha1-3M5SwF9kTymManq5Nr1yTO/786Y=", + "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.npm.taobao.org/forwarded/download/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npm.taobao.org/fragment-cache/download/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.npm.taobao.org/fresh/download/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/from2/download/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "fs-access": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/fs-access/download/fs-access-1.0.1.tgz", + "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", + "dev": true, + "requires": { + "null-check": "^1.0.0" + } + }, + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npm.taobao.org/fs-extra/download/fs-extra-7.0.1.tgz", + "integrity": "sha1-TxicRKoSO4lfcigE9V6iPq3DSOk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/fs-minipass/download/fs-minipass-2.1.0.tgz", + "integrity": "sha1-f1A2/b8SxjwWkZDL5BmchSJx+fs=", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npm.taobao.org/fs-write-stream-atomic/download/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.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/fsevents/download/fsevents-2.1.2.tgz?cache=0&sync_timestamp=1576323112997&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffsevents%2Fdownload%2Ffsevents-2.1.2.tgz", + "integrity": "sha1-TAofs0vGjlQ7S4Kp7Dkr+9qECAU=", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz", + "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=" + }, + "genfun": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/genfun/download/genfun-5.0.0.tgz", + "integrity": "sha1-ndlxCgaQClxKW/V6yl2k5S/nZTc=", + "dev": true + }, + "geojson-equality": { + "version": "0.1.6", + "resolved": "https://registry.npm.taobao.org/geojson-equality/download/geojson-equality-0.1.6.tgz", + "integrity": "sha1-oXE3TvBD5dR5eZWEC65GSOB1LXI=", + "requires": { + "deep-equal": "^1.0.0" + } + }, + "geojson-rbush": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/geojson-rbush/download/geojson-rbush-2.1.0.tgz", + "integrity": "sha1-O9c745H8ELCuaT2bis6iquC4Oo0=", + "requires": { + "@turf/helpers": "*", + "@turf/meta": "*", + "rbush": "*" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/get-caller-file/download/get-caller-file-1.0.3.tgz", + "integrity": "sha1-+Xj6TJDR3+f/LWvtoqUV5xO9z0o=", + "dev": true + }, + "get-closest": { + "version": "0.0.4", + "resolved": "https://registry.npm.taobao.org/get-closest/download/get-closest-0.0.4.tgz", + "integrity": "sha1-JprHdtHmAiqg/Vht1wjop9Miaa8=" + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/get-stream/download/get-stream-4.1.0.tgz", + "integrity": "sha1-wbJVV189wh1Zv8ec09K0axw6VLU=", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npm.taobao.org/getpass/download/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npm.taobao.org/glob/download/glob-7.1.4.tgz?cache=0&sync_timestamp=1573078079496&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglob%2Fdownload%2Fglob-7.1.4.tgz", + "integrity": "sha1-qmCKL2xXetNX4a5aXCbZqNGWklU=", + "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.npm.taobao.org/glob-parent/download/glob-parent-3.1.0.tgz?cache=0&sync_timestamp=1569136652060&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglob-parent%2Fdownload%2Fglob-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.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npm.taobao.org/globals/download/globals-11.12.0.tgz", + "integrity": "sha1-q4eVM4hooLq9hSV1gBjCp+uVxC4=", + "dev": true + }, + "globby": { + "version": "7.1.1", + "resolved": "https://registry.npm.taobao.org/globby/download/globby-7.1.1.tgz", + "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "dir-glob": "^2.0.0", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "graceful-fs": { + "version": "4.2.3", + "resolved": "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.3.tgz", + "integrity": "sha1-ShL/G2A3bvCYYsIJPt2Qgyi+hCM=", + "dev": true + }, + "grpc": { + "version": "1.24.2", + "resolved": "https://registry.npm.taobao.org/grpc/download/grpc-1.24.2.tgz", + "integrity": "sha1-dtBHv6ewW2B8u+OruZBl3O/gwJk=", + "requires": { + "@types/bytebuffer": "^5.0.40", + "lodash.camelcase": "^4.3.0", + "lodash.clone": "^4.5.0", + "nan": "^2.13.2", + "node-pre-gyp": "^0.14.0", + "protobufjs": "^5.0.3" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" + }, + "chownr": { + "version": "1.1.3", + "bundled": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-3.2.0.tgz?cache=0&sync_timestamp=1573943458671&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcliui%2Fdownload%2Fcliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true + }, + "debug": { + "version": "3.2.6", + "bundled": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true + }, + "fs-minipass": { + "version": "1.2.7", + "bundled": true, + "requires": { + "minipass": "^2.6.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true + }, + "gauge": { + "version": "2.7.4", + "bundled": 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.4", + "bundled": 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 + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.3", + "bundled": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "bundled": true + }, + "ini": { + "version": "1.3.5", + "bundled": true + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/invert-kv/download/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/lcid/download/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "requires": { + "invert-kv": "^1.0.0" + } + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "bundled": true + }, + "minipass": { + "version": "2.9.0", + "bundled": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.3.3", + "bundled": true, + "requires": { + "minipass": "^2.9.0" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "bundled": true + } + } + }, + "ms": { + "version": "2.1.2", + "bundled": true + }, + "needle": { + "version": "2.4.0", + "bundled": true, + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.14.0", + "bundled": 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.4.2" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "bundled": true + }, + "npm-packlist": { + "version": "1.4.6", + "bundled": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": 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 + }, + "object-assign": { + "version": "4.1.1", + "bundled": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/os-locale/download/os-locale-1.4.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fos-locale%2Fdownload%2Fos-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "requires": { + "lcid": "^1.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true + }, + "process-nextick-args": { + "version": "2.0.1", + "bundled": true + }, + "protobufjs": { + "version": "5.0.3", + "resolved": "https://registry.npm.taobao.org/protobufjs/download/protobufjs-5.0.3.tgz", + "integrity": "sha1-5N/p+2fJCyYw0VhoJJvMSWFGehc=", + "requires": { + "ascli": "~1", + "bytebuffer": "~5", + "glob": "^7.0.5", + "yargs": "^3.10.0" + } + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": 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.7.1", + "bundled": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true + }, + "sax": { + "version": "1.2.4", + "bundled": true + }, + "semver": { + "version": "5.7.1", + "bundled": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true + }, + "string-width": { + "version": "1.0.2", + "bundled": 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, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true + }, + "tar": { + "version": "4.4.13", + "bundled": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npm.taobao.org/y18n/download/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" + }, + "yallist": { + "version": "3.1.1", + "bundled": true + }, + "yargs": { + "version": "3.32.0", + "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-3.32.0.tgz?cache=0&sync_timestamp=1577940861093&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-3.32.0.tgz", + "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", + "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" + } + } + } + }, + "handle-thing": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/handle-thing/download/handle-thing-2.0.0.tgz", + "integrity": "sha1-DgOWlf9QyT/CiFV9aW88HcZ3Z1Q=", + "dev": true + }, + "handlebars": { + "version": "4.5.3", + "resolved": "https://registry.npm.taobao.org/handlebars/download/handlebars-4.5.3.tgz?cache=0&sync_timestamp=1574061127997&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhandlebars%2Fdownload%2Fhandlebars-4.5.3.tgz", + "integrity": "sha1-XPdb2HFPdgVxNRGla+fDSb7LBII=", + "dev": true, + "requires": { + "neo-async": "^2.6.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/har-schema/download/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npm.taobao.org/har-validator/download/har-validator-5.1.3.tgz", + "integrity": "sha1-HvievT5JllV2de7ZiTEQ3DUPoIA=", + "dev": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/has/download/has-1.0.3.tgz", + "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/has-ansi/download/has-ansi-2.0.0.tgz?cache=0&sync_timestamp=1568144153016&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-ansi%2Fdownload%2Fhas-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-binary2": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/has-binary2/download/has-binary2-1.0.3.tgz", + "integrity": "sha1-d3asYn8+p3JQz8My2rfd9eT10R0=", + "dev": true, + "requires": { + "isarray": "2.0.1" + }, + "dependencies": { + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-2.0.1.tgz?cache=0&sync_timestamp=1562592125418&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fisarray%2Fdownload%2Fisarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true + } + } + }, + "has-cors": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/has-cors/download/has-cors-1.1.0.tgz", + "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.1.tgz?cache=0&sync_timestamp=1573950719586&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-symbols%2Fdownload%2Fhas-symbols-1.0.1.tgz", + "integrity": "sha1-n1IUdYpEGWxAbZvXbOv4HsLdMeg=" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/has-value/download/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.npm.taobao.org/has-values/download/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": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/is-number/download/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.npm.taobao.org/kind-of/download/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.npm.taobao.org/kind-of/download/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npm.taobao.org/hash-base/download/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npm.taobao.org/hash.js/download/hash.js-1.1.7.tgz", + "integrity": "sha1-C6vKU46NTuSg+JiNaIZlN6ADz0I=", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "hex-color-regex": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/hex-color-regex/download/hex-color-regex-1.1.0.tgz", + "integrity": "sha1-TAb8y0YC/iYCs8k9+C1+fb8aio4=", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/hmac-drbg/download/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" + } + }, + "hosted-git-info": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-3.0.2.tgz?cache=0&sync_timestamp=1570493570687&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhosted-git-info%2Fdownload%2Fhosted-git-info-3.0.2.tgz", + "integrity": "sha1-i3470RS1m1F4b4ut4POd3IAnWpc=", + "dev": true, + "requires": { + "lru-cache": "^5.1.1" + } + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npm.taobao.org/hpack.js/download/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "hsl-regex": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/hsl-regex/download/hsl-regex-1.0.0.tgz", + "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=", + "dev": true + }, + "hsla-regex": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/hsla-regex/download/hsla-regex-1.0.0.tgz", + "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=", + "dev": true + }, + "html-comment-regex": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/html-comment-regex/download/html-comment-regex-1.1.2.tgz", + "integrity": "sha1-l9RoiutcgYhqNk+qDK0d2hTUM6c=", + "dev": true + }, + "html-entities": { + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/html-entities/download/html-entities-1.2.1.tgz", + "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "dev": true + }, + "http-cache-semantics": { + "version": "3.8.1", + "resolved": "https://registry.npm.taobao.org/http-cache-semantics/download/http-cache-semantics-3.8.1.tgz", + "integrity": "sha1-ObDhat2bYFvwqe89nar0hDtMrNI=", + "dev": true + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npm.taobao.org/http-deceiver/download/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npm.taobao.org/http-errors/download/http-errors-1.7.2.tgz", + "integrity": "sha1-T1ApzxMjnzEDblsuVSkrz7zIXI8=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npm.taobao.org/inherits/download/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + } + } + }, + "http-parser-js": { + "version": "0.4.10", + "resolved": "https://registry.npm.taobao.org/http-parser-js/download/http-parser-js-0.4.10.tgz", + "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=" + }, + "http-proxy": { + "version": "1.18.0", + "resolved": "https://registry.npm.taobao.org/http-proxy/download/http-proxy-1.18.0.tgz", + "integrity": "sha1-2+VfY+daNH2389mZdPJpKjFKajo=", + "dev": true, + "requires": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "http-proxy-agent": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/http-proxy-agent/download/http-proxy-agent-2.1.0.tgz", + "integrity": "sha1-5IIb7vWyFCogJr1zkm/lN2McVAU=", + "dev": true, + "requires": { + "agent-base": "4", + "debug": "3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", + "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "http-proxy-middleware": { + "version": "0.19.1", + "resolved": "https://registry.npm.taobao.org/http-proxy-middleware/download/http-proxy-middleware-0.19.1.tgz", + "integrity": "sha1-GDx9xKoUeRUDBkmMIQza+WCApDo=", + "dev": true, + "requires": { + "http-proxy": "^1.17.0", + "is-glob": "^4.0.0", + "lodash": "^4.17.11", + "micromatch": "^3.1.10" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/http-signature/download/http-signature-1.2.0.tgz?cache=0&sync_timestamp=1572997209501&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-signature%2Fdownload%2Fhttp-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/https-browserify/download/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npm.taobao.org/https-proxy-agent/download/https-proxy-agent-2.2.4.tgz?cache=0&sync_timestamp=1576014210252&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttps-proxy-agent%2Fdownload%2Fhttps-proxy-agent-2.2.4.tgz", + "integrity": "sha1-TuenN6vZJniik9mzShr00NCMeHs=", + "dev": true, + "requires": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/humanize-ms/download/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "requires": { + "ms": "^2.0.0" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz", + "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "idb": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/idb/download/idb-3.0.2.tgz", + "integrity": "sha1-yOkSLV3dQPE7YK5mXkhi+LE/o4Q=" + }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npm.taobao.org/ieee754/download/ieee754-1.1.13.tgz", + "integrity": "sha1-7BaFWOlaoYH9h9N/VcMrvLZwi4Q=", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npm.taobao.org/iferr/download/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npm.taobao.org/ignore/download/ignore-3.3.10.tgz", + "integrity": "sha1-Cpf7h2mG6AgcYxFg+PnziRV/AEM=", + "dev": true + }, + "ignore-walk": { + "version": "3.0.3", + "resolved": "https://registry.npm.taobao.org/ignore-walk/download/ignore-walk-3.0.3.tgz", + "integrity": "sha1-AX4kRxhL/q3nwjjkrv3R6PlbHjc=", + "dev": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "image-size": { + "version": "0.5.5", + "resolved": "https://registry.npm.taobao.org/image-size/download/image-size-0.5.5.tgz?cache=0&sync_timestamp=1569840751769&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fimage-size%2Fdownload%2Fimage-size-0.5.5.tgz", + "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "dev": true, + "optional": true + }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npm.taobao.org/immediate/download/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "dev": true + }, + "import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/import-cwd/download/import-cwd-2.1.0.tgz", + "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "dev": true, + "requires": { + "import-from": "^2.1.0" + } + }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/import-fresh/download/import-fresh-2.0.0.tgz?cache=0&sync_timestamp=1573664960772&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fimport-fresh%2Fdownload%2Fimport-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, + "import-from": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/import-from/download/import-from-2.1.0.tgz", + "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/import-local/download/import-local-2.0.0.tgz", + "integrity": "sha1-VQcL44pZk88Y72236WH1vuXFoJ0=", + "dev": true, + "requires": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npm.taobao.org/imurmurhash/download/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/indent-string/download/indent-string-4.0.0.tgz", + "integrity": "sha1-Yk+PRJfWGbLZdoUx1Y9BIoVNclE=", + "dev": true + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/indexes-of/download/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npm.taobao.org/indexof/download/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "dev": true + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/infer-owner/download/infer-owner-1.0.4.tgz", + "integrity": "sha1-xM78qo5RBRwqQLos6KPScpWvlGc=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/inherits/download/inherits-2.0.4.tgz", + "integrity": "sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w=", + "dev": true + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npm.taobao.org/ini/download/ini-1.3.5.tgz", + "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=", + "dev": true + }, + "inquirer": { + "version": "7.0.0", + "resolved": "https://registry.npm.taobao.org/inquirer/download/inquirer-7.0.0.tgz?cache=0&sync_timestamp=1579939863311&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Finquirer%2Fdownload%2Finquirer-7.0.0.tgz", + "integrity": "sha1-nisDLd532h2124BHWLj+o6lwUZo=", + "dev": true, + "requires": { + "ansi-escapes": "^4.2.1", + "chalk": "^2.4.2", + "cli-cursor": "^3.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.15", + "mute-stream": "0.0.8", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^4.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-5.0.0.tgz", + "integrity": "sha1-OIU59VF5vzkznIGvMKZU1p+Hy3U=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0=", + "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-4.2.0.tgz", + "integrity": "sha1-lSGCxGzHssMT0VluYjmSvRY7crU=", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-6.0.0.tgz", + "integrity": "sha1-CxVx3XZpzNTz4G4U7x7tJiJa5TI=", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz", + "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz", + "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=", + "dev": true + } + } + } + } + }, + "internal-ip": { + "version": "4.3.0", + "resolved": "https://registry.npm.taobao.org/internal-ip/download/internal-ip-4.3.0.tgz", + "integrity": "sha1-hFRSuq2dLKO2nGNaE3rLmg2tCQc=", + "dev": true, + "requires": { + "default-gateway": "^4.2.0", + "ipaddr.js": "^1.9.0" + } + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npm.taobao.org/invariant/download/invariant-2.2.4.tgz", + "integrity": "sha1-YQ88ksk1nOHbYW5TgAjSP/NRWOY=", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/invert-kv/download/invert-kv-2.0.0.tgz", + "integrity": "sha1-c5P1r6Weyf9fZ6J2INEcIm4+7AI=", + "dev": true + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npm.taobao.org/ip/download/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/ip-regex/download/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true + }, + "ipaddr.js": { + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/ipaddr.js/download/ipaddr.js-1.9.0.tgz", + "integrity": "sha1-N9905DCg5HVQ/lSi3v4w2KzZX2U=", + "dev": true + }, + "is-absolute-url": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-2.1.0.tgz?cache=0&sync_timestamp=1569735515256&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-absolute-url%2Fdownload%2Fis-absolute-url-2.1.0.tgz", + "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/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.npm.taobao.org/kind-of/download/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.npm.taobao.org/is-arguments/download/is-arguments-1.0.4.tgz", + "integrity": "sha1-P6+WbHy6D/Q3+zH2JQCC/PBEjPM=" + }, + "is-array": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/is-array/download/is-array-1.0.1.tgz", + "integrity": "sha1-6YUMwsyGDDvAl36EzPDdRkWEJ5o=" + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-2.1.0.tgz", + "integrity": "sha1-6h9/O4DwZCNug0cPhsCcJU+0Wwk=", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", + "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", + "dev": true + }, + "is-callable": { + "version": "1.1.5", + "resolved": "https://registry.npm.taobao.org/is-callable/download/is-callable-1.1.5.tgz?cache=0&sync_timestamp=1576778289528&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-callable%2Fdownload%2Fis-callable-1.1.5.tgz", + "integrity": "sha1-9+RrWWiQRW23Tn9ul2yzJz0G+qs=" + }, + "is-color-stop": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/is-color-stop/download/is-color-stop-1.1.0.tgz", + "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=", + "dev": true, + "requires": { + "css-color-names": "^0.0.4", + "hex-color-regex": "^1.1.0", + "hsl-regex": "^1.0.0", + "hsla-regex": "^1.0.0", + "rgb-regex": "^1.0.1", + "rgba-regex": "^1.0.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/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.npm.taobao.org/kind-of/download/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.npm.taobao.org/is-date-object/download/is-date-object-1.0.2.tgz?cache=0&sync_timestamp=1576729182289&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-date-object%2Fdownload%2Fis-date-object-1.0.2.tgz", + "integrity": "sha1-vac28s2P0G0yhE53Q7+nSUw7/X4=" + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz", + "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", + "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.npm.taobao.org/kind-of/download/kind-of-5.1.0.tgz", + "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=", + "dev": true + } + } + }, + "is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npm.taobao.org/is-directory/download/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/is-glob/download/is-glob-4.0.1.tgz", + "integrity": "sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw=", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/is-interactive/download/is-interactive-1.0.0.tgz?cache=0&sync_timestamp=1569142823241&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-interactive%2Fdownload%2Fis-interactive-1.0.0.tgz", + "integrity": "sha1-zqbmrlyHCnsKAAQHC3tYfgJSkS4=", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npm.taobao.org/is-number/download/is-number-7.0.0.tgz", + "integrity": "sha1-dTU0W4lnNNX4DE0GxQlVUnoU8Ss=", + "dev": true + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/is-obj/download/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/is-path-cwd/download/is-path-cwd-2.2.0.tgz", + "integrity": "sha1-Z9Q7gmZKe1GR/ZEZEn6zAASKn9s=", + "dev": true + }, + "is-path-in-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/is-path-in-cwd/download/is-path-in-cwd-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-path-in-cwd%2Fdownload%2Fis-path-in-cwd-2.1.0.tgz", + "integrity": "sha1-v+Lcomxp85cmWkAJljYCk1oFOss=", + "dev": true, + "requires": { + "is-path-inside": "^2.1.0" + } + }, + "is-path-inside": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/is-path-inside/download/is-path-inside-2.1.0.tgz?cache=0&sync_timestamp=1569835858319&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-path-inside%2Fdownload%2Fis-path-inside-2.1.0.tgz", + "integrity": "sha1-fJgQWH1lmkDSe8201WFuqwWUlLI=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.2" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/is-plain-object/download/is-plain-object-2.0.4.tgz", + "integrity": "sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/is-promise/download/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-regex": { + "version": "1.0.5", + "resolved": "https://registry.npm.taobao.org/is-regex/download/is-regex-1.0.5.tgz", + "integrity": "sha1-OdWJo1i/GJZ/cmlnEguPwa7XTq4=", + "requires": { + "has": "^1.0.3" + } + }, + "is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/is-resolvable/download/is-resolvable-1.1.0.tgz", + "integrity": "sha1-+xj4fOH+uSUWnJpAfBkxijIG7Yg=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/is-stream/download/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "is-svg": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/is-svg/download/is-svg-3.0.0.tgz", + "integrity": "sha1-kyHb0pwhLlypnE+peUxxS8r6L3U=", + "dev": true, + "requires": { + "html-comment-regex": "^1.1.0" + } + }, + "is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.3.tgz", + "integrity": "sha1-OOEBS55jKb4N6dJKQU/XRB7GGTc=", + "requires": { + "has-symbols": "^1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/is-typedarray/download/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz", + "integrity": "sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0=", + "dev": true + }, + "is-wsl": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/is-wsl/download/is-wsl-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-wsl%2Fdownload%2Fis-wsl-2.1.1.tgz", + "integrity": "sha1-ShwVLUKd89RBZpSY4khtNZbrrx0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz?cache=0&sync_timestamp=1562592125418&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fisarray%2Fdownload%2Fisarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isbinaryfile": { + "version": "3.0.3", + "resolved": "https://registry.npm.taobao.org/isbinaryfile/download/isbinaryfile-3.0.3.tgz", + "integrity": "sha1-XW3vPt6/boyoyunDAYOoBLX4voA=", + "dev": true, + "requires": { + "buffer-alloc": "^1.2.0" + } + }, + "iselement": { + "version": "1.1.4", + "resolved": "https://registry.npm.taobao.org/iselement/download/iselement-1.1.4.tgz", + "integrity": "sha1-flW1Ko68pQp+LoDluNKEDzI1MUY=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/isobject/download/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/isomorphic-fetch/download/isomorphic-fetch-2.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fisomorphic-fetch%2Fdownload%2Fisomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "^1.0.1", + "whatwg-fetch": ">=0.10.0" + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "istanbul-api": { + "version": "2.1.6", + "resolved": "https://registry.npm.taobao.org/istanbul-api/download/istanbul-api-2.1.6.tgz", + "integrity": "sha1-1hcCqdHGatidkuZtQB4WsL2ko18=", + "dev": true, + "requires": { + "async": "^2.6.2", + "compare-versions": "^3.4.0", + "fileset": "^2.0.3", + "istanbul-lib-coverage": "^2.0.5", + "istanbul-lib-hook": "^2.0.7", + "istanbul-lib-instrument": "^3.3.0", + "istanbul-lib-report": "^2.0.8", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^2.2.4", + "js-yaml": "^3.13.1", + "make-dir": "^2.1.0", + "minimatch": "^3.0.4", + "once": "^1.4.0" + }, + "dependencies": { + "istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npm.taobao.org/istanbul-lib-coverage/download/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha1-Z18KtpUD+tSx2En3NrqsqAM0T0k=", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "3.3.0", + "resolved": "https://registry.npm.taobao.org/istanbul-lib-instrument/download/istanbul-lib-instrument-3.3.0.tgz?cache=0&sync_timestamp=1577062492583&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fistanbul-lib-instrument%2Fdownload%2Fistanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha1-pfY9kfC7wMPkee9MXeAnM17G1jA=", + "dev": true, + "requires": { + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" + } + } + } + }, + "istanbul-lib-coverage": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/istanbul-lib-coverage/download/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha1-9ZRKN8cLVQsCp4pcOyBVsoDOyOw=", + "dev": true + }, + "istanbul-lib-hook": { + "version": "2.0.7", + "resolved": "https://registry.npm.taobao.org/istanbul-lib-hook/download/istanbul-lib-hook-2.0.7.tgz", + "integrity": "sha1-yVaV84PU+PYN8fBCUqlVDhW1sTM=", + "dev": true, + "requires": { + "append-transform": "^1.0.0" + } + }, + "istanbul-lib-instrument": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/istanbul-lib-instrument/download/istanbul-lib-instrument-4.0.1.tgz?cache=0&sync_timestamp=1580741110293&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fistanbul-lib-instrument%2Fdownload%2Fistanbul-lib-instrument-4.0.1.tgz", + "integrity": "sha1-YfE6wsls/vsHb+cTEVbMBZB4dOY=", + "dev": true, + "requires": { + "@babel/core": "^7.7.5", + "@babel/parser": "^7.7.5", + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + } + }, + "istanbul-lib-report": { + "version": "2.0.8", + "resolved": "https://registry.npm.taobao.org/istanbul-lib-report/download/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha1-WoETzXRtQ8SInro2qxDn1QybTzM=", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" + }, + "dependencies": { + "istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npm.taobao.org/istanbul-lib-coverage/download/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha1-Z18KtpUD+tSx2En3NrqsqAM0T0k=", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz", + "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "3.0.6", + "resolved": "https://registry.npm.taobao.org/istanbul-lib-source-maps/download/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha1-KEmXxIIRdS7EhiU9qX44ed77qMg=", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", + "source-map": "^0.6.1" + }, + "dependencies": { + "istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npm.taobao.org/istanbul-lib-coverage/download/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha1-Z18KtpUD+tSx2En3NrqsqAM0T0k=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "2.2.6", + "resolved": "https://registry.npm.taobao.org/istanbul-reports/download/istanbul-reports-2.2.6.tgz", + "integrity": "sha1-e08mYNgrKTA6j+YJH4ykvwWNoa8=", + "dev": true, + "requires": { + "handlebars": "^4.1.2" + } + }, + "jasmine": { + "version": "2.8.0", + "resolved": "https://registry.npm.taobao.org/jasmine/download/jasmine-2.8.0.tgz", + "integrity": "sha1-awicChFXax8W3xG4AUbZHU6Lij4=", + "dev": true, + "requires": { + "exit": "^0.1.2", + "glob": "^7.0.6", + "jasmine-core": "~2.8.0" + }, + "dependencies": { + "jasmine-core": { + "version": "2.8.0", + "resolved": "https://registry.npm.taobao.org/jasmine-core/download/jasmine-core-2.8.0.tgz", + "integrity": "sha1-vMl5rh+f0FcB5F5S5l06XWPxok4=", + "dev": true + } + } + }, + "jasmine-core": { + "version": "3.4.0", + "resolved": "https://registry.npm.taobao.org/jasmine-core/download/jasmine-core-3.4.0.tgz", + "integrity": "sha1-KnRhjpZgJlMMNRjwPp+EXSZHPOM=", + "dev": true + }, + "jasmine-spec-reporter": { + "version": "4.2.1", + "resolved": "https://registry.npm.taobao.org/jasmine-spec-reporter/download/jasmine-spec-reporter-4.2.1.tgz", + "integrity": "sha1-HWMq7ANBZwrTJPkrqEtLMrNeniI=", + "dev": true, + "requires": { + "colors": "1.1.2" + } + }, + "jasminewd2": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/jasminewd2/download/jasminewd2-2.2.0.tgz", + "integrity": "sha1-43zwsX8ZnM4jvqcbIDk5Uka07E4=", + "dev": true + }, + "jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npm.taobao.org/jest-worker/download/jest-worker-24.9.0.tgz", + "integrity": "sha1-Xb/bWy0yLphWeJgjipaXvM5ns+U=", + "dev": true, + "requires": { + "merge-stream": "^2.0.0", + "supports-color": "^6.1.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz", + "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npm.taobao.org/js-levenshtein/download/js-levenshtein-1.1.6.tgz", + "integrity": "sha1-xs7ljrNVA3LfjeuF+tXOZs4B1Z0=", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/js-tokens/download/js-tokens-4.0.0.tgz", + "integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk=", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npm.taobao.org/js-yaml/download/js-yaml-3.13.1.tgz", + "integrity": "sha1-r/FRswv9+o5J4F2iLnQV6d+jeEc=", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npm.taobao.org/jsbn/download/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npm.taobao.org/jsesc/download/jsesc-2.5.2.tgz", + "integrity": "sha1-gFZNLkg9rPbo7yCWUKZ98/DCg6Q=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/json-parse-better-errors/download/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk=", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npm.taobao.org/json-schema/download/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npm.taobao.org/json-schema-traverse/download/json-schema-traverse-0.4.1.tgz", + "integrity": "sha1-afaofZUTq4u4/mO9sJecRI5oRmA=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npm.taobao.org/json-stringify-safe/download/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "json3": { + "version": "3.3.3", + "resolved": "https://registry.npm.taobao.org/json3/download/json3-3.3.3.tgz", + "integrity": "sha1-f8EON1/FrkLEcFpcwKpvYr4wW4E=", + "dev": true + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/json5/download/json5-1.0.1.tgz", + "integrity": "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/jsonfile/download/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/jsonparse/download/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npm.taobao.org/jsprim/download/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" + } + }, + "jszip": { + "version": "3.2.2", + "resolved": "https://registry.npm.taobao.org/jszip/download/jszip-3.2.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjszip%2Fdownload%2Fjszip-3.2.2.tgz", + "integrity": "sha1-sUOBbffhBqlZepTHdJM4WtylvR0=", + "dev": true, + "requires": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + } + }, + "karma": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/karma/download/karma-4.1.0.tgz", + "integrity": "sha1-0HOHyXQ6V1tA+vc+ij61Qhwhk+E=", + "dev": true, + "requires": { + "bluebird": "^3.3.0", + "body-parser": "^1.16.1", + "braces": "^2.3.2", + "chokidar": "^2.0.3", + "colors": "^1.1.0", + "connect": "^3.6.0", + "core-js": "^2.2.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.0", + "flatted": "^2.0.0", + "glob": "^7.1.1", + "graceful-fs": "^4.1.2", + "http-proxy": "^1.13.0", + "isbinaryfile": "^3.0.0", + "lodash": "^4.17.11", + "log4js": "^4.0.0", + "mime": "^2.3.1", + "minimatch": "^3.0.2", + "optimist": "^0.6.1", + "qjobs": "^1.1.4", + "range-parser": "^1.2.0", + "rimraf": "^2.6.0", + "safe-buffer": "^5.0.1", + "socket.io": "2.1.1", + "source-map": "^0.6.1", + "tmp": "0.0.33", + "useragent": "2.3.0" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz", + "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/normalize-path/download/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-1.13.1.tgz", + "integrity": "sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U=", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npm.taobao.org/braces/download/braces-2.3.2.tgz", + "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", + "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" + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npm.taobao.org/chokidar/download/chokidar-2.1.8.tgz", + "integrity": "sha1-gEs6e2qZNYw8XGHnHYco8EHP+Rc=", + "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" + } + }, + "core-js": { + "version": "2.6.11", + "resolved": "https://registry.npm.taobao.org/core-js/download/core-js-2.6.11.tgz?cache=0&sync_timestamp=1577253942551&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-2.6.11.tgz", + "integrity": "sha1-OIMUafmSK97Y7iHJ3EaYXgOZMIw=", + "dev": true + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/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.npm.taobao.org/fill-range/download/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" + } + }, + "fsevents": { + "version": "1.2.11", + "resolved": "https://registry.npm.taobao.org/fsevents/download/fsevents-1.2.11.tgz?cache=0&sync_timestamp=1576323112997&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffsevents%2Fdownload%2Ffsevents-1.2.11.tgz", + "integrity": "sha1-Z79X9HWPAu3oj7KhcS/vTRU1i+M=", + "dev": true, + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1", + "node-pre-gyp": "*" + }, + "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.3", + "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": "3.2.6", + "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.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.6.0" + } + }, + "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.6", + "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.3", + "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.4", + "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.9.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.3.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.9.0" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.14.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.4.2" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-normalize-package-bin": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.7", + "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.1", + "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.7.1", + "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.1", + "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.13", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" + } + }, + "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.1.1", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "mime": { + "version": "2.4.4", + "resolved": "https://registry.npm.taobao.org/mime/download/mime-2.4.4.tgz", + "integrity": "sha1-vXuRE1/GsBzePpuuM9ZZtj2IV+U=", + "dev": true + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/readdirp/download/readdirp-2.2.1.tgz", + "integrity": "sha1-DodiKjMlqjPokihcr4tOhGUppSU=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/to-regex-range/download/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" + } + } + } + }, + "karma-chrome-launcher": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/karma-chrome-launcher/download/karma-chrome-launcher-2.2.0.tgz", + "integrity": "sha1-zxudBxNswY/iOTJ9JGVMPbw2is8=", + "dev": true, + "requires": { + "fs-access": "^1.0.0", + "which": "^1.2.1" + } + }, + "karma-coverage-istanbul-reporter": { + "version": "2.0.6", + "resolved": "https://registry.npm.taobao.org/karma-coverage-istanbul-reporter/download/karma-coverage-istanbul-reporter-2.0.6.tgz", + "integrity": "sha1-e26ciHgUR7uHqmrCS/dLk+VYrcM=", + "dev": true, + "requires": { + "istanbul-api": "^2.1.6", + "minimatch": "^3.0.4" + } + }, + "karma-jasmine": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/karma-jasmine/download/karma-jasmine-2.0.1.tgz", + "integrity": "sha1-JuPjHy+vJy3YDrsOGJiRTMOhl2M=", + "dev": true, + "requires": { + "jasmine-core": "^3.3" + } + }, + "karma-jasmine-html-reporter": { + "version": "1.5.1", + "resolved": "https://registry.npm.taobao.org/karma-jasmine-html-reporter/download/karma-jasmine-html-reporter-1.5.1.tgz?cache=0&sync_timestamp=1577250900227&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fkarma-jasmine-html-reporter%2Fdownload%2Fkarma-jasmine-html-reporter-1.5.1.tgz", + "integrity": "sha1-D60tKsQWvARyQxiq0puJvYb3v7w=", + "dev": true + }, + "karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/karma-source-map-support/download/karma-source-map-support-1.4.0.tgz", + "integrity": "sha1-WFJs7M9+hzDlbv/Zek3o1xKsDWs=", + "dev": true, + "requires": { + "source-map-support": "^0.5.5" + } + }, + "killable": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/killable/download/killable-1.0.1.tgz", + "integrity": "sha1-TIzkQRh6Bhx0dPuHygjipjgZSJI=", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-6.0.2.tgz", + "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/lcid/download/lcid-2.0.0.tgz", + "integrity": "sha1-bvXS32DlL4LrIopMNz6NHzlyU88=", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "less": { + "version": "3.10.3", + "resolved": "https://registry.npm.taobao.org/less/download/less-3.10.3.tgz", + "integrity": "sha1-QXoJddXu7MUs/0vPo8CdNXgeZ5I=", + "dev": true, + "requires": { + "clone": "^2.1.2", + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "mime": "^1.4.1", + "mkdirp": "^0.5.0", + "promise": "^7.1.1", + "request": "^2.83.0", + "source-map": "~0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true, + "optional": true + } + } + }, + "less-loader": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/less-loader/download/less-loader-5.0.0.tgz", + "integrity": "sha1-SY3eOmxsT4h0WO6e0/CGoSrRtGY=", + "dev": true, + "requires": { + "clone": "^2.1.1", + "loader-utils": "^1.1.0", + "pify": "^4.0.1" + } + }, + "license-webpack-plugin": { + "version": "2.1.3", + "resolved": "https://registry.npm.taobao.org/license-webpack-plugin/download/license-webpack-plugin-2.1.3.tgz?cache=0&sync_timestamp=1571015436334&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flicense-webpack-plugin%2Fdownload%2Flicense-webpack-plugin-2.1.3.tgz", + "integrity": "sha1-ZW+mqLLnEe41wnrI4WWahyQO9/M=", + "dev": true, + "requires": { + "@types/webpack-sources": "^0.1.5", + "webpack-sources": "^1.2.0" + } + }, + "lie": { + "version": "3.3.0", + "resolved": "https://registry.npm.taobao.org/lie/download/lie-3.3.0.tgz", + "integrity": "sha1-3Pgt7lRfRgdNryAMfBxaCOD0D2o=", + "dev": true, + "requires": { + "immediate": "~3.0.5" + } + }, + "lineclip": { + "version": "1.1.5", + "resolved": "https://registry.npm.taobao.org/lineclip/download/lineclip-1.1.5.tgz", + "integrity": "sha1-K/JgZ9lDVP6r+R5CdoI221YW/RM=" + }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npm.taobao.org/loader-runner/download/loader-runner-2.4.0.tgz?cache=0&sync_timestamp=1574712695617&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Floader-runner%2Fdownload%2Floader-runner-2.4.0.tgz", + "integrity": "sha1-7UcGa/5TTX6ExMe5mYwqdWB9k1c=", + "dev": true + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-1.2.3.tgz", + "integrity": "sha1-H/XcaRHJ8KBiUxpMBLYJQGEIwsc=", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-3.0.0.tgz", + "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npm.taobao.org/lodash/download/lodash-4.17.15.tgz", + "integrity": "sha1-tEf2ZwoEVbv+7dETku/zMOoJdUg=" + }, + "lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npm.taobao.org/lodash.camelcase/download/lodash.camelcase-4.3.0.tgz", + "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" + }, + "lodash.clone": { + "version": "4.5.0", + "resolved": "https://registry.npm.taobao.org/lodash.clone/download/lodash.clone-4.5.0.tgz", + "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npm.taobao.org/lodash.clonedeep/download/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npm.taobao.org/lodash.memoize/download/lodash.memoize-4.1.2.tgz", + "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", + "dev": true + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npm.taobao.org/lodash.uniq/download/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true + }, + "log-symbols": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/log-symbols/download/log-symbols-3.0.0.tgz", + "integrity": "sha1-86CFFqXeqJMzan3uFNGKHP2rd8Q=", + "dev": true, + "requires": { + "chalk": "^2.4.2" + } + }, + "log4js": { + "version": "4.5.1", + "resolved": "https://registry.npm.taobao.org/log4js/download/log4js-4.5.1.tgz", + "integrity": "sha1-5UNiXpfZ5vPm58n8GW3WqyyuMLU=", + "dev": true, + "requires": { + "date-format": "^2.0.0", + "debug": "^4.1.1", + "flatted": "^2.0.0", + "rfdc": "^1.1.4", + "streamroller": "^1.0.6" + } + }, + "loglevel": { + "version": "1.6.6", + "resolved": "https://registry.npm.taobao.org/loglevel/download/loglevel-1.6.6.tgz?cache=0&sync_timestamp=1573147570728&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Floglevel%2Fdownload%2Floglevel-1.6.6.tgz", + "integrity": "sha1-DuYwDMBY22s1UfocS/c7g7t3ExI=", + "dev": true + }, + "long": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/long/download/long-4.0.0.tgz", + "integrity": "sha1-mntxz7fTYaGU6lVSQckvdGjVvyg=" + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/loose-envify/download/loose-envify-1.4.0.tgz", + "integrity": "sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8=", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-5.1.1.tgz", + "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=", + "dev": true, + "requires": { + "yallist": "^3.0.2" + }, + "dependencies": { + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-3.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-3.1.1.tgz", + "integrity": "sha1-27fa+b/YusmrRev2ArjLrQ1dCP0=", + "dev": true + } + } + }, + "magic-string": { + "version": "0.25.4", + "resolved": "https://registry.npm.taobao.org/magic-string/download/magic-string-0.25.4.tgz?cache=0&sync_timestamp=1578578366977&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmagic-string%2Fdownload%2Fmagic-string-0.25.4.tgz", + "integrity": "sha1-MluKCnn8Qj2xCbd/1aGRg7e6UUM=", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.4" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-2.1.0.tgz", + "integrity": "sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU=", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "make-error": { + "version": "1.3.5", + "resolved": "https://registry.npm.taobao.org/make-error/download/make-error-1.3.5.tgz", + "integrity": "sha1-7+ToH22yjK3WBccPKcgxtY73dsg=", + "dev": true + }, + "make-fetch-happen": { + "version": "5.0.2", + "resolved": "https://registry.npm.taobao.org/make-fetch-happen/download/make-fetch-happen-5.0.2.tgz?cache=0&sync_timestamp=1576543101528&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmake-fetch-happen%2Fdownload%2Fmake-fetch-happen-5.0.2.tgz", + "integrity": "sha1-qoOHEE8mh+3KAchofuRQE9AtGb0=", + "dev": true, + "requires": { + "agentkeepalive": "^3.4.1", + "cacache": "^12.0.0", + "http-cache-semantics": "^3.8.1", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "node-fetch-npm": "^2.0.2", + "promise-retry": "^1.1.1", + "socks-proxy-agent": "^4.0.0", + "ssri": "^6.0.0" + }, + "dependencies": { + "cacache": { + "version": "12.0.3", + "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-12.0.3.tgz?cache=0&sync_timestamp=1580176348786&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-12.0.3.tgz", + "integrity": "sha1-vpmruk4b9d9GHNWiwQcfxDJXM5A=", + "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" + } + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npm.taobao.org/ssri/download/ssri-6.0.1.tgz?cache=0&sync_timestamp=1571961490394&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssri%2Fdownload%2Fssri-6.0.1.tgz", + "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + } + } + }, + "mamacro": { + "version": "0.0.3", + "resolved": "https://registry.npm.taobao.org/mamacro/download/mamacro-0.0.3.tgz", + "integrity": "sha1-rSyVdhl8nxq/MI0Hh4Zb2XWj8+Q=", + "dev": true + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npm.taobao.org/map-age-cleaner/download/map-age-cleaner-0.1.3.tgz", + "integrity": "sha1-fVg6cwZDTAVf5HSw9FB45uG0uSo=", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npm.taobao.org/map-cache/download/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/map-visit/download/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npm.taobao.org/md5.js/download/md5.js-1.3.5.tgz", + "integrity": "sha1-tdB7jjIW4+J81yjXL3DR5qNCAF8=", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdn-data": { + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/mdn-data/download/mdn-data-2.0.4.tgz?cache=0&sync_timestamp=1573816302294&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmdn-data%2Fdownload%2Fmdn-data-2.0.4.tgz", + "integrity": "sha1-aZs8OKxvHXKAkaZGULZdOIUC/Vs=", + "dev": true + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npm.taobao.org/media-typer/download/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npm.taobao.org/mem/download/mem-4.3.0.tgz", + "integrity": "sha1-Rhr0l7xK4JYIzbLmDu+2m/90QXg=", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npm.taobao.org/memory-fs/download/memory-fs-0.5.0.tgz?cache=0&sync_timestamp=1570537491040&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmemory-fs%2Fdownload%2Fmemory-fs-0.5.0.tgz", + "integrity": "sha1-MkwBKIuIZSlm0WHbd4OHIIRajjw=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/merge-descriptors/download/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/merge-source-map/download/merge-source-map-1.1.0.tgz", + "integrity": "sha1-L93n5gIJOfcJBqaPLXrmheTIxkY=", + "dev": true, + "requires": { + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/merge-stream/download/merge-stream-2.0.0.tgz", + "integrity": "sha1-UoI2KaFN0AyXcPtq1H3GMQ8sH2A=", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/methods/download/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npm.taobao.org/micromatch/download/micromatch-3.1.10.tgz", + "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", + "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" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npm.taobao.org/braces/download/braces-2.3.2.tgz", + "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", + "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.npm.taobao.org/extend-shallow/download/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.npm.taobao.org/fill-range/download/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.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/is-number/download/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.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/to-regex-range/download/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" + } + } + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/miller-rabin/download/miller-rabin-4.0.1.tgz", + "integrity": "sha1-8IA1HIZbDcViqEYpZtqlNUPHik0=", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz", + "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=", + "dev": true + }, + "mime-db": { + "version": "1.42.0", + "resolved": "https://registry.npm.taobao.org/mime-db/download/mime-db-1.42.0.tgz", + "integrity": "sha1-PiUpB7THrbkGWXtLZWNics+ee6w=", + "dev": true + }, + "mime-types": { + "version": "2.1.25", + "resolved": "https://registry.npm.taobao.org/mime-types/download/mime-types-2.1.25.tgz?cache=0&sync_timestamp=1573568362177&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime-types%2Fdownload%2Fmime-types-2.1.25.tgz", + "integrity": "sha1-OXctRmIfk+KoCoVsU7hqYhVqZDc=", + "dev": true, + "requires": { + "mime-db": "1.42.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-2.1.0.tgz", + "integrity": "sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs=", + "dev": true + }, + "mini-css-extract-plugin": { + "version": "0.8.0", + "resolved": "https://registry.npm.taobao.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.8.0.tgz", + "integrity": "sha1-gdQexP5YxxOpatfHI82y0L1NcOE=", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "normalize-url": "1.9.1", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.0" + }, + "dependencies": { + "normalize-url": { + "version": "1.9.1", + "resolved": "https://registry.npm.taobao.org/normalize-url/download/normalize-url-1.9.1.tgz", + "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", + "dev": true, + "requires": { + "object-assign": "^4.0.1", + "prepend-http": "^1.0.0", + "query-string": "^4.1.0", + "sort-keys": "^1.0.0" + } + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/minimalistic-assert/download/minimalistic-assert-1.0.1.tgz", + "integrity": "sha1-LhlN4ERibUoQ5/f7wAznPoPk1cc=", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/minimalistic-crypto-utils/download/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz", + "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "minipass": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/minipass/download/minipass-3.1.1.tgz", + "integrity": "sha1-dgfOd4RyoYWtbYkIKqIHD3nO3NU=", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/minipass-collect/download/minipass-collect-1.0.2.tgz", + "integrity": "sha1-IrgTv3Rdxu26JXa5QAIq1u3Ixhc=", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npm.taobao.org/minipass-flush/download/minipass-flush-1.0.5.tgz", + "integrity": "sha1-gucTXX6JpQ/+ZGEKeHlTxMTLs3M=", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.2", + "resolved": "https://registry.npm.taobao.org/minipass-pipeline/download/minipass-pipeline-1.2.2.tgz", + "integrity": "sha1-PctrtKVG4ylpx61xDyx5qGq7qTo=", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "1.3.3", + "resolved": "https://registry.npm.taobao.org/minizlib/download/minizlib-1.3.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fminizlib%2Fdownload%2Fminizlib-1.3.3.tgz", + "integrity": "sha1-IpDeloGKNMKVUcio0wEha9Zahh0=", + "dev": true, + "requires": { + "minipass": "^2.9.0" + }, + "dependencies": { + "minipass": { + "version": "2.9.0", + "resolved": "https://registry.npm.taobao.org/minipass/download/minipass-2.9.0.tgz", + "integrity": "sha1-5xN2Ln0+Mv7YAxFc+T4EvKn8yaY=", + "dev": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-3.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-3.1.1.tgz", + "integrity": "sha1-27fa+b/YusmrRev2ArjLrQ1dCP0=", + "dev": true + } + } + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/mississippi/download/mississippi-3.0.0.tgz", + "integrity": "sha1-6goykfl+C16HdrNj1fChLZTGcCI=", + "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" + } + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npm.taobao.org/mixin-deep/download/mixin-deep-1.3.2.tgz", + "integrity": "sha1-ESC0PcNZp4Xc5ltVuC4lfM9HlWY=", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npm.taobao.org/minimist/download/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "monotone-convex-hull-2d": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/monotone-convex-hull-2d/download/monotone-convex-hull-2d-1.0.1.tgz", + "integrity": "sha1-R/Xa6t88Sv03dkuqGqh4ekDu4Iw=", + "requires": { + "robust-orientation": "^1.1.3" + } + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/move-concurrently/download/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" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz", + "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=", + "dev": true + }, + "multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npm.taobao.org/multicast-dns/download/multicast-dns-6.2.3.tgz", + "integrity": "sha1-oOx72QVcQoL3kMPIL04o2zsxsik=", + "dev": true, + "requires": { + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" + } + }, + "multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/multicast-dns-service-types/download/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true + }, + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npm.taobao.org/mute-stream/download/mute-stream-0.0.8.tgz", + "integrity": "sha1-FjDEKyJR/4HiooPelqVJfqkuXg0=", + "dev": true + }, + "nan": { + "version": "2.14.0", + "resolved": "https://registry.npm.taobao.org/nan/download/nan-2.14.0.tgz", + "integrity": "sha1-eBj3IgJ7JFmobwKV1DTR/CM2xSw=" + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npm.taobao.org/nanomatch/download/nanomatch-1.2.13.tgz", + "integrity": "sha1-uHqKpPwN6P5r6IiVs4mD/yZb0Rk=", + "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" + } + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npm.taobao.org/negotiator/download/negotiator-0.6.2.tgz", + "integrity": "sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs=", + "dev": true + }, + "neo-async": { + "version": "2.6.1", + "resolved": "https://registry.npm.taobao.org/neo-async/download/neo-async-2.6.1.tgz", + "integrity": "sha1-rCetpmFn+ohJpq3dg39rGJrSCBw=", + "dev": true + }, + "ng2-file-upload": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/ng2-file-upload/download/ng2-file-upload-1.4.0.tgz", + "integrity": "sha1-jeoo1XMjTFKvR0rSpAAbM1Jx5cQ=", + "requires": { + "tslib": "^1.9.0" + } + }, + "ngx-echarts": { + "version": "4.2.2", + "resolved": "https://registry.npm.taobao.org/ngx-echarts/download/ngx-echarts-4.2.2.tgz", + "integrity": "sha1-nrX2n5IwhIaeoBTxF5Fc1sw2Y0M=", + "requires": { + "tslib": "^1.9.0" + } + }, + "ngx-perfect-scrollbar": { + "version": "8.0.0", + "resolved": "https://registry.npm.taobao.org/ngx-perfect-scrollbar/download/ngx-perfect-scrollbar-8.0.0.tgz", + "integrity": "sha1-GcG7+bGjbYmwCmj3g045Qn0pGC8=", + "requires": { + "perfect-scrollbar": "^1.4.0", + "resize-observer-polyfill": "^1.5.0" + } + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npm.taobao.org/nice-try/download/nice-try-1.0.5.tgz", + "integrity": "sha1-ozeKdpbOfSI+iPybdkvX7xCJ42Y=", + "dev": true + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npm.taobao.org/node-fetch/download/node-fetch-1.7.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-fetch%2Fdownload%2Fnode-fetch-1.7.3.tgz", + "integrity": "sha1-mA9vcthSEaU0fGsrwYxbhMPrR+8=", + "requires": { + "encoding": "^0.1.11", + "is-stream": "^1.0.1" + } + }, + "node-fetch-npm": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/node-fetch-npm/download/node-fetch-npm-2.0.2.tgz", + "integrity": "sha1-cljJBGGC3KNFtCCO2pGNrzNpf/c=", + "dev": true, + "requires": { + "encoding": "^0.1.11", + "json-parse-better-errors": "^1.0.0", + "safe-buffer": "^5.1.1" + } + }, + "node-forge": { + "version": "0.9.0", + "resolved": "https://registry.npm.taobao.org/node-forge/download/node-forge-0.9.0.tgz", + "integrity": "sha1-1iQFDtu0SHStyhK7mlLsY8t4JXk=", + "dev": true + }, + "node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/node-libs-browser/download/node-libs-browser-2.2.1.tgz", + "integrity": "sha1-tk9RPRgzhiX5A0bSew0jXmMfZCU=", + "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": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "node-releases": { + "version": "1.1.48", + "resolved": "https://registry.npm.taobao.org/node-releases/download/node-releases-1.1.48.tgz?cache=0&sync_timestamp=1580980678309&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-releases%2Fdownload%2Fnode-releases-1.1.48.tgz", + "integrity": "sha1-f2R/DEU6BJW81ky9R3jCYDXC8Do=", + "dev": true, + "requires": { + "semver": "^6.3.0" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npm.taobao.org/normalize-package-data/download/normalize-package-data-2.5.0.tgz", + "integrity": "sha1-5m2xg4sgDB38IzIl0SyzZSDiNKg=", + "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" + }, + "dependencies": { + "hosted-git-info": { + "version": "2.8.5", + "resolved": "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-2.8.5.tgz?cache=0&sync_timestamp=1570493570687&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhosted-git-info%2Fdownload%2Fhosted-git-info-2.8.5.tgz", + "integrity": "sha1-dZz88sTRVq3lmwst+r3cQqa5xww=", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/normalize-path/download/normalize-path-3.0.0.tgz", + "integrity": "sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU=", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/normalize-range/download/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "normalize-url": { + "version": "3.3.0", + "resolved": "https://registry.npm.taobao.org/normalize-url/download/normalize-url-3.3.0.tgz", + "integrity": "sha1-suHE3E98bVd0PfczpPWXjRhlBVk=", + "dev": true + }, + "npm-bundled": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/npm-bundled/download/npm-bundled-1.1.1.tgz?cache=0&sync_timestamp=1575936466832&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-bundled%2Fdownload%2Fnpm-bundled-1.1.1.tgz", + "integrity": "sha1-Ht1XCGWpTNsbyCIHdeKUZsn7I0s=", + "dev": true, + "requires": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-normalize-package-bin": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/npm-normalize-package-bin/download/npm-normalize-package-bin-1.0.1.tgz?cache=0&sync_timestamp=1575936472299&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-normalize-package-bin%2Fdownload%2Fnpm-normalize-package-bin-1.0.1.tgz", + "integrity": "sha1-bnmkHyP9I1wGIyGCKNp9nCO49uI=", + "dev": true + }, + "npm-package-arg": { + "version": "6.1.1", + "resolved": "https://registry.npm.taobao.org/npm-package-arg/download/npm-package-arg-6.1.1.tgz", + "integrity": "sha1-AhaMsKSaK3W/mIooaY3ntSnfXLc=", + "dev": true, + "requires": { + "hosted-git-info": "^2.7.1", + "osenv": "^0.1.5", + "semver": "^5.6.0", + "validate-npm-package-name": "^3.0.0" + }, + "dependencies": { + "hosted-git-info": { + "version": "2.8.5", + "resolved": "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-2.8.5.tgz?cache=0&sync_timestamp=1570493570687&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhosted-git-info%2Fdownload%2Fhosted-git-info-2.8.5.tgz", + "integrity": "sha1-dZz88sTRVq3lmwst+r3cQqa5xww=", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "npm-packlist": { + "version": "1.4.8", + "resolved": "https://registry.npm.taobao.org/npm-packlist/download/npm-packlist-1.4.8.tgz?cache=0&sync_timestamp=1579784145028&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-packlist%2Fdownload%2Fnpm-packlist-1.4.8.tgz", + "integrity": "sha1-Vu5swTW5+YrT1Rwcldoiu7my7z4=", + "dev": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-pick-manifest": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/npm-pick-manifest/download/npm-pick-manifest-3.0.2.tgz", + "integrity": "sha1-9Nnl/UviFT5fTl+be+jcQZqZq7c=", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1", + "npm-package-arg": "^6.0.0", + "semver": "^5.4.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "npm-registry-fetch": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/npm-registry-fetch/download/npm-registry-fetch-4.0.2.tgz?cache=0&sync_timestamp=1576573503812&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-registry-fetch%2Fdownload%2Fnpm-registry-fetch-4.0.2.tgz", + "integrity": "sha1-KxQ0+TzL5rY4X45F9F25PhaSHXo=", + "dev": true, + "requires": { + "JSONStream": "^1.3.4", + "bluebird": "^3.5.1", + "figgy-pudding": "^3.4.1", + "lru-cache": "^5.1.1", + "make-fetch-happen": "^5.0.0", + "npm-package-arg": "^6.1.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.0", + "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.0.tgz", + "integrity": "sha1-t02uxJsRSPiMZLaNSbHoFcHy9Rk=", + "dev": true + } + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/npm-run-path/download/npm-run-path-2.0.2.tgz?cache=0&sync_timestamp=1577053378987&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-run-path%2Fdownload%2Fnpm-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.npm.taobao.org/nth-check/download/nth-check-1.0.2.tgz", + "integrity": "sha1-sr0pXDfj3VijvwcAN2Zjuk2c8Fw=", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + }, + "null-check": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/null-check/download/null-check-1.0.0.tgz", + "integrity": "sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=", + "dev": true + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npm.taobao.org/num2fraction/download/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/number-is-nan/download/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz", + "integrity": "sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU=", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-component": { + "version": "0.0.3", + "resolved": "https://registry.npm.taobao.org/object-component/download/object-component-0.0.3.tgz", + "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npm.taobao.org/object-copy/download/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.npm.taobao.org/define-property/download/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.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-inspect": { + "version": "1.7.0", + "resolved": "https://registry.npm.taobao.org/object-inspect/download/object-inspect-1.7.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-inspect%2Fdownload%2Fobject-inspect-1.7.0.tgz", + "integrity": "sha1-9Pa9GBrXfwBrXs5gvQtvOY/3Smc=" + }, + "object-is": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/object-is/download/object-is-1.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-is%2Fdownload%2Fobject-is-1.0.2.tgz", + "integrity": "sha1-a4DrhP5FFJj2UAeYLwNaW0Re3sQ=" + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/object-keys/download/object-keys-1.1.1.tgz", + "integrity": "sha1-HEfyct8nfzsdrwYWd9nILiMixg4=" + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/object-visit/download/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.npm.taobao.org/object.assign/download/object.assign-4.1.0.tgz", + "integrity": "sha1-lovxEA15Vrs8oIbwBvhGs7xACNo=", + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "object.getownpropertydescriptors": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject.getownpropertydescriptors%2Fdownload%2Fobject.getownpropertydescriptors-2.1.0.tgz", + "integrity": "sha1-Npvx+VktiridcS3O1cuBx8U1Jkk=", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "object.values": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/object.values/download/object.values-1.1.1.tgz", + "integrity": "sha1-aKmezeNWt+kpWjxeDOMdyMlT3l4=", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", + "function-bind": "^1.1.1", + "has": "^1.0.3" + } + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/obuf/download/obuf-1.1.2.tgz", + "integrity": "sha1-Cb6jND1BhZ69RGKS0RydTbYZCE4=", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/on-headers/download/on-headers-1.0.2.tgz", + "integrity": "sha1-dysK5qqlJcOZ5Imt+tkMQD6zwo8=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/once/download/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.0", + "resolved": "https://registry.npm.taobao.org/onetime/download/onetime-5.1.0.tgz", + "integrity": "sha1-//DzyRYX/mK7UBiWNumayKbfe+U=", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "open": { + "version": "7.0.0", + "resolved": "https://registry.npm.taobao.org/open/download/open-7.0.0.tgz", + "integrity": "sha1-flKZmxTrc/kPDwgH/pOJfErnPsk=", + "dev": true, + "requires": { + "is-wsl": "^2.1.0" + } + }, + "opn": { + "version": "5.5.0", + "resolved": "https://registry.npm.taobao.org/opn/download/opn-5.5.0.tgz", + "integrity": "sha1-/HFk+rVtI1kExRw7J9pnWMo7m/w=", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + }, + "dependencies": { + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/is-wsl/download/is-wsl-1.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-wsl%2Fdownload%2Fis-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + } + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/optimist/download/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.npm.taobao.org/minimist/download/minimist-0.0.10.tgz", + "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", + "dev": true + } + } + }, + "optjs": { + "version": "3.2.2", + "resolved": "https://registry.npm.taobao.org/optjs/download/optjs-3.2.2.tgz", + "integrity": "sha1-aabOicRCpEQDFBrS+bNwvVu29O4=" + }, + "ora": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/ora/download/ora-4.0.2.tgz", + "integrity": "sha1-Dh5o/UWxNdKGSLJ88ICB+m6KKX0=", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.2.0", + "is-interactive": "^1.0.0", + "log-symbols": "^3.0.0", + "strip-ansi": "^5.2.0", + "wcwidth": "^1.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz", + "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=", + "dev": true + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz", + "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "original": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/original/download/original-1.0.2.tgz", + "integrity": "sha1-5EKmHP/hxf0gpl8yYcJmY7MD8l8=", + "dev": true, + "requires": { + "url-parse": "^1.4.3" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npm.taobao.org/os-browserify/download/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/os-homedir/download/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/os-locale/download/os-locale-3.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fos-locale%2Fdownload%2Fos-locale-3.1.0.tgz", + "integrity": "sha1-qAKm7hfyTBBIOrmTVxnO9O0Wvxo=", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/os-tmpdir/download/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npm.taobao.org/osenv/download/osenv-0.1.5.tgz", + "integrity": "sha1-hc36+uso6Gd/QW4odZK18/SepBA=", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/p-defer/download/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/p-finally/download/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/p-is-promise/download/p-is-promise-2.1.0.tgz", + "integrity": "sha1-kYzrrqJIpiz3/6uOO8qMX4gvxC4=", + "dev": true + }, + "p-limit": { + "version": "2.2.2", + "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.2.2.tgz?cache=0&sync_timestamp=1577904187480&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-limit%2Fdownload%2Fp-limit-2.2.2.tgz", + "integrity": "sha1-YSebZ3IfUoeqHBOpp/u8SMkpGx4=", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-3.0.0.tgz", + "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/p-map/download/p-map-3.0.0.tgz?cache=0&sync_timestamp=1563032875018&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-map%2Fdownload%2Fp-map-3.0.0.tgz", + "integrity": "sha1-1wTZr4orpoTiYA2aIVmD1BQal50=", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-retry": { + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/p-retry/download/p-retry-3.0.1.tgz", + "integrity": "sha1-MWtMiJPiyNwc+okfQGxLQivr8yg=", + "dev": true, + "requires": { + "retry": "^0.12.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz", + "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", + "dev": true + }, + "pacote": { + "version": "9.5.8", + "resolved": "https://registry.npm.taobao.org/pacote/download/pacote-9.5.8.tgz", + "integrity": "sha1-I0gO/cT6dFFYVcns85z2QHj5l4Y=", + "dev": true, + "requires": { + "bluebird": "^3.5.3", + "cacache": "^12.0.2", + "chownr": "^1.1.2", + "figgy-pudding": "^3.5.1", + "get-stream": "^4.1.0", + "glob": "^7.1.3", + "infer-owner": "^1.0.4", + "lru-cache": "^5.1.1", + "make-fetch-happen": "^5.0.0", + "minimatch": "^3.0.4", + "minipass": "^2.3.5", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "normalize-package-data": "^2.4.0", + "npm-package-arg": "^6.1.0", + "npm-packlist": "^1.1.12", + "npm-pick-manifest": "^3.0.0", + "npm-registry-fetch": "^4.0.0", + "osenv": "^0.1.5", + "promise-inflight": "^1.0.1", + "promise-retry": "^1.1.1", + "protoduck": "^5.0.1", + "rimraf": "^2.6.2", + "safe-buffer": "^5.1.2", + "semver": "^5.6.0", + "ssri": "^6.0.1", + "tar": "^4.4.10", + "unique-filename": "^1.1.1", + "which": "^1.3.1" + }, + "dependencies": { + "cacache": { + "version": "12.0.3", + "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-12.0.3.tgz?cache=0&sync_timestamp=1580176348786&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-12.0.3.tgz", + "integrity": "sha1-vpmruk4b9d9GHNWiwQcfxDJXM5A=", + "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" + } + }, + "minipass": { + "version": "2.9.0", + "resolved": "https://registry.npm.taobao.org/minipass/download/minipass-2.9.0.tgz", + "integrity": "sha1-5xN2Ln0+Mv7YAxFc+T4EvKn8yaY=", + "dev": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npm.taobao.org/ssri/download/ssri-6.0.1.tgz?cache=0&sync_timestamp=1571961490394&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssri%2Fdownload%2Fssri-6.0.1.tgz", + "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-3.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-3.1.1.tgz", + "integrity": "sha1-27fa+b/YusmrRev2ArjLrQ1dCP0=", + "dev": true + } + } + }, + "pako": { + "version": "1.0.10", + "resolved": "https://registry.npm.taobao.org/pako/download/pako-1.0.10.tgz", + "integrity": "sha1-Qyi621CGpCaqkPVBl31JVdpclzI=", + "dev": true + }, + "parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/parallel-transform/download/parallel-transform-1.2.0.tgz", + "integrity": "sha1-kEnKN9bLIYLDsdLHIL6U0UpYFPw=", + "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.npm.taobao.org/parse-asn1/download/parse-asn1-5.1.5.tgz", + "integrity": "sha1-ADJxND2ljclMrOSU+u89IUfs6g4=", + "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-json": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/parse-json/download/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" + } + }, + "parse5": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/parse5/download/parse5-4.0.0.tgz?cache=0&sync_timestamp=1573036762880&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparse5%2Fdownload%2Fparse5-4.0.0.tgz", + "integrity": "sha1-bXhlbj2o14tOwLkG98CO8d/j9gg=", + "dev": true + }, + "parseqs": { + "version": "0.0.5", + "resolved": "https://registry.npm.taobao.org/parseqs/download/parseqs-0.0.5.tgz", + "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", + "dev": true, + "requires": { + "better-assert": "~1.0.0" + } + }, + "parseuri": { + "version": "0.0.5", + "resolved": "https://registry.npm.taobao.org/parseuri/download/parseuri-0.0.5.tgz?cache=0&sync_timestamp=1568821215232&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparseuri%2Fdownload%2Fparseuri-0.0.5.tgz", + "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", + "dev": true, + "requires": { + "better-assert": "~1.0.0" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz", + "integrity": "sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npm.taobao.org/path-browserify/download/path-browserify-0.0.1.tgz", + "integrity": "sha1-5sTd1+06onxoogzE5Q4aTug7vEo=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/path-dirname/download/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/path-exists/download/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/path-is-inside/download/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-2.0.1.tgz?cache=0&sync_timestamp=1574441376633&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-key%2Fdownload%2Fpath-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npm.taobao.org/path-parse/download/path-parse-1.0.6.tgz", + "integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw=", + "dev": true + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-to-regexp%2Fdownload%2Fpath-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/path-type/download/path-type-3.0.0.tgz", + "integrity": "sha1-zvMdyOCho7sNEFwM2Xzzv0f0428=", + "dev": true, + "requires": { + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npm.taobao.org/pbkdf2/download/pbkdf2-3.0.17.tgz", + "integrity": "sha1-l2wgZTBhexTrsyEUI597CTNuk6Y=", + "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" + } + }, + "perfect-scrollbar": { + "version": "1.5.0", + "resolved": "https://registry.npm.taobao.org/perfect-scrollbar/download/perfect-scrollbar-1.5.0.tgz", + "integrity": "sha1-gh0iTtj/YZkMI/JttjBIzcdba4M=" + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/performance-now/download/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "picomatch": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/picomatch/download/picomatch-2.2.1.tgz", + "integrity": "sha1-IbrIiLbthgH4Mc54FuM1vHefCko=", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-4.0.1.tgz", + "integrity": "sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/pinkie/download/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/pinkie-promise/download/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/pkg-dir/download/pkg-dir-3.0.0.tgz", + "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "point-in-polygon": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/point-in-polygon/download/point-in-polygon-1.0.1.tgz", + "integrity": "sha1-1Ztk6P7kHElFiqyCtWcYxZV7Kvc=" + }, + "portfinder": { + "version": "1.0.25", + "resolved": "https://registry.npm.taobao.org/portfinder/download/portfinder-1.0.25.tgz", + "integrity": "sha1-JU/TN/+6hp9LnTftwpgFnLTTXso=", + "dev": true, + "requires": { + "async": "^2.6.2", + "debug": "^3.1.1", + "mkdirp": "^0.5.1" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "positioning": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/positioning/download/positioning-2.0.0.tgz", + "integrity": "sha1-aXhc8r9s2rtv7z/RQaZLhp5X8wU=" + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npm.taobao.org/posix-character-classes/download/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "postcss": { + "version": "7.0.21", + "resolved": "https://registry.npm.taobao.org/postcss/download/postcss-7.0.21.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss%2Fdownload%2Fpostcss-7.0.21.tgz", + "integrity": "sha1-BrsHgkwZwgIcXQVtWxDDW5iffhc=", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz", + "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-calc": { + "version": "7.0.1", + "resolved": "https://registry.npm.taobao.org/postcss-calc/download/postcss-calc-7.0.1.tgz", + "integrity": "sha1-Ntd7qwI7Dsu5eJ2E3LI8SUEUVDY=", + "dev": true, + "requires": { + "css-unit-converter": "^1.1.1", + "postcss": "^7.0.5", + "postcss-selector-parser": "^5.0.0-rc.4", + "postcss-value-parser": "^3.3.1" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-colormin": { + "version": "4.0.3", + "resolved": "https://registry.npm.taobao.org/postcss-colormin/download/postcss-colormin-4.0.3.tgz", + "integrity": "sha1-rgYLzpPteUrHEmTwgTLVUJVr04E=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "color": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-convert-values": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/postcss-convert-values/download/postcss-convert-values-4.0.1.tgz", + "integrity": "sha1-yjgT7U2g+BL51DcDWE5Enr4Ymn8=", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-discard-comments": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-discard-comments/download/postcss-discard-comments-4.0.2.tgz", + "integrity": "sha1-H7q9LCRr/2qq15l7KwkY9NevQDM=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-duplicates": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-discard-duplicates/download/postcss-discard-duplicates-4.0.2.tgz", + "integrity": "sha1-P+EzzTyCKC5VD8myORdqkge3hOs=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-empty": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/postcss-discard-empty/download/postcss-discard-empty-4.0.1.tgz", + "integrity": "sha1-yMlR6fc+2UKAGUWERKAq2Qu592U=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-overridden": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/postcss-discard-overridden/download/postcss-discard-overridden-4.0.1.tgz", + "integrity": "sha1-ZSrvipZybwKfXj4AFG7npOdV/1c=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-import": { + "version": "12.0.1", + "resolved": "https://registry.npm.taobao.org/postcss-import/download/postcss-import-12.0.1.tgz", + "integrity": "sha1-z4x6sLXMq1ZJAkU25WX4QZKLcVM=", + "dev": true, + "requires": { + "postcss": "^7.0.1", + "postcss-value-parser": "^3.2.3", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-load-config": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/postcss-load-config/download/postcss-load-config-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-load-config%2Fdownload%2Fpostcss-load-config-2.1.0.tgz", + "integrity": "sha1-yE1pK3u3tB3c7ZTuYuirMbQXsAM=", + "dev": true, + "requires": { + "cosmiconfig": "^5.0.0", + "import-cwd": "^2.0.0" + } + }, + "postcss-loader": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/postcss-loader/download/postcss-loader-3.0.0.tgz", + "integrity": "sha1-a5eUPkfHLYRfqeA/Jzdz1OjdbC0=", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "postcss": "^7.0.0", + "postcss-load-config": "^2.0.0", + "schema-utils": "^1.0.0" + } + }, + "postcss-merge-longhand": { + "version": "4.0.11", + "resolved": "https://registry.npm.taobao.org/postcss-merge-longhand/download/postcss-merge-longhand-4.0.11.tgz", + "integrity": "sha1-YvSaE+Sg7gTnuY9CuxYGLKJUniQ=", + "dev": true, + "requires": { + "css-color-names": "0.0.4", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "stylehacks": "^4.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-merge-rules": { + "version": "4.0.3", + "resolved": "https://registry.npm.taobao.org/postcss-merge-rules/download/postcss-merge-rules-4.0.3.tgz", + "integrity": "sha1-NivqT/Wh+Y5AdacTxsslrv75plA=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "cssnano-util-same-parent": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0", + "vendors": "^1.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", + "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "dev": true, + "requires": { + "dot-prop": "^4.1.1", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-minify-font-values": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-minify-font-values/download/postcss-minify-font-values-4.0.2.tgz", + "integrity": "sha1-zUw0TM5HQ0P6xdgiBqssvLiv1aY=", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-minify-gradients": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-minify-gradients/download/postcss-minify-gradients-4.0.2.tgz", + "integrity": "sha1-k7KcL/UJnFNe7NpWxKpuZlpmNHE=", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "is-color-stop": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-minify-params": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-minify-params/download/postcss-minify-params-4.0.2.tgz", + "integrity": "sha1-a5zvAwwR41Jh+V9hjJADbWgNuHQ=", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "browserslist": "^4.0.0", + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "uniqs": "^2.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-minify-selectors": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-minify-selectors/download/postcss-minify-selectors-4.0.2.tgz", + "integrity": "sha1-4uXrQL/uUA0M2SQ1APX46kJi+9g=", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", + "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "dev": true, + "requires": { + "dot-prop": "^4.1.1", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-normalize-charset": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/postcss-normalize-charset/download/postcss-normalize-charset-4.0.1.tgz", + "integrity": "sha1-izWt067oOhNrBHHg1ZvlilAoXdQ=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-normalize-display-values": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-normalize-display-values/download/postcss-normalize-display-values-4.0.2.tgz", + "integrity": "sha1-Db4EpM6QY9RmftK+R2u4MMglk1o=", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-normalize-positions": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-normalize-positions/download/postcss-normalize-positions-4.0.2.tgz", + "integrity": "sha1-BfdX+E8mBDc3g2ipH4ky1LECkX8=", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-normalize-repeat-style": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-normalize-repeat-style/download/postcss-normalize-repeat-style-4.0.2.tgz", + "integrity": "sha1-xOu8KJ85kaAo1EdRy90RkYsXkQw=", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-normalize-string": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-normalize-string/download/postcss-normalize-string-4.0.2.tgz", + "integrity": "sha1-zUTECrB6DHo23F6Zqs4eyk7CaQw=", + "dev": true, + "requires": { + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-normalize-timing-functions": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-normalize-timing-functions/download/postcss-normalize-timing-functions-4.0.2.tgz", + "integrity": "sha1-jgCcoqOUnNr4rSPmtquZy159KNk=", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-normalize-unicode": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/postcss-normalize-unicode/download/postcss-normalize-unicode-4.0.1.tgz", + "integrity": "sha1-hBvUj9zzAZrUuqdJOj02O1KuHPs=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-normalize-url": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/postcss-normalize-url/download/postcss-normalize-url-4.0.1.tgz", + "integrity": "sha1-EOQ3+GvHx+WPe5ZS7YeNqqlfquE=", + "dev": true, + "requires": { + "is-absolute-url": "^2.0.0", + "normalize-url": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-normalize-whitespace": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-normalize-whitespace/download/postcss-normalize-whitespace-4.0.2.tgz", + "integrity": "sha1-vx1AcP5Pzqh9E0joJdjMDF+qfYI=", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-ordered-values": { + "version": "4.1.2", + "resolved": "https://registry.npm.taobao.org/postcss-ordered-values/download/postcss-ordered-values-4.1.2.tgz", + "integrity": "sha1-DPdcgg7H1cTSgBiVWeC1ceusDu4=", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-reduce-initial": { + "version": "4.0.3", + "resolved": "https://registry.npm.taobao.org/postcss-reduce-initial/download/postcss-reduce-initial-4.0.3.tgz", + "integrity": "sha1-f9QuvqXpyBRgljniwuhK4nC6SN8=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-reduce-transforms/download/postcss-reduce-transforms-4.0.2.tgz", + "integrity": "sha1-F++kBerMbge+NBSlyi0QdGgdTik=", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha1-JJBENWaXsztk8aj3yAki3d7nGVw=", + "dev": true, + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/cssesc/download/cssesc-2.0.0.tgz", + "integrity": "sha1-OxO9G7HLNuG8taTc0n9UxdyzVwM=", + "dev": true + } + } + }, + "postcss-svgo": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-svgo/download/postcss-svgo-4.0.2.tgz", + "integrity": "sha1-F7mXvHEbMzurFDqu07jT1uPTglg=", + "dev": true, + "requires": { + "is-svg": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "svgo": "^1.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } + } + }, + "postcss-unique-selectors": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/postcss-unique-selectors/download/postcss-unique-selectors-4.0.1.tgz", + "integrity": "sha1-lEaRHzKJv9ZMbWgPBzwDsfnuS6w=", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "postcss": "^7.0.0", + "uniqs": "^2.0.0" + } + }, + "postcss-value-parser": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-4.0.2.tgz", + "integrity": "sha1-SCKCwJpCcG0fyaBptz9E7Ag5Hck=", + "dev": true + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/prepend-http/download/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npm.taobao.org/private/download/private-0.1.8.tgz", + "integrity": "sha1-I4Hts2ifelPWUxkAYPz4ItLzaP8=", + "dev": true + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npm.taobao.org/process/download/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.1.tgz", + "integrity": "sha1-eCDZsWEgzFXKmud5JoCufbptf+I=", + "dev": true + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npm.taobao.org/promise/download/promise-7.3.1.tgz", + "integrity": "sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078=", + "dev": true, + "optional": true, + "requires": { + "asap": "~2.0.3" + } + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/promise-inflight/download/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "promise-polyfill": { + "version": "8.1.3", + "resolved": "https://registry.npm.taobao.org/promise-polyfill/download/promise-polyfill-8.1.3.tgz", + "integrity": "sha1-jJmzz1PzqRxoIm/9573oHX+QQRY=" + }, + "promise-retry": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/promise-retry/download/promise-retry-1.1.1.tgz", + "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "dev": true, + "requires": { + "err-code": "^1.0.0", + "retry": "^0.10.0" + }, + "dependencies": { + "retry": { + "version": "0.10.1", + "resolved": "https://registry.npm.taobao.org/retry/download/retry-0.10.1.tgz", + "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", + "dev": true + } + } + }, + "protobufjs": { + "version": "6.8.8", + "resolved": "https://registry.npm.taobao.org/protobufjs/download/protobufjs-6.8.8.tgz", + "integrity": "sha1-yLTxKC/XqQ5vWxCe0RyEr4KQjnw=", + "requires": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/long": "^4.0.0", + "@types/node": "^10.1.0", + "long": "^4.0.0" + }, + "dependencies": { + "@types/node": { + "version": "10.17.14", + "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-10.17.14.tgz?cache=0&sync_timestamp=1580843161457&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-10.17.14.tgz", + "integrity": "sha1-tsYOvy+15CKf3XUf+d364PXzFUE=" + } + } + }, + "protoduck": { + "version": "5.0.1", + "resolved": "https://registry.npm.taobao.org/protoduck/download/protoduck-5.0.1.tgz", + "integrity": "sha1-A8NlnKGAB7aaUP2Cp+vMUWJhFR8=", + "dev": true, + "requires": { + "genfun": "^5.0.0" + } + }, + "protractor": { + "version": "5.4.2", + "resolved": "https://registry.npm.taobao.org/protractor/download/protractor-5.4.2.tgz", + "integrity": "sha1-Mp7+N/SLIUGrlGd5m+LU0S60jBM=", + "dev": true, + "requires": { + "@types/q": "^0.0.32", + "@types/selenium-webdriver": "^3.0.0", + "blocking-proxy": "^1.0.0", + "browserstack": "^1.5.1", + "chalk": "^1.1.3", + "glob": "^7.0.3", + "jasmine": "2.8.0", + "jasminewd2": "^2.1.0", + "optimist": "~0.6.0", + "q": "1.4.1", + "saucelabs": "^1.5.0", + "selenium-webdriver": "3.6.0", + "source-map-support": "~0.4.0", + "webdriver-js-extender": "2.1.0", + "webdriver-manager": "^12.0.6" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz?cache=0&sync_timestamp=1573282918610&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-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" + } + }, + "del": { + "version": "2.2.2", + "resolved": "https://registry.npm.taobao.org/del/download/del-2.2.2.tgz", + "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.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" + } + }, + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/globby/download/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "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" + } + }, + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/is-path-cwd/download/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true + }, + "is-path-in-cwd": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/is-path-in-cwd/download/is-path-in-cwd-1.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-path-in-cwd%2Fdownload%2Fis-path-in-cwd-1.0.1.tgz", + "integrity": "sha1-WsSLNF72dTOb1sekipEhELJBz1I=", + "dev": true, + "requires": { + "is-path-inside": "^1.0.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/is-path-inside/download/is-path-inside-1.0.1.tgz?cache=0&sync_timestamp=1569835858319&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-path-inside%2Fdownload%2Fis-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npm.taobao.org/source-map-support/download/source-map-support-0.4.18.tgz", + "integrity": "sha1-Aoam3ovkJkEzhZTpfM6nXwosWF8=", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-2.0.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "webdriver-manager": { + "version": "12.1.7", + "resolved": "https://registry.npm.taobao.org/webdriver-manager/download/webdriver-manager-12.1.7.tgz", + "integrity": "sha1-7U6u6PkGszwUboabVehQVTobEWI=", + "dev": true, + "requires": { + "adm-zip": "^0.4.9", + "chalk": "^1.1.1", + "del": "^2.2.0", + "glob": "^7.0.3", + "ini": "^1.3.4", + "minimist": "^1.2.0", + "q": "^1.4.1", + "request": "^2.87.0", + "rimraf": "^2.5.2", + "semver": "^5.3.0", + "xml2js": "^0.4.17" + } + } + } + }, + "proxy-addr": { + "version": "2.0.5", + "resolved": "https://registry.npm.taobao.org/proxy-addr/download/proxy-addr-2.0.5.tgz", + "integrity": "sha1-NMvWSi2B9LH9IedvnwbIpFKZ7jQ=", + "dev": true, + "requires": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.9.0" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/prr/download/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/pseudomap/download/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.7.0", + "resolved": "https://registry.npm.taobao.org/psl/download/psl-1.7.0.tgz", + "integrity": "sha1-8cTEeo75cWfepda79IFtc26ISjw=", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npm.taobao.org/public-encrypt/download/public-encrypt-4.0.3.tgz", + "integrity": "sha1-T8ydd6B+SLp1J+fL4N4z0HATMeA=", + "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" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/pump/download/pump-3.0.0.tgz", + "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npm.taobao.org/pumpify/download/pumpify-1.5.1.tgz?cache=0&sync_timestamp=1569938272548&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpumpify%2Fdownload%2Fpumpify-1.5.1.tgz", + "integrity": "sha1-NlE74karJ1cLGjdKXOJ4v9dDcM4=", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/pump/download/pump-2.0.1.tgz", + "integrity": "sha1-Ejma3W5M91Jtlzy8i1zi4pCLOQk=", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/punycode/download/punycode-2.1.1.tgz", + "integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew=", + "dev": true + }, + "q": { + "version": "1.4.1", + "resolved": "https://registry.npm.taobao.org/q/download/q-1.4.1.tgz", + "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=", + "dev": true + }, + "qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/qjobs/download/qjobs-1.2.0.tgz", + "integrity": "sha1-xF6cYYAL0IfviNfiVkI73Unl0HE=", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.5.2.tgz", + "integrity": "sha1-yzroBuh0BERYTvFUzo7pjUA/PjY=", + "dev": true + }, + "query-string": { + "version": "4.3.4", + "resolved": "https://registry.npm.taobao.org/query-string/download/query-string-4.3.4.tgz", + "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", + "dev": true, + "requires": { + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + } + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npm.taobao.org/querystring/download/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npm.taobao.org/querystring-es3/download/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "querystringify": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/querystringify/download/querystringify-2.1.1.tgz", + "integrity": "sha1-YOWl/WSn+L+k0qsu1v30yFutFU4=", + "dev": true + }, + "quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/quickselect/download/quickselect-2.0.0.tgz", + "integrity": "sha1-8ZaApIal7vtYEwPgI+mPqvJd0Bg=" + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/randombytes/download/randombytes-2.1.0.tgz", + "integrity": "sha1-32+ENy8CcNxlzfYpE0mrekc9Tyo=", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/randomfill/download/randomfill-1.0.4.tgz", + "integrity": "sha1-ySGW/IarQr6YPxvzF3giSTHWFFg=", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/range-parser/download/range-parser-1.2.1.tgz", + "integrity": "sha1-PPNwI9GZ4cJNGlW4SADC8+ZGgDE=", + "dev": true + }, + "raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npm.taobao.org/raw-body/download/raw-body-2.4.0.tgz", + "integrity": "sha1-oc5vucm8NWylLoklarWQWeE9AzI=", + "dev": true, + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/bytes/download/bytes-3.1.0.tgz", + "integrity": "sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY=", + "dev": true + } + } + }, + "raw-loader": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/raw-loader/download/raw-loader-3.1.0.tgz?cache=0&sync_timestamp=1574695040943&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fraw-loader%2Fdownload%2Fraw-loader-3.1.0.tgz", + "integrity": "sha1-Xp05mloiLMDeGPQsO8XklndTKz8=", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "schema-utils": "^2.0.1" + }, + "dependencies": { + "schema-utils": { + "version": "2.6.4", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.6.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.6.4.tgz", + "integrity": "sha1-on779uTnhonZGHLuPM+lfXvdD1M=", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1" + } + } + } + }, + "rbush": { + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/rbush/download/rbush-3.0.1.tgz", + "integrity": "sha1-X6+op5s7mv3+UAhAOnIMwd6ILs8=", + "requires": { + "quickselect": "^2.0.0" + } + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/read-cache/download/read-cache-1.0.0.tgz", + "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "dev": true, + "requires": { + "pify": "^2.3.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "read-package-json": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/read-package-json/download/read-package-json-2.1.1.tgz", + "integrity": "sha1-FqpmxZ59Ta1iiPF53ZKV/Vm7mPE=", + "dev": true, + "requires": { + "glob": "^7.1.1", + "graceful-fs": "^4.1.2", + "json-parse-better-errors": "^1.0.1", + "normalize-package-data": "^2.0.0", + "npm-normalize-package-bin": "^1.0.0" + } + }, + "read-package-tree": { + "version": "5.3.1", + "resolved": "https://registry.npm.taobao.org/read-package-tree/download/read-package-tree-5.3.1.tgz", + "integrity": "sha1-oyy2TH8x64pvMe8G+c7fdAaP5jY=", + "dev": true, + "requires": { + "read-package-json": "^2.0.0", + "readdir-scoped-modules": "^1.0.0", + "util-promisify": "^2.1.0" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.7.tgz", + "integrity": "sha1-Hsoc9xGu+BTAT2IlKjamL2yyO1c=", + "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" + } + }, + "readdir-scoped-modules": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/readdir-scoped-modules/download/readdir-scoped-modules-1.1.0.tgz", + "integrity": "sha1-jUVAe0+HCg3K68DihnDRjnRRQwk=", + "dev": true, + "requires": { + "debuglog": "^1.0.1", + "dezalgo": "^1.0.0", + "graceful-fs": "^4.1.2", + "once": "^1.3.0" + } + }, + "readdirp": { + "version": "3.3.0", + "resolved": "https://registry.npm.taobao.org/readdirp/download/readdirp-3.3.0.tgz", + "integrity": "sha1-mERY0ToeQuLp9YQbEp4WLzaa/xc=", + "dev": true, + "requires": { + "picomatch": "^2.0.7" + } + }, + "reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npm.taobao.org/reflect-metadata/download/reflect-metadata-0.1.13.tgz", + "integrity": "sha1-Z648pXyXKiqhZCsQ/jY/4y1J3Ag=", + "dev": true + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/regenerate/download/regenerate-1.4.0.tgz", + "integrity": "sha1-SoVuxLVuQHfFV1icroXnpMiGmhE=", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "8.1.0", + "resolved": "https://registry.npm.taobao.org/regenerate-unicode-properties/download/regenerate-unicode-properties-8.1.0.tgz", + "integrity": "sha1-71Hg8OpK1CS3e/fLQfPgFccKPw4=", + "dev": true, + "requires": { + "regenerate": "^1.4.0" + } + }, + "regenerator-runtime": { + "version": "0.13.3", + "resolved": "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.3.tgz", + "integrity": "sha1-fPanfY9cb2Drc8X8GVWyzrAea/U=", + "dev": true + }, + "regenerator-transform": { + "version": "0.14.1", + "resolved": "https://registry.npm.taobao.org/regenerator-transform/download/regenerator-transform-0.14.1.tgz", + "integrity": "sha1-Oy/OThq3cywI9mXf2zFHScfd0vs=", + "dev": true, + "requires": { + "private": "^0.1.6" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz", + "integrity": "sha1-H07OJ+ALC2XgJHpoEOaoXYOldSw=", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexp.prototype.flags": { + "version": "1.3.0", + "resolved": "https://registry.npm.taobao.org/regexp.prototype.flags/download/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha1-erqJs8E6ZFCdq888qNn7ub31y3U=", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, + "regexpu-core": { + "version": "4.6.0", + "resolved": "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-4.6.0.tgz?cache=0&sync_timestamp=1568402850982&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregexpu-core%2Fdownload%2Fregexpu-core-4.6.0.tgz", + "integrity": "sha1-IDfBizJ8/Oim/qKk7EQfJDKvuLY=", + "dev": true, + "requires": { + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^8.1.0", + "regjsgen": "^0.5.0", + "regjsparser": "^0.6.0", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.1.0" + } + }, + "regjsgen": { + "version": "0.5.1", + "resolved": "https://registry.npm.taobao.org/regjsgen/download/regjsgen-0.5.1.tgz", + "integrity": "sha1-SPC/Gl6iBRlpKcDZeYtC0e2YRDw=", + "dev": true + }, + "regjsparser": { + "version": "0.6.2", + "resolved": "https://registry.npm.taobao.org/regjsparser/download/regjsparser-0.6.2.tgz", + "integrity": "sha1-/WLHU5kUZ9nR/+Cp9n8npSkCS5Y=", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npm.taobao.org/jsesc/download/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/remove-trailing-separator/download/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/repeat-element/download/repeat-element-1.1.3.tgz", + "integrity": "sha1-eC4NglwMWjuzlzH4Tv7mt0Lmsc4=", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npm.taobao.org/repeat-string/download/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npm.taobao.org/request/download/request-2.88.0.tgz", + "integrity": "sha1-nC/KT301tZLv5Xx/ClXoEFIST+8=", + "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.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.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/require-directory/download/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/require-main-filename/download/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/requires-port/download/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npm.taobao.org/resize-observer-polyfill/download/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha1-DpAg3T0hAkRY1OvSfiPkAmmBBGQ=" + }, + "resolve": { + "version": "1.14.1", + "resolved": "https://registry.npm.taobao.org/resolve/download/resolve-1.14.1.tgz", + "integrity": "sha1-ngGMVA/PDEJ9Z4uZMcv0XphLyv8=", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/resolve-cwd/download/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/resolve-from/download/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/restore-cursor/download/restore-cursor-3.1.0.tgz", + "integrity": "sha1-OfZ8VLOnpYzqUjbZXPADQjljH34=", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npm.taobao.org/ret/download/ret-0.1.15.tgz", + "integrity": "sha1-uKSCXVvbH8P29Twrwz+BOIaBx7w=", + "dev": true + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npm.taobao.org/retry/download/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true + }, + "rfdc": { + "version": "1.1.4", + "resolved": "https://registry.npm.taobao.org/rfdc/download/rfdc-1.1.4.tgz", + "integrity": "sha1-unLME2egzNnPgahws7WL060H+MI=", + "dev": true + }, + "rgb-regex": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/rgb-regex/download/rgb-regex-1.0.1.tgz", + "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=", + "dev": true + }, + "rgba-regex": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/rgba-regex/download/rgba-regex-1.0.0.tgz", + "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=", + "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npm.taobao.org/rimraf/download/rimraf-2.7.1.tgz", + "integrity": "sha1-NXl/E6f9rcVmFCwp1PB8ytSD4+w=", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/ripemd160/download/ripemd160-2.0.2.tgz", + "integrity": "sha1-ocGm9iR1FXe6XQeRTLyShQWFiQw=", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "robust-orientation": { + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/robust-orientation/download/robust-orientation-1.1.3.tgz", + "integrity": "sha1-2v9bANO+TmByLw6cAVbvln8cIEk=", + "requires": { + "robust-scale": "^1.0.2", + "robust-subtract": "^1.0.0", + "robust-sum": "^1.0.0", + "two-product": "^1.0.2" + } + }, + "robust-scale": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/robust-scale/download/robust-scale-1.0.2.tgz", + "integrity": "sha1-d1Ey7QlULQKOWLLMecBikLz3jDI=", + "requires": { + "two-product": "^1.0.2", + "two-sum": "^1.0.0" + } + }, + "robust-subtract": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/robust-subtract/download/robust-subtract-1.0.0.tgz", + "integrity": "sha1-4LFk4e2LpOOl3aRaEgODSNvtPpo=" + }, + "robust-sum": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/robust-sum/download/robust-sum-1.0.0.tgz", + "integrity": "sha1-FmRuUlKStNJdgnV6KGlV4Lv6U9k=" + }, + "rollup": { + "version": "1.25.2", + "resolved": "https://registry.npm.taobao.org/rollup/download/rollup-1.25.2.tgz?cache=0&sync_timestamp=1580452414800&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frollup%2Fdownload%2Frollup-1.25.2.tgz", + "integrity": "sha1-c59Qi9j37OUrtsH82oNGavgrf20=", + "dev": true, + "requires": { + "@types/estree": "*", + "@types/node": "*", + "acorn": "^7.1.0" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/run-async/download/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/run-queue/download/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.4.tgz", + "integrity": "sha1-4Hd/4NGEzseHLfFH8wNXLUFOIRw=", + "requires": { + "tslib": "^1.9.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz", + "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/safe-regex/download/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.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz", + "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=" + }, + "sass": { + "version": "1.23.3", + "resolved": "https://registry.npm.taobao.org/sass/download/sass-1.23.3.tgz?cache=0&sync_timestamp=1581130265905&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsass%2Fdownload%2Fsass-1.23.3.tgz", + "integrity": "sha1-8HUDuejSvPBu9p6L7qXQhVibFiA=", + "dev": true, + "requires": { + "chokidar": ">=2.0.0 <4.0.0" + } + }, + "sass-loader": { + "version": "8.0.0", + "resolved": "https://registry.npm.taobao.org/sass-loader/download/sass-loader-8.0.0.tgz?cache=0&sync_timestamp=1578921665787&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsass-loader%2Fdownload%2Fsass-loader-8.0.0.tgz", + "integrity": "sha1-57B6PjV/ll5rA91FsBawqXRq95c=", + "dev": true, + "requires": { + "clone-deep": "^4.0.1", + "loader-utils": "^1.2.3", + "neo-async": "^2.6.1", + "schema-utils": "^2.1.0", + "semver": "^6.3.0" + }, + "dependencies": { + "schema-utils": { + "version": "2.6.4", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.6.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.6.4.tgz", + "integrity": "sha1-on779uTnhonZGHLuPM+lfXvdD1M=", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1" + } + } + } + }, + "saucelabs": { + "version": "1.5.0", + "resolved": "https://registry.npm.taobao.org/saucelabs/download/saucelabs-1.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsaucelabs%2Fdownload%2Fsaucelabs-1.5.0.tgz", + "integrity": "sha1-lAWnPDYNRJsjKDmRmobDltN5/Z0=", + "dev": true, + "requires": { + "https-proxy-agent": "^2.2.1" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz", + "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=", + "dev": true + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1574946791935&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/select-hose/download/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true + }, + "selenium-webdriver": { + "version": "3.6.0", + "resolved": "https://registry.npm.taobao.org/selenium-webdriver/download/selenium-webdriver-3.6.0.tgz", + "integrity": "sha1-K6h6FmLAILiYjJga5iyyoBKY6vw=", + "dev": true, + "requires": { + "jszip": "^3.1.3", + "rimraf": "^2.5.4", + "tmp": "0.0.30", + "xml2js": "^0.4.17" + }, + "dependencies": { + "tmp": { + "version": "0.0.30", + "resolved": "https://registry.npm.taobao.org/tmp/download/tmp-0.0.30.tgz", + "integrity": "sha1-ckGdSovn1s51FI/YsyTlk6cRwu0=", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.1" + } + } + } + }, + "selfsigned": { + "version": "1.10.7", + "resolved": "https://registry.npm.taobao.org/selfsigned/download/selfsigned-1.10.7.tgz?cache=0&sync_timestamp=1569952074772&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fselfsigned%2Fdownload%2Fselfsigned-1.10.7.tgz", + "integrity": "sha1-2lgZ/QSdVXTyjoipvMbbxubzkGs=", + "dev": true, + "requires": { + "node-forge": "0.9.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz", + "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=", + "dev": true + }, + "semver-dsl": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/semver-dsl/download/semver-dsl-1.0.1.tgz", + "integrity": "sha1-02eN5VVeimH2Ke7QJTZq5fJzQKA=", + "dev": true, + "requires": { + "semver": "^5.3.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "semver-intersect": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/semver-intersect/download/semver-intersect-1.4.0.tgz", + "integrity": "sha1-vdnAa+3N0v7bjNNSw8Q+6MYTIfM=", + "dev": true, + "requires": { + "semver": "^5.0.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npm.taobao.org/send/download/send-0.17.1.tgz", + "integrity": "sha1-wdiwWfeQD3Rm3Uk4vcROEd2zdsg=", + "dev": true, + "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": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz", + "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=", + "dev": true + } + } + }, + "serialize-javascript": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/serialize-javascript/download/serialize-javascript-2.1.2.tgz?cache=0&sync_timestamp=1575883256113&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fserialize-javascript%2Fdownload%2Fserialize-javascript-2.1.2.tgz", + "integrity": "sha1-7OxTsOAxe9yV73arcHS3OEeF+mE=", + "dev": true + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npm.taobao.org/serve-index/download/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": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npm.taobao.org/http-errors/download/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" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npm.taobao.org/inherits/download/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.0.tgz?cache=0&sync_timestamp=1563425484616&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsetprototypeof%2Fdownload%2Fsetprototypeof-1.1.0.tgz", + "integrity": "sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY=", + "dev": true + } + } + }, + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npm.taobao.org/serve-static/download/serve-static-1.14.1.tgz", + "integrity": "sha1-Zm5jbcTwEPfvKZcKiKZ0MgiYsvk=", + "dev": true, + "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.npm.taobao.org/set-blocking/download/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/set-immediate-shim/download/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/set-value/download/set-value-2.0.1.tgz", + "integrity": "sha1-oY1AUw5vB95CKMfe/kInr4ytAFs=", + "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.npm.taobao.org/extend-shallow/download/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.npm.taobao.org/setimmediate/download/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.1.tgz?cache=0&sync_timestamp=1563425484616&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsetprototypeof%2Fdownload%2Fsetprototypeof-1.1.1.tgz", + "integrity": "sha1-fpWsskqpL1iF4KvvW6ExMw1K5oM=", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npm.taobao.org/sha.js/download/sha.js-2.4.11.tgz", + "integrity": "sha1-N6XPC4HsvGlD3hCbopYNGyZYSuc=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/shallow-clone/download/shallow-clone-3.0.1.tgz", + "integrity": "sha1-jymBrZJTH1UDWwH7IwdppA4C76M=", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/shebang-command/download/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.npm.taobao.org/shebang-regex/download/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/signal-exit/download/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npm.taobao.org/simple-swizzle/download/simple-swizzle-0.2.2.tgz", + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "dev": true, + "requires": { + "is-arrayish": "^0.3.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.3.2.tgz", + "integrity": "sha1-RXSirlb3qyBolvtDHq7tBm/fjwM=", + "dev": true + } + } + }, + "skmeans": { + "version": "0.9.7", + "resolved": "https://registry.npm.taobao.org/skmeans/download/skmeans-0.9.7.tgz", + "integrity": "sha1-cmcM67coUI9W4pwOENEeYjUpzl0=" + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/slash/download/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "smart-buffer": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/smart-buffer/download/smart-buffer-4.1.0.tgz", + "integrity": "sha1-kWBcJdkWUvRmHqacz0XxszHKIbo=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npm.taobao.org/snapdragon/download/snapdragon-0.8.2.tgz", + "integrity": "sha1-ZJIufFZbDhQgS6GqfWlkJ40lGC0=", + "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": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npm.taobao.org/define-property/download/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.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/snapdragon-node/download/snapdragon-node-2.1.1.tgz", + "integrity": "sha1-bBdfhv8UvbByRWPo88GwIaKGhTs=", + "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.npm.taobao.org/define-property/download/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.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", + "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.npm.taobao.org/snapdragon-util/download/snapdragon-util-3.0.1.tgz", + "integrity": "sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI=", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "socket.io": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/socket.io/download/socket.io-2.1.1.tgz?cache=0&sync_timestamp=1569002852515&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsocket.io%2Fdownload%2Fsocket.io-2.1.1.tgz", + "integrity": "sha1-oGnF/qvuPmshSnW0DOBlLhz7mYA=", + "dev": true, + "requires": { + "debug": "~3.1.0", + "engine.io": "~3.2.0", + "has-binary2": "~1.0.2", + "socket.io-adapter": "~1.1.0", + "socket.io-client": "2.1.1", + "socket.io-parser": "~3.2.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", + "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "socket.io-adapter": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/socket.io-adapter/download/socket.io-adapter-1.1.2.tgz?cache=0&sync_timestamp=1574684498510&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsocket.io-adapter%2Fdownload%2Fsocket.io-adapter-1.1.2.tgz", + "integrity": "sha1-qz8Nb2a4/H/KOVmrWZH4IiF4m+k=", + "dev": true + }, + "socket.io-client": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/socket.io-client/download/socket.io-client-2.1.1.tgz?cache=0&sync_timestamp=1569002853390&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsocket.io-client%2Fdownload%2Fsocket.io-client-2.1.1.tgz", + "integrity": "sha1-3LOBA0NqtFeN2wJmOK4vIbYjZx8=", + "dev": true, + "requires": { + "backo2": "1.0.2", + "base64-arraybuffer": "0.1.5", + "component-bind": "1.0.0", + "component-emitter": "1.2.1", + "debug": "~3.1.0", + "engine.io-client": "~3.2.0", + "has-binary2": "~1.0.2", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "object-component": "0.0.3", + "parseqs": "0.0.5", + "parseuri": "0.0.5", + "socket.io-parser": "~3.2.0", + "to-array": "0.1.4" + }, + "dependencies": { + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/component-emitter/download/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", + "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "socket.io-parser": { + "version": "3.2.0", + "resolved": "https://registry.npm.taobao.org/socket.io-parser/download/socket.io-parser-3.2.0.tgz", + "integrity": "sha1-58Yii2qh+BTmFIrqMltRqpSZ4Hc=", + "dev": true, + "requires": { + "component-emitter": "1.2.1", + "debug": "~3.1.0", + "isarray": "2.0.1" + }, + "dependencies": { + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/component-emitter/download/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", + "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-2.0.1.tgz?cache=0&sync_timestamp=1562592125418&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fisarray%2Fdownload%2Fisarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "sockjs": { + "version": "0.3.19", + "resolved": "https://registry.npm.taobao.org/sockjs/download/sockjs-0.3.19.tgz", + "integrity": "sha1-2Xa76ACve9IK4IWY1YI5NQiZPA0=", + "dev": true, + "requires": { + "faye-websocket": "^0.10.0", + "uuid": "^3.0.1" + } + }, + "sockjs-client": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/sockjs-client/download/sockjs-client-1.4.0.tgz", + "integrity": "sha1-yfJWjhnI/YFztJl+o0IOC7MGx9U=", + "dev": true, + "requires": { + "debug": "^3.2.5", + "eventsource": "^1.0.7", + "faye-websocket": "~0.11.1", + "inherits": "^2.0.3", + "json3": "^3.3.2", + "url-parse": "^1.4.3" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "faye-websocket": { + "version": "0.11.3", + "resolved": "https://registry.npm.taobao.org/faye-websocket/download/faye-websocket-0.11.3.tgz", + "integrity": "sha1-XA6aiWjokSwoZjn96XeosgnyUI4=", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + } + } + }, + "socks": { + "version": "2.3.3", + "resolved": "https://registry.npm.taobao.org/socks/download/socks-2.3.3.tgz?cache=0&sync_timestamp=1573063369351&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsocks%2Fdownload%2Fsocks-2.3.3.tgz", + "integrity": "sha1-ARKfCl1TTSuJdxLtis6rfuZdeOM=", + "dev": true, + "requires": { + "ip": "1.1.5", + "smart-buffer": "^4.1.0" + } + }, + "socks-proxy-agent": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/socks-proxy-agent/download/socks-proxy-agent-4.0.2.tgz", + "integrity": "sha1-PImR8xRbJ5nnDhG9X7yLGWMRY4Y=", + "dev": true, + "requires": { + "agent-base": "~4.2.1", + "socks": "~2.3.2" + }, + "dependencies": { + "agent-base": { + "version": "4.2.1", + "resolved": "https://registry.npm.taobao.org/agent-base/download/agent-base-4.2.1.tgz", + "integrity": "sha1-2J5ZmfeXh1Z0wH2H8mD8Qeg+jKk=", + "dev": true, + "requires": { + "es6-promisify": "^5.0.0" + } + } + } + }, + "sort-keys": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/sort-keys/download/sort-keys-1.1.2.tgz", + "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", + "dev": true, + "requires": { + "is-plain-obj": "^1.0.0" + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/source-list-map/download/source-list-map-2.0.1.tgz", + "integrity": "sha1-OZO9hzv8SEecyp6jpUeDXHwVSzQ=", + "dev": true + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.7.3.tgz", + "integrity": "sha1-UwL4FpAxc1ImVECS5kmB91F1A4M=", + "dev": true + }, + "source-map-loader": { + "version": "0.2.4", + "resolved": "https://registry.npm.taobao.org/source-map-loader/download/source-map-loader-0.2.4.tgz", + "integrity": "sha1-wYsNxuI79m9nkkN1V8VpoR4HInE=", + "dev": true, + "requires": { + "async": "^2.5.0", + "loader-utils": "^1.1.0" + } + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npm.taobao.org/source-map-resolve/download/source-map-resolve-0.5.3.tgz?cache=0&sync_timestamp=1577562191980&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map-resolve%2Fdownload%2Fsource-map-resolve-0.5.3.tgz", + "integrity": "sha1-GQhmvs51U+H48mei7oLGBrVQmho=", + "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.13", + "resolved": "https://registry.npm.taobao.org/source-map-support/download/source-map-support-0.5.13.tgz", + "integrity": "sha1-MbJKnC5zwt6FBmwP631Edn7VKTI=", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npm.taobao.org/source-map-url/download/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npm.taobao.org/sourcemap-codec/download/sourcemap-codec-1.4.8.tgz", + "integrity": "sha1-6oBL2UhXQC5pktBaOO8a41qatMQ=", + "dev": true + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/spdx-correct/download/spdx-correct-3.1.0.tgz", + "integrity": "sha1-+4PlBERSaPFUsHTiGMh8ADzTHfQ=", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/spdx-exceptions/download/spdx-exceptions-2.2.0.tgz", + "integrity": "sha1-LqRQrudPKom/uUUZwH/Nb0EyKXc=", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/spdx-expression-parse/download/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha1-meEZt6XaAOBUkcn6M4t5BII7QdA=", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npm.taobao.org/spdx-license-ids/download/spdx-license-ids-3.0.5.tgz", + "integrity": "sha1-NpS1gEVnpFjTyARYQqY1hjL2JlQ=", + "dev": true + }, + "spdy": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/spdy/download/spdy-4.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fspdy%2Fdownload%2Fspdy-4.0.1.tgz", + "integrity": "sha1-bxLtHF236k8k67i4m6WMh8CCV/I=", + "dev": true, + "requires": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + } + }, + "spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/spdy-transport/download/spdy-transport-3.0.0.tgz", + "integrity": "sha1-ANSGOmQArXXfkzYaFghgXl3NzzE=", + "dev": true, + "requires": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + }, + "dependencies": { + "readable-stream": { + "version": "3.5.0", + "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-3.5.0.tgz", + "integrity": "sha1-Rl1w5tEIf2Fi0HnNC123++v9FgY=", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "speed-measure-webpack-plugin": { + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/speed-measure-webpack-plugin/download/speed-measure-webpack-plugin-1.3.1.tgz", + "integrity": "sha1-aYQKXNwItGOGl9rH2wN/WV1/NqA=", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/split-string/download/split-string-3.1.0.tgz", + "integrity": "sha1-fLCd2jqGWFcFxks5pkZgOGguj+I=", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsprintf-js%2Fdownload%2Fsprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npm.taobao.org/sshpk/download/sshpk-1.16.1.tgz", + "integrity": "sha1-+2YcC+8ps520B2nuOfpwCT1vaHc=", + "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": "7.1.0", + "resolved": "https://registry.npm.taobao.org/ssri/download/ssri-7.1.0.tgz?cache=0&sync_timestamp=1571961490394&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssri%2Fdownload%2Fssri-7.1.0.tgz", + "integrity": "sha1-ksJBv23oI2W1x/tL126XVSLhKU0=", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1", + "minipass": "^3.1.1" + } + }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npm.taobao.org/stable/download/stable-0.1.8.tgz", + "integrity": "sha1-g26zyDgv4pNv6vVEYxAXzn1Ho88=", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/static-extend/download/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.npm.taobao.org/define-property/download/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.npm.taobao.org/statuses/download/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true + }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/stream-browserify/download/stream-browserify-2.0.2.tgz", + "integrity": "sha1-h1IdOKRKp+6RzhzSpH3wy0ndZgs=", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npm.taobao.org/stream-each/download/stream-each-1.2.3.tgz", + "integrity": "sha1-6+J6DDibBPvMIzZClS4Qcxr6m64=", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npm.taobao.org/stream-http/download/stream-http-2.8.3.tgz", + "integrity": "sha1-stJCRpKIpaJ+xP6JM6z2I95lFPw=", + "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-shift": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.1.tgz?cache=0&sync_timestamp=1576147157429&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstream-shift%2Fdownload%2Fstream-shift-1.0.1.tgz", + "integrity": "sha1-1wiCgVWasneEJCebCHfaPDktWj0=", + "dev": true + }, + "streamroller": { + "version": "1.0.6", + "resolved": "https://registry.npm.taobao.org/streamroller/download/streamroller-1.0.6.tgz", + "integrity": "sha1-gWfYSW7Z8Z8F7ksVjZYRMhuMrNk=", + "dev": true, + "requires": { + "async": "^2.6.2", + "date-format": "^2.0.0", + "debug": "^3.2.6", + "fs-extra": "^7.0.1", + "lodash": "^4.17.14" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/strict-uri-encode/download/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-2.1.1.tgz", + "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", + "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.npm.taobao.org/ansi-regex/download/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "string.prototype.trimleft": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/string.prototype.trimleft/download/string.prototype.trimleft-2.1.1.tgz", + "integrity": "sha1-m9uKxqvW1gKxek7TIYcNL43O/HQ=", + "requires": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + } + }, + "string.prototype.trimright": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/string.prototype.trimright/download/string.prototype.trimright-2.1.1.tgz", + "integrity": "sha1-RAMUsVmWyGbOigNBiU1FGGIAxdk=", + "requires": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz?cache=0&sync_timestamp=1565170823020&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring_decoder%2Fdownload%2Fstring_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/strip-bom/download/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/strip-eof/download/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "style-loader": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/style-loader/download/style-loader-1.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstyle-loader%2Fdownload%2Fstyle-loader-1.0.0.tgz", + "integrity": "sha1-HVKW+RZejiyF0k7uC3yvnsjKH4I=", + "dev": true, + "requires": { + "loader-utils": "^1.2.3", + "schema-utils": "^2.0.1" + }, + "dependencies": { + "schema-utils": { + "version": "2.6.4", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.6.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.6.4.tgz", + "integrity": "sha1-on779uTnhonZGHLuPM+lfXvdD1M=", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1" + } + } + } + }, + "stylehacks": { + "version": "4.0.3", + "resolved": "https://registry.npm.taobao.org/stylehacks/download/stylehacks-4.0.3.tgz", + "integrity": "sha1-Zxj8r00eB9ihMYaQiB6NlnJqcdU=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", + "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "dev": true, + "requires": { + "dot-prop": "^4.1.1", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "stylus": { + "version": "0.54.7", + "resolved": "https://registry.npm.taobao.org/stylus/download/stylus-0.54.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstylus%2Fdownload%2Fstylus-0.54.7.tgz", + "integrity": "sha1-xs5Hk5Ze5Ti86+UPMVN7/ATYjNI=", + "dev": true, + "requires": { + "css-parse": "~2.0.0", + "debug": "~3.1.0", + "glob": "^7.1.3", + "mkdirp": "~0.5.x", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "semver": "^6.0.0", + "source-map": "^0.7.3" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", + "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "stylus-loader": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/stylus-loader/download/stylus-loader-3.0.2.tgz", + "integrity": "sha1-J6cGQgsFo44DjnyssVNXjUUFE8Y=", + "dev": true, + "requires": { + "loader-utils": "^1.0.2", + "lodash.clonedeep": "^4.5.0", + "when": "~3.6.x" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-5.5.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-5.5.0.tgz", + "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "svgo": { + "version": "1.3.2", + "resolved": "https://registry.npm.taobao.org/svgo/download/svgo-1.3.2.tgz?cache=0&sync_timestamp=1572433377078&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsvgo%2Fdownload%2Fsvgo-1.3.2.tgz", + "integrity": "sha1-ttxRHAYzRsnkFbgeQ0ARRbltQWc=", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "coa": "^2.0.2", + "css-select": "^2.0.0", + "css-select-base-adapter": "^0.1.1", + "css-tree": "1.0.0-alpha.37", + "csso": "^4.0.2", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/symbol-observable/download/symbol-observable-1.2.0.tgz", + "integrity": "sha1-wiaIrtTqs83C3+rLtWFmBWCgCAQ=", + "dev": true + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/tapable/download/tapable-1.1.3.tgz", + "integrity": "sha1-ofzMBrWNth/XpF2i2kT186Pme6I=", + "dev": true + }, + "tar": { + "version": "4.4.13", + "resolved": "https://registry.npm.taobao.org/tar/download/tar-4.4.13.tgz?cache=0&sync_timestamp=1570286254496&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftar%2Fdownload%2Ftar-4.4.13.tgz", + "integrity": "sha1-Q7NkvFKIjVVSmGN7ENYHkCVKtSU=", + "dev": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" + }, + "dependencies": { + "fs-minipass": { + "version": "1.2.7", + "resolved": "https://registry.npm.taobao.org/fs-minipass/download/fs-minipass-1.2.7.tgz", + "integrity": "sha1-zP+FcIQef+QmVpPaiJNsVa7X98c=", + "dev": true, + "requires": { + "minipass": "^2.6.0" + } + }, + "minipass": { + "version": "2.9.0", + "resolved": "https://registry.npm.taobao.org/minipass/download/minipass-2.9.0.tgz", + "integrity": "sha1-5xN2Ln0+Mv7YAxFc+T4EvKn8yaY=", + "dev": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-3.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-3.1.1.tgz", + "integrity": "sha1-27fa+b/YusmrRev2ArjLrQ1dCP0=", + "dev": true + } + } + }, + "terser": { + "version": "4.5.1", + "resolved": "https://registry.npm.taobao.org/terser/download/terser-4.5.1.tgz", + "integrity": "sha1-Y7Uta2zjRKpv7c0O4GppV5nrUL0=", + "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.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "2.3.3", + "resolved": "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-2.3.3.tgz?cache=0&sync_timestamp=1580403891929&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser-webpack-plugin%2Fdownload%2Fterser-webpack-plugin-2.3.3.tgz", + "integrity": "sha1-uJBDFovUFBU7q4b0NirCPVN7eLA=", + "dev": true, + "requires": { + "cacache": "^13.0.1", + "find-cache-dir": "^3.2.0", + "jest-worker": "^25.1.0", + "p-limit": "^2.2.2", + "schema-utils": "^2.6.4", + "serialize-javascript": "^2.1.2", + "source-map": "^0.6.1", + "terser": "^4.4.3", + "webpack-sources": "^1.4.3" + }, + "dependencies": { + "find-cache-dir": { + "version": "3.2.0", + "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-3.2.0.tgz", + "integrity": "sha1-5/5EwavBKZ9RYUblYxCP0QBsGHQ=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.0", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-4.1.0.tgz", + "integrity": "sha1-l6/n1s3AvFkoWEt8jXsW6KmqXRk=", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz", + "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=", + "dev": true + }, + "jest-worker": { + "version": "25.1.0", + "resolved": "https://registry.npm.taobao.org/jest-worker/download/jest-worker-25.1.0.tgz?cache=0&sync_timestamp=1579654868650&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjest-worker%2Fdownload%2Fjest-worker-25.1.0.tgz", + "integrity": "sha1-ddA4utb99Y66DS7Bg1hWxJfjkHo=", + "dev": true, + "requires": { + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-5.0.0.tgz", + "integrity": "sha1-Gvujlq/WdqbUJQTQpno6frn2KqA=", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "make-dir": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-3.0.0.tgz", + "integrity": "sha1-G1859rknDtM/nwVMXA+EMEmJ+AE=", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-4.1.0.tgz", + "integrity": "sha1-o0KLtwiLOmApL2aRkni3wpetTwc=", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/path-exists/download/path-exists-4.0.0.tgz", + "integrity": "sha1-UTvb4tO5XXdi6METfvoZXGxhtbM=", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/pkg-dir/download/pkg-dir-4.2.0.tgz", + "integrity": "sha1-8JkTPfft5CLoHR2ESCcO6z5CYfM=", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, + "schema-utils": { + "version": "2.6.4", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.6.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.6.4.tgz", + "integrity": "sha1-on779uTnhonZGHLuPM+lfXvdD1M=", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-7.1.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-7.1.0.tgz", + "integrity": "sha1-aOMlkd9z4lrRxLSRCKLsUHliv9E=", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npm.taobao.org/through/download/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npm.taobao.org/through2/download/through2-2.0.5.tgz", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "thunky": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/thunky/download/thunky-1.1.0.tgz", + "integrity": "sha1-Wrr3FKlAXbBQRzK7zNLO3Z75U30=", + "dev": true + }, + "timers-browserify": { + "version": "2.0.11", + "resolved": "https://registry.npm.taobao.org/timers-browserify/download/timers-browserify-2.0.11.tgz", + "integrity": "sha1-gAsfPu4nLlvFPuRloE0OgEwxIR8=", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } + }, + "timsort": { + "version": "0.3.0", + "resolved": "https://registry.npm.taobao.org/timsort/download/timsort-0.3.0.tgz", + "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", + "dev": true + }, + "tinyqueue": { + "version": "1.2.3", + "resolved": "https://registry.npm.taobao.org/tinyqueue/download/tinyqueue-1.2.3.tgz", + "integrity": "sha1-tqYd4jBgWE2in4I2LkXfHsc1Pz0=" + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npm.taobao.org/tmp/download/tmp-0.0.33.tgz", + "integrity": "sha1-bTQzWIl2jSGyvNoKonfO07G/rfk=", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "to-array": { + "version": "0.1.4", + "resolved": "https://registry.npm.taobao.org/to-array/download/to-array-0.1.4.tgz", + "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", + "dev": true + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/to-arraybuffer/download/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/to-fast-properties/download/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npm.taobao.org/to-object-path/download/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.npm.taobao.org/kind-of/download/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.npm.taobao.org/to-regex/download/to-regex-3.0.2.tgz", + "integrity": "sha1-E8/dmzNlUvMLUfM6iuG0Knp1mc4=", + "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": "5.0.1", + "resolved": "https://registry.npm.taobao.org/to-regex-range/download/to-regex-range-5.0.1.tgz", + "integrity": "sha1-FkjESq58jZiKMmAY7XL1tN0DkuQ=", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/toidentifier/download/toidentifier-1.0.0.tgz", + "integrity": "sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM=", + "dev": true + }, + "topojson-client": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/topojson-client/download/topojson-client-3.1.0.tgz", + "integrity": "sha1-Iuix7QiiuSL+60r29Ttu8JpGe5k=", + "requires": { + "commander": "2" + } + }, + "topojson-server": { + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/topojson-server/download/topojson-server-3.0.1.tgz", + "integrity": "sha1-0rPsCVtnMimb52pIQGERsyAaNPU=", + "requires": { + "commander": "2" + } + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.4.3.tgz", + "integrity": "sha1-U/Nto/R3g7CSWvoG/587FlKA94E=", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npm.taobao.org/tree-kill/download/tree-kill-1.2.2.tgz?cache=0&sync_timestamp=1576090178663&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftree-kill%2Fdownload%2Ftree-kill-1.2.2.tgz", + "integrity": "sha1-TKCakJLIi3OnzcXooBtQeweQoMw=", + "dev": true + }, + "ts-node": { + "version": "7.0.1", + "resolved": "https://registry.npm.taobao.org/ts-node/download/ts-node-7.0.1.tgz", + "integrity": "sha1-lWLcLR5tJI0kvFX3c+P2FDN9m68=", + "dev": true, + "requires": { + "arrify": "^1.0.0", + "buffer-from": "^1.1.0", + "diff": "^3.1.0", + "make-error": "^1.1.1", + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "source-map-support": "^0.5.6", + "yn": "^2.0.0" + } + }, + "tslib": { + "version": "1.10.0", + "resolved": "https://registry.npm.taobao.org/tslib/download/tslib-1.10.0.tgz", + "integrity": "sha1-w8GflZc/sKYpc/sJ2Q2WHuQ+XIo=" + }, + "tslint": { + "version": "5.15.0", + "resolved": "https://registry.npm.taobao.org/tslint/download/tslint-5.15.0.tgz", + "integrity": "sha1-b/sYCYbWOvoeUx/rKhNNv5YeJ9M=", + "dev": true, + "requires": { + "babel-code-frame": "^6.22.0", + "builtin-modules": "^1.1.1", + "chalk": "^2.3.0", + "commander": "^2.12.1", + "diff": "^3.2.0", + "glob": "^7.1.1", + "js-yaml": "^3.13.0", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "resolve": "^1.3.2", + "semver": "^5.3.0", + "tslib": "^1.8.0", + "tsutils": "^2.29.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", + "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", + "dev": true + } + } + }, + "tsutils": { + "version": "2.29.0", + "resolved": "https://registry.npm.taobao.org/tsutils/download/tsutils-2.29.0.tgz", + "integrity": "sha1-MrSIUBRnrL7dS4VJhnOggSrKC5k=", + "dev": true, + "requires": { + "tslib": "^1.8.1" + } + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npm.taobao.org/tty-browserify/download/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npm.taobao.org/tunnel-agent/download/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "turf-jsts": { + "version": "1.2.3", + "resolved": "https://registry.npm.taobao.org/turf-jsts/download/turf-jsts-1.2.3.tgz", + "integrity": "sha1-WXV/VCr7/5pXe79BHxg7j0jTiqQ=" + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "two-product": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/two-product/download/two-product-1.0.2.tgz", + "integrity": "sha1-Z9ldSyV6kh4stL16+VEfkIhSLqo=" + }, + "two-sum": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/two-sum/download/two-sum-1.0.0.tgz", + "integrity": "sha1-MdPzIjnk9zHsqd+RVeKyl/AIq2Q=" + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npm.taobao.org/type-fest/download/type-fest-0.8.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.8.1.tgz", + "integrity": "sha1-CeJJ696FHTseSNJ8EFREZn8XuD0=", + "dev": true + }, + "type-func": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/type-func/download/type-func-1.0.3.tgz", + "integrity": "sha1-qxhCNK6A2NUAV87+/zstl9CK6bA=" + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npm.taobao.org/type-is/download/type-is-1.6.18.tgz", + "integrity": "sha1-TlUs0F3wlGfcvE73Od6J8s83wTE=", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npm.taobao.org/typedarray/download/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "typescript": { + "version": "3.7.5", + "resolved": "https://registry.npm.taobao.org/typescript/download/typescript-3.7.5.tgz", + "integrity": "sha1-BpLiH2X9QQi5MwI4qsEd0uF3oa4=", + "dev": true + }, + "uglify-js": { + "version": "3.7.3", + "resolved": "https://registry.npm.taobao.org/uglify-js/download/uglify-js-3.7.3.tgz?cache=0&sync_timestamp=1577407829710&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuglify-js%2Fdownload%2Fuglify-js-3.7.3.tgz", + "integrity": "sha1-+Rj86RgvRm1RQPJLsP81wtMtzGo=", + "dev": true, + "optional": true, + "requires": { + "commander": "~2.20.3", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true, + "optional": true + } + } + }, + "ultron": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/ultron/download/ultron-1.1.1.tgz", + "integrity": "sha1-n+FTahCmZKZSZqHjzPhf02MCvJw=", + "dev": true + }, + "unicode-canonical-property-names-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/unicode-canonical-property-names-ecmascript/download/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha1-JhmADEyCWADv3YNDr33Zkzy+KBg=", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/unicode-match-property-ecmascript/download/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha1-jtKjJWmWG86SJ9Cc0/+7j+1fAgw=", + "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.1.0", + "resolved": "https://registry.npm.taobao.org/unicode-match-property-value-ecmascript/download/unicode-match-property-value-ecmascript-1.1.0.tgz", + "integrity": "sha1-W0tCbgjROoA2Xg1lesemwexGonc=", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "1.0.5", + "resolved": "https://registry.npm.taobao.org/unicode-property-aliases-ecmascript/download/unicode-property-aliases-ecmascript-1.0.5.tgz", + "integrity": "sha1-qcxsx85joKMCP8meNBuUQx1AWlc=", + "dev": true + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/union-value/download/union-value-1.0.1.tgz", + "integrity": "sha1-C2/nuDWuzaYcbqTU8CwUIh4QmEc=", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/uniq/download/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, + "uniqs": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/uniqs/download/uniqs-2.0.0.tgz", + "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", + "dev": true + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/unique-filename/download/unique-filename-1.1.1.tgz", + "integrity": "sha1-HWl2k2mtoFgxA6HmrodoG1ZXMjA=", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/unique-slug/download/unique-slug-2.0.2.tgz", + "integrity": "sha1-uqvOkQg/xk6UWw861hPiZPfNTmw=", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "universal-analytics": { + "version": "0.4.20", + "resolved": "https://registry.npm.taobao.org/universal-analytics/download/universal-analytics-0.4.20.tgz", + "integrity": "sha1-1rZOUxK/dPfDaOMCSpIhNdvySwM=", + "dev": true, + "requires": { + "debug": "^3.0.0", + "request": "^2.88.0", + "uuid": "^3.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/universalify/download/universalify-0.1.2.tgz", + "integrity": "sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY=", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "unquote": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/unquote/download/unquote-1.1.1.tgz", + "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/unset-value/download/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.npm.taobao.org/has-value/download/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.npm.taobao.org/isobject/download/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.npm.taobao.org/has-values/download/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + } + } + }, + "upath": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/upath/download/upath-1.2.0.tgz?cache=0&sync_timestamp=1567458131109&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fupath%2Fdownload%2Fupath-1.2.0.tgz", + "integrity": "sha1-j2bbzVWog6za5ECK+LA1pQRMGJQ=", + "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npm.taobao.org/uri-js/download/uri-js-4.2.2.tgz", + "integrity": "sha1-lMVA4f93KVbiKZUHwBCupsiDjrA=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npm.taobao.org/url/download/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.npm.taobao.org/punycode/download/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "url-parse": { + "version": "1.4.7", + "resolved": "https://registry.npm.taobao.org/url-parse/download/url-parse-1.4.7.tgz", + "integrity": "sha1-qKg1NejACjFuQDpdtKwbm4U64ng=", + "dev": true, + "requires": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/use/download/use-3.1.1.tgz", + "integrity": "sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8=", + "dev": true + }, + "useragent": { + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/useragent/download/useragent-2.3.0.tgz", + "integrity": "sha1-IX+UOtVAyyEoZYqyP8lg9qiMmXI=", + "dev": true, + "requires": { + "lru-cache": "4.1.x", + "tmp": "0.0.x" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz", + "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } + } + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npm.taobao.org/util/download/util-0.11.1.tgz", + "integrity": "sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE=", + "dev": true, + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npm.taobao.org/inherits/download/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + } + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "util-promisify": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/util-promisify/download/util-promisify-2.1.0.tgz", + "integrity": "sha1-PCI2R2xNMsX/PEcAKt18E7moKlM=", + "dev": true, + "requires": { + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "util.promisify": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/util.promisify/download/util.promisify-1.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Futil.promisify%2Fdownload%2Futil.promisify-1.0.1.tgz", + "integrity": "sha1-a693dLgO6w91INi4HQeYKlmruu4=", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.2", + "has-symbols": "^1.0.1", + "object.getownpropertydescriptors": "^2.1.0" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.4", + "resolved": "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.17.4.tgz?cache=0&sync_timestamp=1579624493239&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes-abstract%2Fdownload%2Fes-abstract-1.17.4.tgz", + "integrity": "sha1-467fGXBrIOfCWUw1/A1XYFp54YQ=", + "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.1.5", + "is-regex": "^1.0.5", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimleft": "^2.1.1", + "string.prototype.trimright": "^2.1.1" + } + } + } + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true + }, + "uuid": { + "version": "3.3.3", + "resolved": "https://registry.npm.taobao.org/uuid/download/uuid-3.3.3.tgz", + "integrity": "sha1-RWjwIW54dg7h2/Ok0s9T4iQRKGY=", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npm.taobao.org/validate-npm-package-license/download/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha1-/JH2uce6FchX9MssXe/uw51PQQo=", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/validate-npm-package-name/download/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "dev": true, + "requires": { + "builtins": "^1.0.3" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true + }, + "vendors": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/vendors/download/vendors-1.0.4.tgz?cache=0&sync_timestamp=1579858502549&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvendors%2Fdownload%2Fvendors-1.0.4.tgz", + "integrity": "sha1-4rgApT56Kbk1BsPPQRANFsTErY4=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npm.taobao.org/verror/download/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.npm.taobao.org/vm-browserify/download/vm-browserify-1.1.2.tgz", + "integrity": "sha1-eGQcSIuObKkadfUR56OzKobl3aA=", + "dev": true + }, + "void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/void-elements/download/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "dev": true + }, + "watchpack": { + "version": "1.6.0", + "resolved": "https://registry.npm.taobao.org/watchpack/download/watchpack-1.6.0.tgz?cache=0&sync_timestamp=1573060177479&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwatchpack%2Fdownload%2Fwatchpack-1.6.0.tgz", + "integrity": "sha1-S8EsLr6KonenHx0/FNaFx7RGzQA=", + "dev": true, + "requires": { + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz", + "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/normalize-path/download/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-1.13.1.tgz", + "integrity": "sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U=", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npm.taobao.org/braces/download/braces-2.3.2.tgz", + "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", + "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" + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npm.taobao.org/chokidar/download/chokidar-2.1.8.tgz", + "integrity": "sha1-gEs6e2qZNYw8XGHnHYco8EHP+Rc=", + "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" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/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.npm.taobao.org/fill-range/download/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" + } + }, + "fsevents": { + "version": "1.2.11", + "resolved": "https://registry.npm.taobao.org/fsevents/download/fsevents-1.2.11.tgz?cache=0&sync_timestamp=1576323112997&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffsevents%2Fdownload%2Ffsevents-1.2.11.tgz", + "integrity": "sha1-Z79X9HWPAu3oj7KhcS/vTRU1i+M=", + "dev": true, + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1", + "node-pre-gyp": "*" + }, + "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.3", + "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": "3.2.6", + "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.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.6.0" + } + }, + "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.6", + "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.3", + "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.4", + "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.9.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.3.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.9.0" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.14.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.4.2" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-normalize-package-bin": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.7", + "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.1", + "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.7.1", + "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.1", + "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.13", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" + } + }, + "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.1.1", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/readdirp/download/readdirp-2.2.1.tgz", + "integrity": "sha1-DodiKjMlqjPokihcr4tOhGUppSU=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/to-regex-range/download/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" + } + } + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npm.taobao.org/wbuf/download/wbuf-1.7.3.tgz", + "integrity": "sha1-wdjRSTFtPqhShIiVy2oL/oh7h98=", + "dev": true, + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/wcwidth/download/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "requires": { + "defaults": "^1.0.3" + } + }, + "webdriver-js-extender": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/webdriver-js-extender/download/webdriver-js-extender-2.1.0.tgz", + "integrity": "sha1-V9epPADbTMjVVuTT20tdsKgMO7c=", + "dev": true, + "requires": { + "@types/selenium-webdriver": "^3.0.0", + "selenium-webdriver": "^3.0.1" + } + }, + "webpack": { + "version": "4.41.2", + "resolved": "https://registry.npm.taobao.org/webpack/download/webpack-4.41.2.tgz", + "integrity": "sha1-w07Hbao6hGjJthpQM22OMwPc504=", + "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.2.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.1.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.1", + "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.1", + "watchpack": "^1.6.0", + "webpack-sources": "^1.4.1" + }, + "dependencies": { + "acorn": { + "version": "6.4.0", + "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-6.4.0.tgz?cache=0&sync_timestamp=1574807785634&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-6.4.0.tgz", + "integrity": "sha1-tlnS/7r6JLr12xzbsslKmD7NJ4Q=", + "dev": true + }, + "cacache": { + "version": "12.0.3", + "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-12.0.3.tgz?cache=0&sync_timestamp=1580176348786&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-12.0.3.tgz", + "integrity": "sha1-vpmruk4b9d9GHNWiwQcfxDJXM5A=", + "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" + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-2.1.0.tgz", + "integrity": "sha1-jQ+UzRP+Q8bHwmGg2GEVypGMBfc=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/is-wsl/download/is-wsl-1.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-wsl%2Fdownload%2Fis-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npm.taobao.org/memory-fs/download/memory-fs-0.4.1.tgz?cache=0&sync_timestamp=1570537491040&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmemory-fs%2Fdownload%2Fmemory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npm.taobao.org/ssri/download/ssri-6.0.1.tgz?cache=0&sync_timestamp=1571961490394&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssri%2Fdownload%2Fssri-6.0.1.tgz", + "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "terser-webpack-plugin": { + "version": "1.4.3", + "resolved": "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-1.4.3.tgz?cache=0&sync_timestamp=1580403891929&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser-webpack-plugin%2Fdownload%2Fterser-webpack-plugin-1.4.3.tgz", + "integrity": "sha1-Xsry29xfuZdF/QZ5H0b8ndscmnw=", + "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": "^2.1.2", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + } + } + } + }, + "webpack-dev-middleware": { + "version": "3.7.2", + "resolved": "https://registry.npm.taobao.org/webpack-dev-middleware/download/webpack-dev-middleware-3.7.2.tgz?cache=0&sync_timestamp=1569684802806&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-dev-middleware%2Fdownload%2Fwebpack-dev-middleware-3.7.2.tgz", + "integrity": "sha1-ABnD23FuP6XOy/ZPKriKdLqzMfM=", + "dev": true, + "requires": { + "memory-fs": "^0.4.1", + "mime": "^2.4.4", + "mkdirp": "^0.5.1", + "range-parser": "^1.2.1", + "webpack-log": "^2.0.0" + }, + "dependencies": { + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npm.taobao.org/memory-fs/download/memory-fs-0.4.1.tgz?cache=0&sync_timestamp=1570537491040&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmemory-fs%2Fdownload%2Fmemory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "mime": { + "version": "2.4.4", + "resolved": "https://registry.npm.taobao.org/mime/download/mime-2.4.4.tgz", + "integrity": "sha1-vXuRE1/GsBzePpuuM9ZZtj2IV+U=", + "dev": true + } + } + }, + "webpack-dev-server": { + "version": "3.9.0", + "resolved": "https://registry.npm.taobao.org/webpack-dev-server/download/webpack-dev-server-3.9.0.tgz", + "integrity": "sha1-J8O10Pa2Z3xDBEZayBdiPIsnuJw=", + "dev": true, + "requires": { + "ansi-html": "0.0.7", + "bonjour": "^3.5.0", + "chokidar": "^2.1.8", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "debug": "^4.1.1", + "del": "^4.1.1", + "express": "^4.17.1", + "html-entities": "^1.2.1", + "http-proxy-middleware": "0.19.1", + "import-local": "^2.0.0", + "internal-ip": "^4.3.0", + "ip": "^1.1.5", + "is-absolute-url": "^3.0.3", + "killable": "^1.0.1", + "loglevel": "^1.6.4", + "opn": "^5.5.0", + "p-retry": "^3.0.1", + "portfinder": "^1.0.25", + "schema-utils": "^1.0.0", + "selfsigned": "^1.10.7", + "semver": "^6.3.0", + "serve-index": "^1.9.1", + "sockjs": "0.3.19", + "sockjs-client": "1.4.0", + "spdy": "^4.0.1", + "strip-ansi": "^3.0.1", + "supports-color": "^6.1.0", + "url": "^0.11.0", + "webpack-dev-middleware": "^3.7.2", + "webpack-log": "^2.0.0", + "ws": "^6.2.1", + "yargs": "12.0.5" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz", + "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/normalize-path/download/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-1.13.1.tgz", + "integrity": "sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U=", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npm.taobao.org/braces/download/braces-2.3.2.tgz", + "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", + "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" + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npm.taobao.org/chokidar/download/chokidar-2.1.8.tgz", + "integrity": "sha1-gEs6e2qZNYw8XGHnHYco8EHP+Rc=", + "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" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/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.npm.taobao.org/fill-range/download/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" + } + }, + "fsevents": { + "version": "1.2.11", + "resolved": "https://registry.npm.taobao.org/fsevents/download/fsevents-1.2.11.tgz?cache=0&sync_timestamp=1576323112997&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffsevents%2Fdownload%2Ffsevents-1.2.11.tgz", + "integrity": "sha1-Z79X9HWPAu3oj7KhcS/vTRU1i+M=", + "dev": true, + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1", + "node-pre-gyp": "*" + }, + "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.3", + "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": "3.2.6", + "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.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.6.0" + } + }, + "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.6", + "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.3", + "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.4", + "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.9.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.3.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.9.0" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.14.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.4.2" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-normalize-package-bin": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.7", + "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.1", + "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.7.1", + "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.1", + "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.13", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" + } + }, + "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.1.1", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "is-absolute-url": { + "version": "3.0.3", + "resolved": "https://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-3.0.3.tgz?cache=0&sync_timestamp=1569735515256&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-absolute-url%2Fdownload%2Fis-absolute-url-3.0.3.tgz", + "integrity": "sha1-lsaiK2ojkpsR6gr7GDbDatSl1pg=", + "dev": true + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/readdirp/download/readdirp-2.2.1.tgz", + "integrity": "sha1-DodiKjMlqjPokihcr4tOhGUppSU=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz", + "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/to-regex-range/download/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" + } + } + } + }, + "webpack-log": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/webpack-log/download/webpack-log-2.0.0.tgz?cache=0&sync_timestamp=1564684394562&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-log%2Fdownload%2Fwebpack-log-2.0.0.tgz", + "integrity": "sha1-W3ko4GN1k/EZ0y9iJ8HgrDHhtH8=", + "dev": true, + "requires": { + "ansi-colors": "^3.0.0", + "uuid": "^3.3.2" + } + }, + "webpack-merge": { + "version": "4.2.2", + "resolved": "https://registry.npm.taobao.org/webpack-merge/download/webpack-merge-4.2.2.tgz", + "integrity": "sha1-onxS6ng9E5iv0gh/VH17nS9DY00=", + "dev": true, + "requires": { + "lodash": "^4.17.15" + } + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.4.3.tgz?cache=0&sync_timestamp=1574264229907&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-sources%2Fdownload%2Fwebpack-sources-1.4.3.tgz", + "integrity": "sha1-7t2OwLko+/HL/plOItLYkPMwqTM=", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "webpack-subresource-integrity": { + "version": "1.3.4", + "resolved": "https://registry.npm.taobao.org/webpack-subresource-integrity/download/webpack-subresource-integrity-1.3.4.tgz", + "integrity": "sha1-RVTgxiLWeH+IDroAnNtzE5wQe60=", + "dev": true, + "requires": { + "webpack-sources": "^1.3.0" + } + }, + "websocket-driver": { + "version": "0.7.3", + "resolved": "https://registry.npm.taobao.org/websocket-driver/download/websocket-driver-0.7.3.tgz", + "integrity": "sha1-otTg1PTxFvHmKX66WLBdQwEA6fk=", + "requires": { + "http-parser-js": ">=0.4.0 <0.4.11", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.3", + "resolved": "https://registry.npm.taobao.org/websocket-extensions/download/websocket-extensions-0.1.3.tgz", + "integrity": "sha1-XS/yKXcAPsaHpLhwc9+7rBRszyk=" + }, + "whatwg-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/whatwg-fetch/download/whatwg-fetch-3.0.0.tgz", + "integrity": "sha1-/IBORYzEYACbGiuWa8iBfSV4rvs=" + }, + "when": { + "version": "3.6.4", + "resolved": "https://registry.npm.taobao.org/when/download/when-3.6.4.tgz", + "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/which/download/which-1.3.1.tgz?cache=0&sync_timestamp=1574116898193&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwhich%2Fdownload%2Fwhich-1.3.1.tgz", + "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/which-module/download/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "window-size": { + "version": "0.1.4", + "resolved": "https://registry.npm.taobao.org/window-size/download/window-size-0.1.4.tgz", + "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=" + }, + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npm.taobao.org/wordwrap/download/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + }, + "worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npm.taobao.org/worker-farm/download/worker-farm-1.7.0.tgz", + "integrity": "sha1-JqlMU5G7ypJhUgAvabhKS/dy5ag=", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, + "worker-plugin": { + "version": "3.2.0", + "resolved": "https://registry.npm.taobao.org/worker-plugin/download/worker-plugin-3.2.0.tgz", + "integrity": "sha1-3a6fFht2/Lqs+PVOzQN4RFhOQ+c=", + "dev": true, + "requires": { + "loader-utils": "^1.1.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "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.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "ws": { + "version": "6.2.1", + "resolved": "https://registry.npm.taobao.org/ws/download/ws-6.2.1.tgz", + "integrity": "sha1-RC/fCkftZPWbal2P8TD0dI7VJPs=", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + }, + "xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npm.taobao.org/xml2js/download/xml2js-0.4.23.tgz?cache=0&sync_timestamp=1576776092832&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxml2js%2Fdownload%2Fxml2js-0.4.23.tgz", + "integrity": "sha1-oMaVFnUkIesqx1juTUzPWIQ+rGY=", + "dev": true, + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "dependencies": { + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz", + "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=", + "dev": true + } + } + }, + "xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npm.taobao.org/xmlbuilder/download/xmlbuilder-11.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxmlbuilder%2Fdownload%2Fxmlbuilder-11.0.1.tgz", + "integrity": "sha1-vpuuHIoEbnazESdyY0fQrXACvrM=", + "dev": true + }, + "xmlhttprequest": { + "version": "1.8.0", + "resolved": "https://registry.npm.taobao.org/xmlhttprequest/download/xmlhttprequest-1.8.0.tgz", + "integrity": "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=" + }, + "xmlhttprequest-ssl": { + "version": "1.5.5", + "resolved": "https://registry.npm.taobao.org/xmlhttprequest-ssl/download/xmlhttprequest-ssl-1.5.5.tgz", + "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", + "dev": true + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/xtend/download/xtend-4.0.2.tgz", + "integrity": "sha1-u3J3n1+kZRhrH0OPZ0+jR/2121Q=", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/y18n/download/y18n-4.0.0.tgz", + "integrity": "sha1-le+U+F7MgdAHwmThkKEg8KPIVms=", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-4.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-4.0.0.tgz", + "integrity": "sha1-m7knkNnA7/7GO+c1GeEaNQGaOnI=", + "dev": true + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-12.0.5.tgz?cache=0&sync_timestamp=1577940861093&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-12.0.5.tgz", + "integrity": "sha1-BfWZe2CWR7ZPZrgeO0sQo2jnrRM=", + "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" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-11.1.1.tgz?cache=0&sync_timestamp=1572648717575&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-11.1.1.tgz", + "integrity": "sha1-h5oIZZc7yp9rq1y987HGfsfTvPQ=", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "yeast": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/yeast/download/yeast-0.1.2.tgz", + "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", + "dev": true + }, + "yn": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/yn/download/yn-2.0.0.tgz", + "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", + "dev": true + }, + "zone.js": { + "version": "0.10.2", + "resolved": "https://registry.npm.taobao.org/zone.js/download/zone.js-0.10.2.tgz", + "integrity": "sha1-Z8oISzEW/DP8QENeDV6kCiB+OS4=" + }, + "zrender": { + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/zrender/download/zrender-4.2.0.tgz?cache=0&sync_timestamp=1576159866096&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fzrender%2Fdownload%2Fzrender-4.2.0.tgz", + "integrity": "sha1-0AEwLhVfKN4fn8f81cJUutKEcc8=" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..a853797 --- /dev/null +++ b/package.json @@ -0,0 +1,60 @@ +{ + "name": "anxin119", + "version": "0.0.0", + "scripts": { + "ng": "ng", + "start": "ng serve --proxy-config proxy.config.json --open --port 4000 ", + "build": "ng build", + "test": "ng test", + "lint": "ng lint", + "e2e": "ng e2e" + }, + "private": true, + "dependencies": { + "@angular/animations": "^9.0.0", + "@angular/cdk": "^9.0.0", + "@angular/common": "~9.0.0", + "@angular/compiler": "~9.0.0", + "@angular/core": "~9.0.0", + "@angular/fire": "^5.3.0", + "@angular/forms": "~9.0.0", + "@angular/material": "^9.0.0", + "@angular/platform-browser": "~9.0.0", + "@angular/platform-browser-dynamic": "~9.0.0", + "@angular/router": "~9.0.0", + "@types/cesium": "^1.59.5", + "angular-calendar": "^0.28.2", + "cesium": "^1.64.0", + "date-fns": "^2.9.0", + "e-ngx-cesium": "^6.3.2", + "echarts": "^4.6.0", + "firebase": "^7.6.2", + "ng2-file-upload": "^1.4.0", + "ngx-echarts": "^4.2.2", + "ngx-perfect-scrollbar": "^8.0.0", + "rxjs": "~6.5.4", + "tslib": "^1.10.0", + "zone.js": "~0.10.2" + }, + "devDependencies": { + "@angular-devkit/build-angular": "~0.900.1", + "@angular/cli": "~9.0.1", + "@angular/compiler-cli": "~9.0.0", + "@angular/language-service": "~9.0.0", + "@types/jasmine": "~3.3.8", + "@types/jasminewd2": "~2.0.3", + "@types/node": "^12.11.1", + "codelyzer": "^5.1.2", + "jasmine-core": "~3.4.0", + "jasmine-spec-reporter": "~4.2.1", + "karma": "~4.1.0", + "karma-chrome-launcher": "~2.2.0", + "karma-coverage-istanbul-reporter": "~2.0.1", + "karma-jasmine": "~2.0.1", + "karma-jasmine-html-reporter": "^1.4.0", + "protractor": "~5.4.0", + "ts-node": "~7.0.0", + "tslint": "~5.15.0", + "typescript": "~3.7.5" + } +} diff --git a/proxy.config.json b/proxy.config.json new file mode 100644 index 0000000..0b360df --- /dev/null +++ b/proxy.config.json @@ -0,0 +1,7 @@ +{ + "/api": { + "target": "http://39.106.78.171:8008", + "secure": false, + "changeOrigin": true + } +} \ No newline at end of file diff --git a/reset.css b/reset.css new file mode 100644 index 0000000..c67618d --- /dev/null +++ b/reset.css @@ -0,0 +1,27 @@ +@charset "utf-8"; +html,body,ul,ol,dl,li,dt,dd,p,form,input,h1,h2,h3,h4,h5,h6,section,article,aside,header,footer,nav,figure,time,mark,main,canvas{ + margin:0; + padding:0; + font-size:16px; +} +b,strong,i,em,h1,h2,h3,h4,h5,h6{ + font-weight:500; + font-style:normal; +} +img{ + border:none; +} +a{ + text-decoration: none; + color:#000; +ul,ol,li{ + list-style:none; +} +.clearfn:after{ + content:""; + clear:both; + display: block; + overflow:hidden; + height:0; + visibility: hidden; +} \ No newline at end of file diff --git a/src/app/_theming.scss b/src/app/_theming.scss new file mode 100644 index 0000000..e30383b --- /dev/null +++ b/src/app/_theming.scss @@ -0,0 +1,5098 @@ +// Import all the theming functionality. +// We can use relative imports for imports from the cdk because we bundle everything +// up into a single flat scss file for material. +// We want overlays to always appear over user content, so set a baseline +// very high z-index for the overlay container, which is where we create the new +// stacking context for all overlays. +$cdk-z-index-overlay-container: 1000 !default; +$cdk-z-index-overlay: 1000 !default; +$cdk-z-index-overlay-backdrop: 1000 !default; + +// Background color for all of the backdrops +$cdk-overlay-dark-backdrop-background: rgba(0, 0, 0, 0.32) !default; + +// Default backdrop animation is based on the Material Design swift-ease-out. +$backdrop-animation-duration: 400ms !default; +$backdrop-animation-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1) !default; + + +@mixin cdk-overlay() { + .cdk-overlay-container, .cdk-global-overlay-wrapper { + // Disable events from being captured on the overlay container. + pointer-events: none; + + // The container should be the size of the viewport. + top: 0; + left: 0; + height: 100%; + width: 100%; + } + + // The overlay-container is an invisible element which contains all individual overlays. + .cdk-overlay-container { + position: fixed; + z-index: $cdk-z-index-overlay-container; + + &:empty { + // Hide the element when it doesn't have any child nodes. This doesn't + // include overlays that have been detached, rather than disposed. + display: none; + } + } + + // We use an extra wrapper element in order to use make the overlay itself a flex item. + // This makes centering the overlay easy without running into the subpixel rendering + // problems tied to using `transform` and without interfering with the other position + // strategies. + .cdk-global-overlay-wrapper { + display: flex; + position: absolute; + z-index: $cdk-z-index-overlay; + } + + // A single overlay pane. + .cdk-overlay-pane { + // Note: it's important for this one to start off `absolute`, + // in order for us to be able to measure it correctly. + position: absolute; + pointer-events: auto; + box-sizing: border-box; + z-index: $cdk-z-index-overlay; + + // For connected-position overlays, we set `display: flex` in + // order to force `max-width` and `max-height` to take effect. + display: flex; + max-width: 100%; + max-height: 100%; + } + + .cdk-overlay-backdrop { + // TODO(jelbourn): reuse sidenav fullscreen mixin. + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + + z-index: $cdk-z-index-overlay-backdrop; + pointer-events: auto; + -webkit-tap-highlight-color: transparent; + transition: opacity $backdrop-animation-duration $backdrop-animation-timing-function; + opacity: 0; + + &.cdk-overlay-backdrop-showing { + opacity: 1; + + // In high contrast mode the rgba background will become solid so we need to fall back + // to making it opaque using `opacity`. Note that we can't use the `cdk-high-contrast` + // mixin, because we can't normalize the import path to the _a11y.scss both for the + // source and when this file is distributed. See #10908. + @media screen and (-ms-high-contrast: active) { + opacity: 0.6; + } + } + } + + .cdk-overlay-dark-backdrop { + background: $cdk-overlay-dark-backdrop-background; + } + + .cdk-overlay-transparent-backdrop { + // Note: as of Firefox 57, having the backdrop be `background: none` will prevent it from + // capturing the user's mouse scroll events. Since we also can't use something like + // `rgba(0, 0, 0, 0)`, we work around the inconsistency by not setting the background at + // all and using `opacity` to make the element transparent. + &, &.cdk-overlay-backdrop-showing { + opacity: 0; + } + } + + // Overlay parent element used with the connected position strategy. Used to constrain the + // overlay element's size to fit within the viewport. + .cdk-overlay-connected-position-bounding-box { + position: absolute; + z-index: $cdk-z-index-overlay; + + // We use `display: flex` on this element exclusively for centering connected overlays. + // When *not* centering, a top/left/bottom/right will be set which overrides the normal + // flex layout. + display: flex; + + // We use the `column` direction here to avoid some flexbox issues in Edge + // when using the "grow after open" options. + flex-direction: column; + + // Add some dimensions so the element has an `innerText` which some people depend on in tests. + min-width: 1px; + min-height: 1px; + } + + // Used when disabling global scrolling. + .cdk-global-scrollblock { + position: fixed; + + // Necessary for the content not to lose its width. Note that we're using 100%, instead of + // 100vw, because 100vw includes the width plus the scrollbar, whereas 100% is the width + // that the element had before we made it `fixed`. + width: 100%; + + // Note: this will always add a scrollbar to whatever element it is on, which can + // potentially result in double scrollbars. It shouldn't be an issue, because we won't + // block scrolling on a page that doesn't have a scrollbar in the first place. + overflow-y: scroll; + } +} + +@mixin cdk-a11y { + .cdk-visually-hidden { + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; + + // Avoid browsers rendering the focus ring in some cases. + outline: 0; + + // Avoid some cases where the browser will still render the native controls (see #9049). + -webkit-appearance: none; + -moz-appearance: none; + } +} + +// Applies styles for users in high contrast mode. Note that this only applies +// to Microsoft browsers. Chrome can be included by checking for the `html[hc]` +// attribute, however Chrome handles high contrast differently. +// +// @param target Which kind of high contrast setting to target. Defaults to `active`, can be +// `white-on-black` or `black-on-white`. +@mixin cdk-high-contrast($target: active) { + @media (-ms-high-contrast: $target) { + @content; + } +} + +// Core styles that enable monitoring autofill state of text fields. +@mixin cdk-text-field { + // Keyframes that apply no styles, but allow us to monitor when an text field becomes autofilled + // by watching for the animation events that are fired when they start. Note: the /*!*/ comment is + // needed to prevent LibSass from stripping the keyframes out. + // Based on: https://medium.com/@brunn/detecting-autofilled-fields-in-javascript-aed598d25da7 + @keyframes cdk-text-field-autofill-start {/*!*/} + @keyframes cdk-text-field-autofill-end {/*!*/} + + .cdk-text-field-autofill-monitored:-webkit-autofill { + animation-name: cdk-text-field-autofill-start; + } + + .cdk-text-field-autofill-monitored:not(:-webkit-autofill) { + animation-name: cdk-text-field-autofill-end; + } + + // Remove the resize handle on autosizing textareas, because whatever height + // the user resized to will be overwritten once they start typing again. + textarea.cdk-textarea-autosize { + resize: none; + } + + // This class is temporarily applied to the textarea when it is being measured. It is immediately + // removed when measuring is complete. We use `!important` rules here to make sure user-specified + // rules do not interfere with the measurement. + textarea.cdk-textarea-autosize-measuring { + height: auto !important; + overflow: hidden !important; + // Having 2px top and bottom padding seems to fix a bug where Chrome gets an incorrect + // measurement. We just have to account for it later and subtract it off the final result. + padding: 2px 0 !important; + box-sizing: content-box !important; + } +} + +// Used to generate UIDs for keyframes used to change the text field autofill styles. +$cdk-text-field-autofill-color-frame-count: 0; + +// Mixin used to apply custom background and foreground colors to an autofilled text field. +// Based on: https://stackoverflow.com/questions/2781549/ +// removing-input-background-colour-for-chrome-autocomplete#answer-37432260 +@mixin cdk-text-field-autofill-color($background, $foreground:'') { + @keyframes cdk-text-field-autofill-color-#{$cdk-text-field-autofill-color-frame-count} { + to { + background: $background; + @if $foreground != '' { color: $foreground; } + } + } + + &:-webkit-autofill { + animation-name: cdk-text-field-autofill-color-#{$cdk-text-field-autofill-color-frame-count}; + animation-fill-mode: both; + } + + &.cdk-text-field-autofill-monitored:-webkit-autofill { + animation-name: cdk-text-field-autofill-start, + cdk-text-field-autofill-color-#{$cdk-text-field-autofill-color-frame-count}; + } + + $cdk-text-field-autofill-color-frame-count: + $cdk-text-field-autofill-color-frame-count + 1 !global; +} + + +// Core styles that can be used to apply material design treatments to any element. +// Media queries +// TODO(josephperrott): Change $mat-xsmall and $mat-small usages to rely on BreakpointObserver, +$mat-xsmall: 'max-width: 599px'; +$mat-small: 'max-width: 959px'; + +// TODO: Revisit all z-indices before beta +// z-index master list + +$z-index-fab: 20 !default; +$z-index-drawer: 100 !default; + +// Global constants +$pi: 3.14159265; + +// Padding between input toggles and their labels +$mat-toggle-padding: 8px !default; +// Width and height of input toggles +$mat-toggle-size: 20px !default; + +// Easing Curves +// TODO(jelbourn): all of these need to be revisited + +// The default animation curves used by material design. +$mat-linear-out-slow-in-timing-function: cubic-bezier(0, 0, 0.2, 0.1) !default; +$mat-fast-out-slow-in-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !default; +$mat-fast-out-linear-in-timing-function: cubic-bezier(0.4, 0, 1, 1) !default; + +$ease-in-out-curve-function: cubic-bezier(0.35, 0, 0.25, 1) !default; + +$swift-ease-out-duration: 400ms !default; +$swift-ease-out-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1) !default; +$swift-ease-out: all $swift-ease-out-duration $swift-ease-out-timing-function !default; + +$swift-ease-in-duration: 300ms !default; +$swift-ease-in-timing-function: cubic-bezier(0.55, 0, 0.55, 0.2) !default; +$swift-ease-in: all $swift-ease-in-duration $swift-ease-in-timing-function !default; + +$swift-ease-in-out-duration: 500ms !default; +$swift-ease-in-out-timing-function: $ease-in-out-curve-function !default; +$swift-ease-in-out: all $swift-ease-in-out-duration $swift-ease-in-out-timing-function !default; + +$swift-linear-duration: 80ms !default; +$swift-linear-timing-function: linear !default; +$swift-linear: all $swift-linear-duration $swift-linear-timing-function !default; + + + +// A collection of mixins and CSS classes that can be used to apply elevation to a material +// element. +// See: https://material.io/design/environment/elevation.html +// Examples: +// +// +// .mat-foo { +// @include $mat-elevation(2); +// +// &:active { +// @include $mat-elevation(8); +// } +// } +// +//

Some content

+// +// For an explanation of the design behind how elevation is implemented, see the design doc at +// https://goo.gl/Kq0k9Z. + +// Colors for umbra, penumbra, and ambient shadows. As described in the design doc, each elevation +// level is created using a set of 3 shadow values, one for umbra (the shadow representing the +// space completely obscured by an object relative to its light source), one for penumbra (the +// space partially obscured by an object), and one for ambient (the space which contains the object +// itself). For a further explanation of these terms and their meanings, see +// https://en.wikipedia.org/wiki/Umbra,_penumbra_and_antumbra. + +// Maps for the different shadow sets and their values within each z-space. These values were +// created by taking a few reference shadow sets created by Google's Designers and interpolating +// all of the values between them. + +@function _get-umbra-map($color, $opacity) { + $shadow-color: if(type-of($color) == color, rgba($color, $opacity * 0.2), $color); + + @return ( + 0: '0px 0px 0px 0px #{$shadow-color}', + 1: '0px 2px 1px -1px #{$shadow-color}', + 2: '0px 3px 1px -2px #{$shadow-color}', + 3: '0px 3px 3px -2px #{$shadow-color}', + 4: '0px 2px 4px -1px #{$shadow-color}', + 5: '0px 3px 5px -1px #{$shadow-color}', + 6: '0px 3px 5px -1px #{$shadow-color}', + 7: '0px 4px 5px -2px #{$shadow-color}', + 8: '0px 5px 5px -3px #{$shadow-color}', + 9: '0px 5px 6px -3px #{$shadow-color}', + 10: '0px 6px 6px -3px #{$shadow-color}', + 11: '0px 6px 7px -4px #{$shadow-color}', + 12: '0px 7px 8px -4px #{$shadow-color}', + 13: '0px 7px 8px -4px #{$shadow-color}', + 14: '0px 7px 9px -4px #{$shadow-color}', + 15: '0px 8px 9px -5px #{$shadow-color}', + 16: '0px 8px 10px -5px #{$shadow-color}', + 17: '0px 8px 11px -5px #{$shadow-color}', + 18: '0px 9px 11px -5px #{$shadow-color}', + 19: '0px 9px 12px -6px #{$shadow-color}', + 20: '0px 10px 13px -6px #{$shadow-color}', + 21: '0px 10px 13px -6px #{$shadow-color}', + 22: '0px 10px 14px -6px #{$shadow-color}', + 23: '0px 11px 14px -7px #{$shadow-color}', + 24: '0px 11px 15px -7px #{$shadow-color}' + ); +} + +@function _get-penumbra-map($color, $opacity) { + $shadow-color: if(type-of($color) == color, rgba($color, $opacity * 0.14), $color); + + @return ( + 0: '0px 0px 0px 0px #{$shadow-color}', + 1: '0px 1px 1px 0px #{$shadow-color}', + 2: '0px 2px 2px 0px #{$shadow-color}', + 3: '0px 3px 4px 0px #{$shadow-color}', + 4: '0px 4px 5px 0px #{$shadow-color}', + 5: '0px 5px 8px 0px #{$shadow-color}', + 6: '0px 6px 10px 0px #{$shadow-color}', + 7: '0px 7px 10px 1px #{$shadow-color}', + 8: '0px 8px 10px 1px #{$shadow-color}', + 9: '0px 9px 12px 1px #{$shadow-color}', + 10: '0px 10px 14px 1px #{$shadow-color}', + 11: '0px 11px 15px 1px #{$shadow-color}', + 12: '0px 12px 17px 2px #{$shadow-color}', + 13: '0px 13px 19px 2px #{$shadow-color}', + 14: '0px 14px 21px 2px #{$shadow-color}', + 15: '0px 15px 22px 2px #{$shadow-color}', + 16: '0px 16px 24px 2px #{$shadow-color}', + 17: '0px 17px 26px 2px #{$shadow-color}', + 18: '0px 18px 28px 2px #{$shadow-color}', + 19: '0px 19px 29px 2px #{$shadow-color}', + 20: '0px 20px 31px 3px #{$shadow-color}', + 21: '0px 21px 33px 3px #{$shadow-color}', + 22: '0px 22px 35px 3px #{$shadow-color}', + 23: '0px 23px 36px 3px #{$shadow-color}', + 24: '0px 24px 38px 3px #{$shadow-color}' + ); +} + +@function _get-ambient-map($color, $opacity) { + $shadow-color: if(type-of($color) == color, rgba($color, $opacity * 0.12), $color); + + @return ( + 0: '0px 0px 0px 0px #{$shadow-color}', + 1: '0px 1px 3px 0px #{$shadow-color}', + 2: '0px 1px 5px 0px #{$shadow-color}', + 3: '0px 1px 8px 0px #{$shadow-color}', + 4: '0px 1px 10px 0px #{$shadow-color}', + 5: '0px 1px 14px 0px #{$shadow-color}', + 6: '0px 1px 18px 0px #{$shadow-color}', + 7: '0px 2px 16px 1px #{$shadow-color}', + 8: '0px 3px 14px 2px #{$shadow-color}', + 9: '0px 3px 16px 2px #{$shadow-color}', + 10: '0px 4px 18px 3px #{$shadow-color}', + 11: '0px 4px 20px 3px #{$shadow-color}', + 12: '0px 5px 22px 4px #{$shadow-color}', + 13: '0px 5px 24px 4px #{$shadow-color}', + 14: '0px 5px 26px 4px #{$shadow-color}', + 15: '0px 6px 28px 5px #{$shadow-color}', + 16: '0px 6px 30px 5px #{$shadow-color}', + 17: '0px 6px 32px 5px #{$shadow-color}', + 18: '0px 7px 34px 6px #{$shadow-color}', + 19: '0px 7px 36px 6px #{$shadow-color}', + 20: '0px 8px 38px 7px #{$shadow-color}', + 21: '0px 8px 40px 7px #{$shadow-color}', + 22: '0px 8px 42px 7px #{$shadow-color}', + 23: '0px 9px 44px 8px #{$shadow-color}', + 24: '0px 9px 46px 8px #{$shadow-color}' + ); +} + +// The default duration value for elevation transitions. +$mat-elevation-transition-duration: 280ms !default; + +// The default easing value for elevation transitions. +$mat-elevation-transition-timing-function: $mat-fast-out-slow-in-timing-function; + +// The default color for elevation shadows. +$mat-elevation-color: black !default; + +// The default opacity scaling value for elevation shadows. +$mat-elevation-opacity: 1 !default; + +// Prefix for elevation-related selectors. +$_mat-elevation-prefix: 'mat-elevation-z'; + +// Applies the correct css rules to an element to give it the elevation specified by $zValue. +// The $zValue must be between 0 and 24. +@mixin mat-elevation($zValue, $color: $mat-elevation-color, $opacity: $mat-elevation-opacity) { + @if type-of($zValue) != number or not unitless($zValue) { + @error '$zValue must be a unitless number'; + } + @if $zValue < 0 or $zValue > 24 { + @error '$zValue must be between 0 and 24'; + } + + box-shadow: #{map-get(_get-umbra-map($color, $opacity), $zValue)}, + #{map-get(_get-penumbra-map($color, $opacity), $zValue)}, + #{map-get(_get-ambient-map($color, $opacity), $zValue)}; +} + +@mixin _mat-theme-elevation($zValue, $theme, $opacity: $mat-elevation-opacity) { + $foreground: map-get($theme, foreground); + $elevation-color: map-get($foreground, elevation); + $elevation-color-or-default: if($elevation-color == null, $mat-elevation-color, $elevation-color); + + @include mat-elevation($zValue, $elevation-color-or-default, $opacity); +} + +// Applies the elevation to an element in a manner that allows +// consumers to override it via the Material elevation classes. +@mixin mat-overridable-elevation( + $zValue, + $color: $mat-elevation-color, + $opacity: $mat-elevation-opacity) { + &:not([class*='#{$_mat-elevation-prefix}']) { + @include mat-elevation($zValue, $color, $opacity); + } +} + +@mixin _mat-theme-overridable-elevation($zValue, $theme, $opacity: $mat-elevation-opacity) { + $foreground: map-get($theme, foreground); + $elevation-color: map-get($foreground, elevation); + $elevation-color-or-default: if($elevation-color == null, $mat-elevation-color, $elevation-color); + + @include mat-overridable-elevation($zValue, $elevation-color-or-default, $opacity); +} + +// Returns a string that can be used as the value for a transition property for elevation. +// Calling this function directly is useful in situations where a component needs to transition +// more than one property. +// +// .foo { +// transition: mat-elevation-transition-property-value(), opacity 100ms ease; +// } +@function mat-elevation-transition-property-value( + $duration: $mat-elevation-transition-duration, + $easing: $mat-elevation-transition-timing-function) { + @return box-shadow #{$duration} #{$easing}; +} + +// Applies the correct css rules needed to have an element transition between elevations. +// This mixin should be applied to elements whose elevation values will change depending on their +// context (e.g. when active or disabled). +// +// NOTE(traviskaufman): Both this mixin and the above function use default parameters so they can +// be used in the same way by clients. +@mixin mat-elevation-transition( + $duration: $mat-elevation-transition-duration, + $easing: $mat-elevation-transition-timing-function) { + transition: mat-elevation-transition-property-value($duration, $easing); +} + +// Color palettes from the Material Design spec. +// See https://material.io/design/color/ +// +// Contrast colors are hard-coded because it is too difficult (probably impossible) to +// calculate them. These contrast colors are pulled from the public Material Design spec swatches. +// While the contrast colors in the spec are not prescriptive, we use them for convenience. + + +// @deprecated renamed to $dark-primary-text. +// @breaking-change 8.0.0 +$black-87-opacity: rgba(black, 0.87); +// @deprecated renamed to $light-primary-text. +// @breaking-change 8.0.0 +$white-87-opacity: rgba(white, 0.87); +// @deprecated use $dark-[secondary-text,disabled-text,dividers,focused] instead. +// @breaking-change 8.0.0 +$black-12-opacity: rgba(black, 0.12); +// @deprecated use $light-[secondary-text,disabled-text,dividers,focused] instead. +// @breaking-change 8.0.0 +$white-12-opacity: rgba(white, 0.12); +// @deprecated use $dark-[secondary-text,disabled-text,dividers,focused] instead. +// @breaking-change 8.0.0 +$black-6-opacity: rgba(black, 0.06); +// @deprecated use $light-[secondary-text,disabled-text,dividers,focused] instead. +// @breaking-change 8.0.0 +$white-6-opacity: rgba(white, 0.06); + +$dark-primary-text: rgba(black, 0.87); +$dark-secondary-text: rgba(black, 0.54); +$dark-disabled-text: rgba(black, 0.38); +$dark-dividers: rgba(black, 0.12); +$dark-focused: rgba(black, 0.12); +$light-primary-text: white; +$light-secondary-text: rgba(white, 0.7); +$light-disabled-text: rgba(white, 0.5); +$light-dividers: rgba(white, 0.12); +$light-focused: rgba(white, 0.12); + +$mat-red: ( + 50: #ffebee, + 100: #ffcdd2, + 200: #ef9a9a, + 300: #e57373, + 400: #ef5350, + 500: #f44336, + 600: #e53935, + 700: #d32f2f, + 800: #c62828, + 900: #b71c1c, + A100: #ff8a80, + A200: #ff5252, + A400: #ff1744, + A700: #d50000, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $light-primary-text, + A400: $light-primary-text, + A700: $light-primary-text, + ) +); + +$mat-pink: ( + 50: #fce4ec, + 100: #f8bbd0, + 200: #f48fb1, + 300: #f06292, + 400: #ec407a, + 500: #e91e63, + 600: #d81b60, + 700: #c2185b, + 800: #ad1457, + 900: #880e4f, + A100: #ff80ab, + A200: #ff4081, + A400: #f50057, + A700: #c51162, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $light-primary-text, + A400: $light-primary-text, + A700: $light-primary-text, + ) +); + +$mat-purple: ( + 50: #f3e5f5, + 100: #e1bee7, + 200: #ce93d8, + 300: #ba68c8, + 400: #ab47bc, + 500: #9c27b0, + 600: #8e24aa, + 700: #7b1fa2, + 800: #6a1b9a, + 900: #4a148c, + A100: #ea80fc, + A200: #e040fb, + A400: #d500f9, + A700: #aa00ff, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $light-primary-text, + 400: $light-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $light-primary-text, + A400: $light-primary-text, + A700: $light-primary-text, + ) +); + +$mat-deep-purple: ( + 50: #ede7f6, + 100: #d1c4e9, + 200: #b39ddb, + 300: #9575cd, + 400: #7e57c2, + 500: #673ab7, + 600: #5e35b1, + 700: #512da8, + 800: #4527a0, + 900: #311b92, + A100: #b388ff, + A200: #7c4dff, + A400: #651fff, + A700: #6200ea, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $light-primary-text, + 400: $light-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $light-primary-text, + A400: $light-primary-text, + A700: $light-primary-text, + ) +); + +$mat-indigo: ( + 50: #e8eaf6, + 100: #c5cae9, + 200: #9fa8da, + 300: #7986cb, + 400: #5c6bc0, + 500: #3f51b5, + 600: #3949ab, + 700: #303f9f, + 800: #283593, + 900: #1a237e, + A100: #8c9eff, + A200: #536dfe, + A400: #3d5afe, + A700: #304ffe, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $light-primary-text, + 400: $light-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $light-primary-text, + A400: $light-primary-text, + A700: $light-primary-text, + ) +); + +$mat-blue: ( + 50: #e3f2fd, + 100: #bbdefb, + 200: #90caf9, + 300: #64b5f6, + 400: #42a5f5, + 500: #2196f3, + 600: #1e88e5, + 700: #1976d2, + 800: #1565c0, + 900: #0d47a1, + A100: #82b1ff, + A200: #448aff, + A400: #2979ff, + A700: #2962ff, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $light-primary-text, + A400: $light-primary-text, + A700: $light-primary-text, + ) +); + +$mat-light-blue: ( + 50: #e1f5fe, + 100: #b3e5fc, + 200: #81d4fa, + 300: #4fc3f7, + 400: #29b6f6, + 500: #03a9f4, + 600: #039be5, + 700: #0288d1, + 800: #0277bd, + 900: #01579b, + A100: #80d8ff, + A200: #40c4ff, + A400: #00b0ff, + A700: #0091ea, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: $light-primary-text, + ) +); + +$mat-cyan: ( + 50: #e0f7fa, + 100: #b2ebf2, + 200: #80deea, + 300: #4dd0e1, + 400: #26c6da, + 500: #00bcd4, + 600: #00acc1, + 700: #0097a7, + 800: #00838f, + 900: #006064, + A100: #84ffff, + A200: #18ffff, + A400: #00e5ff, + A700: #00b8d4, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: $dark-primary-text, + ) +); + +$mat-teal: ( + 50: #e0f2f1, + 100: #b2dfdb, + 200: #80cbc4, + 300: #4db6ac, + 400: #26a69a, + 500: #009688, + 600: #00897b, + 700: #00796b, + 800: #00695c, + 900: #004d40, + A100: #a7ffeb, + A200: #64ffda, + A400: #1de9b6, + A700: #00bfa5, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: $dark-primary-text, + ) +); + +$mat-green: ( + 50: #e8f5e9, + 100: #c8e6c9, + 200: #a5d6a7, + 300: #81c784, + 400: #66bb6a, + 500: #4caf50, + 600: #43a047, + 700: #388e3c, + 800: #2e7d32, + 900: #1b5e20, + A100: #b9f6ca, + A200: #69f0ae, + A400: #00e676, + A700: #00c853, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $dark-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: $dark-primary-text, + ) +); + +$mat-light-green: ( + 50: #f1f8e9, + 100: #dcedc8, + 200: #c5e1a5, + 300: #aed581, + 400: #9ccc65, + 500: #8bc34a, + 600: #7cb342, + 700: #689f38, + 800: #558b2f, + 900: #33691e, + A100: #ccff90, + A200: #b2ff59, + A400: #76ff03, + A700: #64dd17, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $dark-primary-text, + 600: $dark-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: $dark-primary-text, + ) +); + +$mat-lime: ( + 50: #f9fbe7, + 100: #f0f4c3, + 200: #e6ee9c, + 300: #dce775, + 400: #d4e157, + 500: #cddc39, + 600: #c0ca33, + 700: #afb42b, + 800: #9e9d24, + 900: #827717, + A100: #f4ff81, + A200: #eeff41, + A400: #c6ff00, + A700: #aeea00, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $dark-primary-text, + 600: $dark-primary-text, + 700: $dark-primary-text, + 800: $dark-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: $dark-primary-text, + ) +); + +$mat-yellow: ( + 50: #fffde7, + 100: #fff9c4, + 200: #fff59d, + 300: #fff176, + 400: #ffee58, + 500: #ffeb3b, + 600: #fdd835, + 700: #fbc02d, + 800: #f9a825, + 900: #f57f17, + A100: #ffff8d, + A200: #ffff00, + A400: #ffea00, + A700: #ffd600, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $dark-primary-text, + 600: $dark-primary-text, + 700: $dark-primary-text, + 800: $dark-primary-text, + 900: $dark-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: $dark-primary-text, + ) +); + +$mat-amber: ( + 50: #fff8e1, + 100: #ffecb3, + 200: #ffe082, + 300: #ffd54f, + 400: #ffca28, + 500: #ffc107, + 600: #ffb300, + 700: #ffa000, + 800: #ff8f00, + 900: #ff6f00, + A100: #ffe57f, + A200: #ffd740, + A400: #ffc400, + A700: #ffab00, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $dark-primary-text, + 600: $dark-primary-text, + 700: $dark-primary-text, + 800: $dark-primary-text, + 900: $dark-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: $dark-primary-text, + ) +); + +$mat-orange: ( + 50: #fff3e0, + 100: #ffe0b2, + 200: #ffcc80, + 300: #ffb74d, + 400: #ffa726, + 500: #ff9800, + 600: #fb8c00, + 700: #f57c00, + 800: #ef6c00, + 900: #e65100, + A100: #ffd180, + A200: #ffab40, + A400: #ff9100, + A700: #ff6d00, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $dark-primary-text, + 600: $dark-primary-text, + 700: $dark-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: black, + ) +); + +$mat-deep-orange: ( + 50: #fbe9e7, + 100: #ffccbc, + 200: #ffab91, + 300: #ff8a65, + 400: #ff7043, + 500: #ff5722, + 600: #f4511e, + 700: #e64a19, + 800: #d84315, + 900: #bf360c, + A100: #ff9e80, + A200: #ff6e40, + A400: #ff3d00, + A700: #dd2c00, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $light-primary-text, + A700: $light-primary-text, + ) +); + +$mat-brown: ( + 50: #efebe9, + 100: #d7ccc8, + 200: #bcaaa4, + 300: #a1887f, + 400: #8d6e63, + 500: #795548, + 600: #6d4c41, + 700: #5d4037, + 800: #4e342e, + 900: #3e2723, + A100: #d7ccc8, + A200: #bcaaa4, + A400: #8d6e63, + A700: #5d4037, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $light-primary-text, + 400: $light-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $light-primary-text, + A700: $light-primary-text, + ) +); + +$mat-grey: ( + 50: #fafafa, + 100: #f5f5f5, + 200: #eeeeee, + 300: #e0e0e0, + 400: #bdbdbd, + 500: #9e9e9e, + 600: #757575, + 700: #616161, + 800: #424242, + 900: #212121, + A100: #ffffff, + A200: #eeeeee, + A400: #bdbdbd, + A700: #616161, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $dark-primary-text, + 500: $dark-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $dark-primary-text, + A700: $light-primary-text, + ) +); + +// Alias for alternate spelling. +$mat-gray: $mat-grey; + +$mat-blue-grey: ( + 50: #eceff1, + 100: #cfd8dc, + 200: #b0bec5, + 300: #90a4ae, + 400: #78909c, + 500: #607d8b, + 600: #546e7a, + 700: #455a64, + 800: #37474f, + 900: #263238, + A100: #cfd8dc, + A200: #b0bec5, + A400: #78909c, + A700: #455a64, + contrast: ( + 50: $dark-primary-text, + 100: $dark-primary-text, + 200: $dark-primary-text, + 300: $dark-primary-text, + 400: $light-primary-text, + 500: $light-primary-text, + 600: $light-primary-text, + 700: $light-primary-text, + 800: $light-primary-text, + 900: $light-primary-text, + A100: $dark-primary-text, + A200: $dark-primary-text, + A400: $light-primary-text, + A700: $light-primary-text, + ) +); + +// Alias for alternate spelling. +$mat-blue-gray: $mat-blue-grey; + + +// Background palette for light themes. +$mat-light-theme-background: ( + status-bar: map_get($mat-grey, 300), + app-bar: map_get($mat-grey, 100), + background: map_get($mat-grey, 50), + hover: rgba(black, 0.04), // TODO(kara): check style with Material Design UX + card: white, + dialog: white, + disabled-button: rgba(black, 0.12), + raised-button: white, + focused-button: $dark-focused, + selected-button: map_get($mat-grey, 300), + selected-disabled-button: map_get($mat-grey, 400), + disabled-button-toggle: map_get($mat-grey, 200), + unselected-chip: map_get($mat-grey, 300), + disabled-list-option: map_get($mat-grey, 200), +); + +// Background palette for dark themes. +$mat-dark-theme-background: ( + // status-bar: black, + // app-bar: map_get($mat-grey, 900), + // background: #303030, + // hover: rgba(white, 0.04), // TODO(kara): check style with Material Design UX + // card: map_get($mat-grey, 800), + // dialog: map_get($mat-grey, 800), + // disabled-button: rgba(white, 0.12), + // raised-button: map-get($mat-grey, 800), + // focused-button: $light-focused, + // selected-button: map_get($mat-grey, 900), + // selected-disabled-button: map_get($mat-grey, 800), + // disabled-button-toggle: black, + // unselected-chip: map_get($mat-grey, 700), + // disabled-list-option: black, + status-bar: map_get($mat-grey, 300), + app-bar: map_get($mat-grey, 100), + background: map_get($mat-grey, 50), + hover: rgba(black, 0.04), // TODO(kara): check style with Material Design UX + card: white, + dialog: white, + disabled-button: rgba(black, 0.12), + raised-button: white, + focused-button: $dark-focused, + selected-button: map_get($mat-grey, 300), + selected-disabled-button: map_get($mat-grey, 400), + disabled-button-toggle: map_get($mat-grey, 200), + unselected-chip: map_get($mat-grey, 300), + disabled-list-option: map_get($mat-grey, 200), +); + +// Foreground palette for light themes. +$mat-light-theme-foreground: ( + base: black, + divider: $dark-dividers, + dividers: $dark-dividers, + disabled: $dark-disabled-text, + disabled-button: rgba(black, 0.26), + disabled-text: $dark-disabled-text, + elevation: black, + hint-text: $dark-disabled-text, + secondary-text: $dark-secondary-text, + icon: rgba(black, 0.54), + icons: rgba(black, 0.54), + text: rgba(black, 0.87), + slider-min: rgba(black, 0.87), + slider-off: rgba(black, 0.26), + slider-off-active: rgba(black, 0.38), +); + +// Foreground palette for dark themes. +$mat-dark-theme-foreground: ( + // base: white, + // divider: $light-dividers, + // dividers: $light-dividers, + // disabled: $light-disabled-text, + // disabled-button: rgba(white, 0.3), + // disabled-text: $light-disabled-text, + // elevation: black, + // hint-text: $light-disabled-text, + // secondary-text: $light-secondary-text, + // icon: white, + // icons: white, + // text: black, + // slider-min: white, + // slider-off: rgba(white, 0.3), + // slider-off-active: rgba(white, 0.3), + base: black, + divider: $dark-dividers, + dividers: $dark-dividers, + disabled: $dark-disabled-text, + disabled-button: rgba(black, 0.26), + disabled-text: $dark-disabled-text, + elevation: black, + hint-text: $dark-disabled-text, + secondary-text: $dark-secondary-text, + icon: rgba(black, 0.54), + icons: rgba(black, 0.54), + text: rgba(black, 0.87), + slider-min: rgba(black, 0.87), + slider-off: rgba(black, 0.26), + slider-off-active: rgba(black, 0.38), +); + + + +// For a given hue in a palette, return the contrast color from the map of contrast palettes. +// @param $color-map +// @param $hue +@function mat-contrast($palette, $hue) { + @return map-get(map-get($palette, contrast), $hue); +} + + +// Creates a map of hues to colors for a theme. This is used to define a theme palette in terms +// of the Material Design hues. +// @param $color-map +// @param $primary +// @param $lighter +@function mat-palette($base-palette, $default: 500, $lighter: 100, $darker: 700, $text: $default) { + $result: map_merge($base-palette, ( + default: map-get($base-palette, $default), + lighter: map-get($base-palette, $lighter), + darker: map-get($base-palette, $darker), + text: map-get($base-palette, $text), + + default-contrast: mat-contrast($base-palette, $default), + lighter-contrast: mat-contrast($base-palette, $lighter), + darker-contrast: mat-contrast($base-palette, $darker) + )); + + // For each hue in the palette, add a "-contrast" color to the map. + @each $hue, $color in $base-palette { + $result: map_merge($result, ( + '#{$hue}-contrast': mat-contrast($base-palette, $hue) + )); + } + + @return $result; +} + + +// Gets a color from a theme palette (the output of mat-palette). +// The hue can be one of the standard values (500, A400, etc.), one of the three preconfigured +// hues (default, lighter, darker), or any of the aforementioned prefixed with "-contrast". +// +// @param $color-map The theme palette (output of mat-palette). +// @param $hue The hue from the palette to use. If this is a value between 0 and 1, it will +// be treated as opacity. +// @param $opacity The alpha channel value for the color. +@function mat-color($palette, $hue: default, $opacity: null) { + // If hueKey is a number between zero and one, then it actually contains an + // opacity value, so recall this function with the default hue and that given opacity. + @if type-of($hue) == number and $hue >= 0 and $hue <= 1 { + @return mat-color($palette, default, $hue); + } + + $color: map-get($palette, $hue); + + @if (type-of($color) != color) { + // If the $color resolved to something different from a color (e.g. a CSS variable), + // we can't apply the opacity anyway so we return the value as is, otherwise Sass can + // throw an error or output something invalid. + @return $color; + } + + @return rgba($color, if($opacity == null, opacity($color), $opacity)); +} + + +// Creates a container object for a light theme to be given to individual component theme mixins. +@function mat-light-theme($primary, $accent, $warn: mat-palette($mat-red)) { + @return ( + primary: $primary, + accent: $accent, + warn: $warn, + is-dark: false, + foreground: $mat-light-theme-foreground, + background: $mat-light-theme-background, + ); +} + + +// Creates a container object for a dark theme to be given to individual component theme mixins. +@function mat-dark-theme($primary, $accent, $warn: mat-palette($mat-red)) { + @return ( + primary: $primary, + accent: $accent, + warn: $warn, + is-dark: true, + foreground: $mat-dark-theme-foreground, + background: $mat-dark-theme-background, + ); +} + + + +$mat-ripple-color-opacity: 0.1; + +@mixin mat-ripple() { + + // The host element of an mat-ripple directive should always have a position of "absolute" or + // "relative" so that the ripples inside are correctly positioned relatively to the container. + .mat-ripple { + overflow: hidden; + + // By default, every ripple container should have position: relative in favor of creating an + // easy API for developers using the MatRipple directive. + position: relative; + } + + .mat-ripple.mat-ripple-unbounded { + overflow: visible; + } + + .mat-ripple-element { + position: absolute; + border-radius: 50%; + pointer-events: none; + + transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1); + transform: scale(0); + + // In high contrast mode the ripple is opaque, causing it to obstruct the content. + @include cdk-high-contrast { + display: none; + } + } +} + +/* Theme for the ripple elements.*/ +@mixin mat-ripple-theme($theme) { + $foreground: map_get($theme, foreground); + $foreground-base: map_get($foreground, base); + + .mat-ripple-element { + // If the ripple color is resolves to a color *type*, we can use it directly, otherwise + // (e.g. it resolves to a CSS variable) we fall back to using the color and setting an opacity. + @if (type-of($foreground-base) == color) { + background-color: rgba($foreground-base, $mat-ripple-color-opacity); + } + @else { + background-color: $foreground-base; + opacity: $mat-ripple-color-opacity; + } + } +} + + + +// Utility for fetching a nested value from a typography config. +@function _mat-get-type-value($config, $level, $name) { + @return map-get(map-get($config, $level), $name); +} + +// Gets the font size for a level inside a typography config. +@function mat-font-size($config, $level) { + @return _mat-get-type-value($config, $level, font-size); +} + +// Gets the line height for a level inside a typography config. +@function mat-line-height($config, $level) { + @return _mat-get-type-value($config, $level, line-height); +} + +// Gets the font weight for a level inside a typography config. +@function mat-font-weight($config, $level) { + @return _mat-get-type-value($config, $level, font-weight); +} + +// Gets the letter spacing for a level inside a typography config. +@function mat-letter-spacing($config, $level) { + @return _mat-get-type-value($config, $level, letter-spacing); +} + +// Gets the font-family from a typography config and removes the quotes around it. +@function mat-font-family($config, $level: null) { + $font-family: map-get($config, font-family); + + @if $level != null { + $font-family: _mat-get-type-value($config, $level, font-family); + } + + // Guard against unquoting non-string values, because it's deprecated. + @return if(type-of($font-family) == string, unquote($font-family), $font-family); +} + +// Outputs the shorthand `font` CSS property, based on a set of typography values. Falls back to +// the individual properties if a value that isn't allowed in the shorthand is passed in. +@mixin mat-typography-font-shorthand($font-size, $font-weight, $line-height, $font-family) { + // If any of the values are set to `inherit`, we can't use the shorthand + // so we fall back to passing in the individual properties. + @if ($font-size == inherit or + $font-weight == inherit or + $line-height == inherit or + $font-family == inherit or + $font-size == null or + $font-weight == null or + $line-height == null or + $font-family == null) { + + font-size: $font-size; + font-weight: $font-weight; + line-height: $line-height; + font-family: $font-family; + } + @else { + // Otherwise use the shorthand `font`, because it's the least amount of bytes. Note + // that we need to use interpolation for `font-size/line-height` in order to prevent + // Sass from dividing the two values. + font: $font-weight #{$font-size}/#{$line-height} $font-family; + } +} + +// Converts a typography level into CSS styles. +@mixin mat-typography-level-to-styles($config, $level) { + $font-size: mat-font-size($config, $level); + $font-weight: mat-font-weight($config, $level); + $line-height: mat-line-height($config, $level); + $font-family: mat-font-family($config, $level); + + @include mat-typography-font-shorthand($font-size, $font-weight, $line-height, $font-family); + letter-spacing: mat-letter-spacing($config, $level); +} + + +@mixin mat-option-theme($theme) { + $foreground: map-get($theme, foreground); + $background: map-get($theme, background); + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + + .mat-option { + color: mat-color($foreground, text); + + &:hover:not(.mat-option-disabled), + &:focus:not(.mat-option-disabled) { + background: mat-color($background, hover); + } + + // In multiple mode there is a checkbox to show that the option is selected. + &.mat-selected:not(.mat-option-multiple):not(.mat-option-disabled) { + background: mat-color($background, hover); + } + + &.mat-active { + background: mat-color($background, hover); + color: mat-color($foreground, text); + } + + &.mat-option-disabled { + color: mat-color($foreground, hint-text); + } + } + + .mat-primary .mat-option.mat-selected:not(.mat-option-disabled) { + color: mat-color($primary, text); + } + + .mat-accent .mat-option.mat-selected:not(.mat-option-disabled) { + color: mat-color($accent, text); + } + + .mat-warn .mat-option.mat-selected:not(.mat-option-disabled) { + color: mat-color($warn, text); + } +} + +@mixin mat-option-typography($config) { + .mat-option { + font: { + family: mat-font-family($config); + size: mat-font-size($config, subheading-2); + } + } +} + + + + + +@mixin mat-optgroup-theme($theme) { + $foreground: map-get($theme, foreground); + + .mat-optgroup-label { + color: mat-color($foreground, secondary-text); + } + + .mat-optgroup-disabled .mat-optgroup-label { + color: mat-color($foreground, hint-text); + } +} + +@mixin mat-optgroup-typography($config) { + .mat-optgroup-label { + @include mat-typography-level-to-styles($config, body-2); + } +} + + + +@mixin mat-pseudo-checkbox-theme($theme) { + $is-dark-theme: map-get($theme, is-dark); + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + + // NOTE(traviskaufman): While the spec calls for translucent blacks/whites for disabled colors, + // this does not work well with elements layered on top of one another. To get around this we + // blend the colors together based on the base color and the theme background. + $white-30pct-opacity-on-dark: #686868; + $black-26pct-opacity-on-light: #b0b0b0; + $disabled-color: if($is-dark-theme, $white-30pct-opacity-on-dark, $black-26pct-opacity-on-light); + $colored-box-selector: '.mat-pseudo-checkbox-checked, .mat-pseudo-checkbox-indeterminate'; + + .mat-pseudo-checkbox { + color: mat-color(map-get($theme, foreground), secondary-text); + + &::after { + color: mat-color($background, background); + } + } + + .mat-pseudo-checkbox-disabled { + color: $disabled-color; + } + + .mat-primary .mat-pseudo-checkbox-checked, + .mat-primary .mat-pseudo-checkbox-indeterminate { + background: mat-color(map-get($theme, primary)); + } + + // Default to the accent color. Note that the pseudo checkboxes are meant to inherit the + // theme from their parent, rather than implementing their own theming, which is why we + // don't attach to the `mat-*` classes. Also note that this needs to be below `.mat-primary` + // in order to allow for the color to be overwritten if the checkbox is inside a parent that + // has `mat-accent` and is placed inside another parent that has `mat-primary`. + .mat-pseudo-checkbox-checked, + .mat-pseudo-checkbox-indeterminate, + .mat-accent .mat-pseudo-checkbox-checked, + .mat-accent .mat-pseudo-checkbox-indeterminate { + background: mat-color(map-get($theme, accent)); + } + + .mat-warn .mat-pseudo-checkbox-checked, + .mat-warn .mat-pseudo-checkbox-indeterminate { + background: mat-color(map-get($theme, warn)); + } + + .mat-pseudo-checkbox-checked, + .mat-pseudo-checkbox-indeterminate { + &.mat-pseudo-checkbox-disabled { + background: $disabled-color; + } + } +} + + + +// Represents a typography level from the Material design spec. +@function mat-typography-level( + $font-size, + $line-height: $font-size, + $font-weight: 400, + $font-family: null, + $letter-spacing: null) { + + @return ( + font-size: $font-size, + line-height: $line-height, + font-weight: $font-weight, + font-family: $font-family, + letter-spacing: $letter-spacing + ); +} + +// Represents a collection of typography levels. +// Defaults come from https://material.io/guidelines/style/typography.html +// Note: The spec doesn't mention letter spacing. The values here come from +// eyeballing it until it looked exactly like the spec examples. +@function mat-typography-config( + $font-family: 'Roboto, "Helvetica Neue", sans-serif', + $display-4: mat-typography-level(112px, 112px, 300, $letter-spacing: -0.05em), + $display-3: mat-typography-level(56px, 56px, 400, $letter-spacing: -0.02em), + $display-2: mat-typography-level(45px, 48px, 400, $letter-spacing: -0.005em), + $display-1: mat-typography-level(34px, 40px, 400), + $headline: mat-typography-level(24px, 32px, 400), + $title: mat-typography-level(20px, 32px, 500), + $subheading-2: mat-typography-level(16px, 28px, 400), + $subheading-1: mat-typography-level(15px, 24px, 400), + $body-2: mat-typography-level(14px, 24px, 500), + $body-1: mat-typography-level(14px, 20px, 400), + $caption: mat-typography-level(12px, 20px, 400), + $button: mat-typography-level(14px, 14px, 500), + // Line-height must be unit-less fraction of the font-size. + $input: mat-typography-level(inherit, 1.125, 400) +) { + + // Declare an initial map with all of the levels. + $config: ( + display-4: $display-4, + display-3: $display-3, + display-2: $display-2, + display-1: $display-1, + headline: $headline, + title: $title, + subheading-2: $subheading-2, + subheading-1: $subheading-1, + body-2: $body-2, + body-1: $body-1, + caption: $caption, + button: $button, + input: $input, + ); + + // Loop through the levels and set the `font-family` of the ones that don't have one to the base. + // Note that Sass can't modify maps in place, which means that we need to merge and re-assign. + @each $key, $level in $config { + @if map-get($level, font-family) == null { + $new-level: map-merge($level, (font-family: $font-family)); + $config: map-merge($config, ($key: $new-level)); + } + } + + // Add the base font family to the config. + @return map-merge($config, (font-family: $font-family)); +} + +// Adds the base typography styles, based on a config. +@mixin mat-base-typography($config, $selector: '.mat-typography') { + .mat-h1, .mat-headline, #{$selector} h1 { + @include mat-typography-level-to-styles($config, headline); + margin: 0 0 16px; + } + + .mat-h2, .mat-title, #{$selector} h2 { + @include mat-typography-level-to-styles($config, title); + margin: 0 0 16px; + } + + .mat-h3, .mat-subheading-2, #{$selector} h3 { + @include mat-typography-level-to-styles($config, subheading-2); + margin: 0 0 16px; + } + + .mat-h4, .mat-subheading-1, #{$selector} h4 { + @include mat-typography-level-to-styles($config, subheading-1); + margin: 0 0 16px; + } + + // Note: the spec doesn't have anything that would correspond to h5 and h6, but we add these for + // consistency. The font sizes come from the Chrome user agent styles which have h5 at 0.83em + // and h6 at 0.67em. + .mat-h5, #{$selector} h5 { + @include mat-typography-font-shorthand( + // calc is used here to support css variables + calc(#{mat-font-size($config, body-1)} * 0.83), + mat-font-weight($config, body-1), + mat-line-height($config, body-1), + mat-font-family($config, body-1) + ); + + margin: 0 0 12px; + } + + .mat-h6, #{$selector} h6 { + @include mat-typography-font-shorthand( + // calc is used here to support css variables + calc(#{mat-font-size($config, body-1)} * 0.67), + mat-font-weight($config, body-1), + mat-line-height($config, body-1), + mat-font-family($config, body-1) + ); + + margin: 0 0 12px; + } + + .mat-body-strong, .mat-body-2 { + @include mat-typography-level-to-styles($config, body-2); + } + + .mat-body, .mat-body-1, #{$selector} { + @include mat-typography-level-to-styles($config, body-1); + + p { + margin: 0 0 12px; + } + } + + .mat-small, .mat-caption { + @include mat-typography-level-to-styles($config, caption); + } + + .mat-display-4, #{$selector} .mat-display-4 { + @include mat-typography-level-to-styles($config, display-4); + margin: 0 0 56px; + } + + .mat-display-3, #{$selector} .mat-display-3 { + @include mat-typography-level-to-styles($config, display-3); + margin: 0 0 64px; + } + + .mat-display-2, #{$selector} .mat-display-2 { + @include mat-typography-level-to-styles($config, display-2); + margin: 0 0 64px; + } + + .mat-display-1, #{$selector} .mat-display-1 { + @include mat-typography-level-to-styles($config, display-1); + margin: 0 0 64px; + } +} + + + + +@mixin mat-autocomplete-theme($theme) { + $foreground: map-get($theme, foreground); + $background: map-get($theme, background); + + .mat-autocomplete-panel { + @include _mat-theme-overridable-elevation(4, $theme); + background: mat-color($background, card); + color: mat-color($foreground, text); + + // Selected options in autocompletes should not be gray, but we + // only want to override the background for selected options if + // they are *not* in hover or focus state. This change has to be + // made here because base option styles are shared between the + // autocomplete and the select. + .mat-option.mat-selected:not(.mat-active):not(:hover) { + background: mat-color($background, card); + + &:not(.mat-option-disabled) { + color: mat-color($foreground, text); + } + } + } + +} + +@mixin mat-autocomplete-typography($config) { } + +// This contains all of the styles for the badge +// rather than just the color/theme because of +// no style sheet support for directives. + + + + + +$mat-badge-font-size: 12px; +$mat-badge-font-weight: 600; +$mat-badge-default-size: 22px !default; +$mat-badge-small-size: $mat-badge-default-size - 6; +$mat-badge-large-size: $mat-badge-default-size + 6; + +// Mixin for building offset given different sizes +@mixin _mat-badge-size($size) { + .mat-badge-content { + width: $size; + height: $size; + line-height: $size; + } + + &.mat-badge-above { + .mat-badge-content { + top: -$size / 2; + } + } + + &.mat-badge-below { + .mat-badge-content { + bottom: -$size / 2; + } + } + + &.mat-badge-before { + .mat-badge-content { + left: -$size; + } + } + + [dir='rtl'] &.mat-badge-before { + .mat-badge-content { + left: auto; + right: -$size; + } + } + + &.mat-badge-after { + .mat-badge-content { + right: -$size; + } + } + + [dir='rtl'] &.mat-badge-after { + .mat-badge-content { + right: auto; + left: -$size; + } + } + + &.mat-badge-overlap { + &.mat-badge-before { + .mat-badge-content { + left: -$size / 2; + } + } + + [dir='rtl'] &.mat-badge-before { + .mat-badge-content { + left: auto; + right: -$size / 2; + } + } + + &.mat-badge-after { + .mat-badge-content { + right: -$size / 2; + } + } + + [dir='rtl'] &.mat-badge-after { + .mat-badge-content { + right: auto; + left: -$size / 2; + } + } + } +} + +@mixin mat-badge-theme($theme) { + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $primary: map-get($theme, primary); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-badge-content { + color: mat-color($primary, default-contrast); + background: mat-color($primary); + + @include cdk-high-contrast { + outline: solid 1px; + border-radius: 0; + } + } + + .mat-badge-accent { + .mat-badge-content { + background: mat-color($accent); + color: mat-color($accent, default-contrast); + } + } + + .mat-badge-warn { + .mat-badge-content { + color: mat-color($warn, default-contrast); + background: mat-color($warn); + } + } + + .mat-badge { + position: relative; + } + + .mat-badge-hidden { + .mat-badge-content { + display: none; + } + } + + .mat-badge-disabled { + .mat-badge-content { + $app-background: mat-color($background, 'background'); + $badge-color: mat-color($foreground, disabled-button); + + // The disabled color usually has some kind of opacity, but because the badge is overlayed + // on top of something else, it won't look good if it's opaque. If it is a color *type*, + // we convert it into a solid color by taking the opacity from the rgba value and using + // the value to determine the percentage of the background to put into foreground when + // mixing the colors together. + @if (type-of($badge-color) == color and type-of($app-background) == color) { + $badge-opacity: opacity($badge-color); + background: mix($app-background, rgba($badge-color, 1), (1 - $badge-opacity) * 100%); + } + @else { + background: $badge-color; + } + + color: mat-color($foreground, disabled-text); + } + } + + .mat-badge-content { + position: absolute; + text-align: center; + display: inline-block; + border-radius: 50%; + transition: transform 200ms ease-in-out; + transform: scale(0.6); + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + pointer-events: none; + } + + .ng-animate-disabled .mat-badge-content, + .mat-badge-content._mat-animation-noopable { + transition: none; + } + + // The active class is added after the element is added + // so it can animate scale to default + .mat-badge-content.mat-badge-active { + // Scale to `none` instead of `1` to avoid blurry text in some browsers. + transform: none; + } + + .mat-badge-small { + @include _mat-badge-size($mat-badge-small-size); + } + .mat-badge-medium { + @include _mat-badge-size($mat-badge-default-size); + } + .mat-badge-large { + @include _mat-badge-size($mat-badge-large-size); + } +} + +@mixin mat-badge-typography($config) { + .mat-badge-content { + font-weight: $mat-badge-font-weight; + font-size: $mat-badge-font-size; + font-family: mat-font-family($config); + } + + .mat-badge-small .mat-badge-content { + // Set the font size to 75% of the original. + font-size: $mat-badge-font-size * 0.75; + } + + .mat-badge-large .mat-badge-content { + font-size: $mat-badge-font-size * 2; + } +} + + + + + +@mixin mat-bottom-sheet-theme($theme) { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-bottom-sheet-container { + @include _mat-theme-elevation(16, $theme); + background: mat-color($background, dialog); + color: mat-color($foreground, text); + } +} + +@mixin mat-bottom-sheet-typography($config) { + .mat-bottom-sheet-container { + @include mat-typography-level-to-styles($config, body-1); + } +} + + + + + +$_mat-button-ripple-opacity: 0.1; + +// Applies a focus style to an mat-button element for each of the supported palettes. +@mixin _mat-button-focus-overlay-color($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + + &.mat-primary .mat-button-focus-overlay { + background-color: mat-color($primary); + } + + &.mat-accent .mat-button-focus-overlay { + background-color: mat-color($accent); + } + + &.mat-warn .mat-button-focus-overlay { + background-color: mat-color($warn); + } + + &[disabled] .mat-button-focus-overlay { + background-color: transparent; + } +} + +// Applies the background color for a ripple. If the value provided is not a Sass color, +// we assume that we've been given a CSS variable. Since we can't perform alpha-blending +// on a CSS variable, we instead add the opacity directly to the ripple element. +@mixin _mat-button-ripple-background($palette, $hue, $opacity) { + $background-color: mat-color($palette, $hue, $opacity); + background-color: $background-color; + @if (type-of($background-color) != color) { + opacity: $opacity; + } +} + +@mixin _mat-button-ripple-color($theme, $hue, $opacity: $_mat-button-ripple-opacity) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + + &.mat-primary .mat-ripple-element { + @include _mat-button-ripple-background($primary, $hue, $opacity); + } + + &.mat-accent .mat-ripple-element { + @include _mat-button-ripple-background($accent, $hue, $opacity); + } + + &.mat-warn .mat-ripple-element { + @include _mat-button-ripple-background($warn, $hue, $opacity); + } +} + +// Applies a property to an mat-button element for each of the supported palettes. +@mixin _mat-button-theme-property($theme, $property, $hue) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + &.mat-primary { + #{$property}: mat-color($primary, $hue); + } + &.mat-accent { + #{$property}: mat-color($accent, $hue); + } + &.mat-warn { + #{$property}: mat-color($warn, $hue); + } + + &.mat-primary, &.mat-accent, &.mat-warn, &[disabled] { + &[disabled] { + $palette: if($property == 'color', $foreground, $background); + #{$property}: mat-color($palette, disabled-button); + } + } +} + +@mixin mat-button-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-button, .mat-icon-button, .mat-stroked-button { + // Buttons without a background color should inherit the font color. This is necessary to + // ensure that the button is readable on custom background colors. It's wrong to always assume + // that those buttons are always placed inside of containers with the default background + // color of the theme (e.g. themed toolbars). + color: inherit; + background: transparent; + + @include _mat-button-theme-property($theme, 'color', text); + @include _mat-button-focus-overlay-color($theme); + + // Setup the ripple color to be based on the text color. This ensures that the ripples + // are matching with the current theme palette and are in contrast to the background color + // (e.g in themed toolbars). + .mat-ripple-element { + opacity: $_mat-button-ripple-opacity; + background-color: currentColor; + } + } + + .mat-button-focus-overlay { + background: map_get($foreground, base); + } + + // Note: this needs a bit extra specificity, because we're not guaranteed the inclusion + // order of the theme styles and the button reset may end up resetting this as well. + .mat-stroked-button:not([disabled]) { + border-color: mat-color($foreground, divider); + } + + .mat-flat-button, .mat-raised-button, .mat-fab, .mat-mini-fab { + // Default font and background color when not using any color palette. + color: mat-color($foreground, text); + background-color: mat-color($background, raised-button); + + @include _mat-button-theme-property($theme, 'color', default-contrast); + @include _mat-button-theme-property($theme, 'background-color', default); + @include _mat-button-ripple-color($theme, default-contrast); + } + + .mat-stroked-button, .mat-flat-button { + @include _mat-theme-overridable-elevation(0, $theme); + } + + .mat-raised-button { + @include _mat-theme-overridable-elevation(2, $theme); + + &:not([disabled]):active { + @include _mat-theme-overridable-elevation(8, $theme); + } + + &[disabled] { + @include _mat-theme-overridable-elevation(0, $theme); + } + } + + .mat-fab, .mat-mini-fab { + @include _mat-theme-overridable-elevation(6, $theme); + + &:not([disabled]):active { + @include _mat-theme-overridable-elevation(12, $theme); + } + + &[disabled] { + @include _mat-theme-overridable-elevation(0, $theme); + } + } +} + +@mixin mat-button-typography($config) { + .mat-button, .mat-raised-button, .mat-icon-button, .mat-stroked-button, + .mat-flat-button, .mat-fab, .mat-mini-fab { + font: { + family: mat-font-family($config, button); + size: mat-font-size($config, button); + weight: mat-font-weight($config, button); + } + } +} + + + + + + +@mixin mat-button-toggle-theme($theme) { + $foreground: map-get($theme, foreground); + $background: map-get($theme, background); + $divider-color: mat-color($foreground, divider); + + .mat-button-toggle-standalone, + .mat-button-toggle-group { + @include _mat-theme-elevation(2, $theme); + } + + .mat-button-toggle-standalone.mat-button-toggle-appearance-standard, + .mat-button-toggle-group-appearance-standard { + box-shadow: none; + } + + .mat-button-toggle { + color: mat-color($foreground, hint-text); + + .mat-button-toggle-focus-overlay { + background-color: mat-color($background, focused-button); + } + } + + .mat-button-toggle-appearance-standard { + color: mat-color($foreground, text); + background: mat-color($background, card); + + .mat-button-toggle-focus-overlay { + background-color: mat-color($background, focused-button, 1); + } + } + + .mat-button-toggle-group-appearance-standard .mat-button-toggle + .mat-button-toggle { + border-left: solid 1px $divider-color; + } + + [dir='rtl'] .mat-button-toggle-group-appearance-standard .mat-button-toggle + .mat-button-toggle { + border-left: none; + border-right: solid 1px $divider-color; + } + + .mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical { + .mat-button-toggle + .mat-button-toggle { + border-left: none; + border-right: none; + border-top: solid 1px $divider-color; + } + } + + .mat-button-toggle-checked { + background-color: mat-color($background, selected-button); + color: mat-color($foreground, secondary-text); + + &.mat-button-toggle-appearance-standard { + color: mat-color($foreground, text); + } + } + + .mat-button-toggle-disabled { + color: mat-color($foreground, disabled-button); + background-color: mat-color($background, disabled-button-toggle); + + &.mat-button-toggle-appearance-standard { + background: mat-color($background, card); + } + + &.mat-button-toggle-checked { + background-color: mat-color($background, selected-disabled-button); + } + } + + .mat-button-toggle-standalone.mat-button-toggle-appearance-standard, + .mat-button-toggle-group-appearance-standard { + border: solid 1px $divider-color; + } +} + +@mixin mat-button-toggle-typography($config) { + .mat-button-toggle { + font-family: mat-font-family($config); + } +} + + + + + + + +@mixin mat-card-theme($theme) { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-card { + @include _mat-theme-overridable-elevation(1, $theme); + background: mat-color($background, card); + color: mat-color($foreground, text); + + // Needs extra specificity to be able to override the elevation selectors. + &.mat-card-flat { + @include _mat-theme-overridable-elevation(0, $theme); + } + } + + .mat-card-subtitle { + color: mat-color($foreground, secondary-text); + } +} + +@mixin mat-card-typography($config) { + .mat-card { + font-family: mat-font-family($config); + } + + .mat-card-title { + font: { + size: mat-font-size($config, headline); + weight: mat-font-weight($config, title); + } + } + + .mat-card-header .mat-card-title { + font-size: mat-font-size($config, title); + } + + .mat-card-subtitle, + .mat-card-content { + font-size: mat-font-size($config, body-1); + } +} + + + + + + +@mixin mat-checkbox-theme($theme) { + $is-dark-theme: map-get($theme, is-dark); + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + + // The color of the checkbox's checkmark / mixedmark. + $checkbox-mark-color: mat-color($background, background); + + // NOTE(traviskaufman): While the spec calls for translucent blacks/whites for disabled colors, + // this does not work well with elements layered on top of one another. To get around this we + // blend the colors together based on the base color and the theme background. + $white-30pct-opacity-on-dark: #686868; + $black-26pct-opacity-on-light: #b0b0b0; + $disabled-color: if($is-dark-theme, $white-30pct-opacity-on-dark, $black-26pct-opacity-on-light); + + .mat-checkbox-frame { + border-color: mat-color($foreground, secondary-text); + } + + .mat-checkbox-checkmark { + fill: $checkbox-mark-color; + } + + .mat-checkbox-checkmark-path { + // !important is needed here because a stroke must be set as an + // attribute on the SVG in order for line animation to work properly. + stroke: $checkbox-mark-color !important; + + @include cdk-high-contrast(black-on-white) { + // Having the one above be !important ends up overriding the browser's automatic + // color inversion so we need to re-invert it ourselves for black-on-white. + stroke: #000 !important; + } + } + + .mat-checkbox-mixedmark { + background-color: $checkbox-mark-color; + } + + .mat-checkbox-indeterminate, .mat-checkbox-checked { + &.mat-primary .mat-checkbox-background { + background-color: mat-color($primary); + } + + &.mat-accent .mat-checkbox-background { + background-color: mat-color($accent); + } + + &.mat-warn .mat-checkbox-background { + background-color: mat-color($warn); + } + } + + .mat-checkbox-disabled { + &.mat-checkbox-checked, + &.mat-checkbox-indeterminate { + .mat-checkbox-background { + background-color: $disabled-color; + } + } + + &:not(.mat-checkbox-checked) { + .mat-checkbox-frame { + border-color: $disabled-color; + } + } + + .mat-checkbox-label { + color: mat-color($foreground, secondary-text); + } + + @include cdk-high-contrast { + opacity: 0.5; + } + } + + // This one is moved down here so it can target both + // the theme colors and the disabled state. + @include cdk-high-contrast { + .mat-checkbox-background { + // Needs to be removed because it hides the checkbox outline. + background: none; + } + } + + // Switch this to a solid color since we're using `opacity` + // to control how opaque the ripple should be. + .mat-checkbox .mat-ripple-element { + background-color: map_get(map-get($theme, foreground), base); + } + + .mat-checkbox-checked:not(.mat-checkbox-disabled), + .mat-checkbox:active:not(.mat-checkbox-disabled) { + &.mat-primary .mat-ripple-element { + background: mat-color($primary); + } + + &.mat-accent .mat-ripple-element { + background: mat-color($accent); + } + + &.mat-warn .mat-ripple-element { + background: mat-color($warn); + } + } +} + +@mixin mat-checkbox-typography($config) { + .mat-checkbox { + font-family: mat-font-family($config); + } + + // TODO(kara): Remove this style when fixing vertical baseline + .mat-checkbox-layout .mat-checkbox-label { + line-height: mat-line-height($config, body-2); + } +} + + + + + + +$mat-chip-remove-font-size: 18px; + +@mixin mat-chips-color($foreground, $background) { + background-color: $background; + color: $foreground; + + .mat-chip-remove { + color: $foreground; + opacity: 0.4; + } +} + +@mixin mat-chips-theme-color($palette) { + @include mat-chips-color(mat-color($palette, default-contrast), mat-color($palette)); + + .mat-ripple-element { + background: mat-color($palette, default-contrast, 0.1); + } +} + +@mixin mat-chips-theme($theme) { + $is-dark-theme: map-get($theme, is-dark); + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + $unselected-background: mat-color($background, unselected-chip); + $unselected-foreground: mat-color($foreground, text); + + .mat-chip.mat-standard-chip { + @include mat-chips-color($unselected-foreground, $unselected-background); + + &:not(.mat-chip-disabled) { + &:active { + @include _mat-theme-elevation(3, $theme); + } + + .mat-chip-remove:hover { + opacity: 0.54; + } + } + + &.mat-chip-disabled { + opacity: 0.4; + } + + &::after { + background: map_get($foreground, base); + } + } + + .mat-chip.mat-standard-chip.mat-chip-selected { + &.mat-primary { + @include mat-chips-theme-color($primary); + } + + &.mat-warn { + @include mat-chips-theme-color($warn); + } + + &.mat-accent { + @include mat-chips-theme-color($accent); + } + } +} + +@mixin mat-chips-typography($config) { + .mat-chip { + font-size: mat-font-size($config, body-2); + font-weight: mat-font-weight($config, body-2); + + .mat-chip-trailing-icon.mat-icon, + .mat-chip-remove.mat-icon { + font-size: $mat-chip-remove-font-size; + } + } +} + + + + + +@mixin mat-table-theme($theme) { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-table { + background: mat-color($background, 'card'); + } + + .mat-table thead, .mat-table tbody, .mat-table tfoot, + mat-header-row, mat-row, mat-footer-row, + [mat-header-row], [mat-row], [mat-footer-row], + .mat-table-sticky { + background: inherit; + } + + mat-row, mat-header-row, mat-footer-row, + th.mat-header-cell, td.mat-cell, td.mat-footer-cell { + border-bottom-color: mat-color($foreground, divider); + } + + .mat-header-cell { + color: mat-color($foreground, secondary-text); + } + + .mat-cell, .mat-footer-cell { + color: mat-color($foreground, text); + } +} + +@mixin mat-table-typography($config) { + .mat-table { + font-family: mat-font-family($config); + } + + .mat-header-cell { + font-size: mat-font-size($config, caption); + font-weight: mat-font-weight($config, body-2); + } + + .mat-cell, .mat-footer-cell { + font-size: mat-font-size($config, body-1); + } +} + + + + + + + +$mat-datepicker-selected-today-box-shadow-width: 1px; +$mat-datepicker-selected-fade-amount: 0.6; +$mat-datepicker-today-fade-amount: 0.2; +$mat-calendar-body-font-size: 13px !default; +$mat-calendar-weekday-table-font-size: 11px !default; + +@mixin _mat-datepicker-color($palette) { + .mat-calendar-body-selected { + background-color: mat-color($palette); + color: mat-color($palette, default-contrast); + } + + .mat-calendar-body-disabled > .mat-calendar-body-selected { + $background: mat-color($palette); + + @if (type-of($background) == color) { + background-color: fade-out($background, $mat-datepicker-selected-fade-amount); + } + @else { + // If we couldn't resolve to background to a color (e.g. it's a CSS variable), + // fall back to fading the content out via `opacity`. + opacity: $mat-datepicker-today-fade-amount; + } + } + + .mat-calendar-body-today.mat-calendar-body-selected { + box-shadow: inset 0 0 0 $mat-datepicker-selected-today-box-shadow-width + mat-color($palette, default-contrast); + } +} + +@mixin mat-datepicker-theme($theme) { + $foreground: map-get($theme, foreground); + $background: map-get($theme, background); + + .mat-calendar-arrow { + border-top-color: mat-color($foreground, icon); + } + + // The prev/next buttons need a bit more specificity to + // avoid being overwritten by the .mat-icon-button. + .mat-datepicker-toggle, + .mat-datepicker-content .mat-calendar-next-button, + .mat-datepicker-content .mat-calendar-previous-button { + color: mat-color($foreground, icon); + } + + .mat-calendar-table-header { + color: mat-color($foreground, hint-text); + } + + .mat-calendar-table-header-divider::after { + background: mat-color($foreground, divider); + } + + .mat-calendar-body-label { + color: mat-color($foreground, secondary-text); + } + + .mat-calendar-body-cell-content { + color: mat-color($foreground, text); + border-color: transparent; + } + + .mat-calendar-body-disabled > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected) { + color: mat-color($foreground, disabled-text); + } + + .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover, + .cdk-keyboard-focused .mat-calendar-body-active, + .cdk-program-focused .mat-calendar-body-active { + & > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected) { + background-color: mat-color($background, hover); + } + } + + .mat-calendar-body-today:not(.mat-calendar-body-selected) { + // Note: though it's not text, the border is a hint about the fact that this is today's date, + // so we use the hint color. + border-color: mat-color($foreground, hint-text); + } + + .mat-calendar-body-disabled > .mat-calendar-body-today:not(.mat-calendar-body-selected) { + $color: mat-color($foreground, hint-text); + + @if (type-of($color) == color) { + border-color: fade-out($color, $mat-datepicker-today-fade-amount); + } + @else { + // If the color didn't resolve to a color value, but something like a CSS variable, we can't + // fade it out so we fall back to reducing the element opacity. Note that we don't use the + // $mat-datepicker-today-fade-amount, because hint text usually has some opacity applied + // to it already and we don't want them to stack on top of each other. + opacity: 0.5; + } + } + + @include _mat-datepicker-color(map-get($theme, primary)); + + .mat-datepicker-content { + @include _mat-theme-elevation(4, $theme); + background-color: mat-color($background, card); + color: mat-color($foreground, text); + + &.mat-accent { + @include _mat-datepicker-color(map-get($theme, accent)); + } + + &.mat-warn { + @include _mat-datepicker-color(map-get($theme, warn)); + } + } + + .mat-datepicker-content-touch { + @include _mat-theme-elevation(0, $theme); + } + + .mat-datepicker-toggle-active { + color: mat-color(map-get($theme, primary), text); + + &.mat-accent { + color: mat-color(map-get($theme, accent), text); + } + + &.mat-warn { + color: mat-color(map-get($theme, warn), text); + } + } +} + +@mixin mat-datepicker-typography($config) { + .mat-calendar { + font-family: mat-font-family($config); + } + + .mat-calendar-body { + font-size: $mat-calendar-body-font-size; + } + + .mat-calendar-body-label, + .mat-calendar-period-button { + font: { + size: mat-font-size($config, button); + weight: mat-font-weight($config, button); + } + } + + .mat-calendar-table-header th { + font: { + size: $mat-calendar-weekday-table-font-size; + weight: mat-font-weight($config, body-1); + } + } +} + + + + + + + +@mixin mat-dialog-theme($theme) { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-dialog-container { + @include _mat-theme-elevation(24, $theme); + background: mat-color($background, dialog); + color: mat-color($foreground, text); + } +} + +@mixin mat-dialog-typography($config) { + .mat-dialog-title { + @include mat-typography-level-to-styles($config, title); + } +} + + + + + + +@mixin mat-expansion-panel-theme($theme) { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-expansion-panel { + @include _mat-theme-overridable-elevation(2, $theme); + background: mat-color($background, card); + color: mat-color($foreground, text); + } + + .mat-action-row { + border-top-color: mat-color($foreground, divider); + } + + .mat-expansion-panel { + & .mat-expansion-panel-header.cdk-keyboard-focused, + & .mat-expansion-panel-header.cdk-program-focused, + &:not(.mat-expanded) .mat-expansion-panel-header:hover { + &:not([aria-disabled='true']) { + background: mat-color($background, hover); + } + } + } + + // Disable the hover on touch devices since it can appear like it is stuck. We can't use + // `@media (hover)` above, because the desktop support browser support isn't great. + @media (hover: none) { + .mat-expansion-panel:not(.mat-expanded):not([aria-disabled='true']) + .mat-expansion-panel-header:hover { + background: mat-color($background, card); + } + } + + .mat-expansion-panel-header-title { + color: mat-color($foreground, text); + } + + .mat-expansion-panel-header-description, + .mat-expansion-indicator::after { + color: mat-color($foreground, secondary-text); + } + + .mat-expansion-panel-header[aria-disabled='true'] { + color: mat-color($foreground, disabled-button); + + .mat-expansion-panel-header-title, + .mat-expansion-panel-header-description { + color: inherit; + } + } +} + +@mixin mat-expansion-panel-typography($config) { + .mat-expansion-panel-header { + font: { + family: mat-font-family($config, subheading-1); + size: mat-font-size($config, subheading-1); + weight: mat-font-weight($config, subheading-1); + } + } + + .mat-expansion-panel-content { + @include mat-typography-level-to-styles($config, body-1); + } +} + + + + +// This mixin will ensure that lines that overflow the container will hide the overflow and +// truncate neatly with an ellipsis. +@mixin mat-truncate-line() { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +// Mixin to provide all mat-line styles, changing secondary font size based on whether the list +// is in dense mode. +@mixin mat-line-base($secondary-font-size) { + .mat-line { + @include mat-truncate-line(); + display: block; + box-sizing: border-box; + + // all lines but the top line should have smaller text + &:nth-child(n+2) { + font-size: $secondary-font-size; + } + } +} + +// This mixin normalizes default element styles, e.g. font weight for heading text. +@mixin mat-normalize-text() { + & > * { + margin: 0; + padding: 0; + font-weight: normal; + font-size: inherit; + } +} + +// This mixin provides base styles for the wrapper around mat-line elements in a list. +@mixin mat-line-wrapper-base() { + @include mat-normalize-text(); + + display: flex; + flex-direction: column; + width: 100%; + box-sizing: border-box; + overflow: hidden; + + // Must remove wrapper when lines are empty or it takes up horizontal + // space and pushes other elements to the right. + &:empty { + display: none; + } +} + + + +// Include this empty mixin for consistency with the other components. +@mixin mat-grid-list-theme($theme) { } + +@mixin mat-grid-list-typography($config) { + .mat-grid-tile-header, + .mat-grid-tile-footer { + @include mat-line-base(mat-font-size($config, caption)); + font-size: mat-font-size($config, body-1); + } +} + + + + +// Include this empty mixin for consistency with the other components. +@mixin mat-icon-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-icon { + &.mat-primary { + color: mat-color($primary, text); + } + + &.mat-accent { + color: mat-color($accent, text); + } + + &.mat-warn { + color: mat-color($warn, text); + } + } +} + +@mixin mat-icon-typography($config) { } + + + + + +// Renders a gradient for showing the dashed line when the input is disabled. +// Unlike using a border, a gradient allows us to adjust the spacing of the dotted line +// to match the Material Design spec. +@mixin mat-control-disabled-underline($color) { + background-image: linear-gradient(to right, $color 0%, $color 33%, transparent 0%); + background-size: 4px 100%; + background-repeat: repeat-x; +} + +// Figures out the color of the placeholder for a form control. +// Used primarily to prevent the various form controls from +// becoming out of sync since these colors aren't in a palette. +@function _mat-control-placeholder-color($theme) { + $foreground: map-get($theme, foreground); + $is-dark-theme: map-get($theme, is-dark); + @return mat-color($foreground, secondary-text, if($is-dark-theme, 0.5, 0.42)); +} + + +/* stylelint-disable material/no-prefixes */ +@mixin user-select($value) { + -webkit-user-select: $value; + -moz-user-select: $value; + -ms-user-select: $value; + user-select: $value; +} + +@mixin input-placeholder { + &::placeholder { + @content; + } + + &::-moz-placeholder { + @content; + } + + &::-webkit-input-placeholder { + @content; + } + + &:-ms-input-placeholder { + @content; + } +} + +@mixin cursor-grab { + cursor: -webkit-grab; + cursor: grab; +} + +@mixin cursor-grabbing { + cursor: -webkit-grabbing; + cursor: grabbing; +} + +@mixin backface-visibility($value) { + -webkit-backface-visibility: $value; + backface-visibility: $value; +} +/* stylelint-enable */ + + + +@mixin mat-input-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $foreground: map-get($theme, foreground); + + .mat-form-field-type-mat-native-select .mat-form-field-infix::after { + color: mat-color($foreground, secondary-text); + } + + .mat-input-element:disabled, + .mat-form-field-type-mat-native-select.mat-form-field-disabled .mat-form-field-infix::after { + color: mat-color($foreground, disabled-text); + } + + .mat-input-element { + caret-color: mat-color($primary, text); + + @include input-placeholder { + color: _mat-control-placeholder-color($theme); + } + + // On dark themes we set the native `select` color to some shade of white, + // however the color propagates to all of the `option` elements, which are + // always on a white background inside the dropdown, causing them to blend in. + // Since we can't change background of the dropdown, we need to explicitly + // reset the color of the options to something dark. + @if (map-get($theme, is-dark)) { + option { + color: $dark-primary-text; + } + + option:disabled { + color: $dark-disabled-text; + } + } + } + + .mat-accent .mat-input-element { + caret-color: mat-color($accent, text); + } + + .mat-warn .mat-input-element, + .mat-form-field-invalid .mat-input-element { + caret-color: mat-color($warn, text); + } + + .mat-form-field-type-mat-native-select.mat-form-field-invalid .mat-form-field-infix::after { + color: mat-color($warn, text); + } +} + +@mixin mat-input-typography($config) { + // The unit-less line-height from the font config. + $line-height: mat-line-height($config, input); + + // The amount of space between the top of the line and the top of the actual text + // (as a fraction of the font-size). + $line-spacing: ($line-height - 1) / 2; + + // elements seem to have their height set slightly too large on Safari causing the text to + // be misaligned w.r.t. the placeholder. Adding this margin corrects it. + input.mat-input-element { + margin-top: -$line-spacing * 1em; + } +} + + + + + + + +@mixin mat-list-theme($theme) { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-list-base { + .mat-list-item { + color: mat-color($foreground, text); + } + + .mat-list-option { + color: mat-color($foreground, text); + } + + .mat-subheader { + color: mat-color($foreground, secondary-text); + } + } + + .mat-list-item-disabled { + background-color: mat-color($background, disabled-list-option); + } + + .mat-list-option, + .mat-nav-list .mat-list-item, + .mat-action-list .mat-list-item { + &:hover, &:focus { + background: mat-color($background, 'hover'); + } + } +} + +@mixin mat-list-typography($config) { + $font-family: mat-font-family($config); + + .mat-list-item { + font-family: $font-family; + } + + .mat-list-option { + font-family: $font-family; + } + + // Default list + .mat-list-base { + .mat-list-item { + font-size: mat-font-size($config, subheading-2); + @include mat-line-base(mat-font-size($config, body-1)); + } + + .mat-list-option { + font-size: mat-font-size($config, subheading-2); + @include mat-line-base(mat-font-size($config, body-1)); + } + + .mat-subheader { + font-family: mat-font-family($config, body-2); + font-size: mat-font-size($config, body-2); + font-weight: mat-font-weight($config, body-2); + } + } + + // Dense list + .mat-list-base[dense] { + .mat-list-item { + font-size: mat-font-size($config, caption); + @include mat-line-base(mat-font-size($config, caption)); + } + + .mat-list-option { + font-size: mat-font-size($config, caption); + @include mat-line-base(mat-font-size($config, caption)); + } + + .mat-subheader { + font-family: $font-family; + font-size: mat-font-size($config, caption); + font-weight: mat-font-weight($config, body-2); + } + } +} + + + + + + + +@mixin mat-menu-theme($theme) { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-menu-panel { + @include _mat-theme-overridable-elevation(4, $theme); + background: mat-color($background, 'card'); + } + + .mat-menu-item { + background: transparent; + color: mat-color($foreground, 'text'); + + &[disabled] { + &, &::after { + color: mat-color($foreground, 'disabled'); + } + } + } + + .mat-menu-item .mat-icon-no-color, + .mat-menu-item-submenu-trigger::after { + color: mat-color($foreground, 'icon'); + } + + .mat-menu-item:hover, + .mat-menu-item.cdk-program-focused, + .mat-menu-item.cdk-keyboard-focused, + .mat-menu-item-highlighted { + &:not([disabled]) { + background: mat-color($background, 'hover'); + } + } +} + +@mixin mat-menu-typography($config) { + .mat-menu-item { + font: { + family: mat-font-family($config, body-1); + size: mat-font-size($config, body-1); + weight: mat-font-weight($config, body-1); + } + } +} + + + + + + +@mixin mat-paginator-theme($theme) { + $foreground: map-get($theme, foreground); + $background: map-get($theme, background); + + .mat-paginator { + background: mat-color($background, 'card'); + } + + .mat-paginator, + .mat-paginator-page-size .mat-select-trigger { + color: mat-color($foreground, secondary-text); + } + + .mat-paginator-decrement, + .mat-paginator-increment { + border-top: 2px solid mat-color($foreground, 'icon'); + border-right: 2px solid mat-color($foreground, 'icon'); + } + + .mat-paginator-first, + .mat-paginator-last { + border-top: 2px solid mat-color($foreground, 'icon'); + } + + .mat-icon-button[disabled] { + .mat-paginator-decrement, + .mat-paginator-increment, + .mat-paginator-first, + .mat-paginator-last { + border-color: mat-color($foreground, 'disabled'); + } + } +} + +@mixin mat-paginator-typography($config) { + .mat-paginator, + .mat-paginator-page-size .mat-select-trigger { + font: { + family: mat-font-family($config, caption); + size: mat-font-size($config, caption); + } + } +} + + + + + +@mixin mat-progress-bar-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + + .mat-progress-bar-background { + fill: mat-color($primary, lighter); + } + + .mat-progress-bar-buffer { + background-color: mat-color($primary, lighter); + } + + .mat-progress-bar-fill::after { + background-color: mat-color($primary); + } + + .mat-progress-bar.mat-accent { + .mat-progress-bar-background { + fill: mat-color($accent, lighter); + } + + .mat-progress-bar-buffer { + background-color: mat-color($accent, lighter); + } + + .mat-progress-bar-fill::after { + background-color: mat-color($accent); + } + } + + .mat-progress-bar.mat-warn { + .mat-progress-bar-background { + fill: mat-color($warn, lighter); + } + + .mat-progress-bar-buffer { + background-color: mat-color($warn, lighter); + } + + .mat-progress-bar-fill::after { + background-color: mat-color($warn); + } + } +} + +@mixin mat-progress-bar-typography($config) { } + + + + + + +@mixin mat-progress-spinner-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + + .mat-progress-spinner, .mat-spinner { + circle { + stroke: mat-color($primary); + } + + &.mat-accent circle { + stroke: mat-color($accent); + } + + &.mat-warn circle { + stroke: mat-color($warn); + } + } +} + +@mixin mat-progress-spinner-typography($config) { } + + + + + +@mixin _mat-radio-color($palette) { + &.mat-radio-checked .mat-radio-outer-circle { + border-color: mat-color($palette); + } + + .mat-radio-inner-circle, + .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple), + &.mat-radio-checked .mat-radio-persistent-ripple, + &:active .mat-radio-persistent-ripple { + background-color: mat-color($palette); + } +} + +@mixin mat-radio-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-radio-outer-circle { + border-color: mat-color($foreground, secondary-text); + } + + .mat-radio-button { + &.mat-primary { + @include _mat-radio-color($primary); + } + + &.mat-accent { + @include _mat-radio-color($accent); + } + + &.mat-warn { + @include _mat-radio-color($warn); + } + + // This needs extra specificity, because the classes above are combined + // (e.g. `.mat-radio-button.mat-accent`) which increases their specificity a lot. + // TODO: consider making the selectors into descendants (`.mat-primary .mat-radio-button`). + &.mat-radio-disabled { + &.mat-radio-checked .mat-radio-outer-circle, + .mat-radio-outer-circle { + border-color: mat-color($foreground, disabled); + } + + .mat-radio-ripple .mat-ripple-element, + .mat-radio-inner-circle { + background-color: mat-color($foreground, disabled); + } + + .mat-radio-label-content { + color: mat-color($foreground, disabled); + } + } + + // Switch this to a solid color since we're using `opacity` + // to control how opaque the ripple should be. + .mat-ripple-element { + background-color: map_get($foreground, base); + } + } +} + +@mixin mat-radio-typography($config) { + .mat-radio-button { + font-family: mat-font-family($config); + } +} + + + + + + + + +@mixin mat-select-theme($theme) { + $foreground: map-get($theme, foreground); + $background: map-get($theme, background); + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + + .mat-select-value { + color: mat-color($foreground, text); + } + + .mat-select-placeholder { + color: _mat-control-placeholder-color($theme); + } + + .mat-select-disabled .mat-select-value { + color: mat-color($foreground, disabled-text); + } + + .mat-select-arrow { + color: mat-color($foreground, secondary-text); + } + + .mat-select-panel { + background: mat-color($background, card); + @include _mat-theme-overridable-elevation(4, $theme); + + .mat-option.mat-selected:not(.mat-option-multiple) { + background: mat-color($background, hover, 0.12); + } + } + + .mat-form-field { + &.mat-focused { + &.mat-primary .mat-select-arrow { + color: mat-color($primary, text); + } + + &.mat-accent .mat-select-arrow { + color: mat-color($accent, text); + } + + &.mat-warn .mat-select-arrow { + color: mat-color($warn, text); + } + } + + .mat-select.mat-select-invalid .mat-select-arrow { + color: mat-color($warn, text); + } + + .mat-select.mat-select-disabled .mat-select-arrow { + color: mat-color($foreground, disabled-text); + } + } +} + +@mixin mat-select-typography($config) { + // The unit-less line-height from the font config. + $line-height: mat-line-height($config, input); + + .mat-select { + font-family: mat-font-family($config); + } + + .mat-select-trigger { + height: $line-height * 1em; + } +} + + + + + + +@mixin mat-sidenav-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + $drawer-background-color: mat-color($background, dialog); + $drawer-container-background-color: mat-color($background, background); + $drawer-push-background-color: mat-color($background, dialog); + $drawer-side-border: solid 1px mat-color($foreground, divider); + + .mat-drawer-container { + background-color: $drawer-container-background-color; + color: mat-color($foreground, text); + } + + .mat-drawer { + background-color: $drawer-background-color; + color: mat-color($foreground, text); + + &.mat-drawer-push { + background-color: $drawer-push-background-color; + } + + &:not(.mat-drawer-side) { + // The elevation of z-16 is noted in the design specifications. + // See https://material.io/design/components/navigation-drawer.html + @include _mat-theme-elevation(16, $theme); + } + } + + .mat-drawer-side { + border-right: $drawer-side-border; + + &.mat-drawer-end { + border-left: $drawer-side-border; + border-right: none; + } + } + + [dir='rtl'] .mat-drawer-side { + border-left: $drawer-side-border; + border-right: none; + + &.mat-drawer-end { + border-left: none; + border-right: $drawer-side-border; + } + } + + .mat-drawer-backdrop.mat-drawer-shown { + $opacity: 0.6; + $backdrop-color: mat-color($background, card, $opacity); + + @if (type-of($backdrop-color) == color) { + // We use invert() here to have the darken the background color expected to be used. If the + // background is light, we use a dark backdrop. If the background is dark, + // we use a light backdrop. + background-color: invert($backdrop-color); + } + @else { + // If we couldn't resolve the backdrop color to a color value, fall back to using + // `opacity` to make it opaque since its end value could be a solid color. + background-color: $backdrop-color; + opacity: $opacity; + } + } +} + +@mixin mat-sidenav-typography($config) { } + + + + + + +@mixin _mat-slide-toggle-checked($palette, $thumb-checked-hue) { + &.mat-checked { + .mat-slide-toggle-thumb { + background-color: mat-color($palette, $thumb-checked-hue); + } + + .mat-slide-toggle-bar { + // Opacity is determined from the specs for the selection controls. + // See: https://material.io/design/components/selection-controls.html#specs + background-color: mat-color($palette, $thumb-checked-hue, 0.54); + } + + .mat-ripple-element { + // Set no opacity for the ripples because the ripple opacity will be adjusted dynamically + // based on the type of interaction with the slide-toggle (e.g. for hover, focus) + background-color: mat-color($palette, $thumb-checked-hue); + } + } +} + +@mixin mat-slide-toggle-theme($theme) { + $is-dark: map_get($theme, is-dark); + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + // Color hues are based on the specs which briefly show the hues that are applied to a switch. + // The 2018 specs no longer describe how dark switches should look like. Due to the lack of + // information for dark themed switches, we partially keep the old behavior that is based on + // the previous specifications. For the checked color we always use the `default` hue because + // that follows MDC and also makes it easier for people to create a custom theme without needing + // to specify each hue individually. + $thumb-unchecked-hue: if($is-dark, 400, 50); + $thumb-checked-hue: default; + + $bar-unchecked-color: mat-color($foreground, disabled); + $ripple-unchecked-color: mat-color($foreground, base); + + .mat-slide-toggle { + @include _mat-slide-toggle-checked($accent, $thumb-checked-hue); + + &.mat-primary { + @include _mat-slide-toggle-checked($primary, $thumb-checked-hue); + } + + &.mat-warn { + @include _mat-slide-toggle-checked($warn, $thumb-checked-hue); + } + + &:not(.mat-checked) .mat-ripple-element { + // Set no opacity for the ripples because the ripple opacity will be adjusted dynamically + // based on the type of interaction with the slide-toggle (e.g. for hover, focus) + background-color: $ripple-unchecked-color; + } + } + + .mat-slide-toggle-thumb { + @include _mat-theme-elevation(1, $theme); + background-color: mat-color($mat-grey, $thumb-unchecked-hue); + } + + .mat-slide-toggle-bar { + background-color: $bar-unchecked-color; + } +} + +@mixin mat-slide-toggle-typography($config) { + .mat-slide-toggle-content { + font-family: mat-font-family($config); + } +} + + + + + +@mixin _mat-slider-inner-content-theme($palette) { + .mat-slider-track-fill, + .mat-slider-thumb, + .mat-slider-thumb-label { + background-color: mat-color($palette); + } + + .mat-slider-thumb-label-text { + color: mat-color($palette, default-contrast); + } +} + +@mixin mat-slider-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + $mat-slider-off-color: mat-color($foreground, slider-off); + $mat-slider-off-focused-color: mat-color($foreground, slider-off-active); + $mat-slider-disabled-color: mat-color($foreground, slider-off); + $mat-slider-labeled-min-value-thumb-color: mat-color($foreground, slider-min); + $mat-slider-labeled-min-value-thumb-label-color: mat-color($foreground, slider-off); + $mat-slider-focus-ring-color: mat-color($accent, default, 0.2); + $mat-slider-focus-ring-min-value-color: mat-color($foreground, base, 0.12); + $mat-slider-tick-color: mat-color($foreground, base, 0.7); + $mat-slider-tick-size: 2px; + + .mat-slider-track-background { + background-color: $mat-slider-off-color; + } + + .mat-primary { + @include _mat-slider-inner-content-theme($primary); + } + + .mat-accent { + @include _mat-slider-inner-content-theme($accent); + } + + .mat-warn { + @include _mat-slider-inner-content-theme($warn); + } + + .mat-slider-focus-ring { + background-color: $mat-slider-focus-ring-color; + } + + .mat-slider:hover, + .cdk-focused { + .mat-slider-track-background { + background-color: $mat-slider-off-focused-color; + } + } + + .mat-slider-disabled { + .mat-slider-track-background, + .mat-slider-track-fill, + .mat-slider-thumb { + background-color: $mat-slider-disabled-color; + } + + &:hover { + .mat-slider-track-background { + background-color: $mat-slider-disabled-color; + } + } + } + + .mat-slider-min-value { + .mat-slider-focus-ring { + background-color: $mat-slider-focus-ring-min-value-color; + } + + &.mat-slider-thumb-label-showing { + .mat-slider-thumb, + .mat-slider-thumb-label { + background-color: $mat-slider-labeled-min-value-thumb-color; + } + + &.cdk-focused { + .mat-slider-thumb, + .mat-slider-thumb-label { + background-color: $mat-slider-labeled-min-value-thumb-label-color; + } + } + } + + &:not(.mat-slider-thumb-label-showing) { + .mat-slider-thumb { + border-color: $mat-slider-off-color; + background-color: transparent; + } + + &:hover, + &.cdk-focused { + .mat-slider-thumb { + border-color: $mat-slider-off-focused-color; + } + + &.mat-slider-disabled .mat-slider-thumb { + border-color: $mat-slider-disabled-color; + } + } + } + } + + .mat-slider-has-ticks .mat-slider-wrapper::after { + border-color: $mat-slider-tick-color; + } + + .mat-slider-horizontal .mat-slider-ticks { + background-image: repeating-linear-gradient(to right, $mat-slider-tick-color, + $mat-slider-tick-color $mat-slider-tick-size, transparent 0, transparent); + // Firefox doesn't draw the gradient correctly with 'to right' + // (see https://bugzilla.mozilla.org/show_bug.cgi?id=1314319). + background-image: -moz-repeating-linear-gradient(0.0001deg, $mat-slider-tick-color, + $mat-slider-tick-color $mat-slider-tick-size, transparent 0, transparent); + } + + .mat-slider-vertical .mat-slider-ticks { + background-image: repeating-linear-gradient(to bottom, $mat-slider-tick-color, + $mat-slider-tick-color $mat-slider-tick-size, transparent 0, transparent); + } +} + +@mixin mat-slider-typography($config) { + .mat-slider-thumb-label-text { + font: { + family: mat-font-family($config); + size: mat-font-size($config, caption); + weight: mat-font-weight($config, body-2); + } + } +} + + + + + +@mixin mat-stepper-theme($theme) { + $foreground: map-get($theme, foreground); + $background: map-get($theme, background); + $primary: map-get($theme, primary); + $warn: map-get($theme, warn); + + .mat-step-header { + &.cdk-keyboard-focused, + &.cdk-program-focused, + &:hover { + background-color: mat-color($background, hover); + } + + // On touch devices the :hover state will linger on the element after a tap. + // Reset it via `@media` after the declaration, because the media query isn't + // supported by all browsers yet. + @media (hover: none) { + &:hover { + background: none; + } + } + + .mat-step-label, + .mat-step-optional { + // TODO(josephperrott): Update to using a corrected disabled-text contrast + // instead of secondary-text. + color: mat-color($foreground, secondary-text); + } + + .mat-step-icon { + // TODO(josephperrott): Update to using a corrected disabled-text contrast + // instead of secondary-text. + background-color: mat-color($foreground, secondary-text); + color: mat-color($primary, default-contrast); + } + + .mat-step-icon-selected, + .mat-step-icon-state-done, + .mat-step-icon-state-edit { + background-color: mat-color($primary); + color: mat-color($primary, default-contrast); + } + + .mat-step-icon-state-error { + background-color: transparent; + color: mat-color($warn, text); + } + + .mat-step-label.mat-step-label-active { + color: mat-color($foreground, text); + } + + .mat-step-label.mat-step-label-error { + color: mat-color($warn, text); + } + } + + .mat-stepper-horizontal, .mat-stepper-vertical { + background-color: mat-color($background, card); + } + + .mat-stepper-vertical-line::before { + border-left-color: mat-color($foreground, divider); + } + + .mat-horizontal-stepper-header::before, + .mat-horizontal-stepper-header::after, + .mat-stepper-horizontal-line { + border-top-color: mat-color($foreground, divider); + } +} + +@mixin mat-stepper-typography($config) { + .mat-stepper-vertical, .mat-stepper-horizontal { + font-family: mat-font-family($config); + } + + .mat-step-label { + font: { + size: mat-font-size($config, body-1); + weight: mat-font-weight($config, body-1); + }; + } + + .mat-step-sub-label-error { + font-weight: normal; + } + + .mat-step-label-error { + font-size: mat-font-size($config, body-2); + } + + .mat-step-label-selected { + font: { + size: mat-font-size($config, body-2); + weight: mat-font-weight($config, body-2); + }; + } +} + +@mixin mat-sort-theme($theme) { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-sort-header-arrow { + $table-background: mat-color($background, 'card'); + $text-color: mat-color($foreground, secondary-text); + + // Because the arrow is made up of multiple elements that are stacked on top of each other, + // we can't use the semi-trasparent color from the theme directly. If the value is a color + // *type*, we convert it into a solid color by taking the opacity from the rgba value and + // using the value to determine the percentage of the background to put into foreground + // when mixing the colors together. Otherwise, if it resolves to something different + // (e.g. it resolves to a CSS variable), we use the color directly. + @if (type-of($table-background) == color and type-of($text-color) == color) { + $text-opacity: opacity($text-color); + color: mix($table-background, rgba($text-color, 1), (1 - $text-opacity) * 100%); + } + @else { + color: $text-color; + } + } +} + +@mixin mat-sort-typography($config) { } + + + + + +@mixin mat-tabs-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + $header-border: 1px solid mat-color($foreground, divider); + + .mat-tab-nav-bar, + .mat-tab-header { + border-bottom: $header-border; + } + + .mat-tab-group-inverted-header { + .mat-tab-nav-bar, + .mat-tab-header { + border-top: $header-border; + border-bottom: none; + } + } + + .mat-tab-label, .mat-tab-link { + color: mat-color($foreground, text); + + &.mat-tab-disabled { + color: mat-color($foreground, disabled-text); + } + } + + .mat-tab-header-pagination-chevron { + border-color: mat-color($foreground, text); + } + + .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron { + border-color: mat-color($foreground, disabled-text); + } + + // Remove header border when there is a background color + .mat-tab-group[class*='mat-background-'] .mat-tab-header, + .mat-tab-nav-bar[class*='mat-background-'] { + border-bottom: none; + border-top: none; + } + + .mat-tab-group, .mat-tab-nav-bar { + $theme-colors: ( + primary: $primary, + accent: $accent, + warn: $warn + ); + + @each $name, $color in $theme-colors { + // Set the foreground color of the tabs + &.mat-#{$name} { + @include _mat-tab-label-focus($color); + @include _mat-ink-bar($color); + + // Override ink bar when background color is the same + &.mat-background-#{$name} { + @include _mat-ink-bar($color, default-contrast); + } + } + } + + @each $name, $color in $theme-colors { + // Set background color of the tabs and override focus color + &.mat-background-#{$name} { + @include _mat-tab-label-focus($color); + @include _mat-tabs-background($color); + } + } + } +} + +@mixin _mat-ink-bar($color, $hue: default) { + .mat-ink-bar { + background-color: mat-color($color, $hue); + } +} + +@mixin _mat-tab-label-focus($tab-focus-color) { + .mat-tab-label, + .mat-tab-link { + &.cdk-keyboard-focused, + &.cdk-program-focused { + &:not(.mat-tab-disabled) { + background-color: mat-color($tab-focus-color, lighter, 0.3); + } + } + } +} + +@mixin _mat-tabs-background($background-color) { + // Set background color for the tab group + .mat-tab-header, .mat-tab-links, .mat-tab-header-pagination { + background-color: mat-color($background-color); + } + + // Set labels to contrast against background + .mat-tab-label, .mat-tab-link { + color: mat-color($background-color, default-contrast); + + &.mat-tab-disabled { + color: mat-color($background-color, default-contrast, 0.4); + } + } + + // Set pagination chevrons to contrast background + .mat-tab-header-pagination-chevron { + border-color: mat-color($background-color, default-contrast); + } + + .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron { + border-color: mat-color($background-color, default-contrast, 0.4); + } + + // Set ripples color to be the contrast color of the new background. Otherwise the ripple + // color will be based on the app background color. + .mat-ripple-element { + background-color: mat-color($background-color, default-contrast, 0.12); + } +} + +@mixin mat-tabs-typography($config) { + .mat-tab-group { + font-family: mat-font-family($config); + } + + .mat-tab-label, .mat-tab-link { + font: { + family: mat-font-family($config, button); + size: mat-font-size($config, button); + weight: mat-font-weight($config, button); + } + } +} + + + + + + +@mixin _mat-toolbar-color($palette) { + background: mat-color($palette); + color: mat-color($palette, default-contrast); +} + +@mixin _mat-toolbar-form-field-overrides { + .mat-form-field-underline, + .mat-form-field-ripple, + .mat-focused .mat-form-field-ripple { + background-color: currentColor; + } + + .mat-form-field-label, + .mat-focused .mat-form-field-label, + .mat-select-value, + .mat-select-arrow, + .mat-form-field.mat-focused .mat-select-arrow { + color: inherit; + } + + .mat-input-element { + caret-color: currentColor; + } +} + +@mixin mat-toolbar-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-toolbar { + background: mat-color($background, app-bar); + color: mat-color($foreground, text); + + &.mat-primary { + @include _mat-toolbar-color($primary); + } + + &.mat-accent { + @include _mat-toolbar-color($accent); + } + + &.mat-warn { + @include _mat-toolbar-color($warn); + } + + @include _mat-toolbar-form-field-overrides; + } +} + +@mixin mat-toolbar-typography($config) { + .mat-toolbar, + .mat-toolbar h1, + .mat-toolbar h2, + .mat-toolbar h3, + .mat-toolbar h4, + .mat-toolbar h5, + .mat-toolbar h6 { + @include mat-typography-level-to-styles($config, title); + margin: 0; + } +} + + + + + +$mat-tooltip-target-height: 22px; +$mat-tooltip-font-size: 10px; +$mat-tooltip-vertical-padding: ($mat-tooltip-target-height - $mat-tooltip-font-size) / 2; + +$mat-tooltip-handset-target-height: 30px; +$mat-tooltip-handset-font-size: 14px; +$mat-tooltip-handset-vertical-padding: + ($mat-tooltip-handset-target-height - $mat-tooltip-handset-font-size) / 2; + +@mixin mat-tooltip-theme($theme) { + .mat-tooltip { + background: mat-color($mat-grey, 700, 0.9); + } +} + +@mixin mat-tooltip-typography($config) { + .mat-tooltip { + font-family: mat-font-family($config); + font-size: $mat-tooltip-font-size; + padding-top: $mat-tooltip-vertical-padding; + padding-bottom: $mat-tooltip-vertical-padding; + } + + .mat-tooltip-handset { + font-size: $mat-tooltip-handset-font-size; + padding-top: $mat-tooltip-handset-vertical-padding; + padding-bottom: $mat-tooltip-handset-vertical-padding; + } +} + + + + + +@mixin mat-snack-bar-theme($theme) { + $is-dark-theme: map-get($theme, is-dark); + $accent: map-get($theme, accent); + + .mat-snack-bar-container { + // Use the primary text on the dark theme, even though the lighter one uses + // a secondary, because the contrast on the light primary text is poor. + color: if($is-dark-theme, $dark-primary-text, $light-secondary-text); + background: if($is-dark-theme, map-get($mat-grey, 50), #323232); + + @include _mat-theme-elevation(6, $theme); + } + + .mat-simple-snackbar-action { + color: if($is-dark-theme, inherit, mat-color($accent, text)); + } +} + +@mixin mat-snack-bar-typography($config) { + .mat-simple-snackbar { + font: { + family: mat-font-family($config, body-1); + size: mat-font-size($config, body-1); + } + } + + .mat-simple-snackbar-action { + line-height: 1; + font: { + family: inherit; + size: inherit; + weight: mat-font-weight($config, button); + } + } +} + + + + + + + + + + + + + + +// Theme styles that only apply to the fill appearance of the form-field. + +@mixin mat-form-field-fill-theme($theme) { + $foreground: map-get($theme, foreground); + $is-dark-theme: map-get($theme, is-dark); + + $fill-background: mat-color($foreground, base, if($is-dark-theme, 0.1, 0.04)); + $fill-disabled-background: mat-color($foreground, base, if($is-dark-theme, 0.05, 0.02)); + $underline-color: mat-color($foreground, divider, if($is-dark-theme, 0.5, 0.42)); + $label-disabled-color: mat-color($foreground, disabled-text); + + .mat-form-field-appearance-fill { + .mat-form-field-flex { + background-color: $fill-background; + } + + &.mat-form-field-disabled .mat-form-field-flex { + background-color: $fill-disabled-background; + } + + .mat-form-field-underline::before { + background-color: $underline-color; + } + + &.mat-form-field-disabled { + .mat-form-field-label { + color: $label-disabled-color; + } + + .mat-form-field-underline::before { + background-color: transparent; + } + } + } +} + +// Used to make instances of the _mat-form-field-label-floating mixin negligibly different, +// and prevent Google's CSS Optimizer from collapsing the declarations. This is needed because some +// of the selectors contain pseudo-classes not recognized in all browsers. If a browser encounters +// an unknown pseudo-class it will discard the entire rule set. +$mat-form-field-fill-dedupe: 0; + +// Applies a floating label above the form field control itself. +@mixin _mat-form-field-fill-label-floating($font-scale, $infix-padding, $infix-margin-top) { + transform: translateY(-$infix-margin-top - $infix-padding + $mat-form-field-fill-dedupe) + scale($font-scale); + width: 100% / $font-scale + $mat-form-field-fill-dedupe; + + $mat-form-field-fill-dedupe: $mat-form-field-fill-dedupe + 0.00001 !global; +} + +@mixin mat-form-field-fill-typography($config) { + // The unit-less line-height from the font config. + $line-height: mat-line-height($config, input); + // The amount to scale the font for the floating label and subscript. + $subscript-font-scale: 0.75; + // The padding on top of the infix. + $infix-padding-top: 0.25em; + // The padding below the infix. + $infix-padding-bottom: 0.75em; + // The margin applied to the form-field-infix to reserve space for the floating label. + $infix-margin-top: 1em * $line-height * $subscript-font-scale; + // The amount we offset the label from the input text in the fill appearance. + $fill-appearance-label-offset: -0.5em; + + .mat-form-field-appearance-fill { + .mat-form-field-infix { + padding: $infix-padding-top 0 $infix-padding-bottom 0; + } + + .mat-form-field-label { + top: $infix-margin-top + $infix-padding-top; + margin-top: $fill-appearance-label-offset; + } + + &.mat-form-field-can-float { + &.mat-form-field-should-float .mat-form-field-label, + .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label { + @include _mat-form-field-fill-label-floating( + $subscript-font-scale, $infix-padding-top + $fill-appearance-label-offset, + $infix-margin-top); + } + + // Server-side rendered matInput with a label attribute but label not shown + // (used as a pure CSS stand-in for mat-form-field-should-float). + .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper + .mat-form-field-label { + @include _mat-form-field-fill-label-floating( + $subscript-font-scale, $infix-padding-top + $fill-appearance-label-offset, + $infix-margin-top); + } + } + } +} + + + + + + + +// Theme styles that only apply to the legacy appearance of the form-field. + +@mixin mat-form-field-legacy-theme($theme) { + $foreground: map-get($theme, foreground); + $is-dark-theme: map-get($theme, is-dark); + + $label-color: mat-color($foreground, secondary-text); + $underline-color: mat-color($foreground, divider, if($is-dark-theme, 0.7, 0.42)); + + .mat-form-field-appearance-legacy { + .mat-form-field-label { + color: $label-color; + } + + .mat-hint { + color: $label-color; + } + + .mat-form-field-underline { + background-color: $underline-color; + } + + &.mat-form-field-disabled .mat-form-field-underline { + @include mat-control-disabled-underline($underline-color); + } + } +} + +// Used to make instances of the _mat-form-field-label-floating mixin negligibly different, +// and prevent Google's CSS Optimizer from collapsing the declarations. This is needed because some +// of the selectors contain pseudo-classes not recognized in all browsers. If a browser encounters +// an unknown pseudo-class it will discard the entire rule set. +$mat-form-field-legacy-dedupe: 0; + +// Applies a floating label above the form field control itself. +@mixin _mat-form-field-legacy-label-floating($font-scale, $infix-padding, $infix-margin-top) { + // We use perspective to fix the text blurriness as described here: + // http://www.useragentman.com/blog/2014/05/04/fixing-typography-inside-of-2-d-css-transforms/ + // This results in a small jitter after the label floats on Firefox, which the + // translateZ fixes. + transform: translateY(-$infix-margin-top - $infix-padding) scale($font-scale) perspective(100px) + translateZ(0.001px + $mat-form-field-legacy-dedupe); + // The tricks above used to smooth out the animation on chrome and firefox actually make things + // worse on IE, so we don't include them in the IE version. + -ms-transform: translateY(-$infix-margin-top - $infix-padding + $mat-form-field-legacy-dedupe) + scale($font-scale); + + width: 100% / $font-scale + $mat-form-field-legacy-dedupe; + + $mat-form-field-legacy-dedupe: $mat-form-field-legacy-dedupe + 0.00001 !global; +} + +// Same as mixin above, but omits the translateZ for printing purposes. +@mixin _mat-form-field-legacy-label-floating-print($font-scale, $infix-padding, $infix-margin-top) { + // This results in a small jitter after the label floats on Firefox, which the + // translateZ fixes. + transform: translateY(-$infix-margin-top - $infix-padding + $mat-form-field-legacy-dedupe) + scale($font-scale); + // The tricks above used to smooth out the animation on chrome and firefox actually make things + // worse on IE, so we don't include them in the IE version. + $mat-form-field-legacy-dedupe: $mat-form-field-legacy-dedupe + 0.00001 !global; +} + +@mixin mat-form-field-legacy-typography($config) { + // The unit-less line-height from the font config. + $line-height: mat-line-height($config, input); + // The amount to scale the font for the floating label and subscript. + $subscript-font-scale: 0.75; + // The amount of space between the top of the line and the top of the actual text + // (as a fraction of the font-size). + $line-spacing: ($line-height - 1) / 2; + // The padding on the infix. Mocks show half of the text size, but seem to measure from the edge + // of the text itself, not the edge of the line; therefore we subtract off the line spacing. + $infix-padding: 0.5em - $line-spacing; + // The margin applied to the form-field-infix to reserve space for the floating label. + $infix-margin-top: 1em * $line-height * $subscript-font-scale; + // The space between the bottom of the .mat-form-field-flex area and the subscript wrapper. + // Mocks show half of the text size, but this margin is applied to an element with the subscript + // text font size, so we need to divide by the scale factor to make it half of the original text + // size. We again need to subtract off the line spacing since the mocks measure to the edge of the + // text, not the edge of the line. + $subscript-margin-top: 0.5em / $subscript-font-scale - ($line-spacing * 2); + // The padding applied to the form-field-wrapper to reserve space for the subscript, since it's + // absolutely positioned. This is a combination of the subscript's margin and line-height, but we + // need to multiply by the subscript font scale factor since the wrapper has a larger font size. + $wrapper-padding-bottom: ($subscript-margin-top + $line-height) * $subscript-font-scale; + + .mat-form-field-appearance-legacy { + .mat-form-field-wrapper { + padding-bottom: $wrapper-padding-bottom; + } + + .mat-form-field-infix { + padding: $infix-padding 0; + } + + &.mat-form-field-can-float { + &.mat-form-field-should-float .mat-form-field-label, + .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label { + @include _mat-form-field-legacy-label-floating( + $subscript-font-scale, $infix-padding, $infix-margin-top); + } + + // @breaking-change 8.0.0 will rely on AutofillMonitor instead. + .mat-form-field-autofill-control:-webkit-autofill + .mat-form-field-label-wrapper + .mat-form-field-label { + @include _mat-form-field-legacy-label-floating( + $subscript-font-scale, $infix-padding, $infix-margin-top); + } + + // Server-side rendered matInput with a label attribute but label not shown + // (used as a pure CSS stand-in for mat-form-field-should-float). + .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper + .mat-form-field-label { + @include _mat-form-field-legacy-label-floating( + $subscript-font-scale, $infix-padding, $infix-margin-top); + } + } + + .mat-form-field-label { + top: $infix-margin-top + $infix-padding; + } + + .mat-form-field-underline { + // We want the underline to start at the end of the content box, not the padding box, + // so we move it up by the padding amount. + bottom: $wrapper-padding-bottom; + } + + .mat-form-field-subscript-wrapper { + margin-top: $subscript-margin-top; + + // We want the subscript to start at the end of the content box, not the padding box, + // so we move it up by the padding amount (adjusted for the smaller font size); + top: calc(100% - #{$wrapper-padding-bottom / $subscript-font-scale}); + } + } + + // translateZ causes the label to not appear while printing, so we override it to not + // apply translateZ while printing + @media print { + .mat-form-field-appearance-legacy { + &.mat-form-field-can-float { + &.mat-form-field-should-float .mat-form-field-label, + .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label { + @include _mat-form-field-legacy-label-floating-print( + $subscript-font-scale, $infix-padding, $infix-margin-top); + } + + // @breaking-change 8.0.0 will rely on AutofillMonitor instead. + .mat-form-field-autofill-control:-webkit-autofill + .mat-form-field-label-wrapper + .mat-form-field-label { + @include _mat-form-field-legacy-label-floating-print( + $subscript-font-scale, $infix-padding, $infix-margin-top); + } + + // Server-side rendered matInput with a label attribute but label not shown + // (used as a pure CSS stand-in for mat-form-field-should-float). + .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper + .mat-form-field-label { + @include _mat-form-field-legacy-label-floating-print( + $subscript-font-scale, $infix-padding, $infix-margin-top); + } + } + } + } +} + + + + + + + +// Theme styles that only apply to the outline appearance of the form-field. + +@mixin mat-form-field-outline-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $foreground: map-get($theme, foreground); + $is-dark-theme: map-get($theme, is-dark); + + $label-disabled-color: mat-color($foreground, disabled-text); + $outline-color: mat-color($foreground, divider, if($is-dark-theme, 0.3, 0.12)); + $outline-color-hover: mat-color($foreground, divider, if($is-dark-theme, 1, 0.87)); + $outline-color-primary: mat-color($primary); + $outline-color-accent: mat-color($accent); + $outline-color-warn: mat-color($warn); + $outline-color-disabled: mat-color($foreground, divider, if($is-dark-theme, 0.15, 0.06)); + + .mat-form-field-appearance-outline { + .mat-form-field-outline { + color: $outline-color; + } + + .mat-form-field-outline-thick { + color: $outline-color-hover; + } + + &.mat-focused { + .mat-form-field-outline-thick { + color: $outline-color-primary; + } + + &.mat-accent .mat-form-field-outline-thick { + color: $outline-color-accent; + } + + &.mat-warn .mat-form-field-outline-thick { + color: $outline-color-warn; + } + } + + // Class repeated so that rule is specific enough to override focused accent color case. + &.mat-form-field-invalid.mat-form-field-invalid { + .mat-form-field-outline-thick { + color: $outline-color-warn; + } + } + + &.mat-form-field-disabled { + .mat-form-field-label { + color: $label-disabled-color; + } + + .mat-form-field-outline { + color: $outline-color-disabled; + } + } + } +} + +// Used to make instances of the _mat-form-field-label-floating mixin negligibly different, +// and prevent Google's CSS Optimizer from collapsing the declarations. This is needed because some +// of the selectors contain pseudo-classes not recognized in all browsers. If a browser encounters +// an unknown pseudo-class it will discard the entire rule set. +$mat-form-field-outline-dedupe: 0; + +// Applies a floating label above the form field control itself. +@mixin _mat-form-field-outline-label-floating($font-scale, $infix-padding, $infix-margin-top) { + transform: translateY(-$infix-margin-top - $infix-padding + $mat-form-field-outline-dedupe) + scale($font-scale); + width: 100% / $font-scale + $mat-form-field-outline-dedupe; + + $mat-form-field-outline-dedupe: $mat-form-field-outline-dedupe + 0.00001 !global; +} + +@mixin mat-form-field-outline-typography($config) { + // The unit-less line-height from the font config. + $line-height: mat-line-height($config, input); + // The amount to scale the font for the floating label and subscript. + $subscript-font-scale: 0.75; + // The padding above and below the infix. + $infix-padding: 1em; + // The margin applied to the form-field-infix to reserve space for the floating label. + $infix-margin-top: 1em * $line-height * $subscript-font-scale; + // The space between the bottom of the .mat-form-field-flex area and the subscript wrapper. + // Mocks show half of the text size, but this margin is applied to an element with the subscript + // text font size, so we need to divide by the scale factor to make it half of the original text + // size. + $subscript-margin-top: 0.5em / $subscript-font-scale; + // The padding applied to the form-field-wrapper to reserve space for the subscript, since it's + // absolutely positioned. This is a combination of the subscript's margin and line-height, but we + // need to multiply by the subscript font scale factor since the wrapper has a larger font size. + $wrapper-padding-bottom: ($subscript-margin-top + $line-height) * $subscript-font-scale; + // The amount we offset the label from the input text in the outline appearance. + $outline-appearance-label-offset: -0.25em; + + .mat-form-field-appearance-outline { + .mat-form-field-infix { + padding: $infix-padding 0 $infix-padding 0; + } + + .mat-form-field-label { + top: $infix-margin-top + $infix-padding; + margin-top: $outline-appearance-label-offset; + } + + &.mat-form-field-can-float { + &.mat-form-field-should-float .mat-form-field-label, + .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label { + @include _mat-form-field-outline-label-floating( + $subscript-font-scale, $infix-padding + $outline-appearance-label-offset, + $infix-margin-top); + } + + // Server-side rendered matInput with a label attribute but label not shown + // (used as a pure CSS stand-in for mat-form-field-should-float). + .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper + .mat-form-field-label { + @include _mat-form-field-outline-label-floating( + $subscript-font-scale, $infix-padding + $outline-appearance-label-offset, + $infix-margin-top); + } + } + } +} + + + + + + + +// Theme styles that only apply to the standard appearance of the form-field. + +@mixin mat-form-field-standard-theme($theme) { + $foreground: map-get($theme, foreground); + $is-dark-theme: map-get($theme, is-dark); + + $underline-color: mat-color($foreground, divider, if($is-dark-theme, 0.7, 0.42)); + + .mat-form-field-appearance-standard { + .mat-form-field-underline { + background-color: $underline-color; + } + + &.mat-form-field-disabled .mat-form-field-underline { + @include mat-control-disabled-underline($underline-color); + } + } +} + +@mixin mat-form-field-standard-typography($config) {} + + +// Theme styles that apply to all appearances of the form-field. +@mixin mat-form-field-theme($theme) { + $primary: map-get($theme, primary); + $accent: map-get($theme, accent); + $warn: map-get($theme, warn); + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + $is-dark-theme: map-get($theme, is-dark); + + // Label colors. Required is used for the `*` star shown in the label. + $label-color: mat-color($foreground, secondary-text, if($is-dark-theme, 0.7, 0.6)); + $focused-label-color: mat-color($primary, text); + $required-label-color: mat-color($accent, text); + + // Underline colors. + $underline-color-base: mat-color($foreground, divider, if($is-dark-theme, 1, 0.87)); + $underline-color-accent: mat-color($accent, text); + $underline-color-warn: mat-color($warn, text); + $underline-focused-color: mat-color($primary, text); + + .mat-form-field-label { + color: $label-color; + } + + .mat-hint { + color: $label-color; + } + + .mat-form-field.mat-focused .mat-form-field-label { + color: $focused-label-color; + + &.mat-accent { + color: $underline-color-accent; + } + + &.mat-warn { + color: $underline-color-warn; + } + } + + .mat-focused .mat-form-field-required-marker { + color: $required-label-color; + } + + .mat-form-field-ripple { + background-color: $underline-color-base; + } + + .mat-form-field.mat-focused { + .mat-form-field-ripple { + background-color: $underline-focused-color; + + &.mat-accent { + background-color: $underline-color-accent; + } + + &.mat-warn { + background-color: $underline-color-warn; + } + } + } + + .mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid) { + .mat-form-field-infix::after { + color: $underline-focused-color; + } + + &.mat-accent .mat-form-field-infix::after { + color: $underline-color-accent; + } + + &.mat-warn .mat-form-field-infix::after { + color: $underline-color-warn; + } + } + + // Styling for the error state of the form field. Note that while the same can be + // achieved with the ng-* classes, we use this approach in order to ensure that the same + // logic is used to style the error state and to show the error messages. + .mat-form-field.mat-form-field-invalid { + .mat-form-field-label { + color: $underline-color-warn; + + &.mat-accent, + .mat-form-field-required-marker { + color: $underline-color-warn; + } + } + + .mat-form-field-ripple, + .mat-form-field-ripple.mat-accent { + background-color: $underline-color-warn; + } + } + + .mat-error { + color: $underline-color-warn; + } + + @include mat-form-field-legacy-theme($theme); + @include mat-form-field-standard-theme($theme); + @include mat-form-field-fill-theme($theme); + @include mat-form-field-outline-theme($theme); +} + +// Used to make instances of the _mat-form-field-label-floating mixin negligibly different, +// and prevent Google's CSS Optimizer from collapsing the declarations. This is needed because some +// of the selectors contain pseudo-classes not recognized in all browsers. If a browser encounters +// an unknown pseudo-class it will discard the entire rule set. +$mat-form-field-dedupe: 0; + +// Applies a floating label above the form field control itself. +@mixin _mat-form-field-label-floating($font-scale, $infix-padding, $infix-margin-top) { + transform: translateY(-$infix-margin-top - $infix-padding + $mat-form-field-dedupe) + scale($font-scale); + width: 100% / $font-scale + $mat-form-field-dedupe; + + $mat-form-field-dedupe: $mat-form-field-dedupe + 0.00001 !global; +} + +@mixin mat-form-field-typography($config) { + // The unit-less line-height from the font config. + $line-height: mat-line-height($config, input); + + // The amount to scale the font for the floating label and subscript. + $subscript-font-scale: 0.75; + // The amount to scale the font for the prefix and suffix icons. + $prefix-suffix-icon-font-scale: 1.5; + + // The padding on the infix. Mocks show half of the text size. + $infix-padding: 0.5em; + // The margin applied to the form-field-infix to reserve space for the floating label. + $infix-margin-top: 1em * $line-height * $subscript-font-scale; + // Font size to use for the label and subscript text. + $subscript-font-size: $subscript-font-scale * 100%; + // Font size to use for the for the prefix and suffix icons. + $prefix-suffix-icon-font-size: $prefix-suffix-icon-font-scale * 100%; + // The space between the bottom of the .mat-form-field-flex area and the subscript wrapper. + // Mocks show half of the text size, but this margin is applied to an element with the subscript + // text font size, so we need to divide by the scale factor to make it half of the original text + // size. + $subscript-margin-top: 0.5em / $subscript-font-scale; + // The padding applied to the form-field-wrapper to reserve space for the subscript, since it's + // absolutely positioned. This is a combination of the subscript's margin and line-height, but we + // need to multiply by the subscript font scale factor since the wrapper has a larger font size. + $wrapper-padding-bottom: ($subscript-margin-top + $line-height) * $subscript-font-scale; + + .mat-form-field { + @include mat-typography-level-to-styles($config, input); + } + + .mat-form-field-wrapper { + padding-bottom: $wrapper-padding-bottom; + } + + .mat-form-field-prefix, + .mat-form-field-suffix { + // Allow icons in a prefix or suffix to adapt to the correct size. + .mat-icon { + font-size: $prefix-suffix-icon-font-size; + line-height: $line-height; + } + + // Allow icon buttons in a prefix or suffix to adapt to the correct size. + .mat-icon-button { + height: $prefix-suffix-icon-font-scale * 1em; + width: $prefix-suffix-icon-font-scale * 1em; + + .mat-icon { + height: $line-height * 1em; + line-height: $line-height; + } + } + } + + .mat-form-field-infix { + padding: $infix-padding 0; + // Throws off the baseline if we do it as a real margin, so we do it as a border instead. + border-top: $infix-margin-top solid transparent; + } + + .mat-form-field-can-float { + &.mat-form-field-should-float .mat-form-field-label, + .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label { + @include _mat-form-field-label-floating( + $subscript-font-scale, $infix-padding, $infix-margin-top); + } + + // Server-side rendered matInput with a label attribute but label not shown + // (used as a pure CSS stand-in for mat-form-field-should-float). + .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper + .mat-form-field-label { + @include _mat-form-field-label-floating( + $subscript-font-scale, $infix-padding, $infix-margin-top); + } + } + + .mat-form-field-label-wrapper { + top: -$infix-margin-top; + padding-top: $infix-margin-top; + } + + .mat-form-field-label { + top: $infix-margin-top + $infix-padding; + } + + .mat-form-field-underline { + // We want the underline to start at the end of the content box, not the padding box, + // so we move it up by the padding amount. + bottom: $wrapper-padding-bottom; + } + + .mat-form-field-subscript-wrapper { + font-size: $subscript-font-size; + margin-top: $subscript-margin-top; + + // We want the subscript to start at the end of the content box, not the padding box, + // so we move it up by the padding amount (adjusted for the smaller font size); + top: calc(100% - #{$wrapper-padding-bottom / $subscript-font-scale}); + } + + @include mat-form-field-legacy-typography($config); + @include mat-form-field-standard-typography($config); + @include mat-form-field-fill-typography($config); + @include mat-form-field-outline-typography($config); +} + + + + + +@mixin mat-tree-theme($theme) { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + .mat-tree { + background: mat-color($background, 'card'); + } + + .mat-tree-node, + .mat-nested-tree-node { + color: mat-color($foreground, text); + } +} + +@mixin mat-tree-typography($config) { + .mat-tree { + font-family: mat-font-family($config); + } + + .mat-tree-node, + .mat-nested-tree-node { + font-weight: mat-font-weight($config, body-1); + font-size: mat-font-size($config, body-1); + } +} + + + +// Includes all of the typographic styles. +@mixin angular-material-typography($config: null) { + @if $config == null { + $config: mat-typography-config(); + } + + @include mat-badge-typography($config); + @include mat-base-typography($config); + @include mat-autocomplete-typography($config); + @include mat-bottom-sheet-typography($config); + @include mat-button-typography($config); + @include mat-button-toggle-typography($config); + @include mat-card-typography($config); + @include mat-checkbox-typography($config); + @include mat-chips-typography($config); + @include mat-table-typography($config); + @include mat-datepicker-typography($config); + @include mat-dialog-typography($config); + @include mat-expansion-panel-typography($config); + @include mat-form-field-typography($config); + @include mat-grid-list-typography($config); + @include mat-icon-typography($config); + @include mat-input-typography($config); + @include mat-menu-typography($config); + @include mat-paginator-typography($config); + @include mat-progress-bar-typography($config); + @include mat-progress-spinner-typography($config); + @include mat-radio-typography($config); + @include mat-select-typography($config); + @include mat-sidenav-typography($config); + @include mat-slide-toggle-typography($config); + @include mat-slider-typography($config); + @include mat-stepper-typography($config); + @include mat-sort-typography($config); + @include mat-tabs-typography($config); + @include mat-toolbar-typography($config); + @include mat-tooltip-typography($config); + @include mat-list-typography($config); + @include mat-option-typography($config); + @include mat-optgroup-typography($config); + @include mat-snack-bar-typography($config); + @include mat-tree-typography($config); +} + + +// Mixin that renders all of the core styles that are not theme-dependent. +@mixin mat-core($typography-config: null) { + @include angular-material-typography($typography-config); + @include mat-ripple(); + @include cdk-a11y(); + @include cdk-overlay(); + @include cdk-text-field(); +} + +// Mixin that renders all of the core styles that depend on the theme. +@mixin mat-core-theme($theme) { + @include mat-ripple-theme($theme); + @include mat-option-theme($theme); + @include mat-optgroup-theme($theme); + @include mat-pseudo-checkbox-theme($theme); + + // Provides external CSS classes for each elevation value. Each CSS class is formatted as + // `mat-elevation-z$zValue` where `$zValue` corresponds to the z-space to which the element is + // elevated. + @for $zValue from 0 through 24 { + .#{$_mat-elevation-prefix}#{$zValue} { + @include _mat-theme-elevation($zValue, $theme); + } + } + + // Wrapper element that provides the theme background when the user's content isn't + // inside of a `mat-sidenav-container`. Note that we need to exclude the ampersand + // selector in case the mixin is included at the top level. + .mat-app-background#{if(&, ', &.mat-app-background', '')} { + $background: map-get($theme, background); + $foreground: map-get($theme, foreground); + + background-color: mat-color($background, background); + color: mat-color($foreground, text); + } + + // Marker that is used to determine whether the user has added a theme to their page. + @at-root { + .mat-theme-loaded-marker { + display: none; + } + } +} + + + + + + + + + + + + + + + + +@mixin mat-divider-theme($theme) { + $foreground: map-get($theme, foreground); + + .mat-divider { + border-top-color: mat-color($foreground, divider); + } + + .mat-divider-vertical { + border-right-color: mat-color($foreground, divider); + } +} + + + + + + + + + + + + + + + + + + + + + + + + + +// Create a theme. +@mixin angular-material-theme($theme) { + @include mat-core-theme($theme); + @include mat-autocomplete-theme($theme); + @include mat-badge-theme($theme); + @include mat-bottom-sheet-theme($theme); + @include mat-button-theme($theme); + @include mat-button-toggle-theme($theme); + @include mat-card-theme($theme); + @include mat-checkbox-theme($theme); + @include mat-chips-theme($theme); + @include mat-table-theme($theme); + @include mat-datepicker-theme($theme); + @include mat-dialog-theme($theme); + @include mat-divider-theme($theme); + @include mat-expansion-panel-theme($theme); + @include mat-form-field-theme($theme); + @include mat-grid-list-theme($theme); + @include mat-icon-theme($theme); + @include mat-input-theme($theme); + @include mat-list-theme($theme); + @include mat-menu-theme($theme); + @include mat-paginator-theme($theme); + @include mat-progress-bar-theme($theme); + @include mat-progress-spinner-theme($theme); + @include mat-radio-theme($theme); + @include mat-select-theme($theme); + @include mat-sidenav-theme($theme); + @include mat-slide-toggle-theme($theme); + @include mat-slider-theme($theme); + @include mat-stepper-theme($theme); + @include mat-sort-theme($theme); + @include mat-tabs-theme($theme); + @include mat-toolbar-theme($theme); + @include mat-tooltip-theme($theme); + @include mat-tree-theme($theme); + @include mat-snack-bar-theme($theme); +} diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts new file mode 100644 index 0000000..e8f95ae --- /dev/null +++ b/src/app/app-routing.module.ts @@ -0,0 +1,34 @@ +import { NgModule } from '@angular/core'; +import { Routes, RouterModule } from '@angular/router'; +import { LoginComponent } from './pages/login/login.component'; +import { RegisterComponent } from './pages/register/register.component'; +import { NavigationComponent } from './navigation/navigation.component'; +import { LockscreenComponent } from './pages/lockscreen/lockscreen.component'; + +//路由守卫 +import {AuthGuard} from './auth.guard' + + + +const routes: Routes = [ + {path:'',redirectTo:'login',pathMatch:'full'}, + { + path:'', + component:NavigationComponent, + canActivate: [AuthGuard],//守卫验证 + children:[ + {path:'datacollection',loadChildren:() => import('./ui/ui.module').then(m => m.UiModule)} + ]}, + + {path:'login', + component:LoginComponent}, //登录页 + + {path:'register', + component:RegisterComponent,}, //注册页 +]; + +@NgModule({ + imports: [RouterModule.forRoot(routes)], + exports: [RouterModule] +}) +export class AppRoutingModule { } diff --git a/src/app/app.component.html b/src/app/app.component.html new file mode 100644 index 0000000..90c6b64 --- /dev/null +++ b/src/app/app.component.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/app/app.component.scss b/src/app/app.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/app/app.component.spec.ts b/src/app/app.component.spec.ts new file mode 100644 index 0000000..6ee0c27 --- /dev/null +++ b/src/app/app.component.spec.ts @@ -0,0 +1,35 @@ +import { TestBed, async } from '@angular/core/testing'; +import { RouterTestingModule } from '@angular/router/testing'; +import { AppComponent } from './app.component'; + +describe('AppComponent', () => { + beforeEach(async(() => { + TestBed.configureTestingModule({ + imports: [ + RouterTestingModule + ], + declarations: [ + AppComponent + ], + }).compileComponents(); + })); + + it('should create the app', () => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.debugElement.componentInstance; + expect(app).toBeTruthy(); + }); + + it(`should have as title 'anxin119'`, () => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.debugElement.componentInstance; + expect(app.title).toEqual('anxin119'); + }); + + it('should render title', () => { + const fixture = TestBed.createComponent(AppComponent); + fixture.detectChanges(); + const compiled = fixture.debugElement.nativeElement; + expect(compiled.querySelector('.content span').textContent).toContain('anxin119 app is running!'); + }); +}); diff --git a/src/app/app.component.ts b/src/app/app.component.ts new file mode 100644 index 0000000..d12bf0c --- /dev/null +++ b/src/app/app.component.ts @@ -0,0 +1,63 @@ +import { Component } from '@angular/core'; +import { HttpClient } from '@angular/common/http' +import { Data } from './interface' +import { Router,ActivatedRoute } from '@angular/router' +import {CacheTokenService} from './http-interceptors/cache-token.service'//引入服务 +@Component({ + selector: 'app-root', + templateUrl: './app.component.html', + styleUrls: ['./app.component.scss'] +}) +export class AppComponent { + title = '数字化预案编制管理平台'; + + constructor(private http:HttpClient,private router:Router,public token:CacheTokenService) { } + ngOnInit(): void { + + var isnologin = localStorage.getItem("isnologin") + //七天免登录 + if(isnologin){ + var token = localStorage.getItem("token"); + var refreshToken = localStorage.getItem("refreshToken"); + this.http.post( + '/api/Account/RefreshToken', + { + token: token, + refreshToken: refreshToken + } + ).subscribe( + (data: Data) => { + sessionStorage.setItem("token",data.token); + sessionStorage.setItem("refreshToken",data.refreshToken); + this.token.getmenus() + this.token.startUp() + this.router.navigate(['/ui/person']) + console.log('已自动登录') + } + ) + }else{ + var token = sessionStorage.getItem("token"); + var refreshToken = sessionStorage.getItem("refreshToken"); + if(token && refreshToken) { + this.http.post( + '/api/Account/RefreshToken', + { + token: token, + refreshToken: refreshToken + } + ).subscribe( + (data: Data) => { + sessionStorage.setItem("token",data.token); + sessionStorage.setItem("refreshToken",data.refreshToken); + this.token.getmenus() + this.token.startUp() + console.log('已重启定时器') + } + ) + } + } + + } + + +} diff --git a/src/app/app.module.ts b/src/app/app.module.ts new file mode 100644 index 0000000..9c55c3b --- /dev/null +++ b/src/app/app.module.ts @@ -0,0 +1,40 @@ +import { BrowserModule } from '@angular/platform-browser'; +import { NgModule } from '@angular/core'; +import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; +import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; +import { MatButtonModule } from '@angular/material/button'; +import { MatCheckboxModule } from '@angular/material/checkbox'; +import { MatIconModule } from '@angular/material/icon'; +import { MatSidenavModule } from '@angular/material/sidenav'; +import { NavigationModule } from './navigation/navigation.module'; +import { TabbarComponent } from './tabbar/tabbar.component'; +import { PagesModule } from './pages/pages.module'; +import { FormsModule } from '@angular/forms'; +import { UiModule } from './ui/ui.module'; +import { HttpClientModule } from '@angular/common/http'; +import { httpInterceptorProviders } from './http-interceptors/index' +import {CacheTokenService} from './http-interceptors/cache-token.service' +import { TreeService } from'./http-interceptors/tree.service' + +@NgModule({ + declarations: [ + AppComponent + ], + imports: [ + BrowserModule, + AppRoutingModule, + BrowserAnimationsModule, + MatButtonModule, + MatCheckboxModule, + MatSidenavModule, + NavigationModule, + MatIconModule, + PagesModule, + FormsModule, + HttpClientModule + ], + providers: [httpInterceptorProviders, CacheTokenService,TreeService], + bootstrap: [AppComponent] +}) +export class AppModule { } diff --git a/src/app/auth.guard.ts b/src/app/auth.guard.ts new file mode 100644 index 0000000..b01fc58 --- /dev/null +++ b/src/app/auth.guard.ts @@ -0,0 +1,31 @@ +import { Injectable } from '@angular/core'; +import { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from '@angular/router'; + +@Injectable({ + providedIn: 'root' +}) +export class AuthGuard implements CanActivate { + + constructor(private router: Router) { + + } + + // 路由守卫 + canActivate(next: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { + + return this.checkLogin(); + } + + checkLogin(): boolean { + + // 判断本地有没有token + const token = sessionStorage.getItem('token'); + + // 如果有token,允许访问 + if (token) { return true; } + + //如果没有token,跳转登录页 + this.router.navigate(['/login']); + return false; + } +} diff --git a/src/app/http-interceptors/base-interceptor.ts b/src/app/http-interceptors/base-interceptor.ts new file mode 100644 index 0000000..9515a59 --- /dev/null +++ b/src/app/http-interceptors/base-interceptor.ts @@ -0,0 +1,71 @@ +import { Injectable } from '@angular/core'; +import { + HttpClient, HttpEvent, HttpInterceptor, HttpHandler, HttpRequest, + HttpErrorResponse +} from '@angular/common/http'; +import { throwError } from 'rxjs' +import { catchError, retry } from 'rxjs/operators'; +import { Router,ActivatedRoute } from '@angular/router' + +import {CacheTokenService} from './cache-token.service' + +//baseurl +// const baseurl = 'http://39.106.78.171:8008'; + +@Injectable() +export class BaseInterceptor implements HttpInterceptor { + + constructor(private http:HttpClient,private router:Router,private route:ActivatedRoute,public token:CacheTokenService) {} + + intercept(req, next: HttpHandler) { + + let newReq = req.clone({ + url: req.hadBaseurl ? `${req.url}` : `${req.url}`, + }); + if(!req.cancelToken) { + /*获取token*/ + let token = sessionStorage.getItem("token") + /*此处设置额外请求头,token令牌*/ + newReq.headers = + newReq.headers.set('Authorization', `Bearer ${token}`) + } + + // 携带请求头发送下一次请求 + return next.handle(newReq) + .pipe( + //箭头函数,注意this指向 + catchError((err) => this.handleError(err)) + ) + } + + // 捕获错误 + //401 token过期 403没权限!!! 400参数错误 404未找到 614刷新令牌过期!!! + + private handleError(error: HttpErrorResponse) { + // 用户认证失败返回登录页 + if (error.status === 401||error.status === 614) { + this.token.delete() + sessionStorage.clear() + window.localStorage.clear() + alert('用户认证信息过期,请重新登录') + this.router.navigate(['/login']) + } + if (error.status === 403) { + alert('对不起,您无此权限') + } + + if (error.error instanceof ErrorEvent) { + // 发生客户端或网络错误。相应处理。 + console.error('An error occurred:', error.error.message); + } else { + // 服务端返回http状态码 + // 服务端返回错误信息 + console.error( + `Backend returned code ${error.status}, ` + + `body was: ${error.error}`); + } + // 返回带有面向用户的错误信息 + return throwError( + error.error); + }; +} diff --git a/src/app/http-interceptors/cache-token.service.ts b/src/app/http-interceptors/cache-token.service.ts new file mode 100644 index 0000000..938dee8 --- /dev/null +++ b/src/app/http-interceptors/cache-token.service.ts @@ -0,0 +1,116 @@ +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http' + +@Injectable({ + providedIn: 'root' +}) + +export class CacheTokenService { + + constructor(private http:HttpClient) { } + public timer; + public settime = null; + + //刷新token令牌定时器 + startUp = ():void=>{ + // this.getmenus(); + this.timer = window.setInterval( + + ()=>{ + window.clearInterval(this.settime) + var token = sessionStorage.getItem("token"); + var refreshToken = sessionStorage.getItem("refreshToken"); + this.http.post( + '/api/Account/RefreshToken', + { + token: token, + refreshToken: refreshToken + } + ).subscribe( + (data:any) => { + console.log(data) + sessionStorage.setItem("token",data.token); + sessionStorage.setItem("refreshToken",data.refreshToken); + } + ) + } + ,18*60*1000) + } + organization = false;//组织机构管理 + un = false;//单位类型管理 + unit = false;//单位类型 + unitmessage = false;//单位基本信息模板 + fireelement = false;//消防要素管理 + power = false;//权限管理 + datapower = false;//数据权限管理 + menuspower = false;//导航菜单管理 + role = false;//角色管理 + user = false;//用户管理 + matlibrary = false//素材库管理 + getmenus = ():void=>{ + this.http.get('/api/Account/NavMenus').subscribe((data:any)=>{ + data.forEach(item => { + if(item.id == "5e4cd3c4146bea9014968113"){//组织机构管理 + this.organization = true + } + if(item.id == "5e4cd85b146bea9014968119"){//单位类型管理 + this.un = true + this.unit = true + this.unitmessage = true;//单位基本信息模板 + this.fireelement = true;//消防要素管理 + } + if(item.id == "5e4cd877146bea901496811a"){//权限管理 + this.power = true;//权限管理 + this.datapower = true;//数据权限管理 + this.menuspower = true;//导航菜单管理 + } + if(item.id == "5e4cd96e146bea901496811d"){//单位类型 + this.un = true + this.unit = true + } + if(item.id == "5e4cd994146bea901496811e"){//单位基本信息模板 + this.un = true + this.unitmessage = true + } + if(item.id == "5e4cd9a8146bea901496811f"){//消防要素管理 + this.un = true + this.fireelement = true + } + if(item.id == "5e4cd9d8146bea9014968120"){//数据权限管理 + this.power = true + this.datapower = true + } + if(item.id == "5e4cd9ec146bea9014968121"){//导航菜单管理 + this.power = true + this.menuspower = true + } + if(item.id == "5e4cd883146bea901496811b"){//角色管理 + this.role = true + } + if(item.id == "5e4cd88d146bea901496811c"){//用户管理 + this.user = true + } + if(item.id == "5e5cb11948374f5264e46e84"){//素材库管理 + this.matlibrary = true + } + }); + // console.log(777,this.user,this.organization,this.power) + }) + } + + + + + + + //删除定时器 + delete = ():void=> { + window.clearInterval(this.timer) + } + + createTime = (time:string)=>{ + var newtime = time.substr(0,4) + '年' + time.substr(5,2) + '月' + time.substr(8,2) + '日' + time.substr(11,8) + } + + +} diff --git a/src/app/http-interceptors/index.ts b/src/app/http-interceptors/index.ts new file mode 100644 index 0000000..3e35136 --- /dev/null +++ b/src/app/http-interceptors/index.ts @@ -0,0 +1,9 @@ +import { HTTP_INTERCEPTORS } from '@angular/common/http'; + +import { BaseInterceptor } from './base-interceptor'; + +/** Http interceptor providers in outside-in order */ +export const httpInterceptorProviders = [ + { provide: HTTP_INTERCEPTORS, useClass: BaseInterceptor, multi: true }, + +]; \ No newline at end of file diff --git a/src/app/http-interceptors/tree.service.ts b/src/app/http-interceptors/tree.service.ts new file mode 100644 index 0000000..f6c9713 --- /dev/null +++ b/src/app/http-interceptors/tree.service.ts @@ -0,0 +1,38 @@ +import { Injectable } from '@angular/core'; + +@Injectable() +export class TreeService { + + + toTree(olddata){ + let newdata = [] + function getparentNode(parentId){ + return olddata.find((item)=>{ + return item.id == parentId + }) + } + olddata.forEach(item => { + var parentNode = getparentNode(item.parentId); + if(parentNode){ + if(!parentNode.children){ + parentNode.children = [] + } + + if (parentNode.children.length == 0) { + item.isTop = true; + } else { + item.isTop = false; + parentNode.children[parentNode.children.length -1].isBottom = false; + } + item.isBottom = true; + + parentNode.children.push(item) + }else{ + if(!item.parentId){//如果parentId为null + newdata.push(item) + } + } + }); + return newdata; + } +} \ No newline at end of file diff --git a/src/app/interface.ts b/src/app/interface.ts new file mode 100644 index 0000000..76ba6a2 --- /dev/null +++ b/src/app/interface.ts @@ -0,0 +1,14 @@ +export interface Data { + token:string, + refreshToken:string, + expires: number, + realName:string +} + +export interface windows { + token:string +} +export enum isno { + "是", + "否" +} diff --git a/src/app/navigation/navigation.component.html b/src/app/navigation/navigation.component.html new file mode 100644 index 0000000..e498029 --- /dev/null +++ b/src/app/navigation/navigation.component.html @@ -0,0 +1,24 @@ + + + +
+ +
+ +
+ + + +
+ + +
+ +
diff --git a/src/app/navigation/navigation.component.scss b/src/app/navigation/navigation.component.scss new file mode 100644 index 0000000..bced315 --- /dev/null +++ b/src/app/navigation/navigation.component.scss @@ -0,0 +1,144 @@ + +.example-container { + width: 100%; + height:100%; + border: 1px solid rgba(0, 0, 0, 0.5); + + } + mat-accordion{ + height: 100%; + } +mat-sidenav{ + box-shadow: 2px 0px 5px #888888; + color: white; + background-color: #3c4252; + width: 240px; + overflow-x: hidden; + p{ + height: 48px; + cursor: pointer; + font-size: 16px; + line-height: 48px; + } + ul{ + width: 100%; + + li{ + list-style: none; + height: 48px; + line-height: 48px; + cursor: pointer; + background: white; + padding-left: 55px; + background-color: #3c4252; + color: white; + } + .superli{ + padding-left: 66px; + } + } + +} + + .logobox{ + border-radius: 50%; + width: 64px; + height: 64px; + + background:url("https://img5.tianyancha.com/logo/lll/cce72488294fb8f4bc670a5bb7f0cc4d.png@!f_200x200") no-repeat; + background-size: 100%; + margin: 0px auto; + + img{ + width: 100%; + height: 100%; + } + + } + .shownav{ + position: absolute; + top: 13px; + z-index: 200; + + } + .mat-accordion .mat-expansion-panel:first-of-type { + border-top-right-radius:0px; + border-top-left-radius:0px; + } + .mat-accordion .mat-expansion-panel:last-of-type { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 0px; + } + .mat-expansion-panel{ + border-radius: 0px; + } + .mat-expansion-panel-spacing { + margin: 0px; + } + .superdiv{ + padding-left: 31px; + } + mat-icon{ + color: white; + } + .navbox{ + position: absolute; + left: 0px; + top: 153px; + right: -18px; + bottom: 0px; + overflow-y: scroll; + } + mat-sidenav-container.myapp-dark-theme{ + background-color: #fafafa; + color: black; + mat-panel-title{ + color: black; + } + ul li{ + background-color: white; + color: black; + } + .biglogobox{ + background-color: #d50000; + } + color: black; + } + .biglogobox{ + width: 250px; + background-color: #42a5f5; + padding-top: 15px; + display: block; + text-align: center; + line-height:40px; + position: relative; + color: #FFF; + font-size: 2em; + margin: 0 auto; + margin-bottom: 100px; + img{ + margin-right: 11px; + } + } + mat-panel-title mat-icon{ + color: #afb2bb; + font-size: 16px; + line-height: 24px; + margin-right: 6px; + } + mat-expansion-panel{ + background-color: #3c4252; + mat-panel-title{ + color: white; + + } + } + + .mat-expansion-indicator::after { + color: white; + } + +.example-container .navbox .router-link-active { + background-color: rgba(225,225,225,.5); + border:0 +} \ No newline at end of file diff --git a/src/app/navigation/navigation.component.spec.ts b/src/app/navigation/navigation.component.spec.ts new file mode 100644 index 0000000..3857718 --- /dev/null +++ b/src/app/navigation/navigation.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { NavigationComponent } from './navigation.component'; + +describe('NavigationComponent', () => { + let component: NavigationComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ NavigationComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(NavigationComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/navigation/navigation.component.ts b/src/app/navigation/navigation.component.ts new file mode 100644 index 0000000..9667ee6 --- /dev/null +++ b/src/app/navigation/navigation.component.ts @@ -0,0 +1,33 @@ +import { Component, OnInit } from '@angular/core'; + +import {CacheTokenService} from '../http-interceptors/cache-token.service'//引入服务 +@Component({ + selector: 'app-navigation', + templateUrl: './navigation.component.html', + styleUrls: ['./navigation.component.scss'] +}) +export class NavigationComponent implements OnInit { + + constructor(public navmenus:CacheTokenService) { } + + ngOnInit() { + + } + ngOnDestroy(){ + } + + + darktheme = false; + switchTheme(dark) { + this.darktheme = dark; + // alert(this.darkTheme); + } + defaulttheme(){ + console.log(111) + this.darktheme = false + } + redtheme(){ + console.log(222) + this.darktheme = true + } +} diff --git a/src/app/navigation/navigation.module.ts b/src/app/navigation/navigation.module.ts new file mode 100644 index 0000000..5574afd --- /dev/null +++ b/src/app/navigation/navigation.module.ts @@ -0,0 +1,114 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { NavigationComponent } from './navigation.component'; +import { MatIconModule } from '@angular/material/icon'; +import { MatSidenavModule } from '@angular/material/sidenav'; +import { RouterModule } from '@angular/router'; +import { FormsModule } from '@angular/forms'; +import { TabbarComponent } from '../tabbar/tabbar.component'; +import { UiModule } from '../ui/ui.module'; + +import {A11yModule} from '@angular/cdk/a11y'; +import {DragDropModule} from '@angular/cdk/drag-drop'; +import {PortalModule} from '@angular/cdk/portal'; +import {ScrollingModule} from '@angular/cdk/scrolling'; +import {CdkStepperModule} from '@angular/cdk/stepper'; +import {CdkTableModule} from '@angular/cdk/table'; +import {CdkTreeModule} from '@angular/cdk/tree'; +import {MatAutocompleteModule} from '@angular/material/autocomplete'; +import {MatBadgeModule} from '@angular/material/badge'; +import {MatBottomSheetModule} from '@angular/material/bottom-sheet'; +import {MatButtonModule} from '@angular/material/button'; +import {MatButtonToggleModule} from '@angular/material/button-toggle'; +import {MatCardModule} from '@angular/material/card'; +import {MatCheckboxModule} from '@angular/material/checkbox'; +import {MatChipsModule} from '@angular/material/chips'; +import {MatStepperModule} from '@angular/material/stepper'; +import {MatDatepickerModule} from '@angular/material/datepicker'; +import {MatDialogModule} from '@angular/material/dialog'; +import {MatDividerModule} from '@angular/material/divider'; +import {MatExpansionModule} from '@angular/material/expansion'; +import {MatGridListModule} from '@angular/material/grid-list'; + +import {MatInputModule} from '@angular/material/input'; +import {MatListModule} from '@angular/material/list'; +import {MatMenuModule} from '@angular/material/menu'; +import {MatNativeDateModule, MatRippleModule} from '@angular/material/core'; +import {MatPaginatorModule} from '@angular/material/paginator'; +import {MatProgressBarModule} from '@angular/material/progress-bar'; +import {MatProgressSpinnerModule} from '@angular/material/progress-spinner'; +import {MatRadioModule} from '@angular/material/radio'; +import {MatSelectModule} from '@angular/material/select'; + +import {MatSliderModule} from '@angular/material/slider'; +import {MatSlideToggleModule} from '@angular/material/slide-toggle'; +import {MatSnackBarModule} from '@angular/material/snack-bar'; +import {MatSortModule} from '@angular/material/sort'; +import {MatTableModule} from '@angular/material/table'; +import {MatTabsModule} from '@angular/material/tabs'; +import {MatToolbarModule} from '@angular/material/toolbar'; +import {MatTooltipModule} from '@angular/material/tooltip'; +import {MatTreeModule} from '@angular/material/tree'; + + +@NgModule({ + declarations: [ + NavigationComponent, + TabbarComponent + ], + imports: [ + CommonModule, + MatSidenavModule, + RouterModule, + MatIconModule, + FormsModule, + UiModule, + + A11yModule, + CdkStepperModule, + CdkTableModule, + CdkTreeModule, + DragDropModule, + MatAutocompleteModule, + MatBadgeModule, + MatBottomSheetModule, + MatButtonModule, + MatButtonToggleModule, + MatCardModule, + MatCheckboxModule, + MatChipsModule, + MatStepperModule, + MatDatepickerModule, + MatDialogModule, + MatDividerModule, + MatExpansionModule, + MatGridListModule, + MatIconModule, + MatInputModule, + MatListModule, + MatMenuModule, + MatNativeDateModule, + MatPaginatorModule, + MatProgressBarModule, + MatProgressSpinnerModule, + MatRadioModule, + MatRippleModule, + MatSelectModule, + MatSidenavModule, + MatSliderModule, + MatSlideToggleModule, + MatSnackBarModule, + MatSortModule, + MatTableModule, + MatTabsModule, + MatToolbarModule, + MatTooltipModule, + MatTreeModule, + PortalModule, + ScrollingModule, + ], + exports: [ + NavigationComponent + ] +}) +export class NavigationModule { } diff --git a/src/app/pages/lockscreen/lockscreen.component.html b/src/app/pages/lockscreen/lockscreen.component.html new file mode 100644 index 0000000..65e7177 --- /dev/null +++ b/src/app/pages/lockscreen/lockscreen.component.html @@ -0,0 +1,28 @@ +
+
+
+ +

锁屏

+
+ + 输入密码 + + lock + +
+

+ 输入密码以进入 +

+ + + +
+
+
diff --git a/src/app/pages/lockscreen/lockscreen.component.scss b/src/app/pages/lockscreen/lockscreen.component.scss new file mode 100644 index 0000000..6c09872 --- /dev/null +++ b/src/app/pages/lockscreen/lockscreen.component.scss @@ -0,0 +1,111 @@ +.pages-lockscreen { + .page-content { + display: inline-block; + width: 400px; + max-width: 100%; + padding: 30px; + } + .avatar { + width: 50px; + height: 50px; + margin: 0 auto; + + img { + border-radius: 50%; + } + + } +} +.layout-full { + position: absolute; + z-index: 0; + width: 100%; + height: 100%; + color: #fff; + font-family: Roboto, sans-serif; + background: url('../../../assets/images/bg_login.jpg'); + &::before { + position: fixed; + top: 0; + left: 0; + z-index: -1; + width: 100%; + height: 100%; + content: ""; + background-position: center top; + background-size: cover; + } + + &::after { + position: fixed; + top: 0; + left: 0; + z-index: -1; + width: 100%; + height: 100%; + content: ""; + background-color: rgba(33, 33, 33, .6); + } + + .page { + position: relative; + height: 100%; + padding: 0; + margin: 0; + background: transparent; + } + +} + + +.auth-box { + + .copyright { + margin-top: 60px; + font-size: 12px; + font-weight: 500; + letter-spacing: 1px; + + p { + margin: 0 0 14px; + } + } + + .social { + mat-icon { + color: #fff; + } + } +} + +.vertical-align { + &::before { + display: inline-block; + height: 100%; + vertical-align: middle; + content: ""; + } + + .vertical-align-middle { + display: inline-block; + vertical-align: middle; + } + +} + +.pages-login { + .page-content { + display: inline-block; + width: 400px; + max-width: 100%; + padding: 30px; + } + +} +.page-content{ + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%,-50%); + text-align: center; +} \ No newline at end of file diff --git a/src/app/pages/lockscreen/lockscreen.component.spec.ts b/src/app/pages/lockscreen/lockscreen.component.spec.ts new file mode 100644 index 0000000..7f11516 --- /dev/null +++ b/src/app/pages/lockscreen/lockscreen.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { LockscreenComponent } from './lockscreen.component'; + +describe('LockscreenComponent', () => { + let component: LockscreenComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ LockscreenComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(LockscreenComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/pages/lockscreen/lockscreen.component.ts b/src/app/pages/lockscreen/lockscreen.component.ts new file mode 100644 index 0000000..04e4fe7 --- /dev/null +++ b/src/app/pages/lockscreen/lockscreen.component.ts @@ -0,0 +1,21 @@ +import { Component, OnInit } from '@angular/core'; +import { Router,ActivatedRoute } from '@angular/router' +import {CacheTokenService} from '../../http-interceptors/cache-token.service'//引入服务 +@Component({ + selector: 'app-lockscreen', + templateUrl: './lockscreen.component.html', + styleUrls: ['./lockscreen.component.scss'] +}) +export class LockscreenComponent implements OnInit { + + constructor(private router:Router,private route:ActivatedRoute,private getMenus:CacheTokenService) { } + password = '' + ngOnInit() { + } + open(){ + if(this.password == "12345678"){ + this.getMenus.getmenus() + this.router.navigate(['/ui/organization']) + } + } +} diff --git a/src/app/pages/login/login.component.html b/src/app/pages/login/login.component.html new file mode 100644 index 0000000..bd480ac --- /dev/null +++ b/src/app/pages/login/login.component.html @@ -0,0 +1,52 @@ + \ No newline at end of file diff --git a/src/app/pages/login/login.component.scss b/src/app/pages/login/login.component.scss new file mode 100644 index 0000000..6fbf2af --- /dev/null +++ b/src/app/pages/login/login.component.scss @@ -0,0 +1,115 @@ + +.login { + width: 100%; + height: 100%; + background: url('../../../assets/images/bg_login.jpg'); + + .loginbox { + width: 100%; + height: 100%; + background-color: #000; + background: rgba(0,0,0,0.5);/*盒子背景透明*/ + position: relative; + } + + .intro { + width: 35%; + position: fixed; + top:35%; + left: 15%; + p { + font-size: 36px; + color:white; + margin-bottom: 35px; + } + span { + font-size: 16px; + color:white; + opacity: 0.5; + } + } + + .card{ + width: 460px; + height: 100%; + background-color: #fff; + position: absolute; + right: 0; + } + +} + +.example-container { + display: flex; + flex-direction: column; + width: 100%; +} +.loginbtn { + margin-top: 25px; + height: 35px; + background-color:#039be5; + border-radius: 15px; + color: #fff;; +} +.mat-card { + box-shadow: 0 0 0; + margin-top: 140px; +} + +.applyfor { + font-size: 16px; + a { + color: #039be5; + } +} + +.website { + font-size: 14px; + text-align: center; + margin-top: 60px; + +} +.alert-danger { + font-size: 14px; + color: red; +} +.cardheader{ + font-size: 26px; + font-weight: 500; + margin-top: 20px; +} +.mat-card { + margin-top: 10px; + padding-left: 20px; +} +.mat-form-field { + padding-left: 20px;; +} +.loginImg { + margin-top: 90px; + text-align: center; +} +.mat-input-element { + position: relative; +} +.mat-card .example-container .icon { + width: 24px; + color: #666; + font-size: 24px; + position: absolute; + top:36px; + left: 15px; +} +.mat-card .example-container .icon2 { + width: 24px; + color: #666; + font-size: 24px; + position: absolute; + top:100px; + left: 15px; +} +a { + font-size: 14px; + color: #0066FF; + margin-left: 250px; +} \ No newline at end of file diff --git a/src/app/pages/login/login.component.spec.ts b/src/app/pages/login/login.component.spec.ts new file mode 100644 index 0000000..d6d85a8 --- /dev/null +++ b/src/app/pages/login/login.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { LoginComponent } from './login.component'; + +describe('LoginComponent', () => { + let component: LoginComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ LoginComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(LoginComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/pages/login/login.component.ts b/src/app/pages/login/login.component.ts new file mode 100644 index 0000000..5c874e9 --- /dev/null +++ b/src/app/pages/login/login.component.ts @@ -0,0 +1,66 @@ +import { Component, OnInit } from '@angular/core'; +import { HttpClient } from '@angular/common/http' +import { Data } from '../../interface' +import { Router,ActivatedRoute } from '@angular/router' + +import {CacheTokenService} from '../../http-interceptors/cache-token.service'//引入服务 +import { MatSnackBar } from '@angular/material/snack-bar'; +@Component({ + selector: 'app-login', + templateUrl: './login.component.html', + styleUrls: ['./login.component.scss'], + +}) +export class LoginComponent implements OnInit { + + constructor(private http:HttpClient,private router:Router,private route:ActivatedRoute,public token:CacheTokenService,public snackBar: MatSnackBar) { } + + ngOnInit() { + + } + errmsg :string = '' + onSubmit(e){ + this.http.post( + '/api/Account/SignIn', + { + name: e.name, + password: e.password + } + ).subscribe( + + (data: Data) => + { + sessionStorage.setItem("token",data.token); + sessionStorage.setItem("refreshToken",data.refreshToken); + this.router.navigate(['/datacollection']) + + + if(e.notlogin){ + console.log("true") + localStorage.setItem("isnologin","true") + localStorage.setItem("token",data.token) + localStorage.setItem("refreshToken",data.refreshToken) + }else{ + console.log("false") + } + + //调用服务中的function刷新token + this.token.startUp() + //调用服务中的function获取菜单 + this.token.getmenus() + }, + (err) => + {this.errmsg = err} + ) + } + + //打开弹窗 + open () { + this.snackBar.open('请联系管理员', '确定', { + duration: 3000 + }); + } + + + +} diff --git a/src/app/pages/pages-routing.module.ts b/src/app/pages/pages-routing.module.ts new file mode 100644 index 0000000..ec1ecae --- /dev/null +++ b/src/app/pages/pages-routing.module.ts @@ -0,0 +1,17 @@ +// import { Routes, RouterModule } from '@angular/router'; +// import { NgModule } from '@angular/core'; +// import { PagesComponent } from './pages.component'; +// import { PersonaldataComponent } from './personaldata/personaldata.component'; + + +// const routes: Routes = [ +// { path: '', component: PagesComponent}, +// { path: 'personaldata ', component: PersonaldataComponent}, + +// ]; + +// @NgModule({ +// imports: [RouterModule.forChild(routes)], +// exports: [RouterModule] +// }) +// export class PagesRoutingModule {} diff --git a/src/app/pages/pages.component.html b/src/app/pages/pages.component.html new file mode 100644 index 0000000..c56369e --- /dev/null +++ b/src/app/pages/pages.component.html @@ -0,0 +1 @@ +

pages works!

diff --git a/src/app/pages/pages.component.scss b/src/app/pages/pages.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/app/pages/pages.component.spec.ts b/src/app/pages/pages.component.spec.ts new file mode 100644 index 0000000..7a864ac --- /dev/null +++ b/src/app/pages/pages.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { PagesComponent } from './pages.component'; + +describe('PagesComponent', () => { + let component: PagesComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ PagesComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PagesComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/pages/pages.component.ts b/src/app/pages/pages.component.ts new file mode 100644 index 0000000..d8ad6cb --- /dev/null +++ b/src/app/pages/pages.component.ts @@ -0,0 +1,15 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-pages', + templateUrl: './pages.component.html', + styleUrls: ['./pages.component.scss'] +}) +export class PagesComponent implements OnInit { + + constructor() { } + + ngOnInit() { + } + +} diff --git a/src/app/pages/pages.module.ts b/src/app/pages/pages.module.ts new file mode 100644 index 0000000..2282c13 --- /dev/null +++ b/src/app/pages/pages.module.ts @@ -0,0 +1,112 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { PagesComponent } from './pages.component'; +import { LoginComponent } from './login/login.component'; +import { RegisterComponent } from './register/register.component'; +// import { PagesRoutingModule } from './pages-routing.module' + + +import {A11yModule} from '@angular/cdk/a11y'; +import {DragDropModule} from '@angular/cdk/drag-drop'; +import {PortalModule} from '@angular/cdk/portal'; +import {ScrollingModule} from '@angular/cdk/scrolling'; +import {CdkStepperModule} from '@angular/cdk/stepper'; +import {CdkTableModule} from '@angular/cdk/table'; +import {CdkTreeModule} from '@angular/cdk/tree'; +import {MatAutocompleteModule} from '@angular/material/autocomplete'; +import {MatBadgeModule} from '@angular/material/badge'; +import {MatBottomSheetModule} from '@angular/material/bottom-sheet'; +import {MatButtonModule} from '@angular/material/button'; +import {MatButtonToggleModule} from '@angular/material/button-toggle'; +import {MatCardModule, MatCardTitle} from '@angular/material/card'; +import {MatCheckboxModule} from '@angular/material/checkbox'; +import {MatChipsModule} from '@angular/material/chips'; +import {MatStepperModule} from '@angular/material/stepper'; +import {MatDatepickerModule} from '@angular/material/datepicker'; +import {MatDialogModule} from '@angular/material/dialog'; +import {MatDividerModule} from '@angular/material/divider'; +import {MatExpansionModule} from '@angular/material/expansion'; +import {MatGridListModule} from '@angular/material/grid-list'; +import {MatIconModule} from '@angular/material/icon'; +import {MatInputModule} from '@angular/material/input'; +import {MatListModule} from '@angular/material/list'; +import {MatMenuModule} from '@angular/material/menu'; +import {MatNativeDateModule, MatRippleModule} from '@angular/material/core'; +import {MatPaginatorModule} from '@angular/material/paginator'; +import {MatProgressBarModule} from '@angular/material/progress-bar'; +import {MatProgressSpinnerModule} from '@angular/material/progress-spinner'; +import {MatRadioModule} from '@angular/material/radio'; +import {MatSelectModule} from '@angular/material/select'; +import {MatSidenavModule} from '@angular/material/sidenav'; +import {MatSliderModule} from '@angular/material/slider'; +import {MatSlideToggleModule} from '@angular/material/slide-toggle'; +import {MatSnackBarModule} from '@angular/material/snack-bar'; +import {MatSortModule} from '@angular/material/sort'; +import {MatTableModule} from '@angular/material/table'; +import {MatTabsModule} from '@angular/material/tabs'; +import {MatToolbarModule} from '@angular/material/toolbar'; +import {MatTooltipModule} from '@angular/material/tooltip'; +import {MatTreeModule} from '@angular/material/tree'; +import { FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms'; +import { PersonaldataComponent } from './personaldata/personaldata.component'; +import { RouterModule } from '@angular/router'; +import { LockscreenComponent } from './lockscreen/lockscreen.component'; +// import { PagesRoutingModule } from './pages-routing.module'; + + +@NgModule({ + declarations: [PagesComponent, LoginComponent, RegisterComponent, LockscreenComponent], + imports: [ + CommonModule, + + A11yModule, + CdkStepperModule, + CdkTableModule, + CdkTreeModule, + DragDropModule, + MatAutocompleteModule, + MatBadgeModule, + MatBottomSheetModule, + MatButtonModule, + MatButtonToggleModule, + MatCardModule, + + MatCheckboxModule, + MatChipsModule, + MatStepperModule, + MatDatepickerModule, + MatDialogModule, + MatDividerModule, + MatExpansionModule, + MatGridListModule, + MatIconModule, + MatInputModule, + MatListModule, + MatMenuModule, + MatNativeDateModule, + MatPaginatorModule, + MatProgressBarModule, + MatProgressSpinnerModule, + MatRadioModule, + MatRippleModule, + MatSelectModule, + MatSidenavModule, + MatSliderModule, + MatSlideToggleModule, + MatSnackBarModule, + MatSortModule, + MatTableModule, + MatTabsModule, + MatToolbarModule, + MatTooltipModule, + MatTreeModule, + PortalModule, + ScrollingModule, + + FormsModule, + ReactiveFormsModule, + RouterModule + // PagesRoutingModule, + ] +}) +export class PagesModule { } diff --git a/src/app/pages/personaldata/personaldata.component.html b/src/app/pages/personaldata/personaldata.component.html new file mode 100644 index 0000000..4e0fb3e --- /dev/null +++ b/src/app/pages/personaldata/personaldata.component.html @@ -0,0 +1,280 @@ +
+
+ + + + 安信科创 + 嘻嘻嘻嘻 +

+ 不要做程序员,要做问题解决者 +

+
+ + + + +
+ +
+ +
+ 260 + 粉丝 +
+
+ 180 + 关注 +
+
+ 2000 + 博客 +
+
+
+ + + + + + +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ 我是假数据 +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ + + + +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ + 我是假数据 +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ 我是假数据 +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ 我是假数据 +
+
+
+
+ +
+
+ + + +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ + 我是假数据 +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ 我是假数据 +
+
+ + + +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ 我是假数据 +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ 我是假数据 +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ + + + +
+
+
+
+ + + +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ 我是假数据 +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ + 我是假数据 +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ + + + +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ 我是假数据 +
+
+ +
+ +
+
我是假数据 + 我是假数据 +
+ 我是假数据 +
+
+
+ 我是假数据 +
+
+
+
+
+
+
+
diff --git a/src/app/pages/personaldata/personaldata.component.scss b/src/app/pages/personaldata/personaldata.component.scss new file mode 100644 index 0000000..674904d --- /dev/null +++ b/src/app/pages/personaldata/personaldata.component.scss @@ -0,0 +1,110 @@ + +#xxx{ + display: flex; + justify-content: space-around; +} +.pages-profile { + padding: 30px; + + .profile-card { + padding: 9px; + text-align: center; + font-family: Roboto, sans-serif; + width: 500px; + height: 600px; + mat-card-content { + padding: 40px 15px; + margin: 0; + } + + .mat-card-avatar { + width: 130px; + height: 130px; + margin-bottom: 10px; + } + + .profile-user { + margin: 10px 0; + font-weight: normal; + } + + .profile-job { + margin-bottom: 20px; + color: #9e9e9e; + font-weight: 500; + } + + .profile-introduction { + margin: 0 0 1rem; + color: #757575; + } + + .profile-social { + margin: 25px 0; + + mat-icon { + margin: 0 10px; + color: rgba(66, 66, 66, .4); + } + } + + mat-card-actions { + padding: 10px; + background: #f6f9fd; + } + + .profile-card-footer { + display: flex; + justify-content: space-around; + .profile-stat-count { + display: block; + margin-bottom: 3px; + font-size: 20px; + font-weight: bold; + color: #616161; + + +span { + color: #9e9e9e; + } + } + } + + } + + .profile-board { + padding: 30px; + width: 500px; + mat-list { + padding-bottom: 20px; + } + + mat-list-item { + height: auto; + padding: 25px 0; + margin-left: -16px; + border-bottom: 1px solid #dfe0df; + + .profile-item-content { + padding: 20px 0 0 56px; + line-height: 1.571429; + color: #757575; + white-space: normal; + display: flex; + flex-wrap: wrap; + + img { + width: 100%; + max-width: 220px; + max-height: 150px; + padding: 0 20px 20px 0; + } + } + } + } + + .show-more-btn { + width: 100%; + background-color: #eee; + color: #3949ab; + } +} \ No newline at end of file diff --git a/src/app/pages/personaldata/personaldata.component.spec.ts b/src/app/pages/personaldata/personaldata.component.spec.ts new file mode 100644 index 0000000..cf44bea --- /dev/null +++ b/src/app/pages/personaldata/personaldata.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { PersonaldataComponent } from './personaldata.component'; + +describe('PersonaldataComponent', () => { + let component: PersonaldataComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ PersonaldataComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PersonaldataComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/pages/personaldata/personaldata.component.ts b/src/app/pages/personaldata/personaldata.component.ts new file mode 100644 index 0000000..28d9b93 --- /dev/null +++ b/src/app/pages/personaldata/personaldata.component.ts @@ -0,0 +1,15 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-personaldata', + templateUrl: './personaldata.component.html', + styleUrls: ['./personaldata.component.scss'] +}) +export class PersonaldataComponent implements OnInit { + + constructor() { } + + ngOnInit() { + } + +} diff --git a/src/app/pages/register/register.component.html b/src/app/pages/register/register.component.html new file mode 100644 index 0000000..4439983 --- /dev/null +++ b/src/app/pages/register/register.component.html @@ -0,0 +1,81 @@ + \ No newline at end of file diff --git a/src/app/pages/register/register.component.scss b/src/app/pages/register/register.component.scss new file mode 100644 index 0000000..5212d70 --- /dev/null +++ b/src/app/pages/register/register.component.scss @@ -0,0 +1,88 @@ +.login { + width: 100%; + height: 100%; + background: url('../../../assets/images/bg_login.jpg'); + + .loginbox { + width: 100%; + height: 100%; + background-color: #000; + background: rgba(0,0,0,0.5);/*盒子背景透明*/ + // opacity: 0.5; + position: relative; + } + + .intro { + width: 650px; + // height: 350px; + position: fixed; + top:35%; + left: 15%; + p { + font-size: 36px; + color:white; + margin-bottom: 35px; + } + span { + font-size: 16px; + color:white; + opacity: 0.5; + } + } + + .card{ + width: 460px; + height: 100%; + padding-left: 20px; + background-color: #fff; + position: absolute; + right: 0; + p { + width: 100%; + margin: 18px 0; + } + .cardheader{ + font-size: 26px; + font-weight: 500; + } + + } + +} + +.example-container { + display: flex; + flex-direction: column; +} + +.example-container > * { + width: 100%; +} +.loginbtn { + margin-top: 18px; + height: 35px; + background-color:#039be5; + border-radius: 15px; + color: #fff;; +} +.mat-card { + box-shadow: 0 0 0; + margin-top: 70px; +} + +.applyfor { + font-size: 16px; + a { + color: #039be5; + } +} + +.website { + font-size: 14px; + text-align: center; + margin-top: 50px; +} +.alert-danger { + font-size: 14px; + color: red; +} \ No newline at end of file diff --git a/src/app/pages/register/register.component.spec.ts b/src/app/pages/register/register.component.spec.ts new file mode 100644 index 0000000..6c19551 --- /dev/null +++ b/src/app/pages/register/register.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { RegisterComponent } from './register.component'; + +describe('RegisterComponent', () => { + let component: RegisterComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ RegisterComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(RegisterComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/pages/register/register.component.ts b/src/app/pages/register/register.component.ts new file mode 100644 index 0000000..55013f6 --- /dev/null +++ b/src/app/pages/register/register.component.ts @@ -0,0 +1,19 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-register', + templateUrl: './register.component.html', + styleUrls: ['./register.component.scss'] +}) +export class RegisterComponent implements OnInit { + + constructor() { } + + ngOnInit() { + } + + onSubmit(e){ + console.log(e) + } + +} diff --git a/src/app/pipes/boolean.pipe.ts b/src/app/pipes/boolean.pipe.ts new file mode 100644 index 0000000..c93e438 --- /dev/null +++ b/src/app/pipes/boolean.pipe.ts @@ -0,0 +1,13 @@ +import { Pipe, PipeTransform } from '@angular/core'; +import { isno } from '../interface' +@Pipe({name: 'isno'}) +export class IsnoPipe implements PipeTransform { + transform(value: boolean): string { + if(value){ + var x = 0 + }else{ + x=1 + } + return isno[x] + } +} \ No newline at end of file diff --git a/src/app/pipes/time.pipe.ts b/src/app/pipes/time.pipe.ts new file mode 100644 index 0000000..23882b6 --- /dev/null +++ b/src/app/pipes/time.pipe.ts @@ -0,0 +1,9 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +@Pipe({name: 'time'}) +export class TimePipe implements PipeTransform { + transform(value: string): string { + var newtime = value.substr(0,4) + '-' + value.substr(5,2) + '-' + value.substr(8,2) + return newtime + } +} \ No newline at end of file diff --git a/src/app/tabbar/tabbar.component.html b/src/app/tabbar/tabbar.component.html new file mode 100644 index 0000000..c444963 --- /dev/null +++ b/src/app/tabbar/tabbar.component.html @@ -0,0 +1,63 @@ + + +

用户信息采集平台

+ + + + + + + + + + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/src/app/tabbar/tabbar.component.scss b/src/app/tabbar/tabbar.component.scss new file mode 100644 index 0000000..115d3d0 --- /dev/null +++ b/src/app/tabbar/tabbar.component.scss @@ -0,0 +1,41 @@ +mat-toolbar{ + position: relative; + padding-left: 65px; +} +.logo{ + height: 64px; + widows: 64px; +} + +h1{ + line-height: 64px; + color: white; +} +mat-icon{ + color: white; +} +.login{ + position: absolute; + right:30px; +} +.fullscreen{ + position: absolute; + right:60px; +} +.setting{ + position: absolute; + right:120px; +} +.lockscreen{ + position: absolute; + right:160px; +} +.darktheme{ + position: absolute; + right:140px; + display: none; +} + +.boxed{ + width: 1200px; +} \ No newline at end of file diff --git a/src/app/tabbar/tabbar.component.spec.ts b/src/app/tabbar/tabbar.component.spec.ts new file mode 100644 index 0000000..6bcc230 --- /dev/null +++ b/src/app/tabbar/tabbar.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { TabbarComponent } from './tabbar.component'; + +describe('TabbarComponent', () => { + let component: TabbarComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ TabbarComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TabbarComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/tabbar/tabbar.component.ts b/src/app/tabbar/tabbar.component.ts new file mode 100644 index 0000000..151cb9c --- /dev/null +++ b/src/app/tabbar/tabbar.component.ts @@ -0,0 +1,105 @@ +import { Component, OnInit,Output,EventEmitter } from '@angular/core'; +import { HttpClient } from '@angular/common/http' +import { Router,ActivatedRoute } from '@angular/router' + +import {CacheTokenService} from '../http-interceptors/cache-token.service'//引入服务 +import { MatDialog } from '@angular/material/dialog'; +import {ChangepasswordComponent} from '../ui/changepassword/changepassword.component' +@Component({ + selector: 'app-tabbar', + templateUrl: './tabbar.component.html', + styleUrls: ['./tabbar.component.scss'] +}) +export class TabbarComponent implements OnInit { + theme: boolean = true; + @Output() + toggle = new EventEmitter(); + @Output() + toggleDarkTheme = new EventEmitter(); + @Output() + defaulttheme = new EventEmitter(); + @Output() + redtheme = new EventEmitter(); + // @Output() + // boxed = new EventEmitter(); + onChange(eventValue: boolean){ + this.toggleDarkTheme.emit(eventValue); + } + constructor(private http:HttpClient,private router:Router,private route:ActivatedRoute,public token:CacheTokenService,public dialog: MatDialog) { } + ngOnInit() { + } + boxed(css){ + const Element = document.body; + Element.style.width = '1200px' + } + standard(){ + const Element = document.body; + Element.style.width = '100%' + } + + isfullscreen:boolean = false; + fullscreenToggle(){ + const docElmWithBrowsersFullScreenFunctions = document.documentElement as HTMLElement & { + mozRequestFullScreen(): Promise; + webkitRequestFullscreen(): Promise; + msRequestFullscreen(): Promise; + }; + + if (docElmWithBrowsersFullScreenFunctions.requestFullscreen) { + docElmWithBrowsersFullScreenFunctions.requestFullscreen(); + } else if (docElmWithBrowsersFullScreenFunctions.mozRequestFullScreen) { /* Firefox */ + docElmWithBrowsersFullScreenFunctions.mozRequestFullScreen(); + } else if (docElmWithBrowsersFullScreenFunctions.webkitRequestFullscreen) { /* Chrome, Safari and Opera */ + docElmWithBrowsersFullScreenFunctions.webkitRequestFullscreen(); + } else if (docElmWithBrowsersFullScreenFunctions.msRequestFullscreen) { /* IE/Edge */ + docElmWithBrowsersFullScreenFunctions.msRequestFullscreen(); + } + + this.isfullscreen = true; + + } + closefullscreen(){ + const docWithBrowsersExitFunctions = document as Document & { + mozCancelFullScreen(): Promise; + webkitExitFullscreen(): Promise; + msExitFullscreen(): Promise; + }; + if (docWithBrowsersExitFunctions.exitFullscreen) { + docWithBrowsersExitFunctions.exitFullscreen(); + } else if (docWithBrowsersExitFunctions.mozCancelFullScreen) { /* Firefox */ + docWithBrowsersExitFunctions.mozCancelFullScreen(); + } else if (docWithBrowsersExitFunctions.webkitExitFullscreen) { /* Chrome, Safari and Opera */ + docWithBrowsersExitFunctions.webkitExitFullscreen(); + } else if (docWithBrowsersExitFunctions.msExitFullscreen) { /* IE/Edge */ + docWithBrowsersExitFunctions.msExitFullscreen(); + } + this.isfullscreen = false; + } + + //退出系统 + signOut = () => { + let out = confirm("您确定要退出吗") + if(out) { + this.http.post('/api/Account/SignOut',{}).subscribe( + data=> { + this.token.delete() + sessionStorage.clear() + window.localStorage.clear() + alert('成功退出') + this.router.navigate(['/login']) + } + ) + } + } + + //修改密码 + changpsw() { + let dialogRef = this.dialog.open(ChangepasswordComponent, + {width:'348px'}); + + dialogRef.afterClosed().subscribe(); + } + + + +} diff --git a/src/app/theme.scss b/src/app/theme.scss new file mode 100644 index 0000000..f220098 --- /dev/null +++ b/src/app/theme.scss @@ -0,0 +1,18 @@ +@import "./theming"; +@include mat-core(); + +$my-app-primary:mat-palette($mat-blue,500); +$my-app-accent :mat-palette($mat-pink,A200,A100,A400); +$my-app-warn :mat-palette($mat-red); +$my-app-theme :mat-light-theme($my-app-primary,$my-app-accent,$my-app-warn); +@include angular-material-theme($my-app-theme); + + +$my-dark-primary:mat-palette($mat-red,A700); +$my-dark-accent :mat-palette($mat-amber,A200,A100,A400); +$my-dark-warn :mat-palette($mat-deep-orange); +$my-dark-theme :mat-dark-theme($my-dark-primary,$my-dark-accent,$my-dark-warn); + +.myapp-dark-theme{ +@include angular-material-theme($my-dark-theme); +} diff --git a/src/app/ui/all-file/all-file.component.html b/src/app/ui/all-file/all-file.component.html new file mode 100644 index 0000000..8c29dbe --- /dev/null +++ b/src/app/ui/all-file/all-file.component.html @@ -0,0 +1 @@ +

all-file works!

diff --git a/src/app/ui/all-file/all-file.component.scss b/src/app/ui/all-file/all-file.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/app/ui/all-file/all-file.component.spec.ts b/src/app/ui/all-file/all-file.component.spec.ts new file mode 100644 index 0000000..b688763 --- /dev/null +++ b/src/app/ui/all-file/all-file.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { AllFileComponent } from './all-file.component'; + +describe('AllFileComponent', () => { + let component: AllFileComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ AllFileComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AllFileComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/ui/all-file/all-file.component.ts b/src/app/ui/all-file/all-file.component.ts new file mode 100644 index 0000000..215dab3 --- /dev/null +++ b/src/app/ui/all-file/all-file.component.ts @@ -0,0 +1,15 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-all-file', + templateUrl: './all-file.component.html', + styleUrls: ['./all-file.component.scss'] +}) +export class AllFileComponent implements OnInit { + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/src/app/ui/changepassword/changepassword.component.html b/src/app/ui/changepassword/changepassword.component.html new file mode 100644 index 0000000..a2ebef3 --- /dev/null +++ b/src/app/ui/changepassword/changepassword.component.html @@ -0,0 +1,48 @@ +
+ 修改密码 +
+
+ +
+ + 原密码 + + + + + 新密码 + + + +
+
密码格式8-20位,字母+数字
+
+ + 确认新密码 + + + +
+
密码输入不一致!
+
+
+ {{errmsg}} +
+ +
+ + +
+ +
+
\ No newline at end of file diff --git a/src/app/ui/changepassword/changepassword.component.scss b/src/app/ui/changepassword/changepassword.component.scss new file mode 100644 index 0000000..b8abf96 --- /dev/null +++ b/src/app/ui/changepassword/changepassword.component.scss @@ -0,0 +1,15 @@ +.passwordCard { + width: 300px; + height: 100%; +} +.mat-form-field { + display: block; + width: 300px; +} +.group-error-content { + font-size: 8px; + color: red; +} +.mat-dialog-content { + overflow: visible +} diff --git a/src/app/ui/changepassword/changepassword.component.ts b/src/app/ui/changepassword/changepassword.component.ts new file mode 100644 index 0000000..23309e9 --- /dev/null +++ b/src/app/ui/changepassword/changepassword.component.ts @@ -0,0 +1,38 @@ +import { Component, OnInit } from '@angular/core'; +import { HttpClient } from '@angular/common/http' +import { MatDialogRef } from '@angular/material/dialog'; + +@Component({ + selector: 'app-changepassword', + templateUrl: './changepassword.component.html', + styleUrls: ['./changepassword.component.scss'] +}) + +export class ChangepasswordComponent implements OnInit { + + constructor(private http:HttpClient, + public dialogRef: MatDialogRef) { } + + ngOnInit() { + } + errmsg :string = '' + + onSubmit(e){ + this.http.put( + '/api/Account/Password', + { + newPassword: e.newPassword, + password: e.password + } + ).subscribe(data=> { + alert('密码修改成功') + this.dialogRef.close(data); + },(err) => + {this.errmsg = err} + ) + } + + + +} + diff --git a/src/app/ui/changepassword/equal-validator.directive.ts b/src/app/ui/changepassword/equal-validator.directive.ts new file mode 100644 index 0000000..1aa6d9c --- /dev/null +++ b/src/app/ui/changepassword/equal-validator.directive.ts @@ -0,0 +1,31 @@ +import { Directive, Input } from '@angular/core'; +import { NG_VALIDATORS, Validator, AbstractControl, ValidatorFn} from '@angular/forms'; + +@Directive({ + selector: '[appConfirmpsw]', + providers: [{ + provide : NG_VALIDATORS, + useExisting : ConfirmpswDirective, + multi: true + }] +}) +export class ConfirmpswDirective implements Validator { + + @Input('appConfirmpsw') confirmpsw: string; + constructor() { + + } + validate(control: AbstractControl): {[key: string]: any} { + console.log(this.confirmpsw); + return this.confirmpsw ? comfirmPswValidator(this.confirmpsw)(control) : null; + } +} + +export function comfirmPswValidator(_confirmpsw: string): ValidatorFn { + return (control: AbstractControl): {[key: string]: any} => { + if ( !control.value ) { + return { 'required' : true }; + } + return control.value !== _confirmpsw ? {'confirmpsw' : {value: true}} : null; + }; +} \ No newline at end of file diff --git a/src/app/ui/ui-routing.module.ts b/src/app/ui/ui-routing.module.ts new file mode 100644 index 0000000..eca5c9e --- /dev/null +++ b/src/app/ui/ui-routing.module.ts @@ -0,0 +1,12 @@ +import { Routes, RouterModule } from '@angular/router'; +import { NgModule } from '@angular/core'; +import { AllFileComponent } from './all-file/all-file.component'; +const routes: Routes = [ + { path: '', component:AllFileComponent } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class UiRoutingModule {} diff --git a/src/app/ui/ui.module.ts b/src/app/ui/ui.module.ts new file mode 100644 index 0000000..c56d91b --- /dev/null +++ b/src/app/ui/ui.module.ts @@ -0,0 +1,111 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { UiRoutingModule } from './ui-routing.module'; +import {A11yModule} from '@angular/cdk/a11y'; +import {DragDropModule} from '@angular/cdk/drag-drop'; +import {PortalModule} from '@angular/cdk/portal'; +import {ScrollingModule} from '@angular/cdk/scrolling'; +import {CdkStepperModule} from '@angular/cdk/stepper'; +import {CdkTableModule} from '@angular/cdk/table'; +import {CdkTreeModule} from '@angular/cdk/tree'; +import {MatAutocompleteModule} from '@angular/material/autocomplete'; +import {MatBadgeModule} from '@angular/material/badge'; +import {MatBottomSheetModule} from '@angular/material/bottom-sheet'; +import {MatButtonModule} from '@angular/material/button'; +import {MatButtonToggleModule} from '@angular/material/button-toggle'; +import {MatCardModule} from '@angular/material/card'; +import {MatCheckboxModule} from '@angular/material/checkbox'; +import {MatChipsModule} from '@angular/material/chips'; +import {MatStepperModule} from '@angular/material/stepper'; +import {MatDatepickerModule} from '@angular/material/datepicker'; +import {MatDialogModule} from '@angular/material/dialog'; +import {MatDividerModule} from '@angular/material/divider'; +import {MatExpansionModule} from '@angular/material/expansion'; +import {MatGridListModule} from '@angular/material/grid-list'; +import {MatIconModule} from '@angular/material/icon'; +import {MatInputModule} from '@angular/material/input'; +import {MatListModule} from '@angular/material/list'; +import {MatMenuModule} from '@angular/material/menu'; +import {MatNativeDateModule, MatRippleModule, MatOption} from '@angular/material/core'; +import {MatPaginatorModule} from '@angular/material/paginator'; +import {MatProgressBarModule} from '@angular/material/progress-bar'; +import {MatProgressSpinnerModule} from '@angular/material/progress-spinner'; +import {MatRadioModule} from '@angular/material/radio'; +import {MatSelectModule} from '@angular/material/select'; +import {MatSidenavModule} from '@angular/material/sidenav'; +import {MatSliderModule} from '@angular/material/slider'; +import {MatSlideToggleModule} from '@angular/material/slide-toggle'; +import {MatSnackBarModule} from '@angular/material/snack-bar'; +import {MatSortModule} from '@angular/material/sort'; +import {MatTableModule} from '@angular/material/table'; +import {MatTabsModule} from '@angular/material/tabs'; +import {MatToolbarModule} from '@angular/material/toolbar'; +import {MatTooltipModule} from '@angular/material/tooltip'; +import {MatTreeModule} from '@angular/material/tree'; +import { ReactiveFormsModule, FormsModule } from '@angular/forms'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatPaginatorIntl } from '@angular/material/paginator'; +import { PersonaldataComponent } from '../pages/personaldata/personaldata.component'; +import { ChangepasswordComponent } from './changepassword/changepassword.component'; +import { IsnoPipe } from '../pipes/boolean.pipe'; +import {ConfirmpswDirective} from './changepassword/equal-validator.directive' +import { TimePipe } from '../pipes/time.pipe'; +import { FileUploadModule } from 'ng2-file-upload' +import { AllFileComponent } from './all-file/all-file.component'; + +@NgModule({ + declarations: [PersonaldataComponent, ChangepasswordComponent,IsnoPipe,ConfirmpswDirective,TimePipe, AllFileComponent], + + imports: [ + CommonModule, + UiRoutingModule, + A11yModule, + CdkStepperModule, + CdkTableModule, + CdkTreeModule, + DragDropModule, + MatAutocompleteModule, + MatBadgeModule, + MatBottomSheetModule, + MatButtonModule, + MatButtonToggleModule, + MatCardModule, + MatCheckboxModule, + MatChipsModule, + MatStepperModule, + MatDatepickerModule, + MatDialogModule, + MatDividerModule, + MatExpansionModule, + MatGridListModule, + MatIconModule, + MatInputModule, + MatListModule, + MatMenuModule, + MatNativeDateModule, + MatPaginatorModule, + MatProgressBarModule, + MatProgressSpinnerModule, + MatRadioModule, + MatRippleModule, + MatSelectModule, + MatSidenavModule, + MatSliderModule, + MatSlideToggleModule, + MatSnackBarModule, + MatSortModule, + MatTableModule, + MatTabsModule, + MatToolbarModule, + MatTooltipModule, + MatTreeModule, + PortalModule, + ScrollingModule, + + ReactiveFormsModule, + FormsModule, + FileUploadModule + ] + +}) +export class UiModule { } diff --git a/src/assets/.gitkeep b/src/assets/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/src/assets/images/bg_login.jpg b/src/assets/images/bg_login.jpg new file mode 100644 index 0000000000000000000000000000000000000000..848087eeaa57c261b1f96d414134776152c7e0b4 GIT binary patch literal 249242 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%0D~K})(8NQH#M+{%d|2g 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�m&7mGSPqct0l^Hn3uhm(|t%o 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/login.gif b/src/assets/images/login.gif new file mode 100644 index 0000000000000000000000000000000000000000..91438e21309616edbac1f46d33292f9fc456134c GIT binary patch literal 7823 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 z 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
fSScUfCb= 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 WcZ@i?LyX}70000 + + + + 数字化预案编制管理平台 + + + + + + + + + + + diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..611c343 --- /dev/null +++ b/src/main.ts @@ -0,0 +1,13 @@ +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +if (environment.production) { + enableProdMode(); +} + +// window['CESIUM_BASE_URL'] = 'src/assets/cesium'; +platformBrowserDynamic().bootstrapModule(AppModule) + .catch(err => console.error(err)); diff --git a/src/polyfills.ts b/src/polyfills.ts new file mode 100644 index 0000000..aa665d6 --- /dev/null +++ b/src/polyfills.ts @@ -0,0 +1,63 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. + +/** + * Web Animations `@angular/platform-browser/animations` + * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. + * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). + */ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags.ts'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js/dist/zone'; // Included with Angular CLI. + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ diff --git a/src/styles.scss b/src/styles.scss new file mode 100644 index 0000000..8b37d58 --- /dev/null +++ b/src/styles.scss @@ -0,0 +1,61 @@ + +// @import "~@angular/material/prebuilt-themes/indigo-pink.css"; +@import './app/theme.scss'; + +html,body,ul,ol,dl,li,dt,dd,p,form,input,h1,h2,h3,h4,h5,h6,section,article,aside,header,footer,nav,figure,time,mark,main,canvas{ + height:100%; + margin:0; + padding:0; + +} +body{ + margin: 0 auto; +} +b,strong,i,em,h1,h2,h3,h4,h5,h6{ + font-weight:500; + font-style:normal; +} +img{ + border:none; +} +a{ + text-decoration: none; + color:#000; +ul,ol,li{ + list-style:none; + overflow-x: hidden; +} +.clearfn:after{ + content:""; + clear:both; + display: block; + overflow:hidden; + height:0; + visibility: hidden; +} +} +.mat-expansion-panel-body { + padding: 0px !important; +} +app-root{ + height: 100%; +} + +h1{ + font-size: 16px; +} +.mat-expansion-indicator::after { + color: white; +} +.example-sidenav .mat-drawer-inner-container { + overflow: hidden; +} +table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type, +table td.mat-footer-cell:last-of-type{ + padding-right: 0px; +} + +//x轴滚动条隐藏 +.example-sidenav-content { + overflow-x: hidden; overflow-y: auto; + } diff --git a/src/test.ts b/src/test.ts new file mode 100644 index 0000000..1631789 --- /dev/null +++ b/src/test.ts @@ -0,0 +1,20 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/dist/zone-testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: any; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() +); +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/tsconfig.app.json b/tsconfig.app.json new file mode 100644 index 0000000..df4d05e --- /dev/null +++ b/tsconfig.app.json @@ -0,0 +1,18 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./out-tsc/app", + "types": [] + }, + "files": [ + "src/main.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.d.ts" + ], + "exclude": [ + "src/test.ts", + "src/**/*.spec.ts" + ] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..30956ae --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,26 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "baseUrl": "./", + "outDir": "./dist/out-tsc", + "sourceMap": true, + "declaration": false, + "downlevelIteration": true, + "experimentalDecorators": true, + "module": "esnext", + "moduleResolution": "node", + "importHelpers": true, + "target": "es2015", + "typeRoots": [ + "node_modules/@types" + ], + "lib": [ + "es2018", + "dom" + ] + }, + "angularCompilerOptions": { + "fullTemplateTypeCheck": true, + "strictInjectionParameters": true + } +} diff --git a/tsconfig.spec.json b/tsconfig.spec.json new file mode 100644 index 0000000..6400fde --- /dev/null +++ b/tsconfig.spec.json @@ -0,0 +1,18 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./out-tsc/spec", + "types": [ + "jasmine", + "node" + ] + }, + "files": [ + "src/test.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/tslint.json b/tslint.json new file mode 100644 index 0000000..c8d70f1 --- /dev/null +++ b/tslint.json @@ -0,0 +1,91 @@ +{ + "extends": "tslint:recommended", + "rules": { + "array-type": false, + "arrow-parens": false, + "deprecation": { + "severity": "warning" + }, + "component-class-suffix": true, + "contextual-lifecycle": true, + "directive-class-suffix": true, + "directive-selector": [ + true, + "attribute", + "app", + "camelCase" + ], + "component-selector": [ + true, + "element", + "app", + "kebab-case" + ], + "import-blacklist": [ + true, + "rxjs/Rx" + ], + "interface-name": false, + "max-classes-per-file": false, + "max-line-length": [ + true, + 140 + ], + "member-access": false, + "member-ordering": [ + true, + { + "order": [ + "static-field", + "instance-field", + "static-method", + "instance-method" + ] + } + ], + "no-consecutive-blank-lines": false, + "no-console": [ + true, + "debug", + "info", + "time", + "timeEnd", + "trace" + ], + "no-empty": false, + "no-inferrable-types": [ + true, + "ignore-params" + ], + "no-non-null-assertion": true, + "no-redundant-jsdoc": true, + "no-switch-case-fall-through": true, + "no-var-requires": false, + "object-literal-key-quotes": [ + true, + "as-needed" + ], + "object-literal-sort-keys": false, + "ordered-imports": false, + "quotemark": [ + true, + "single" + ], + "trailing-comma": false, + "no-conflicting-lifecycle": true, + "no-host-metadata-property": true, + "no-input-rename": true, + "no-inputs-metadata-property": true, + "no-output-native": true, + "no-output-on-prefix": true, + "no-output-rename": true, + "no-outputs-metadata-property": true, + "template-banana-in-box": true, + "template-no-negated-async": true, + "use-lifecycle-interface": true, + "use-pipe-transform-interface": true + }, + "rulesDirectory": [ + "codelyzer" + ] +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..20aebaa --- /dev/null +++ b/yarn.lock @@ -0,0 +1,7996 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@angular-devkit/architect@0.803.21": + version "0.803.21" + resolved "https://registry.npm.taobao.org/@angular-devkit/architect/download/@angular-devkit/architect-0.803.21.tgz#0e76b6f646ebdbd9bb88d3972b2ca66fed950f7d" + integrity sha1-Dna29kbr29m7iNOXKyymb+2VD30= + dependencies: + "@angular-devkit/core" "8.3.21" + rxjs "6.4.0" + +"@angular-devkit/build-angular@~0.803.21": + version "0.803.21" + resolved "https://registry.npm.taobao.org/@angular-devkit/build-angular/download/@angular-devkit/build-angular-0.803.21.tgz#f3d12ea09748b05eb2d835a7de7997599fb6b752" + integrity sha1-89EuoJdIsF6y2DWn3nmXWZ+2t1I= + dependencies: + "@angular-devkit/architect" "0.803.21" + "@angular-devkit/build-optimizer" "0.803.21" + "@angular-devkit/build-webpack" "0.803.21" + "@angular-devkit/core" "8.3.21" + "@babel/core" "7.7.5" + "@babel/preset-env" "7.7.6" + "@ngtools/webpack" "8.3.21" + ajv "6.10.2" + autoprefixer "9.6.1" + browserslist "4.6.6" + cacache "12.0.2" + caniuse-lite "1.0.30000989" + circular-dependency-plugin "5.2.0" + clean-css "4.2.1" + copy-webpack-plugin "5.1.1" + core-js "3.2.1" + file-loader "4.2.0" + find-cache-dir "3.0.0" + glob "7.1.4" + istanbul-instrumenter-loader "3.0.1" + jest-worker "24.9.0" + karma-source-map-support "1.4.0" + less "3.9.0" + less-loader "5.0.0" + license-webpack-plugin "2.1.2" + loader-utils "1.2.3" + mini-css-extract-plugin "0.8.0" + minimatch "3.0.4" + open "6.4.0" + parse5 "4.0.0" + postcss "7.0.17" + postcss-import "12.0.1" + postcss-loader "3.0.0" + raw-loader "3.1.0" + regenerator-runtime "0.13.3" + rxjs "6.4.0" + sass "1.22.9" + sass-loader "7.2.0" + semver "6.3.0" + source-map "0.7.3" + source-map-loader "0.2.4" + source-map-support "0.5.13" + speed-measure-webpack-plugin "1.3.1" + style-loader "1.0.0" + stylus "0.54.5" + stylus-loader "3.0.2" + terser "4.3.9" + terser-webpack-plugin "1.4.3" + tree-kill "1.2.1" + webpack "4.39.2" + webpack-dev-middleware "3.7.2" + webpack-dev-server "3.9.0" + webpack-merge "4.2.1" + webpack-sources "1.4.3" + webpack-subresource-integrity "1.1.0-rc.6" + worker-plugin "3.2.0" + +"@angular-devkit/build-optimizer@0.803.21": + version "0.803.21" + resolved "https://registry.npm.taobao.org/@angular-devkit/build-optimizer/download/@angular-devkit/build-optimizer-0.803.21.tgz#ecb3b6bba4b13ffbfbdbefb5997f690aa3635203" + integrity sha1-7LO2u6SxP/v72++1mX9pCqNjUgM= + dependencies: + loader-utils "1.2.3" + source-map "0.7.3" + tslib "1.10.0" + typescript "3.5.3" + webpack-sources "1.4.3" + +"@angular-devkit/build-webpack@0.803.21": + version "0.803.21" + resolved "https://registry.npm.taobao.org/@angular-devkit/build-webpack/download/@angular-devkit/build-webpack-0.803.21.tgz#fd45754c0123f44fcde8fa6411ebea52d98054f0" + integrity sha1-/UV1TAEj9E/N6PpkEevqUtmAVPA= + dependencies: + "@angular-devkit/architect" "0.803.21" + "@angular-devkit/core" "8.3.21" + rxjs "6.4.0" + +"@angular-devkit/core@8.3.21": + version "8.3.21" + resolved "https://registry.npm.taobao.org/@angular-devkit/core/download/@angular-devkit/core-8.3.21.tgz#447022813e46333e930816c287722d06b9c4dd3a" + integrity sha1-RHAigT5GMz6TCBbCh3ItBrnE3To= + dependencies: + ajv "6.10.2" + fast-json-stable-stringify "2.0.0" + magic-string "0.25.3" + rxjs "6.4.0" + source-map "0.7.3" + +"@angular-devkit/schematics@8.3.21": + version "8.3.21" + resolved "https://registry.npm.taobao.org/@angular-devkit/schematics/download/@angular-devkit/schematics-8.3.21.tgz#80d515f480180be18a4130ea691f90153bcab3ea" + integrity sha1-gNUV9IAYC+GKQTDqaR+QFTvKs+o= + dependencies: + "@angular-devkit/core" "8.3.21" + rxjs "6.4.0" + +"@angular/animations@^8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/animations/download/@angular/animations-8.2.14.tgz?cache=0&sync_timestamp=1576712912708&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40angular%2Fanimations%2Fdownload%2F%40angular%2Fanimations-8.2.14.tgz#76736b21e56165e6ca4925fb69605bdcc56aba7d" + integrity sha1-dnNrIeVhZebKSSX7aWBb3MVqun0= + dependencies: + tslib "^1.9.0" + +"@angular/cdk@^8.2.3": + version "8.2.3" + resolved "https://registry.npm.taobao.org/@angular/cdk/download/@angular/cdk-8.2.3.tgz#16b96ffa935cbf5a646757ecaf2b19c434678f72" + integrity sha1-Frlv+pNcv1pkZ1fsrysZxDRnj3I= + dependencies: + tslib "^1.7.1" + optionalDependencies: + parse5 "^5.0.0" + +"@angular/cli@~8.3.21": + version "8.3.21" + resolved "https://registry.npm.taobao.org/@angular/cli/download/@angular/cli-8.3.21.tgz#cbb05b86b7f34ecd81d52ccad922359e66a16a15" + integrity sha1-y7BbhrfzTs2B1SzK2SI1nmahahU= + dependencies: + "@angular-devkit/architect" "0.803.21" + "@angular-devkit/core" "8.3.21" + "@angular-devkit/schematics" "8.3.21" + "@schematics/angular" "8.3.21" + "@schematics/update" "0.803.21" + "@yarnpkg/lockfile" "1.1.0" + ansi-colors "4.1.1" + debug "^4.1.1" + ini "1.3.5" + inquirer "6.5.1" + npm-package-arg "6.1.0" + npm-pick-manifest "3.0.2" + open "6.4.0" + pacote "9.5.5" + read-package-tree "5.3.1" + rimraf "3.0.0" + semver "6.3.0" + symbol-observable "1.2.0" + universal-analytics "^0.4.20" + uuid "^3.3.2" + +"@angular/common@~8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/common/download/@angular/common-8.2.14.tgz#027e52b2951c14082d6e3af1a4ffa1356220e439" + integrity sha1-An5SspUcFAgtbjrxpP+hNWIg5Dk= + dependencies: + tslib "^1.9.0" + +"@angular/compiler-cli@~8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/compiler-cli/download/@angular/compiler-cli-8.2.14.tgz#1997bec04a6b9d022954e5747505fe8906994594" + integrity sha1-GZe+wEprnQIpVOV0dQX+iQaZRZQ= + dependencies: + canonical-path "1.0.0" + chokidar "^2.1.1" + convert-source-map "^1.5.1" + dependency-graph "^0.7.2" + magic-string "^0.25.0" + minimist "^1.2.0" + reflect-metadata "^0.1.2" + source-map "^0.6.1" + tslib "^1.9.0" + yargs "13.1.0" + +"@angular/compiler@~8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/compiler/download/@angular/compiler-8.2.14.tgz#46db7a9d1c17f236126518ff26480c160d5a6183" + integrity sha1-Rtt6nRwX8jYSZRj/JkgMFg1aYYM= + dependencies: + tslib "^1.9.0" + +"@angular/core@~8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/core/download/@angular/core-8.2.14.tgz#35566f5b19480369229477e7e0e0fde740bd5204" + integrity sha1-NVZvWxlIA2kilHfn4OD950C9UgQ= + dependencies: + tslib "^1.9.0" + +"@angular/forms@~8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/forms/download/@angular/forms-8.2.14.tgz#7d357c346a3884881beb044c50ec4a09d3d7ee8e" + integrity sha1-fTV8NGo4hIgb6wRMUOxKCdPX7o4= + dependencies: + tslib "^1.9.0" + +"@angular/language-service@~8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/language-service/download/@angular/language-service-8.2.14.tgz#e18b27a6841577ce489ad31540150da5a444ca37" + integrity sha1-4YsnpoQVd85ImtMVQBUNpaREyjc= + +"@angular/material@^8.2.3": + version "8.2.3" + resolved "https://registry.npm.taobao.org/@angular/material/download/@angular/material-8.2.3.tgz#16543e4e06a3fde2651a25cfe126e88e714ae105" + integrity sha1-FlQ+Tgaj/eJlGiXP4SbojnFK4QU= + dependencies: + tslib "^1.7.1" + +"@angular/platform-browser-dynamic@~8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/platform-browser-dynamic/download/@angular/platform-browser-dynamic-8.2.14.tgz#4439a79fe10ec45170e6940a28835e9ff0918950" + integrity sha1-RDmnn+EOxFFw5pQKKINen/CRiVA= + dependencies: + tslib "^1.9.0" + +"@angular/platform-browser@~8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/platform-browser/download/@angular/platform-browser-8.2.14.tgz#31f082e8ba977f9b89964d721c38cbc32ce0e433" + integrity sha1-MfCC6LqXf5uJlk1yHDjLwyzg5DM= + dependencies: + tslib "^1.9.0" + +"@angular/router@~8.2.14": + version "8.2.14" + resolved "https://registry.npm.taobao.org/@angular/router/download/@angular/router-8.2.14.tgz?cache=0&sync_timestamp=1576712899499&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40angular%2Frouter%2Fdownload%2F%40angular%2Frouter-8.2.14.tgz#5f9f9707710983c2143aead79dcd2da520ae3eb8" + integrity sha1-X5+XB3EJg8IUOurXnc0tpSCuPrg= + dependencies: + tslib "^1.9.0" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.5.5": + version "7.5.5" + resolved "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" + integrity sha1-vAeC9tafe31JUxIZaZuYj2aaj50= + dependencies: + "@babel/highlight" "^7.0.0" + +"@babel/core@7.7.5": + version "7.7.5" + resolved "https://registry.npm.taobao.org/@babel/core/download/@babel/core-7.7.5.tgz?cache=0&sync_timestamp=1576716905281&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fcore%2Fdownload%2F%40babel%2Fcore-7.7.5.tgz#ae1323cd035b5160293307f50647e83f8ba62f7e" + integrity sha1-rhMjzQNbUWApMwf1BkfoP4umL34= + dependencies: + "@babel/code-frame" "^7.5.5" + "@babel/generator" "^7.7.4" + "@babel/helpers" "^7.7.4" + "@babel/parser" "^7.7.5" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + convert-source-map "^1.7.0" + debug "^4.1.0" + json5 "^2.1.0" + lodash "^4.17.13" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@^7.4.0", "@babel/generator@^7.7.4": + version "7.7.7" + resolved "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.7.7.tgz?cache=0&sync_timestamp=1576716816462&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fgenerator%2Fdownload%2F%40babel%2Fgenerator-7.7.7.tgz#859ac733c44c74148e1a72980a64ec84b85f4f45" + integrity sha1-hZrHM8RMdBSOGnKYCmTshLhfT0U= + dependencies: + "@babel/types" "^7.7.4" + jsesc "^2.5.1" + lodash "^4.17.13" + source-map "^0.5.0" + +"@babel/helper-annotate-as-pure@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-annotate-as-pure/download/@babel/helper-annotate-as-pure-7.7.4.tgz?cache=0&sync_timestamp=1574466437284&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-annotate-as-pure%2Fdownload%2F%40babel%2Fhelper-annotate-as-pure-7.7.4.tgz#bb3faf1e74b74bd547e867e48f551fa6b098b6ce" + integrity sha1-uz+vHnS3S9VH6Gfkj1UfprCYts4= + dependencies: + "@babel/types" "^7.7.4" + +"@babel/helper-builder-binary-assignment-operator-visitor@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-builder-binary-assignment-operator-visitor/download/@babel/helper-builder-binary-assignment-operator-visitor-7.7.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-builder-binary-assignment-operator-visitor%2Fdownload%2F%40babel%2Fhelper-builder-binary-assignment-operator-visitor-7.7.4.tgz#5f73f2b28580e224b5b9bd03146a4015d6217f5f" + integrity sha1-X3PysoWA4iS1ub0DFGpAFdYhf18= + dependencies: + "@babel/helper-explode-assignable-expression" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-call-delegate@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-call-delegate/download/@babel/helper-call-delegate-7.7.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-call-delegate%2Fdownload%2F%40babel%2Fhelper-call-delegate-7.7.4.tgz#621b83e596722b50c0066f9dc37d3232e461b801" + integrity sha1-YhuD5ZZyK1DABm+dw30yMuRhuAE= + dependencies: + "@babel/helper-hoist-variables" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-create-regexp-features-plugin@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-create-regexp-features-plugin/download/@babel/helper-create-regexp-features-plugin-7.7.4.tgz?cache=0&sync_timestamp=1574466720467&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-create-regexp-features-plugin%2Fdownload%2F%40babel%2Fhelper-create-regexp-features-plugin-7.7.4.tgz#6d5762359fd34f4da1500e4cff9955b5299aaf59" + integrity sha1-bVdiNZ/TT02hUA5M/5lVtSmar1k= + dependencies: + "@babel/helper-regex" "^7.4.4" + regexpu-core "^4.6.0" + +"@babel/helper-define-map@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-define-map/download/@babel/helper-define-map-7.7.4.tgz#2841bf92eb8bd9c906851546fe6b9d45e162f176" + integrity sha1-KEG/kuuL2ckGhRVG/mudReFi8XY= + dependencies: + "@babel/helper-function-name" "^7.7.4" + "@babel/types" "^7.7.4" + lodash "^4.17.13" + +"@babel/helper-explode-assignable-expression@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-explode-assignable-expression/download/@babel/helper-explode-assignable-expression-7.7.4.tgz#fa700878e008d85dc51ba43e9fb835cddfe05c84" + integrity sha1-+nAIeOAI2F3FG6Q+n7g1zd/gXIQ= + dependencies: + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-function-name@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.7.4.tgz#ab6e041e7135d436d8f0a3eca15de5b67a341a2e" + integrity sha1-q24EHnE11DbY8KPsoV3ltno0Gi4= + dependencies: + "@babel/helper-get-function-arity" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-get-function-arity@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.7.4.tgz?cache=0&sync_timestamp=1574465620780&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-get-function-arity%2Fdownload%2F%40babel%2Fhelper-get-function-arity-7.7.4.tgz#cb46348d2f8808e632f0ab048172130e636005f0" + integrity sha1-y0Y0jS+ICOYy8KsEgXITDmNgBfA= + dependencies: + "@babel/types" "^7.7.4" + +"@babel/helper-hoist-variables@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-hoist-variables/download/@babel/helper-hoist-variables-7.7.4.tgz?cache=0&sync_timestamp=1574466436965&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-hoist-variables%2Fdownload%2F%40babel%2Fhelper-hoist-variables-7.7.4.tgz#612384e3d823fdfaaf9fce31550fe5d4db0f3d12" + integrity sha1-YSOE49gj/fqvn84xVQ/l1NsPPRI= + dependencies: + "@babel/types" "^7.7.4" + +"@babel/helper-member-expression-to-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-member-expression-to-functions/download/@babel/helper-member-expression-to-functions-7.7.4.tgz#356438e2569df7321a8326644d4b790d2122cb74" + integrity sha1-NWQ44lad9zIagyZkTUt5DSEiy3Q= + dependencies: + "@babel/types" "^7.7.4" + +"@babel/helper-module-imports@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-module-imports/download/@babel/helper-module-imports-7.7.4.tgz?cache=0&sync_timestamp=1574466791934&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-module-imports%2Fdownload%2F%40babel%2Fhelper-module-imports-7.7.4.tgz#e5a92529f8888bf319a6376abfbd1cebc491ad91" + integrity sha1-5aklKfiIi/MZpjdqv70c68SRrZE= + dependencies: + "@babel/types" "^7.7.4" + +"@babel/helper-module-transforms@^7.7.4", "@babel/helper-module-transforms@^7.7.5": + version "7.7.5" + resolved "https://registry.npm.taobao.org/@babel/helper-module-transforms/download/@babel/helper-module-transforms-7.7.5.tgz#d044da7ffd91ec967db25cd6748f704b6b244835" + integrity sha1-0ETaf/2R7JZ9slzWdI9wS2skSDU= + dependencies: + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-simple-access" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" + lodash "^4.17.13" + +"@babel/helper-optimise-call-expression@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-optimise-call-expression/download/@babel/helper-optimise-call-expression-7.7.4.tgz#034af31370d2995242aa4df402c3b7794b2dcdf2" + integrity sha1-A0rzE3DSmVJCqk30AsO3eUstzfI= + dependencies: + "@babel/types" "^7.7.4" + +"@babel/helper-plugin-utils@^7.0.0": + version "7.0.0" + resolved "https://registry.npm.taobao.org/@babel/helper-plugin-utils/download/@babel/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" + integrity sha1-u7P77phmHFaQNCN8wDlnupm08lA= + +"@babel/helper-regex@^7.0.0", "@babel/helper-regex@^7.4.4": + version "7.5.5" + resolved "https://registry.npm.taobao.org/@babel/helper-regex/download/@babel/helper-regex-7.5.5.tgz#0aa6824f7100a2e0e89c1527c23936c152cab351" + integrity sha1-CqaCT3EAouDonBUnwjk2wVLKs1E= + dependencies: + lodash "^4.17.13" + +"@babel/helper-remap-async-to-generator@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-remap-async-to-generator/download/@babel/helper-remap-async-to-generator-7.7.4.tgz?cache=0&sync_timestamp=1574466799754&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-remap-async-to-generator%2Fdownload%2F%40babel%2Fhelper-remap-async-to-generator-7.7.4.tgz#c68c2407350d9af0e061ed6726afb4fff16d0234" + integrity sha1-xowkBzUNmvDgYe1nJq+0//FtAjQ= + dependencies: + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-wrap-function" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-replace-supers@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-replace-supers/download/@babel/helper-replace-supers-7.7.4.tgz#3c881a6a6a7571275a72d82e6107126ec9e2cdd2" + integrity sha1-PIgaamp1cSdactguYQcSbsnizdI= + dependencies: + "@babel/helper-member-expression-to-functions" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-simple-access@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-simple-access/download/@babel/helper-simple-access-7.7.4.tgz#a169a0adb1b5f418cfc19f22586b2ebf58a9a294" + integrity sha1-oWmgrbG19BjPwZ8iWGsuv1ipopQ= + dependencies: + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-split-export-declaration@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.7.4.tgz#57292af60443c4a3622cf74040ddc28e68336fd8" + integrity sha1-Vykq9gRDxKNiLPdAQN3Cjmgzb9g= + dependencies: + "@babel/types" "^7.7.4" + +"@babel/helper-wrap-function@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helper-wrap-function/download/@babel/helper-wrap-function-7.7.4.tgz?cache=0&sync_timestamp=1574466796638&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-wrap-function%2Fdownload%2F%40babel%2Fhelper-wrap-function-7.7.4.tgz#37ab7fed5150e22d9d7266e830072c0cdd8baace" + integrity sha1-N6t/7VFQ4i2dcmboMAcsDN2Lqs4= + dependencies: + "@babel/helper-function-name" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helpers@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/helpers/download/@babel/helpers-7.7.4.tgz?cache=0&sync_timestamp=1574466423809&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelpers%2Fdownload%2F%40babel%2Fhelpers-7.7.4.tgz#62c215b9e6c712dadc15a9a0dcab76c92a940302" + integrity sha1-YsIVuebHEtrcFamg3Kt2ySqUAwI= + dependencies: + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/highlight@^7.0.0": + version "7.5.0" + resolved "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" + integrity sha1-VtETEr2SSPphlZHQJHK+boyzJUA= + dependencies: + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^4.0.0" + +"@babel/parser@^7.4.3", "@babel/parser@^7.7.4", "@babel/parser@^7.7.5": + version "7.7.7" + resolved "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.7.7.tgz?cache=0&sync_timestamp=1576716816884&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fparser%2Fdownload%2F%40babel%2Fparser-7.7.7.tgz#1b886595419cf92d811316d5b715a53ff38b4937" + integrity sha1-G4hllUGc+S2BExbVtxWlP/OLSTc= + +"@babel/plugin-proposal-async-generator-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-proposal-async-generator-functions/download/@babel/plugin-proposal-async-generator-functions-7.7.4.tgz?cache=0&sync_timestamp=1574466801807&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-async-generator-functions%2Fdownload%2F%40babel%2Fplugin-proposal-async-generator-functions-7.7.4.tgz#0351c5ac0a9e927845fffd5b82af476947b7ce6d" + integrity sha1-A1HFrAqeknhF//1bgq9HaUe3zm0= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.7.4" + "@babel/plugin-syntax-async-generators" "^7.7.4" + +"@babel/plugin-proposal-dynamic-import@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-proposal-dynamic-import/download/@babel/plugin-proposal-dynamic-import-7.7.4.tgz#dde64a7f127691758cbfed6cf70de0fa5879d52d" + integrity sha1-3eZKfxJ2kXWMv+1s9w3g+lh51S0= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-dynamic-import" "^7.7.4" + +"@babel/plugin-proposal-json-strings@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-proposal-json-strings/download/@babel/plugin-proposal-json-strings-7.7.4.tgz?cache=0&sync_timestamp=1574466787739&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-json-strings%2Fdownload%2F%40babel%2Fplugin-proposal-json-strings-7.7.4.tgz#7700a6bfda771d8dc81973249eac416c6b4c697d" + integrity sha1-dwCmv9p3HY3IGXMknqxBbGtMaX0= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-json-strings" "^7.7.4" + +"@babel/plugin-proposal-object-rest-spread@^7.7.4": + version "7.7.7" + resolved "https://registry.npm.taobao.org/@babel/plugin-proposal-object-rest-spread/download/@babel/plugin-proposal-object-rest-spread-7.7.7.tgz#9f27075004ab99be08c5c1bd653a2985813cb370" + integrity sha1-nycHUASrmb4IxcG9ZTophYE8s3A= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.7.4" + +"@babel/plugin-proposal-optional-catch-binding@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-proposal-optional-catch-binding/download/@babel/plugin-proposal-optional-catch-binding-7.7.4.tgz#ec21e8aeb09ec6711bc0a39ca49520abee1de379" + integrity sha1-7CHorrCexnEbwKOcpJUgq+4d43k= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.7.4" + +"@babel/plugin-proposal-unicode-property-regex@^7.7.4": + version "7.7.7" + resolved "https://registry.npm.taobao.org/@babel/plugin-proposal-unicode-property-regex/download/@babel/plugin-proposal-unicode-property-regex-7.7.7.tgz#433fa9dac64f953c12578b29633f456b68831c4e" + integrity sha1-Qz+p2sZPlTwSV4spYz9Fa2iDHE4= + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-async-generators@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-async-generators/download/@babel/plugin-syntax-async-generators-7.7.4.tgz?cache=0&sync_timestamp=1574466720107&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-async-generators%2Fdownload%2F%40babel%2Fplugin-syntax-async-generators-7.7.4.tgz#331aaf310a10c80c44a66b238b6e49132bd3c889" + integrity sha1-MxqvMQoQyAxEpmsji25JEyvTyIk= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-dynamic-import@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-dynamic-import/download/@babel/plugin-syntax-dynamic-import-7.7.4.tgz#29ca3b4415abfe4a5ec381e903862ad1a54c3aec" + integrity sha1-Kco7RBWr/kpew4HpA4Yq0aVMOuw= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-json-strings@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-json-strings/download/@babel/plugin-syntax-json-strings-7.7.4.tgz#86e63f7d2e22f9e27129ac4e83ea989a382e86cc" + integrity sha1-huY/fS4i+eJxKaxOg+qYmjguhsw= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-object-rest-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-object-rest-spread/download/@babel/plugin-syntax-object-rest-spread-7.7.4.tgz?cache=0&sync_timestamp=1574465586766&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-object-rest-spread%2Fdownload%2F%40babel%2Fplugin-syntax-object-rest-spread-7.7.4.tgz#47cf220d19d6d0d7b154304701f468fc1cc6ff46" + integrity sha1-R88iDRnW0NexVDBHAfRo/BzG/0Y= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-optional-catch-binding/download/@babel/plugin-syntax-optional-catch-binding-7.7.4.tgz#a3e38f59f4b6233867b4a92dcb0ee05b2c334aa6" + integrity sha1-o+OPWfS2IzhntKktyw7gWywzSqY= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-top-level-await@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-top-level-await/download/@babel/plugin-syntax-top-level-await-7.7.4.tgz?cache=0&sync_timestamp=1574466726312&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-top-level-await%2Fdownload%2F%40babel%2Fplugin-syntax-top-level-await-7.7.4.tgz#bd7d8fa7b9fee793a36e4027fd6dd1aa32f946da" + integrity sha1-vX2Pp7n+55OjbkAn/W3RqjL5Rto= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-arrow-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-arrow-functions/download/@babel/plugin-transform-arrow-functions-7.7.4.tgz#76309bd578addd8aee3b379d809c802305a98a12" + integrity sha1-djCb1Xit3YruOzedgJyAIwWpihI= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-async-to-generator@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-async-to-generator/download/@babel/plugin-transform-async-to-generator-7.7.4.tgz?cache=0&sync_timestamp=1574466801013&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-async-to-generator%2Fdownload%2F%40babel%2Fplugin-transform-async-to-generator-7.7.4.tgz#694cbeae6d613a34ef0292713fa42fb45c4470ba" + integrity sha1-aUy+rm1hOjTvApJxP6QvtFxEcLo= + dependencies: + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.7.4" + +"@babel/plugin-transform-block-scoped-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-block-scoped-functions/download/@babel/plugin-transform-block-scoped-functions-7.7.4.tgz#d0d9d5c269c78eaea76227ace214b8d01e4d837b" + integrity sha1-0NnVwmnHjq6nYies4hS40B5Ng3s= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-block-scoping@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-block-scoping/download/@babel/plugin-transform-block-scoping-7.7.4.tgz#200aad0dcd6bb80372f94d9e628ea062c58bf224" + integrity sha1-IAqtDc1ruANy+U2eYo6gYsWL8iQ= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + lodash "^4.17.13" + +"@babel/plugin-transform-classes@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-classes/download/@babel/plugin-transform-classes-7.7.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-classes%2Fdownload%2F%40babel%2Fplugin-transform-classes-7.7.4.tgz#c92c14be0a1399e15df72667067a8f510c9400ec" + integrity sha1-ySwUvgoTmeFd9yZnBnqPUQyUAOw= + dependencies: + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-define-map" "^7.7.4" + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + globals "^11.1.0" + +"@babel/plugin-transform-computed-properties@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-computed-properties/download/@babel/plugin-transform-computed-properties-7.7.4.tgz#e856c1628d3238ffe12d668eb42559f79a81910d" + integrity sha1-6FbBYo0yOP/hLWaOtCVZ95qBkQ0= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-destructuring@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-destructuring/download/@babel/plugin-transform-destructuring-7.7.4.tgz?cache=0&sync_timestamp=1574466725567&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-destructuring%2Fdownload%2F%40babel%2Fplugin-transform-destructuring-7.7.4.tgz#2b713729e5054a1135097b6a67da1b6fe8789267" + integrity sha1-K3E3KeUFShE1CXtqZ9obb+h4kmc= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-dotall-regex@^7.7.4": + version "7.7.7" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-dotall-regex/download/@babel/plugin-transform-dotall-regex-7.7.7.tgz#3e9713f1b69f339e87fa796b097d73ded16b937b" + integrity sha1-PpcT8bafM56H+nlrCX1z3tFrk3s= + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-duplicate-keys@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-duplicate-keys/download/@babel/plugin-transform-duplicate-keys-7.7.4.tgz#3d21731a42e3f598a73835299dd0169c3b90ac91" + integrity sha1-PSFzGkLj9ZinODUpndAWnDuQrJE= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-exponentiation-operator@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-exponentiation-operator/download/@babel/plugin-transform-exponentiation-operator-7.7.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-exponentiation-operator%2Fdownload%2F%40babel%2Fplugin-transform-exponentiation-operator-7.7.4.tgz#dd30c0191e3a1ba19bcc7e389bdfddc0729d5db9" + integrity sha1-3TDAGR46G6GbzH44m9/dwHKdXbk= + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-for-of@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-for-of/download/@babel/plugin-transform-for-of-7.7.4.tgz?cache=0&sync_timestamp=1574466725758&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-for-of%2Fdownload%2F%40babel%2Fplugin-transform-for-of-7.7.4.tgz#248800e3a5e507b1f103d8b4ca998e77c63932bc" + integrity sha1-JIgA46XlB7HxA9i0ypmOd8Y5Mrw= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-function-name@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-function-name/download/@babel/plugin-transform-function-name-7.7.4.tgz#75a6d3303d50db638ff8b5385d12451c865025b1" + integrity sha1-dabTMD1Q22OP+LU4XRJFHIZQJbE= + dependencies: + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-literals/download/@babel/plugin-transform-literals-7.7.4.tgz#27fe87d2b5017a2a5a34d1c41a6b9f6a6262643e" + integrity sha1-J/6H0rUBeipaNNHEGmufamJiZD4= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-member-expression-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-member-expression-literals/download/@babel/plugin-transform-member-expression-literals-7.7.4.tgz?cache=0&sync_timestamp=1574466727087&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-member-expression-literals%2Fdownload%2F%40babel%2Fplugin-transform-member-expression-literals-7.7.4.tgz#aee127f2f3339fc34ce5e3055d7ffbf7aa26f19a" + integrity sha1-ruEn8vMzn8NM5eMFXX/796om8Zo= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-modules-amd@^7.7.5": + version "7.7.5" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-modules-amd/download/@babel/plugin-transform-modules-amd-7.7.5.tgz#39e0fb717224b59475b306402bb8eedab01e729c" + integrity sha1-OeD7cXIktZR1swZAK7ju2rAecpw= + dependencies: + "@babel/helper-module-transforms" "^7.7.5" + "@babel/helper-plugin-utils" "^7.0.0" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-commonjs@^7.7.5": + version "7.7.5" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-modules-commonjs/download/@babel/plugin-transform-modules-commonjs-7.7.5.tgz#1d27f5eb0bcf7543e774950e5b2fa782e637b345" + integrity sha1-HSf16wvPdUPndJUOWy+nguY3s0U= + dependencies: + "@babel/helper-module-transforms" "^7.7.5" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-simple-access" "^7.7.4" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-systemjs@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-modules-systemjs/download/@babel/plugin-transform-modules-systemjs-7.7.4.tgz?cache=0&sync_timestamp=1574466794336&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-modules-systemjs%2Fdownload%2F%40babel%2Fplugin-transform-modules-systemjs-7.7.4.tgz#cd98152339d3e763dfe838b7d4273edaf520bb30" + integrity sha1-zZgVIznT52Pf6Di31Cc+2vUguzA= + dependencies: + "@babel/helper-hoist-variables" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-umd@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-modules-umd/download/@babel/plugin-transform-modules-umd-7.7.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-modules-umd%2Fdownload%2F%40babel%2Fplugin-transform-modules-umd-7.7.4.tgz#1027c355a118de0aae9fee00ad7813c584d9061f" + integrity sha1-ECfDVaEY3gqun+4ArXgTxYTZBh8= + dependencies: + "@babel/helper-module-transforms" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-named-capturing-groups-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-named-capturing-groups-regex/download/@babel/plugin-transform-named-capturing-groups-regex-7.7.4.tgz#fb3bcc4ee4198e7385805007373d6b6f42c98220" + integrity sha1-+zvMTuQZjnOFgFAHNz1rb0LJgiA= + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.7.4" + +"@babel/plugin-transform-new-target@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-new-target/download/@babel/plugin-transform-new-target-7.7.4.tgz#4a0753d2d60639437be07b592a9e58ee00720167" + integrity sha1-SgdT0tYGOUN74HtZKp5Y7gByAWc= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-object-super@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-object-super/download/@babel/plugin-transform-object-super-7.7.4.tgz?cache=0&sync_timestamp=1574466799479&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-object-super%2Fdownload%2F%40babel%2Fplugin-transform-object-super-7.7.4.tgz#48488937a2d586c0148451bf51af9d7dda567262" + integrity sha1-SEiJN6LVhsAUhFG/Ua+dfdpWcmI= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.7.4" + +"@babel/plugin-transform-parameters@^7.7.4": + version "7.7.7" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-parameters/download/@babel/plugin-transform-parameters-7.7.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-parameters%2Fdownload%2F%40babel%2Fplugin-transform-parameters-7.7.7.tgz#7a884b2460164dc5f194f668332736584c760007" + integrity sha1-eohLJGAWTcXxlPZoMyc2WEx2AAc= + dependencies: + "@babel/helper-call-delegate" "^7.7.4" + "@babel/helper-get-function-arity" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-property-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-property-literals/download/@babel/plugin-transform-property-literals-7.7.4.tgz#2388d6505ef89b266103f450f9167e6bd73f98c2" + integrity sha1-I4jWUF74myZhA/RQ+RZ+a9c/mMI= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-regenerator@^7.7.5": + version "7.7.5" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-regenerator/download/@babel/plugin-transform-regenerator-7.7.5.tgz#3a8757ee1a2780f390e89f246065ecf59c26fce9" + integrity sha1-OodX7hongPOQ6J8kYGXs9Zwm/Ok= + dependencies: + regenerator-transform "^0.14.0" + +"@babel/plugin-transform-reserved-words@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-reserved-words/download/@babel/plugin-transform-reserved-words-7.7.4.tgz#6a7cf123ad175bb5c69aec8f6f0770387ed3f1eb" + integrity sha1-anzxI60XW7XGmuyPbwdwOH7T8es= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-shorthand-properties@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-shorthand-properties/download/@babel/plugin-transform-shorthand-properties-7.7.4.tgz?cache=0&sync_timestamp=1574466426443&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-shorthand-properties%2Fdownload%2F%40babel%2Fplugin-transform-shorthand-properties-7.7.4.tgz#74a0a9b2f6d67a684c6fbfd5f0458eb7ba99891e" + integrity sha1-dKCpsvbWemhMb7/V8EWOt7qZiR4= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-spread/download/@babel/plugin-transform-spread-7.7.4.tgz#aa673b356fe6b7e70d69b6e33a17fef641008578" + integrity sha1-qmc7NW/mt+cNabbjOhf+9kEAhXg= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-sticky-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-sticky-regex/download/@babel/plugin-transform-sticky-regex-7.7.4.tgz#ffb68c05090c30732076b1285dc1401b404a123c" + integrity sha1-/7aMBQkMMHMgdrEoXcFAG0BKEjw= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + +"@babel/plugin-transform-template-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-template-literals/download/@babel/plugin-transform-template-literals-7.7.4.tgz#1eb6411736dd3fe87dbd20cc6668e5121c17d604" + integrity sha1-HrZBFzbdP+h9vSDMZmjlEhwX1gQ= + dependencies: + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-typeof-symbol@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-typeof-symbol/download/@babel/plugin-transform-typeof-symbol-7.7.4.tgz?cache=0&sync_timestamp=1574466426935&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-typeof-symbol%2Fdownload%2F%40babel%2Fplugin-transform-typeof-symbol-7.7.4.tgz#3174626214f2d6de322882e498a38e8371b2140e" + integrity sha1-MXRiYhTy1t4yKILkmKOOg3GyFA4= + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-unicode-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/plugin-transform-unicode-regex/download/@babel/plugin-transform-unicode-regex-7.7.4.tgz#a3c0f65b117c4c81c5b6484f2a5e7b95346b83ae" + integrity sha1-o8D2WxF8TIHFtkhPKl57lTRrg64= + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/preset-env@7.7.6": + version "7.7.6" + resolved "https://registry.npm.taobao.org/@babel/preset-env/download/@babel/preset-env-7.7.6.tgz#39ac600427bbb94eec6b27953f1dfa1d64d457b2" + integrity sha1-OaxgBCe7uU7sayeVPx36HWTUV7I= + dependencies: + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-async-generator-functions" "^7.7.4" + "@babel/plugin-proposal-dynamic-import" "^7.7.4" + "@babel/plugin-proposal-json-strings" "^7.7.4" + "@babel/plugin-proposal-object-rest-spread" "^7.7.4" + "@babel/plugin-proposal-optional-catch-binding" "^7.7.4" + "@babel/plugin-proposal-unicode-property-regex" "^7.7.4" + "@babel/plugin-syntax-async-generators" "^7.7.4" + "@babel/plugin-syntax-dynamic-import" "^7.7.4" + "@babel/plugin-syntax-json-strings" "^7.7.4" + "@babel/plugin-syntax-object-rest-spread" "^7.7.4" + "@babel/plugin-syntax-optional-catch-binding" "^7.7.4" + "@babel/plugin-syntax-top-level-await" "^7.7.4" + "@babel/plugin-transform-arrow-functions" "^7.7.4" + "@babel/plugin-transform-async-to-generator" "^7.7.4" + "@babel/plugin-transform-block-scoped-functions" "^7.7.4" + "@babel/plugin-transform-block-scoping" "^7.7.4" + "@babel/plugin-transform-classes" "^7.7.4" + "@babel/plugin-transform-computed-properties" "^7.7.4" + "@babel/plugin-transform-destructuring" "^7.7.4" + "@babel/plugin-transform-dotall-regex" "^7.7.4" + "@babel/plugin-transform-duplicate-keys" "^7.7.4" + "@babel/plugin-transform-exponentiation-operator" "^7.7.4" + "@babel/plugin-transform-for-of" "^7.7.4" + "@babel/plugin-transform-function-name" "^7.7.4" + "@babel/plugin-transform-literals" "^7.7.4" + "@babel/plugin-transform-member-expression-literals" "^7.7.4" + "@babel/plugin-transform-modules-amd" "^7.7.5" + "@babel/plugin-transform-modules-commonjs" "^7.7.5" + "@babel/plugin-transform-modules-systemjs" "^7.7.4" + "@babel/plugin-transform-modules-umd" "^7.7.4" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.4" + "@babel/plugin-transform-new-target" "^7.7.4" + "@babel/plugin-transform-object-super" "^7.7.4" + "@babel/plugin-transform-parameters" "^7.7.4" + "@babel/plugin-transform-property-literals" "^7.7.4" + "@babel/plugin-transform-regenerator" "^7.7.5" + "@babel/plugin-transform-reserved-words" "^7.7.4" + "@babel/plugin-transform-shorthand-properties" "^7.7.4" + "@babel/plugin-transform-spread" "^7.7.4" + "@babel/plugin-transform-sticky-regex" "^7.7.4" + "@babel/plugin-transform-template-literals" "^7.7.4" + "@babel/plugin-transform-typeof-symbol" "^7.7.4" + "@babel/plugin-transform-unicode-regex" "^7.7.4" + "@babel/types" "^7.7.4" + browserslist "^4.6.0" + core-js-compat "^3.4.7" + invariant "^2.2.2" + js-levenshtein "^1.1.3" + semver "^5.5.0" + +"@babel/template@^7.4.0", "@babel/template@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.7.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Ftemplate%2Fdownload%2F%40babel%2Ftemplate-7.7.4.tgz#428a7d9eecffe27deac0a98e23bf8e3675d2a77b" + integrity sha1-Qop9nuz/4n3qwKmOI7+ONnXSp3s= + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/traverse@^7.4.3", "@babel/traverse@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.7.4.tgz?cache=0&sync_timestamp=1574465744239&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Ftraverse%2Fdownload%2F%40babel%2Ftraverse-7.7.4.tgz#9c1e7c60fb679fe4fcfaa42500833333c2058558" + integrity sha1-nB58YPtnn+T8+qQlAIMzM8IFhVg= + dependencies: + "@babel/code-frame" "^7.5.5" + "@babel/generator" "^7.7.4" + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/parser" "^7.7.4" + "@babel/types" "^7.7.4" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.13" + +"@babel/types@^7.4.0", "@babel/types@^7.7.4": + version "7.7.4" + resolved "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.7.4.tgz#516570d539e44ddf308c07569c258ff94fde9193" + integrity sha1-UWVw1TnkTd8wjAdWnCWP+U/ekZM= + dependencies: + esutils "^2.0.2" + lodash "^4.17.13" + to-fast-properties "^2.0.0" + +"@ngtools/webpack@8.3.21": + version "8.3.21" + resolved "https://registry.npm.taobao.org/@ngtools/webpack/download/@ngtools/webpack-8.3.21.tgz#d28f2b66a8aeced5260c42ae722192ec5d5e4e56" + integrity sha1-0o8rZqiuztUmDEKuciGS7F1eTlY= + dependencies: + "@angular-devkit/core" "8.3.21" + enhanced-resolve "4.1.0" + rxjs "6.4.0" + tree-kill "1.2.1" + webpack-sources "1.4.3" + +"@schematics/angular@8.3.21": + version "8.3.21" + resolved "https://registry.npm.taobao.org/@schematics/angular/download/@schematics/angular-8.3.21.tgz#4902e0b6e8be47006859009bf96a026e3d39dd27" + integrity sha1-SQLgtui+RwBoWQCb+WoCbj053Sc= + dependencies: + "@angular-devkit/core" "8.3.21" + "@angular-devkit/schematics" "8.3.21" + +"@schematics/update@0.803.21": + version "0.803.21" + resolved "https://registry.npm.taobao.org/@schematics/update/download/@schematics/update-0.803.21.tgz#572c955bb132348bca03a128491ae264b0068a0a" + integrity sha1-VyyVW7EyNIvKA6EoSRriZLAGigo= + dependencies: + "@angular-devkit/core" "8.3.21" + "@angular-devkit/schematics" "8.3.21" + "@yarnpkg/lockfile" "1.1.0" + ini "1.3.5" + pacote "9.5.5" + rxjs "6.4.0" + semver "6.3.0" + semver-intersect "1.4.0" + +"@types/events@*": + version "3.0.0" + resolved "https://registry.npm.taobao.org/@types/events/download/@types/events-3.0.0.tgz?cache=0&sync_timestamp=1572461527196&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fevents%2Fdownload%2F%40types%2Fevents-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" + integrity sha1-KGLz9Yqaf3w+eNefEw3U1xwlwqc= + +"@types/glob@^7.1.1": + version "7.1.1" + resolved "https://registry.npm.taobao.org/@types/glob/download/@types/glob-7.1.1.tgz#aa59a1c6e3fbc421e07ccd31a944c30eba521575" + integrity sha1-qlmhxuP7xCHgfM0xqUTDDrpSFXU= + dependencies: + "@types/events" "*" + "@types/minimatch" "*" + "@types/node" "*" + +"@types/jasmine@*": + version "3.5.0" + resolved "https://registry.npm.taobao.org/@types/jasmine/download/@types/jasmine-3.5.0.tgz#2ad2006c8a937d20df20a8fee86071d0f730ef99" + integrity sha1-KtIAbIqTfSDfIKj+6GBx0Pcw75k= + +"@types/jasmine@~3.3.8": + version "3.3.16" + resolved "https://registry.npm.taobao.org/@types/jasmine/download/@types/jasmine-3.3.16.tgz#7c84074f5d7f84da9a14f816ccfb9aeb4da13f27" + integrity sha1-fIQHT11/hNqaFPgWzPua602hPyc= + +"@types/jasminewd2@~2.0.3": + version "2.0.8" + resolved "https://registry.npm.taobao.org/@types/jasminewd2/download/@types/jasminewd2-2.0.8.tgz#67afe5098d5ef2386073a7b7384b69a840dfe93b" + integrity sha1-Z6/lCY1e8jhgc6e3OEtpqEDf6Ts= + dependencies: + "@types/jasmine" "*" + +"@types/minimatch@*": + version "3.0.3" + resolved "https://registry.npm.taobao.org/@types/minimatch/download/@types/minimatch-3.0.3.tgz?cache=0&sync_timestamp=1572464707542&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fminimatch%2Fdownload%2F%40types%2Fminimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" + integrity sha1-PcoOPzOyAPx9ETnAzZbBJoyt/Z0= + +"@types/node@*": + version "13.1.4" + resolved "https://registry.npm.taobao.org/@types/node/download/@types/node-13.1.4.tgz#4cfd90175a200ee9b02bd6b1cd19bc349741607e" + integrity sha1-TP2QF1ogDumwK9axzRm8NJdBYH4= + +"@types/node@~8.9.4": + version "8.9.5" + resolved "https://registry.npm.taobao.org/@types/node/download/@types/node-8.9.5.tgz#162b864bc70be077e6db212b322754917929e976" + integrity sha1-FiuGS8cL4Hfm2yErMidUkXkp6XY= + +"@types/q@^0.0.32": + version "0.0.32" + resolved "https://registry.npm.taobao.org/@types/q/download/@types/q-0.0.32.tgz#bd284e57c84f1325da702babfc82a5328190c0c5" + integrity sha1-vShOV8hPEyXacCur/IKlMoGQwMU= + +"@types/selenium-webdriver@^3.0.0": + version "3.0.16" + resolved "https://registry.npm.taobao.org/@types/selenium-webdriver/download/@types/selenium-webdriver-3.0.16.tgz#50a4755f8e33edacd9c406729e9b930d2451902a" + integrity sha1-UKR1X44z7azZxAZynpuTDSRRkCo= + +"@types/source-list-map@*": + version "0.1.2" + resolved "https://registry.npm.taobao.org/@types/source-list-map/download/@types/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" + integrity sha1-AHiDYGP/rxdBI0m7o2QIfgrALsk= + +"@types/webpack-sources@^0.1.5": + version "0.1.5" + resolved "https://registry.npm.taobao.org/@types/webpack-sources/download/@types/webpack-sources-0.1.5.tgz#be47c10f783d3d6efe1471ff7f042611bd464a92" + integrity sha1-vkfBD3g9PW7+FHH/fwQmEb1GSpI= + dependencies: + "@types/node" "*" + "@types/source-list-map" "*" + source-map "^0.6.1" + +"@webassemblyjs/ast@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/ast/download/@webassemblyjs/ast-1.8.5.tgz#51b1c5fe6576a34953bf4b253df9f0d490d9e359" + integrity sha1-UbHF/mV2o0lTv0slPfnw1JDZ41k= + dependencies: + "@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@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/floating-point-hex-parser/download/@webassemblyjs/floating-point-hex-parser-1.8.5.tgz#1ba926a2923613edce496fd5b02e8ce8a5f49721" + integrity sha1-G6kmopI2E+3OSW/VsC6M6KX0lyE= + +"@webassemblyjs/helper-api-error@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-api-error/download/@webassemblyjs/helper-api-error-1.8.5.tgz#c49dad22f645227c5edb610bdb9697f1aab721f7" + integrity sha1-xJ2tIvZFInxe22EL25aX8aq3Ifc= + +"@webassemblyjs/helper-buffer@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-buffer/download/@webassemblyjs/helper-buffer-1.8.5.tgz#fea93e429863dd5e4338555f42292385a653f204" + integrity sha1-/qk+Qphj3V5DOFVfQikjhaZT8gQ= + +"@webassemblyjs/helper-code-frame@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-code-frame/download/@webassemblyjs/helper-code-frame-1.8.5.tgz#9a740ff48e3faa3022b1dff54423df9aa293c25e" + integrity sha1-mnQP9I4/qjAisd/1RCPfmqKTwl4= + dependencies: + "@webassemblyjs/wast-printer" "1.8.5" + +"@webassemblyjs/helper-fsm@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-fsm/download/@webassemblyjs/helper-fsm-1.8.5.tgz#ba0b7d3b3f7e4733da6059c9332275d860702452" + integrity sha1-ugt9Oz9+RzPaYFnJMyJ12GBwJFI= + +"@webassemblyjs/helper-module-context@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-module-context/download/@webassemblyjs/helper-module-context-1.8.5.tgz#def4b9927b0101dc8cbbd8d1edb5b7b9c82eb245" + integrity sha1-3vS5knsBAdyMu9jR7bW3ucguskU= + dependencies: + "@webassemblyjs/ast" "1.8.5" + mamacro "^0.0.3" + +"@webassemblyjs/helper-wasm-bytecode@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-wasm-bytecode/download/@webassemblyjs/helper-wasm-bytecode-1.8.5.tgz#537a750eddf5c1e932f3744206551c91c1b93e61" + integrity sha1-U3p1Dt31weky83RCBlUckcG5PmE= + +"@webassemblyjs/helper-wasm-section@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-wasm-section/download/@webassemblyjs/helper-wasm-section-1.8.5.tgz#74ca6a6bcbe19e50a3b6b462847e69503e6bfcbf" + integrity sha1-dMpqa8vhnlCjtrRihH5pUD5r/L8= + dependencies: + "@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@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/ieee754/download/@webassemblyjs/ieee754-1.8.5.tgz#712329dbef240f36bf57bd2f7b8fb9bf4154421e" + integrity sha1-cSMp2+8kDza/V70ve4+5v0FUQh4= + dependencies: + "@xtuc/ieee754" "^1.2.0" + +"@webassemblyjs/leb128@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/leb128/download/@webassemblyjs/leb128-1.8.5.tgz#044edeb34ea679f3e04cd4fd9824d5e35767ae10" + integrity sha1-BE7es06mefPgTNT9mCTV41dnrhA= + dependencies: + "@xtuc/long" "4.2.2" + +"@webassemblyjs/utf8@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/utf8/download/@webassemblyjs/utf8-1.8.5.tgz#a8bf3b5d8ffe986c7c1e373ccbdc2a0915f0cedc" + integrity sha1-qL87XY/+mGx8Hjc8y9wqCRXwztw= + +"@webassemblyjs/wasm-edit@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/wasm-edit/download/@webassemblyjs/wasm-edit-1.8.5.tgz#962da12aa5acc1c131c81c4232991c82ce56e01a" + integrity sha1-li2hKqWswcExyBxCMpkcgs5W4Bo= + dependencies: + "@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@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/wasm-gen/download/@webassemblyjs/wasm-gen-1.8.5.tgz#54840766c2c1002eb64ed1abe720aded714f98bc" + integrity sha1-VIQHZsLBAC62TtGr5yCt7XFPmLw= + dependencies: + "@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@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/wasm-opt/download/@webassemblyjs/wasm-opt-1.8.5.tgz#b24d9f6ba50394af1349f510afa8ffcb8a63d264" + integrity sha1-sk2fa6UDlK8TSfUQr6j/y4pj0mQ= + dependencies: + "@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@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/wasm-parser/download/@webassemblyjs/wasm-parser-1.8.5.tgz#21576f0ec88b91427357b8536383668ef7c66b8d" + integrity sha1-IVdvDsiLkUJzV7hTY4NmjvfGa40= + dependencies: + "@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@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/wast-parser/download/@webassemblyjs/wast-parser-1.8.5.tgz#e10eecd542d0e7bd394f6827c49f3df6d4eefb8c" + integrity sha1-4Q7s1ULQ5705T2gnxJ899tTu+4w= + dependencies: + "@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@1.8.5": + version "1.8.5" + resolved "https://registry.npm.taobao.org/@webassemblyjs/wast-printer/download/@webassemblyjs/wast-printer-1.8.5.tgz#114bbc481fd10ca0e23b3560fa812748b0bae5bc" + integrity sha1-EUu8SB/RDKDiOzVg+oEnSLC65bw= + dependencies: + "@webassemblyjs/ast" "1.8.5" + "@webassemblyjs/wast-parser" "1.8.5" + "@xtuc/long" "4.2.2" + +"@xtuc/ieee754@^1.2.0": + version "1.2.0" + resolved "https://registry.npm.taobao.org/@xtuc/ieee754/download/@xtuc/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + integrity sha1-7vAUoxRa5Hehy8AM0eVSM23Ot5A= + +"@xtuc/long@4.2.2": + version "4.2.2" + resolved "https://registry.npm.taobao.org/@xtuc/long/download/@xtuc/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + integrity sha1-0pHGpOl5ibXGHZrPOWrk/hM6cY0= + +"@yarnpkg/lockfile@1.1.0": + version "1.1.0" + resolved "https://registry.npm.taobao.org/@yarnpkg/lockfile/download/@yarnpkg/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" + integrity sha1-53qX+9NFt22DJF7c0X05OxtB+zE= + +JSONStream@^1.3.4: + version "1.3.5" + resolved "https://registry.npm.taobao.org/JSONStream/download/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" + integrity sha1-MgjB8I06TZkmGrZPkjArwV4RHKA= + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + +abbrev@1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/abbrev/download/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg= + +accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: + version "1.3.7" + resolved "https://registry.npm.taobao.org/accepts/download/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" + integrity sha1-UxvHJlF6OytB+FACHGzBXqq1B80= + dependencies: + mime-types "~2.1.24" + negotiator "0.6.2" + +acorn@^6.2.1: + version "6.4.0" + resolved "https://registry.npm.taobao.org/acorn/download/acorn-6.4.0.tgz#b659d2ffbafa24baf5db1cdbb2c94a983ecd2784" + integrity sha1-tlnS/7r6JLr12xzbsslKmD7NJ4Q= + +adm-zip@^0.4.9: + version "0.4.13" + resolved "https://registry.npm.taobao.org/adm-zip/download/adm-zip-0.4.13.tgz#597e2f8cc3672151e1307d3e95cddbc75672314a" + integrity sha1-WX4vjMNnIVHhMH0+lc3bx1ZyMUo= + +after@0.8.2: + version "0.8.2" + resolved "https://registry.npm.taobao.org/after/download/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" + integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8= + +agent-base@4, agent-base@^4.3.0: + version "4.3.0" + resolved "https://registry.npm.taobao.org/agent-base/download/agent-base-4.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fagent-base%2Fdownload%2Fagent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" + integrity sha1-gWXwHENgCbzK0LHRIvBe13Dvxu4= + dependencies: + es6-promisify "^5.0.0" + +agent-base@~4.2.1: + version "4.2.1" + resolved "https://registry.npm.taobao.org/agent-base/download/agent-base-4.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fagent-base%2Fdownload%2Fagent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9" + integrity sha1-2J5ZmfeXh1Z0wH2H8mD8Qeg+jKk= + dependencies: + es6-promisify "^5.0.0" + +agentkeepalive@^3.4.1: + version "3.5.2" + resolved "https://registry.npm.taobao.org/agentkeepalive/download/agentkeepalive-3.5.2.tgz?cache=0&sync_timestamp=1570869777482&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fagentkeepalive%2Fdownload%2Fagentkeepalive-3.5.2.tgz#a113924dd3fa24a0bc3b78108c450c2abee00f67" + integrity sha1-oROSTdP6JKC8O3gQjEUMKr7gD2c= + dependencies: + humanize-ms "^1.2.1" + +ajv-errors@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/ajv-errors/download/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" + integrity sha1-81mGrOuRr63sQQL72FAUlQzvpk0= + +ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: + version "3.4.1" + resolved "https://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-3.4.1.tgz#ef916e271c64ac12171fd8384eaae6b2345854da" + integrity sha1-75FuJxxkrBIXH9g4TqrmsjRYVNo= + +ajv@6.10.2, ajv@^6.1.0, ajv@^6.10.2, ajv@^6.5.5: + version "6.10.2" + resolved "https://registry.npm.taobao.org/ajv/download/ajv-6.10.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv%2Fdownload%2Fajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" + integrity sha1-086gTWsBeyiUrWkED+yLYj60vVI= + 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" + +ajv@^5.0.0: + version "5.5.2" + resolved "https://registry.npm.taobao.org/ajv/download/ajv-5.5.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv%2Fdownload%2Fajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" + integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= + dependencies: + co "^4.6.0" + fast-deep-equal "^1.0.0" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.3.0" + +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.npm.taobao.org/amdefine/download/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= + +ansi-colors@4.1.1: + version "4.1.1" + resolved "https://registry.npm.taobao.org/ansi-colors/download/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha1-y7muJWv3UK8eqzRPIpqif+lLo0g= + +ansi-colors@^3.0.0: + version "3.2.4" + resolved "https://registry.npm.taobao.org/ansi-colors/download/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" + integrity sha1-46PaS/uubIapwoViXeEkojQCb78= + +ansi-escapes@^4.2.1: + version "4.3.0" + resolved "https://registry.npm.taobao.org/ansi-escapes/download/ansi-escapes-4.3.0.tgz#a4ce2b33d6b214b7950d8595c212f12ac9cc569d" + integrity sha1-pM4rM9ayFLeVDYWVwhLxKsnMVp0= + dependencies: + type-fest "^0.8.1" + +ansi-html@0.0.7: + version "0.0.7" + resolved "https://registry.npm.taobao.org/ansi-html/download/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" + integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= + +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= + +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc= + +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha1-OIU59VF5vzkznIGvMKZU1p+Hy3U= + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0= + dependencies: + color-convert "^1.9.0" + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + integrity sha1-vLJLTzeTTZqnrBe0ra+J58du8us= + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +anymatch@~3.1.1: + version "3.1.1" + resolved "https://registry.npm.taobao.org/anymatch/download/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" + integrity sha1-xV7PAhheJGklk5kxDBc84xIzsUI= + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +app-root-path@^2.2.1: + version "2.2.1" + resolved "https://registry.npm.taobao.org/app-root-path/download/app-root-path-2.2.1.tgz#d0df4a682ee408273583d43f6f79e9892624bc9a" + integrity sha1-0N9KaC7kCCc1g9Q/b3npiSYkvJo= + +append-transform@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/append-transform/download/append-transform-1.0.0.tgz?cache=0&sync_timestamp=1568135538355&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fappend-transform%2Fdownload%2Fappend-transform-1.0.0.tgz#046a52ae582a228bd72f58acfbe2967c678759ab" + integrity sha1-BGpSrlgqIovXL1is++KWfGeHWas= + dependencies: + default-require-extensions "^2.0.0" + +aproba@^1.0.3, aproba@^1.1.1: + version "1.2.0" + resolved "https://registry.npm.taobao.org/aproba/download/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + integrity sha1-aALmJk79GMeQobDVF/DyYnvyyUo= + +are-we-there-yet@~1.1.2: + version "1.1.5" + resolved "https://registry.npm.taobao.org/are-we-there-yet/download/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" + integrity sha1-SzXClE8GKov82mZBB2A1D+nd/CE= + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.npm.taobao.org/argparse/download/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE= + dependencies: + sprintf-js "~1.0.2" + +aria-query@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/aria-query/download/aria-query-3.0.0.tgz#65b3fcc1ca1155a8c9ae64d6eee297f15d5133cc" + integrity sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w= + dependencies: + ast-types-flow "0.0.7" + commander "^2.11.0" + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/arr-diff/download/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/arr-flatten/download/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha1-NgSLv/TntH4TZkQxbJlmnqWukfE= + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/arr-union/download/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/array-flatten/download/array-flatten-1.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farray-flatten%2Fdownload%2Farray-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= + +array-flatten@^2.1.0: + version "2.1.2" + resolved "https://registry.npm.taobao.org/array-flatten/download/array-flatten-2.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farray-flatten%2Fdownload%2Farray-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" + integrity sha1-JO+AoowaiTYX4hSbDG0NeIKTsJk= + +array-union@^1.0.1: + version "1.0.2" + resolved "https://registry.npm.taobao.org/array-union/download/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= + dependencies: + array-uniq "^1.0.1" + +array-uniq@^1.0.1: + version "1.0.3" + resolved "https://registry.npm.taobao.org/array-uniq/download/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.npm.taobao.org/array-unique/download/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + +arraybuffer.slice@~0.0.7: + version "0.0.7" + resolved "https://registry.npm.taobao.org/arraybuffer.slice/download/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675" + integrity sha1-O7xCdd1YTMGxCAm4nU6LY6aednU= + +arrify@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/arrify/download/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= + +asap@^2.0.0, asap@~2.0.3: + version "2.0.6" + resolved "https://registry.npm.taobao.org/asap/download/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= + +asn1.js@^4.0.0: + version "4.10.1" + resolved "https://registry.npm.taobao.org/asn1.js/download/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" + integrity sha1-ucK/WAXx5kqt7tbfOiv6+1pz9aA= + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +asn1@~0.2.3: + version "0.2.4" + resolved "https://registry.npm.taobao.org/asn1/download/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" + integrity sha1-jSR136tVO7M+d7VOWeiAu4ziMTY= + dependencies: + safer-buffer "~2.1.0" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/assert-plus/download/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + +assert@^1.1.1: + version "1.5.0" + resolved "https://registry.npm.taobao.org/assert/download/assert-1.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fassert%2Fdownload%2Fassert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" + integrity sha1-VcEJqvbgrv2z3EtxJAxwv1dLGOs= + dependencies: + object-assign "^4.1.1" + util "0.10.3" + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/assign-symbols/download/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + +ast-types-flow@0.0.7: + version "0.0.7" + resolved "https://registry.npm.taobao.org/ast-types-flow/download/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" + integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0= + +async-each@^1.0.1: + version "1.0.3" + resolved "https://registry.npm.taobao.org/async-each/download/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" + integrity sha1-tyfb+H12UWAvBvTUrDh/R9kbDL8= + +async-limiter@~1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/async-limiter/download/async-limiter-1.0.1.tgz?cache=0&sync_timestamp=1574271635932&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fasync-limiter%2Fdownload%2Fasync-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" + integrity sha1-3TeelPDbgxCwgpH51kwyCXZmF/0= + +async@^2.5.0, async@^2.6.2: + version "2.6.3" + resolved "https://registry.npm.taobao.org/async/download/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" + integrity sha1-1yYl4jRKNlbjo61Pp0n6gymdgv8= + dependencies: + lodash "^4.17.14" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.npm.taobao.org/asynckit/download/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k= + +autoprefixer@9.6.1: + version "9.6.1" + resolved "https://registry.npm.taobao.org/autoprefixer/download/autoprefixer-9.6.1.tgz#51967a02d2d2300bb01866c1611ec8348d355a47" + integrity sha1-UZZ6AtLSMAuwGGbBYR7INI01Wkc= + dependencies: + browserslist "^4.6.3" + caniuse-lite "^1.0.30000980" + chalk "^2.4.2" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^7.0.17" + postcss-value-parser "^4.0.0" + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.npm.taobao.org/aws-sign2/download/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + +aws4@^1.8.0: + version "1.9.0" + resolved "https://registry.npm.taobao.org/aws4/download/aws4-1.9.0.tgz#24390e6ad61386b0a747265754d2a17219de862c" + integrity sha1-JDkOatYThrCnRyZXVNKhchnehiw= + +axobject-query@2.0.2: + version "2.0.2" + resolved "https://registry.npm.taobao.org/axobject-query/download/axobject-query-2.0.2.tgz#ea187abe5b9002b377f925d8bf7d1c561adf38f9" + integrity sha1-6hh6vluQArN3+SXYv30cVhrfOPk= + dependencies: + ast-types-flow "0.0.7" + +babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: + version "6.26.0" + resolved "https://registry.npm.taobao.org/babel-code-frame/download/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" + integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= + dependencies: + chalk "^1.1.3" + esutils "^2.0.2" + js-tokens "^3.0.2" + +babel-generator@^6.18.0: + version "6.26.1" + resolved "https://registry.npm.taobao.org/babel-generator/download/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" + integrity sha1-GERAjTuPDTWkBOp6wYDwh6YBvZA= + 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" + +babel-messages@^6.23.0: + version "6.23.0" + resolved "https://registry.npm.taobao.org/babel-messages/download/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" + integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-dynamic-import-node@^2.3.0: + version "2.3.0" + resolved "https://registry.npm.taobao.org/babel-plugin-dynamic-import-node/download/babel-plugin-dynamic-import-node-2.3.0.tgz#f00f507bdaa3c3e3ff6e7e5e98d90a7acab96f7f" + integrity sha1-8A9Qe9qjw+P/bn5emNkKesq5b38= + dependencies: + object.assign "^4.1.0" + +babel-runtime@^6.22.0, babel-runtime@^6.26.0: + version "6.26.0" + resolved "https://registry.npm.taobao.org/babel-runtime/download/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.11.0" + +babel-template@^6.16.0: + version "6.26.0" + resolved "https://registry.npm.taobao.org/babel-template/download/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" + integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= + dependencies: + 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@^6.18.0, babel-traverse@^6.26.0: + version "6.26.0" + resolved "https://registry.npm.taobao.org/babel-traverse/download/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" + integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= + 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" + +babel-types@^6.18.0, babel-types@^6.26.0: + version "6.26.0" + resolved "https://registry.npm.taobao.org/babel-types/download/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" + integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= + dependencies: + babel-runtime "^6.26.0" + esutils "^2.0.2" + lodash "^4.17.4" + to-fast-properties "^1.0.3" + +babylon@^6.18.0: + version "6.18.0" + resolved "https://registry.npm.taobao.org/babylon/download/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + integrity sha1-ry87iPpvXB5MY00aD46sT1WzleM= + +backo2@1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/backo2/download/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" + integrity sha1-MasayLEpNjRj41s+u2n038+6eUc= + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= + +base64-arraybuffer@0.1.5: + version "0.1.5" + resolved "https://registry.npm.taobao.org/base64-arraybuffer/download/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8" + integrity sha1-c5JncZI7Whl0etZmqlzUv5xunOg= + +base64-js@^1.0.2: + version "1.3.1" + resolved "https://registry.npm.taobao.org/base64-js/download/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" + integrity sha1-WOzoy3XdB+ce0IxzarxfrE2/jfE= + +base64id@1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/base64id/download/base64id-1.0.0.tgz#47688cb99bb6804f0e06d3e763b1c32e57d8e6b6" + integrity sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY= + +base@^0.11.1: + version "0.11.2" + resolved "https://registry.npm.taobao.org/base/download/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha1-e95c7RRbbVUakNuH+DxVi060io8= + 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" + +batch@0.6.1: + version "0.6.1" + resolved "https://registry.npm.taobao.org/batch/download/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" + integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= + +bcrypt-pbkdf@^1.0.0: + version "1.0.2" + resolved "https://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + dependencies: + tweetnacl "^0.14.3" + +better-assert@~1.0.0: + version "1.0.2" + resolved "https://registry.npm.taobao.org/better-assert/download/better-assert-1.0.2.tgz#40866b9e1b9e0b55b481894311e68faffaebc522" + integrity sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI= + dependencies: + callsite "1.0.0" + +big.js@^5.2.2: + version "5.2.2" + resolved "https://registry.npm.taobao.org/big.js/download/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" + integrity sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg= + +binary-extensions@^1.0.0: + version "1.13.1" + resolved "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" + integrity sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U= + +binary-extensions@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" + integrity sha1-I8DfFPaogHf1+YbA0WfsA8PVU3w= + +bindings@^1.5.0: + version "1.5.0" + resolved "https://registry.npm.taobao.org/bindings/download/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha1-EDU8npRTNLwFEabZCzj7x8nFBN8= + dependencies: + file-uri-to-path "1.0.0" + +blob@0.0.5: + version "0.0.5" + resolved "https://registry.npm.taobao.org/blob/download/blob-0.0.5.tgz#d680eeef25f8cd91ad533f5b01eed48e64caf683" + integrity sha1-1oDu7yX4zZGtUz9bAe7UjmTK9oM= + +blocking-proxy@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/blocking-proxy/download/blocking-proxy-1.0.1.tgz#81d6fd1fe13a4c0d6957df7f91b75e98dac40cb2" + integrity sha1-gdb9H+E6TA1pV99/kbdemNrEDLI= + dependencies: + minimist "^1.2.0" + +bluebird@^3.3.0, bluebird@^3.5.1, bluebird@^3.5.3, bluebird@^3.5.5: + version "3.7.2" + resolved "https://registry.npm.taobao.org/bluebird/download/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" + integrity sha1-nyKcFb4nJFT/qXOs4NvueaGww28= + +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: + version "4.11.8" + resolved "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" + integrity sha1-LN4J617jQfSEdGuwMJsyU7GxRC8= + +body-parser@1.19.0, body-parser@^1.16.1: + version "1.19.0" + resolved "https://registry.npm.taobao.org/body-parser/download/body-parser-1.19.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbody-parser%2Fdownload%2Fbody-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" + integrity sha1-lrJwnlfJxOCab9Zqj9l5hE9p8Io= + 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" + +bonjour@^3.5.0: + version "3.5.0" + resolved "https://registry.npm.taobao.org/bonjour/download/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" + integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= + dependencies: + array-flatten "^2.1.0" + deep-equal "^1.0.1" + dns-equal "^1.0.0" + dns-txt "^2.0.2" + multicast-dns "^6.0.1" + multicast-dns-service-types "^1.1.0" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0= + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^2.3.1, braces@^2.3.2: + version "2.3.2" + resolved "https://registry.npm.taobao.org/braces/download/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha1-WXn9PxTNUxVl5fot8av/8d+u5yk= + 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" + +braces@~3.0.2: + version "3.0.2" + resolved "https://registry.npm.taobao.org/braces/download/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha1-NFThpGLujVmeI23zNs2epPiv4Qc= + dependencies: + fill-range "^7.0.1" + +brorand@^1.0.1: + version "1.1.0" + resolved "https://registry.npm.taobao.org/brorand/download/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= + +browserify-aes@^1.0.0, browserify-aes@^1.0.4: + version "1.2.0" + resolved "https://registry.npm.taobao.org/browserify-aes/download/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + integrity sha1-Mmc0ZC9APavDADIJhTu3CtQo70g= + 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" + +browserify-cipher@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/browserify-cipher/download/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" + integrity sha1-jWR0wbhwv9q807z8wZNKEOlPFfA= + dependencies: + browserify-aes "^1.0.4" + browserify-des "^1.0.0" + evp_bytestokey "^1.0.0" + +browserify-des@^1.0.0: + version "1.0.2" + resolved "https://registry.npm.taobao.org/browserify-des/download/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" + integrity sha1-OvTx9Zg5QDVy8cZiBDdfen9wPpw= + dependencies: + cipher-base "^1.0.1" + des.js "^1.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +browserify-rsa@^4.0.0: + version "4.0.1" + resolved "https://registry.npm.taobao.org/browserify-rsa/download/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" + integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= + dependencies: + bn.js "^4.1.0" + randombytes "^2.0.1" + +browserify-sign@^4.0.0: + version "4.0.4" + resolved "https://registry.npm.taobao.org/browserify-sign/download/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" + integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= + dependencies: + 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@^0.2.0: + version "0.2.0" + resolved "https://registry.npm.taobao.org/browserify-zlib/download/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" + integrity sha1-KGlFnZqjviRf6P4sofRuLn9U1z8= + dependencies: + pako "~1.0.5" + +browserslist@4.6.6: + version "4.6.6" + resolved "https://registry.npm.taobao.org/browserslist/download/browserslist-4.6.6.tgz?cache=0&sync_timestamp=1578024984944&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbrowserslist%2Fdownload%2Fbrowserslist-4.6.6.tgz#6e4bf467cde520bc9dbdf3747dafa03531cec453" + integrity sha1-bkv0Z83lILydvfN0fa+gNTHOxFM= + dependencies: + caniuse-lite "^1.0.30000984" + electron-to-chromium "^1.3.191" + node-releases "^1.1.25" + +browserslist@^4.6.0, browserslist@^4.6.3, browserslist@^4.8.2: + version "4.8.3" + resolved "https://registry.npm.taobao.org/browserslist/download/browserslist-4.8.3.tgz?cache=0&sync_timestamp=1578024984944&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbrowserslist%2Fdownload%2Fbrowserslist-4.8.3.tgz#65802fcd77177c878e015f0e3189f2c4f627ba44" + integrity sha1-ZYAvzXcXfIeOAV8OMYnyxPYnukQ= + dependencies: + caniuse-lite "^1.0.30001017" + electron-to-chromium "^1.3.322" + node-releases "^1.1.44" + +browserstack@^1.5.1: + version "1.5.3" + resolved "https://registry.npm.taobao.org/browserstack/download/browserstack-1.5.3.tgz#93ab48799a12ef99dbd074dd595410ddb196a7ac" + integrity sha1-k6tIeZoS75nb0HTdWVQQ3bGWp6w= + dependencies: + https-proxy-agent "^2.2.1" + +buffer-alloc-unsafe@^1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/buffer-alloc-unsafe/download/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" + integrity sha1-vX3CauKXLQ7aJTvgYdupkjScGfA= + +buffer-alloc@^1.2.0: + version "1.2.0" + resolved "https://registry.npm.taobao.org/buffer-alloc/download/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec" + integrity sha1-iQ3ZDZI6hz4I4Q5f1RpX5bfM4Ow= + dependencies: + buffer-alloc-unsafe "^1.1.0" + buffer-fill "^1.0.0" + +buffer-fill@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/buffer-fill/download/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" + integrity sha1-+PeLdniYiO858gXNY39o5wISKyw= + +buffer-from@^1.0.0, buffer-from@^1.1.0: + version "1.1.1" + resolved "https://registry.npm.taobao.org/buffer-from/download/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha1-MnE7wCj3XAL9txDXx7zsHyxgcO8= + +buffer-indexof@^1.0.0: + version "1.1.1" + resolved "https://registry.npm.taobao.org/buffer-indexof/download/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" + integrity sha1-Uvq8xqYG0aADAoAmSO9o9jnaJow= + +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.npm.taobao.org/buffer-xor/download/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= + +buffer@^4.3.0: + version "4.9.2" + resolved "https://registry.npm.taobao.org/buffer/download/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" + integrity sha1-Iw6tNEACmIZEhBqwJEr4xEu+Pvg= + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + +builtin-modules@^1.1.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/builtin-modules/download/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" + integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= + +builtin-status-codes@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/builtin-status-codes/download/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= + +builtins@^1.0.3: + version "1.0.3" + resolved "https://registry.npm.taobao.org/builtins/download/builtins-1.0.3.tgz?cache=0&sync_timestamp=1576512797634&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbuiltins%2Fdownload%2Fbuiltins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" + integrity sha1-y5T662HIaWRR2zZTThQi+U8K7og= + +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/bytes/download/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= + +bytes@3.1.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/bytes/download/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" + integrity sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY= + +cacache@12.0.2: + version "12.0.2" + resolved "https://registry.npm.taobao.org/cacache/download/cacache-12.0.2.tgz?cache=0&sync_timestamp=1569877543868&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-12.0.2.tgz#8db03205e36089a3df6954c66ce92541441ac46c" + integrity sha1-jbAyBeNgiaPfaVTGbOklQUQaxGw= + 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" + +cacache@^12.0.0, cacache@^12.0.2, cacache@^12.0.3: + version "12.0.3" + resolved "https://registry.npm.taobao.org/cacache/download/cacache-12.0.3.tgz?cache=0&sync_timestamp=1569877543868&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-12.0.3.tgz#be99abba4e1bf5df461cd5a2c1071fc432573390" + integrity sha1-vpmruk4b9d9GHNWiwQcfxDJXM5A= + 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" + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/cache-base/download/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha1-Cn9GQWgxyLZi7jb+TnxZ129marI= + 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" + +caller-callsite@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/caller-callsite/download/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= + dependencies: + callsites "^2.0.0" + +caller-path@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/caller-path/download/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= + dependencies: + caller-callsite "^2.0.0" + +callsite@1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/callsite/download/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" + integrity sha1-KAOY5dZkvXQDi28JBRU+borxvCA= + +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/callsites/download/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= + +camelcase@^5.0.0: + version "5.3.1" + resolved "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA= + +caniuse-lite@1.0.30000989: + version "1.0.30000989" + resolved "https://registry.npm.taobao.org/caniuse-lite/download/caniuse-lite-1.0.30000989.tgz?cache=0&sync_timestamp=1578188987801&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcaniuse-lite%2Fdownload%2Fcaniuse-lite-1.0.30000989.tgz#b9193e293ccf7e4426c5245134b8f2a56c0ac4b9" + integrity sha1-uRk+KTzPfkQmxSRRNLjypWwKxLk= + +caniuse-lite@^1.0.30000980, caniuse-lite@^1.0.30000984, caniuse-lite@^1.0.30001017: + version "1.0.30001019" + resolved "https://registry.npm.taobao.org/caniuse-lite/download/caniuse-lite-1.0.30001019.tgz?cache=0&sync_timestamp=1578188987801&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcaniuse-lite%2Fdownload%2Fcaniuse-lite-1.0.30001019.tgz#857e3fccaad2b2feb3f1f6d8a8f62d747ea648e1" + integrity sha1-hX4/zKrSsv6z8fbYqPYtdH6mSOE= + +canonical-path@1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/canonical-path/download/canonical-path-1.0.0.tgz#fcb470c23958def85081856be7a86e904f180d1d" + integrity sha1-/LRwwjlY3vhQgYVr56hukE8YDR0= + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.npm.taobao.org/caseless/download/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + +chalk@^1.1.1, chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz?cache=0&sync_timestamp=1573282918610&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= + 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" + +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.0, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.npm.taobao.org/chalk/download/chalk-2.4.2.tgz?cache=0&sync_timestamp=1573282918610&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ= + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chardet@^0.7.0: + version "0.7.0" + resolved "https://registry.npm.taobao.org/chardet/download/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + integrity sha1-kAlISfCTfy7twkJdDSip5fDLrZ4= + +"chokidar@>=2.0.0 <4.0.0": + version "3.3.1" + resolved "https://registry.npm.taobao.org/chokidar/download/chokidar-3.3.1.tgz#c84e5b3d18d9a4d77558fef466b1bf16bbeb3450" + integrity sha1-yE5bPRjZpNd1WP70ZrG/FrvrNFA= + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.3.0" + optionalDependencies: + fsevents "~2.1.2" + +chokidar@^2.0.2, chokidar@^2.0.3, chokidar@^2.1.1, chokidar@^2.1.8: + version "2.1.8" + resolved "https://registry.npm.taobao.org/chokidar/download/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" + integrity sha1-gEs6e2qZNYw8XGHnHYco8EHP+Rc= + dependencies: + anymatch "^2.0.0" + async-each "^1.0.1" + braces "^2.3.2" + 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" + +chownr@^1.1.1: + version "1.1.3" + resolved "https://registry.npm.taobao.org/chownr/download/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142" + integrity sha1-Qtg31SOWiNVfMDADpQgjD6ZycUI= + +chrome-trace-event@^1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/chrome-trace-event/download/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" + integrity sha1-I0CQ7pfH1K0aLEvq4nUF3v/GCKQ= + dependencies: + tslib "^1.9.0" + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.npm.taobao.org/cipher-base/download/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + integrity sha1-h2Dk7MJy9MNjUy+SbYdKriwTl94= + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +circular-dependency-plugin@5.2.0: + version "5.2.0" + resolved "https://registry.npm.taobao.org/circular-dependency-plugin/download/circular-dependency-plugin-5.2.0.tgz#e09dbc2dd3e2928442403e2d45b41cea06bc0a93" + integrity sha1-4J28LdPikoRCQD4tRbQc6ga8CpM= + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.npm.taobao.org/class-utils/download/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha1-+TNprouafOAv1B+q0MqDAzGQxGM= + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +clean-css@4.2.1: + version "4.2.1" + resolved "https://registry.npm.taobao.org/clean-css/download/clean-css-4.2.1.tgz#2d411ef76b8569b6d0c84068dabe85b0aa5e5c17" + integrity sha1-LUEe92uFabbQyEBo2r6FsKpeXBc= + dependencies: + source-map "~0.6.0" + +cli-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/cli-cursor/download/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + integrity sha1-JkMFp65JDR0Dvwybp8kl0XU68wc= + dependencies: + restore-cursor "^3.1.0" + +cli-width@^2.0.0: + version "2.2.0" + resolved "https://registry.npm.taobao.org/cli-width/download/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" + integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= + +cliui@^4.0.0: + version "4.1.0" + resolved "https://registry.npm.taobao.org/cliui/download/cliui-4.1.0.tgz?cache=0&sync_timestamp=1573943106490&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcliui%2Fdownload%2Fcliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" + integrity sha1-NIQi2+gtgAswIu709qwQvy5NG0k= + dependencies: + string-width "^2.1.1" + strip-ansi "^4.0.0" + wrap-ansi "^2.0.0" + +clone-deep@^4.0.1: + version "4.0.1" + resolved "https://registry.npm.taobao.org/clone-deep/download/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + integrity sha1-wZ/Zvbv4WUK0/ZechNz31fB8I4c= + dependencies: + is-plain-object "^2.0.4" + kind-of "^6.0.2" + shallow-clone "^3.0.0" + +clone@^2.1.1, clone@^2.1.2: + version "2.1.2" + resolved "https://registry.npm.taobao.org/clone/download/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" + integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.npm.taobao.org/co/download/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= + +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/code-point-at/download/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + +codelyzer@^5.0.0: + version "5.2.1" + resolved "https://registry.npm.taobao.org/codelyzer/download/codelyzer-5.2.1.tgz#44fd431e128009f38c761828c33ebacba9549d32" + integrity sha1-RP1DHhKACfOMdhgowz66y6lUnTI= + dependencies: + app-root-path "^2.2.1" + aria-query "^3.0.0" + axobject-query "2.0.2" + css-selector-tokenizer "^0.7.1" + cssauron "^1.4.0" + damerau-levenshtein "^1.0.4" + semver-dsl "^1.0.1" + source-map "^0.5.7" + sprintf-js "^1.1.2" + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg= + dependencies: + color-name "1.1.3" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +colors@1.1.2: + version "1.1.2" + resolved "https://registry.npm.taobao.org/colors/download/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" + integrity sha1-FopHAXVran9RoSzgyXv6KMCE7WM= + +colors@^1.1.0: + version "1.4.0" + resolved "https://registry.npm.taobao.org/colors/download/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" + integrity sha1-xQSRR51MG9rtLJztMs98fcI2D3g= + +combined-stream@^1.0.6, combined-stream@~1.0.6: + version "1.0.8" + resolved "https://registry.npm.taobao.org/combined-stream/download/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha1-w9RaizT9cwYxoRCoolIGgrMdWn8= + dependencies: + delayed-stream "~1.0.0" + +commander@^2.11.0, commander@^2.12.1, commander@^2.20.0, commander@~2.20.3: + version "2.20.3" + resolved "https://registry.npm.taobao.org/commander/download/commander-2.20.3.tgz?cache=0&sync_timestamp=1573464098030&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha1-/UhehMA+tIgcIHIrpIA16FMa6zM= + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/commondir/download/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= + +compare-versions@^3.4.0: + version "3.5.1" + resolved "https://registry.npm.taobao.org/compare-versions/download/compare-versions-3.5.1.tgz#26e1f5cf0d48a77eced5046b9f67b6b61075a393" + integrity sha1-JuH1zw1Ip37O1QRrn2e2thB1o5M= + +component-bind@1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/component-bind/download/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1" + integrity sha1-AMYIq33Nk4l8AAllGx06jh5zu9E= + +component-emitter@1.2.1: + version "1.2.1" + resolved "https://registry.npm.taobao.org/component-emitter/download/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" + integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= + +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.npm.taobao.org/component-emitter/download/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha1-FuQHD7qK4ptnnyIVhT7hgasuq8A= + +component-inherit@0.0.3: + version "0.0.3" + resolved "https://registry.npm.taobao.org/component-inherit/download/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143" + integrity sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM= + +compressible@~2.0.16: + version "2.0.17" + resolved "https://registry.npm.taobao.org/compressible/download/compressible-2.0.17.tgz#6e8c108a16ad58384a977f3a482ca20bff2f38c1" + integrity sha1-bowQihatWDhKl386SCyiC/8vOME= + dependencies: + mime-db ">= 1.40.0 < 2" + +compression@^1.7.4: + version "1.7.4" + resolved "https://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" + integrity sha1-lVI+/xcMpXwpoMpB5v4TH0Hlu48= + dependencies: + accepts "~1.3.5" + bytes "3.0.0" + compressible "~2.0.16" + debug "2.6.9" + on-headers "~1.0.2" + safe-buffer "5.1.2" + vary "~1.1.2" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +concat-stream@^1.5.0: + version "1.6.2" + resolved "https://registry.npm.taobao.org/concat-stream/download/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + integrity sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ= + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + +connect-history-api-fallback@^1.6.0: + version "1.6.0" + resolved "https://registry.npm.taobao.org/connect-history-api-fallback/download/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" + integrity sha1-izIIk1kwjRERFdgcrT/Oq4iPl7w= + +connect@^3.6.0: + version "3.7.0" + resolved "https://registry.npm.taobao.org/connect/download/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8" + integrity sha1-XUk0iRDKpeB6AYALAw0MNfIEhPg= + dependencies: + debug "2.6.9" + finalhandler "1.1.2" + parseurl "~1.3.3" + utils-merge "1.0.1" + +console-browserify@^1.1.0: + version "1.2.0" + resolved "https://registry.npm.taobao.org/console-browserify/download/console-browserify-1.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconsole-browserify%2Fdownload%2Fconsole-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" + integrity sha1-ZwY871fOts9Jk6KrOlWECujEkzY= + +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/console-control-strings/download/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + +constants-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/constants-browserify/download/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" + integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= + +content-disposition@0.5.3: + version "0.5.3" + resolved "https://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" + integrity sha1-4TDK9+cnkIfFYWwgB9BIVpiYT70= + dependencies: + safe-buffer "5.1.2" + +content-type@~1.0.4: + version "1.0.4" + resolved "https://registry.npm.taobao.org/content-type/download/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + integrity sha1-4TjMdeBAxyexlm/l5fjJruJW/js= + +convert-source-map@^1.5.0, convert-source-map@^1.5.1, convert-source-map@^1.7.0: + version "1.7.0" + resolved "https://registry.npm.taobao.org/convert-source-map/download/convert-source-map-1.7.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconvert-source-map%2Fdownload%2Fconvert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" + integrity sha1-F6LLiC1/d9NJBYXizmxSRCSjpEI= + dependencies: + safe-buffer "~5.1.1" + +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.npm.taobao.org/cookie-signature/download/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= + +cookie@0.3.1: + version "0.3.1" + resolved "https://registry.npm.taobao.org/cookie/download/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" + integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= + +cookie@0.4.0: + version "0.4.0" + resolved "https://registry.npm.taobao.org/cookie/download/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" + integrity sha1-vrQ35wIrO21JAZ0IhmUwPr6cFLo= + +copy-concurrently@^1.0.0: + version "1.0.5" + resolved "https://registry.npm.taobao.org/copy-concurrently/download/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + integrity sha1-kilzmMrjSTf8r9bsgTnBgFHwteA= + 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" + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= + +copy-webpack-plugin@5.1.1: + version "5.1.1" + resolved "https://registry.npm.taobao.org/copy-webpack-plugin/download/copy-webpack-plugin-5.1.1.tgz#5481a03dea1123d88a988c6ff8b78247214f0b88" + integrity sha1-VIGgPeoRI9iKmIxv+LeCRyFPC4g= + dependencies: + cacache "^12.0.3" + find-cache-dir "^2.1.0" + glob-parent "^3.1.0" + globby "^7.1.1" + is-glob "^4.0.1" + loader-utils "^1.2.3" + minimatch "^3.0.4" + normalize-path "^3.0.0" + p-limit "^2.2.1" + schema-utils "^1.0.0" + serialize-javascript "^2.1.2" + webpack-log "^2.0.0" + +core-js-compat@^3.4.7: + version "3.6.1" + resolved "https://registry.npm.taobao.org/core-js-compat/download/core-js-compat-3.6.1.tgz#39638c935c83c93a793abb628b252ec43e85783a" + integrity sha1-OWOMk1yDyTp5OrtiiyUuxD6FeDo= + dependencies: + browserslist "^4.8.2" + semver "7.0.0" + +core-js@3.2.1: + version "3.2.1" + resolved "https://registry.npm.taobao.org/core-js/download/core-js-3.2.1.tgz#cd41f38534da6cc59f7db050fe67307de9868b09" + integrity sha1-zUHzhTTabMWffbBQ/mcwfemGiwk= + +core-js@^2.2.0, core-js@^2.4.0: + version "2.6.11" + resolved "https://registry.npm.taobao.org/core-js/download/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c" + integrity sha1-OIMUafmSK97Y7iHJ3EaYXgOZMIw= + +core-util-is@1.0.2, core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.npm.taobao.org/core-util-is/download/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + +cosmiconfig@^5.0.0: + version "5.2.1" + resolved "https://registry.npm.taobao.org/cosmiconfig/download/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" + integrity sha1-BA9yaAnFked6F8CjYmykW08Wixo= + dependencies: + import-fresh "^2.0.0" + is-directory "^0.3.1" + js-yaml "^3.13.1" + parse-json "^4.0.0" + +create-ecdh@^4.0.0: + version "4.0.3" + resolved "https://registry.npm.taobao.org/create-ecdh/download/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" + integrity sha1-yREbbzMEXEaX8UR4f5JUzcd8Rf8= + dependencies: + bn.js "^4.1.0" + elliptic "^6.0.0" + +create-hash@^1.1.0, create-hash@^1.1.2: + version "1.2.0" + resolved "https://registry.npm.taobao.org/create-hash/download/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + integrity sha1-iJB4rxGmN1a8+1m9IhmWvjqe8ZY= + dependencies: + 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@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: + version "1.1.7" + resolved "https://registry.npm.taobao.org/create-hmac/download/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + integrity sha1-aRcMeLOrlXFHsriwRXLkfq0iQ/8= + 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" + +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q= + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +crypto-browserify@^3.11.0: + version "3.12.0" + resolved "https://registry.npm.taobao.org/crypto-browserify/download/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" + integrity sha1-OWz58xN/A+S45TLFj2mCVOAPgOw= + 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" + +css-parse@1.7.x: + version "1.7.0" + resolved "https://registry.npm.taobao.org/css-parse/download/css-parse-1.7.0.tgz#321f6cf73782a6ff751111390fc05e2c657d8c9b" + integrity sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs= + +css-selector-tokenizer@^0.7.1: + version "0.7.1" + resolved "https://registry.npm.taobao.org/css-selector-tokenizer/download/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d" + integrity sha1-oXcnGovKUBkXL0+JH8bu2cv2jV0= + dependencies: + cssesc "^0.1.0" + fastparse "^1.1.1" + regexpu-core "^1.0.0" + +cssauron@^1.4.0: + version "1.4.0" + resolved "https://registry.npm.taobao.org/cssauron/download/cssauron-1.4.0.tgz#a6602dff7e04a8306dc0db9a551e92e8b5662ad8" + integrity sha1-pmAt/34EqDBtwNuaVR6S6LVmKtg= + dependencies: + through X.X.X + +cssesc@^0.1.0: + version "0.1.0" + resolved "https://registry.npm.taobao.org/cssesc/download/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" + integrity sha1-yBSQPkViM3GgR3tAEJqq++6t27Q= + +custom-event@~1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/custom-event/download/custom-event-1.0.1.tgz#5d02a46850adf1b4a317946a3928fccb5bfd0425" + integrity sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU= + +cyclist@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/cyclist/download/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" + integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= + +damerau-levenshtein@^1.0.4: + version "1.0.5" + resolved "https://registry.npm.taobao.org/damerau-levenshtein/download/damerau-levenshtein-1.0.5.tgz#780cf7144eb2e8dbd1c3bb83ae31100ccc31a414" + integrity sha1-eAz3FE6y6NvRw7uDrjEQDMwxpBQ= + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.npm.taobao.org/dashdash/download/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + dependencies: + assert-plus "^1.0.0" + +date-format@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/date-format/download/date-format-2.1.0.tgz#31d5b5ea211cf5fd764cd38baf9d033df7e125cf" + integrity sha1-MdW16iEc9f12TNOLr50DPffhJc8= + +debug@*, debug@^4.1.0, debug@^4.1.1: + version "4.1.1" + resolved "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + integrity sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E= + dependencies: + ms "^2.1.1" + +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8: + version "2.6.9" + resolved "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8= + dependencies: + ms "2.0.0" + +debug@3.1.0, debug@~3.1.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE= + dependencies: + ms "2.0.0" + +debug@^3.0.0, debug@^3.1.0, debug@^3.1.1, debug@^3.2.5, debug@^3.2.6: + version "3.2.6" + resolved "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" + integrity sha1-6D0X3hbYp++3cX7b5fsQE17uYps= + dependencies: + ms "^2.1.1" + +debuglog@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/debuglog/download/debuglog-1.0.1.tgz?cache=0&sync_timestamp=1571696609964&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebuglog%2Fdownload%2Fdebuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" + integrity sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI= + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.npm.taobao.org/decamelize/download/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + +decode-uri-component@^0.2.0: + version "0.2.0" + resolved "https://registry.npm.taobao.org/decode-uri-component/download/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= + +deep-equal@^1.0.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/deep-equal/download/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a" + integrity sha1-tcmMlCzv+vfLBR4k4UNKJaLmB2o= + 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" + +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.npm.taobao.org/deep-extend/download/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha1-xPp8lUBKF6nD6Mp+FTcxK3NjMKw= + +default-gateway@^4.2.0: + version "4.2.0" + resolved "https://registry.npm.taobao.org/default-gateway/download/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b" + integrity sha1-FnEEx1AMIRX23WmwpTa7jtcgVSs= + dependencies: + execa "^1.0.0" + ip-regex "^2.1.0" + +default-require-extensions@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/default-require-extensions/download/default-require-extensions-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdefault-require-extensions%2Fdownload%2Fdefault-require-extensions-2.0.0.tgz#f5f8fbb18a7d6d50b21f641f649ebb522cfe24f7" + integrity sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc= + dependencies: + strip-bom "^3.0.0" + +define-properties@^1.1.2, define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.npm.taobao.org/define-properties/download/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE= + dependencies: + object-keys "^1.0.12" + +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha1-1Flono1lS6d+AqgX+HENcCyxbp0= + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +del@^2.2.0: + version "2.2.2" + resolved "https://registry.npm.taobao.org/del/download/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" + integrity sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag= + dependencies: + 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" + +del@^4.1.1: + version "4.1.1" + resolved "https://registry.npm.taobao.org/del/download/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" + integrity sha1-no8RciLqRKMf86FWwEm5kFKp8LQ= + dependencies: + "@types/glob" "^7.1.1" + globby "^6.1.0" + is-path-cwd "^2.0.0" + is-path-in-cwd "^2.0.0" + p-map "^2.0.0" + pify "^4.0.1" + rimraf "^2.6.3" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/delayed-stream/download/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/delegates/download/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= + +dependency-graph@^0.7.2: + version "0.7.2" + resolved "https://registry.npm.taobao.org/dependency-graph/download/dependency-graph-0.7.2.tgz#91db9de6eb72699209d88aea4c1fd5221cac1c49" + integrity sha1-kdud5utyaZIJ2IrqTB/VIhysHEk= + +des.js@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/des.js/download/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" + integrity sha1-U4IULhvcU/hdhtU+X0qn3rkeCEM= + dependencies: + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= + +detect-indent@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/detect-indent/download/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" + integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= + dependencies: + repeating "^2.0.0" + +detect-libc@^1.0.2: + version "1.0.3" + resolved "https://registry.npm.taobao.org/detect-libc/download/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= + +detect-node@^2.0.4: + version "2.0.4" + resolved "https://registry.npm.taobao.org/detect-node/download/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" + integrity sha1-AU7o+PZpxcWAI9pkuBecCDooxGw= + +dezalgo@^1.0.0: + version "1.0.3" + resolved "https://registry.npm.taobao.org/dezalgo/download/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" + integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= + dependencies: + asap "^2.0.0" + wrappy "1" + +di@^0.0.1: + version "0.0.1" + resolved "https://registry.npm.taobao.org/di/download/di-0.0.1.tgz#806649326ceaa7caa3306d75d985ea2748ba913c" + integrity sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw= + +diff@^3.1.0, diff@^3.2.0: + version "3.5.0" + resolved "https://registry.npm.taobao.org/diff/download/diff-3.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdiff%2Fdownload%2Fdiff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" + integrity sha1-gAwN0eCov7yVg1wgKtIg/jF+WhI= + +diffie-hellman@^5.0.0: + version "5.0.3" + resolved "https://registry.npm.taobao.org/diffie-hellman/download/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" + integrity sha1-QOjumPVaIUlgcUaSHGPhrl89KHU= + dependencies: + bn.js "^4.1.0" + miller-rabin "^4.0.0" + randombytes "^2.0.0" + +dir-glob@^2.0.0: + version "2.2.2" + resolved "https://registry.npm.taobao.org/dir-glob/download/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" + integrity sha1-+gnwaUFTyJGLGLoN6vrpR2n8UMQ= + dependencies: + path-type "^3.0.0" + +dns-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/dns-equal/download/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" + integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= + +dns-packet@^1.3.1: + version "1.3.1" + resolved "https://registry.npm.taobao.org/dns-packet/download/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" + integrity sha1-EqpCaYEHW+UAuRDu3NC0fdfe2lo= + dependencies: + ip "^1.1.0" + safe-buffer "^5.0.1" + +dns-txt@^2.0.2: + version "2.0.2" + resolved "https://registry.npm.taobao.org/dns-txt/download/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" + integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= + dependencies: + buffer-indexof "^1.0.0" + +dom-serialize@^2.2.0: + version "2.2.1" + resolved "https://registry.npm.taobao.org/dom-serialize/download/dom-serialize-2.2.1.tgz#562ae8999f44be5ea3076f5419dcd59eb43ac95b" + integrity sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs= + dependencies: + custom-event "~1.0.0" + ent "~2.2.0" + extend "^3.0.0" + void-elements "^2.0.0" + +domain-browser@^1.1.1: + version "1.2.0" + resolved "https://registry.npm.taobao.org/domain-browser/download/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" + integrity sha1-PTH1AZGmdJ3RN1p/Ui6CPULlTto= + +duplexify@^3.4.2, duplexify@^3.6.0: + version "3.7.1" + resolved "https://registry.npm.taobao.org/duplexify/download/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" + integrity sha1-Kk31MX9sz9kfhtb9JdjYoQO4gwk= + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + +ecc-jsbn@~0.1.1: + version "0.1.2" + resolved "https://registry.npm.taobao.org/ecc-jsbn/download/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + dependencies: + jsbn "~0.1.0" + safer-buffer "^2.1.0" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + +electron-to-chromium@^1.3.191, electron-to-chromium@^1.3.322: + version "1.3.326" + resolved "https://registry.npm.taobao.org/electron-to-chromium/download/electron-to-chromium-1.3.326.tgz#71715aca9afd328ea208a3bc4651c15b869f0d1b" + integrity sha1-cXFaypr9Mo6iCKO8RlHBW4afDRs= + +elliptic@^6.0.0: + version "6.5.2" + resolved "https://registry.npm.taobao.org/elliptic/download/elliptic-6.5.2.tgz#05c5678d7173c049d8ca433552224a495d0e3762" + integrity sha1-BcVnjXFzwEnYykM1UiJKSV0ON2I= + 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" + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY= + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha1-6Bj9ac5cz8tARZT4QpY79TFkzDc= + +emojis-list@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/emojis-list/download/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" + integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= + +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + +encoding@^0.1.11: + version "0.1.12" + resolved "https://registry.npm.taobao.org/encoding/download/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" + integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= + dependencies: + iconv-lite "~0.4.13" + +end-of-stream@^1.0.0, end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha1-WuZKX0UFe682JuwU2gyl5LJDHrA= + dependencies: + once "^1.4.0" + +engine.io-client@~3.2.0: + version "3.2.1" + resolved "https://registry.npm.taobao.org/engine.io-client/download/engine.io-client-3.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fengine.io-client%2Fdownload%2Fengine.io-client-3.2.1.tgz#6f54c0475de487158a1a7c77d10178708b6add36" + integrity sha1-b1TAR13khxWKGnx30QF4cItq3TY= + dependencies: + component-emitter "1.2.1" + component-inherit "0.0.3" + debug "~3.1.0" + engine.io-parser "~2.1.1" + has-cors "1.1.0" + indexof "0.0.1" + parseqs "0.0.5" + parseuri "0.0.5" + ws "~3.3.1" + xmlhttprequest-ssl "~1.5.4" + yeast "0.1.2" + +engine.io-parser@~2.1.0, engine.io-parser@~2.1.1: + version "2.1.3" + resolved "https://registry.npm.taobao.org/engine.io-parser/download/engine.io-parser-2.1.3.tgz#757ab970fbf2dfb32c7b74b033216d5739ef79a6" + integrity sha1-dXq5cPvy37Mse3SwMyFtVznveaY= + dependencies: + after "0.8.2" + arraybuffer.slice "~0.0.7" + base64-arraybuffer "0.1.5" + blob "0.0.5" + has-binary2 "~1.0.2" + +engine.io@~3.2.0: + version "3.2.1" + resolved "https://registry.npm.taobao.org/engine.io/download/engine.io-3.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fengine.io%2Fdownload%2Fengine.io-3.2.1.tgz#b60281c35484a70ee0351ea0ebff83ec8c9522a2" + integrity sha1-tgKBw1SEpw7gNR6g6/+D7IyVIqI= + dependencies: + accepts "~1.3.4" + base64id "1.0.0" + cookie "0.3.1" + debug "~3.1.0" + engine.io-parser "~2.1.0" + ws "~3.3.1" + +enhanced-resolve@4.1.0: + version "4.1.0" + resolved "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.1.0.tgz?cache=0&sync_timestamp=1572991863401&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" + integrity sha1-Qcfgv9/nSsH/4eV61qXGyfN0Kn8= + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.4.0" + tapable "^1.0.0" + +enhanced-resolve@^4.1.0: + version "4.1.1" + resolved "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.1.1.tgz?cache=0&sync_timestamp=1572991863401&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.1.1.tgz#2937e2b8066cd0fe7ce0990a98f0d71a35189f66" + integrity sha1-KTfiuAZs0P584JkKmPDXGjUYn2Y= + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.5.0" + tapable "^1.0.0" + +ent@~2.2.0: + version "2.2.0" + resolved "https://registry.npm.taobao.org/ent/download/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" + integrity sha1-6WQhkyWiHQX0RGai9obtbOX13R0= + +err-code@^1.0.0: + version "1.1.2" + resolved "https://registry.npm.taobao.org/err-code/download/err-code-1.1.2.tgz#06e0116d3028f6aef4806849eb0ea6a748ae6960" + integrity sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA= + +errno@^0.1.1, errno@^0.1.3, errno@~0.1.7: + version "0.1.7" + resolved "https://registry.npm.taobao.org/errno/download/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" + integrity sha1-RoTXF3mtOa8Xfj8AeZb3xnyFJhg= + dependencies: + prr "~1.0.1" + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.npm.taobao.org/error-ex/download/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha1-tKxAZIEH/c3PriQvQovqihTU8b8= + dependencies: + is-arrayish "^0.2.1" + +es-abstract@^1.17.0-next.1: + version "1.17.0" + resolved "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.17.0.tgz#f42a517d0036a5591dbb2c463591dc8bb50309b1" + integrity sha1-9CpRfQA2pVkduyxGNZHci7UDCbE= + dependencies: + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + is-callable "^1.1.5" + is-regex "^1.0.5" + object-inspect "^1.7.0" + object-keys "^1.1.1" + object.assign "^4.1.0" + string.prototype.trimleft "^2.1.1" + string.prototype.trimright "^2.1.1" + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha1-5VzUyc3BiLzvsDs2bHNjI/xciYo= + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +es6-promise@^4.0.3: + version "4.2.8" + resolved "https://registry.npm.taobao.org/es6-promise/download/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" + integrity sha1-TrIVlMlyvEBVPSduUQU5FD21Pgo= + +es6-promisify@^5.0.0: + version "5.0.0" + resolved "https://registry.npm.taobao.org/es6-promisify/download/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" + integrity sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM= + dependencies: + es6-promise "^4.0.3" + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +eslint-scope@^4.0.3: + version "4.0.3" + resolved "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" + integrity sha1-ygODMxD2iJoyZHgaqC5j65z+eEg= + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha1-E7BM2z5sXRnfkatph6hpVhmwqnE= + +esrecurse@^4.1.0: + version "4.2.1" + resolved "https://registry.npm.taobao.org/esrecurse/download/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" + integrity sha1-AHo7n9vCs7uH5IeeoZyS/b05Qs8= + dependencies: + estraverse "^4.1.0" + +estraverse@^4.1.0, estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.npm.taobao.org/estraverse/download/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha1-OYrT88WiSUi+dyXoPRGn3ijNvR0= + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.npm.taobao.org/esutils/download/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha1-dNLrTeC42hKTcRkQ1Qd1ubcQ72Q= + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= + +eventemitter3@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-4.0.0.tgz#d65176163887ee59f386d64c82610b696a4a74eb" + integrity sha1-1lF2FjiH7lnzhtZMgmELaWpKdOs= + +events@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/events/download/events-3.0.0.tgz#9a0a0dfaf62893d92b875b8f2698ca4114973e88" + integrity sha1-mgoN+vYok9krh1uPJpjKQRSXPog= + +eventsource@^1.0.7: + version "1.0.7" + resolved "https://registry.npm.taobao.org/eventsource/download/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0" + integrity sha1-j7xyyT/NNAiAkLwKTmT0tc7m2NA= + dependencies: + original "^1.0.0" + +evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.npm.taobao.org/evp_bytestokey/download/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + integrity sha1-f8vbGY3HGVlDLv4ThCaE4FJaywI= + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/execa/download/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha1-xiNqW7TfbW8V6I5/AXeYIWdJ3dg= + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.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@^0.1.2: + version "0.1.2" + resolved "https://registry.npm.taobao.org/exit/download/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.npm.taobao.org/expand-brackets/download/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= + 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" + +express@^4.17.1: + version "4.17.1" + resolved "https://registry.npm.taobao.org/express/download/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" + integrity sha1-RJH8OGBc9R+GKdOcK10Cb5ikwTQ= + 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" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extend@^3.0.0, extend@~3.0.2: + version "3.0.2" + resolved "https://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo= + +external-editor@^3.0.3: + version "3.1.0" + resolved "https://registry.npm.taobao.org/external-editor/download/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + integrity sha1-ywP3QL764D6k0oPK7SdBqD8zVJU= + dependencies: + chardet "^0.7.0" + iconv-lite "^0.4.24" + tmp "^0.0.33" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.npm.taobao.org/extglob/download/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM= + 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" + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.npm.taobao.org/extsprintf/download/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + +extsprintf@^1.2.0: + version "1.4.0" + resolved "https://registry.npm.taobao.org/extsprintf/download/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= + +fast-deep-equal@^1.0.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-1.1.0.tgz?cache=0&sync_timestamp=1575383522243&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-deep-equal%2Fdownload%2Ffast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" + integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ= + +fast-deep-equal@^2.0.1: + version "2.0.1" + resolved "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-2.0.1.tgz?cache=0&sync_timestamp=1575383522243&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-deep-equal%2Fdownload%2Ffast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" + integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= + +fast-json-stable-stringify@2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-json-stable-stringify%2Fdownload%2Ffast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" + integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-json-stable-stringify%2Fdownload%2Ffast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM= + +fastparse@^1.1.1: + version "1.1.2" + resolved "https://registry.npm.taobao.org/fastparse/download/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" + integrity sha1-kXKMWllC7O2FMSg8eUQe5BIsNak= + +faye-websocket@^0.10.0: + version "0.10.0" + resolved "https://registry.npm.taobao.org/faye-websocket/download/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" + integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= + dependencies: + websocket-driver ">=0.5.1" + +faye-websocket@~0.11.1: + version "0.11.3" + resolved "https://registry.npm.taobao.org/faye-websocket/download/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e" + integrity sha1-XA6aiWjokSwoZjn96XeosgnyUI4= + dependencies: + websocket-driver ">=0.5.1" + +figgy-pudding@^3.4.1, figgy-pudding@^3.5.1: + version "3.5.1" + resolved "https://registry.npm.taobao.org/figgy-pudding/download/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790" + integrity sha1-hiRwESkBxyeg5JWoB0S9W6odZ5A= + +figures@^3.0.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/figures/download/figures-3.1.0.tgz?cache=0&sync_timestamp=1571715625804&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffigures%2Fdownload%2Ffigures-3.1.0.tgz#4b198dd07d8d71530642864af2d45dd9e459c4ec" + integrity sha1-SxmN0H2NcVMGQoZK8tRd2eRZxOw= + dependencies: + escape-string-regexp "^1.0.5" + +file-loader@4.2.0: + version "4.2.0" + resolved "https://registry.npm.taobao.org/file-loader/download/file-loader-4.2.0.tgz#5fb124d2369d7075d70a9a5abecd12e60a95215e" + integrity sha1-X7Ek0jadcHXXCppavs0S5gqVIV4= + dependencies: + loader-utils "^1.2.3" + schema-utils "^2.0.0" + +file-uri-to-path@1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/file-uri-to-path/download/file-uri-to-path-1.0.0.tgz?cache=0&sync_timestamp=1570825475173&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-uri-to-path%2Fdownload%2Ffile-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha1-VTp7hEb/b2hDWcRF8eN6BdrMM90= + +fileset@^2.0.3: + version "2.0.3" + resolved "https://registry.npm.taobao.org/fileset/download/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" + integrity sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA= + dependencies: + glob "^7.0.3" + minimatch "^3.0.3" + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/fill-range/download/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.npm.taobao.org/fill-range/download/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha1-GRmmp8df44ssfHflGYU12prN2kA= + dependencies: + to-regex-range "^5.0.1" + +finalhandler@1.1.2, finalhandler@~1.1.2: + version "1.1.2" + resolved "https://registry.npm.taobao.org/finalhandler/download/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" + integrity sha1-t+fQAP/RGTjQ/bBTUG9uur6fWH0= + 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" + +find-cache-dir@3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-3.0.0.tgz#cd4b7dd97b7185b7e17dbfe2d6e4115ee3eeb8fc" + integrity sha1-zUt92Xtxhbfhfb/i1uQRXuPuuPw= + dependencies: + commondir "^1.0.1" + make-dir "^3.0.0" + pkg-dir "^4.1.0" + +find-cache-dir@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" + integrity sha1-jQ+UzRP+Q8bHwmGg2GEVypGMBfc= + dependencies: + commondir "^1.0.1" + make-dir "^2.0.0" + pkg-dir "^3.0.0" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha1-SRafHXmTQwZG2mHsxa41XCHJe3M= + dependencies: + locate-path "^3.0.0" + +find-up@^4.0.0: + version "4.1.0" + resolved "https://registry.npm.taobao.org/find-up/download/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha1-l6/n1s3AvFkoWEt8jXsW6KmqXRk= + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +flatted@^2.0.0: + version "2.0.1" + resolved "https://registry.npm.taobao.org/flatted/download/flatted-2.0.1.tgz#69e57caa8f0eacbc281d2e2cb458d46fdb449e08" + integrity sha1-aeV8qo8OrLwoHS4stFjUb9tEngg= + +flush-write-stream@^1.0.0: + version "1.1.1" + resolved "https://registry.npm.taobao.org/flush-write-stream/download/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" + integrity sha1-jdfYc6G6vCB9lOrQwuDkQnbr8ug= + dependencies: + inherits "^2.0.3" + readable-stream "^2.3.6" + +follow-redirects@^1.0.0: + version "1.9.0" + resolved "https://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.9.0.tgz#8d5bcdc65b7108fe1508649c79c12d732dcedb4f" + integrity sha1-jVvNxltxCP4VCGScecEtcy3O208= + dependencies: + debug "^3.0.0" + +for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/for-in/download/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.npm.taobao.org/forever-agent/download/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + +form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.npm.taobao.org/form-data/download/form-data-2.3.3.tgz?cache=0&sync_timestamp=1573027040291&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fform-data%2Fdownload%2Fform-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha1-3M5SwF9kTymManq5Nr1yTO/786Y= + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + +forwarded@~0.1.2: + version "0.1.2" + resolved "https://registry.npm.taobao.org/forwarded/download/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" + integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.npm.taobao.org/fragment-cache/download/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= + dependencies: + map-cache "^0.2.2" + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.npm.taobao.org/fresh/download/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + +from2@^2.1.0: + version "2.3.0" + resolved "https://registry.npm.taobao.org/from2/download/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + +fs-access@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/fs-access/download/fs-access-1.0.1.tgz#d6a87f262271cefebec30c553407fb995da8777a" + integrity sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o= + dependencies: + null-check "^1.0.0" + +fs-extra@^7.0.1: + version "7.0.1" + resolved "https://registry.npm.taobao.org/fs-extra/download/fs-extra-7.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffs-extra%2Fdownload%2Ffs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" + integrity sha1-TxicRKoSO4lfcigE9V6iPq3DSOk= + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-minipass@^1.2.5: + version "1.2.7" + resolved "https://registry.npm.taobao.org/fs-minipass/download/fs-minipass-1.2.7.tgz?cache=0&sync_timestamp=1569875077546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffs-minipass%2Fdownload%2Ffs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" + integrity sha1-zP+FcIQef+QmVpPaiJNsVa7X98c= + dependencies: + minipass "^2.6.0" + +fs-write-stream-atomic@^1.0.8: + version "1.0.10" + resolved "https://registry.npm.taobao.org/fs-write-stream-atomic/download/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= + dependencies: + graceful-fs "^4.1.2" + iferr "^0.1.5" + imurmurhash "^0.1.4" + readable-stream "1 || 2" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +fsevents@^1.2.7: + version "1.2.11" + resolved "https://registry.npm.taobao.org/fsevents/download/fsevents-1.2.11.tgz?cache=0&sync_timestamp=1576322957668&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffsevents%2Fdownload%2Ffsevents-1.2.11.tgz#67bf57f4758f02ede88fb2a1712fef4d15358be3" + integrity sha1-Z79X9HWPAu3oj7KhcS/vTRU1i+M= + dependencies: + bindings "^1.5.0" + nan "^2.12.1" + +fsevents@~2.1.2: + version "2.1.2" + resolved "https://registry.npm.taobao.org/fsevents/download/fsevents-2.1.2.tgz?cache=0&sync_timestamp=1576322957668&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffsevents%2Fdownload%2Ffsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805" + integrity sha1-TAofs0vGjlQ7S4Kp7Dkr+9qECAU= + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0= + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.npm.taobao.org/gauge/download/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= + dependencies: + 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" + +genfun@^5.0.0: + version "5.0.0" + resolved "https://registry.npm.taobao.org/genfun/download/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537" + integrity sha1-ndlxCgaQClxKW/V6yl2k5S/nZTc= + +get-caller-file@^1.0.1: + version "1.0.3" + resolved "https://registry.npm.taobao.org/get-caller-file/download/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" + integrity sha1-+Xj6TJDR3+f/LWvtoqUV5xO9z0o= + +get-caller-file@^2.0.1: + version "2.0.5" + resolved "https://registry.npm.taobao.org/get-caller-file/download/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha1-T5RBKoLbMvNuOwuXQfipf+sDH34= + +get-stream@^4.0.0, get-stream@^4.1.0: + version "4.1.0" + resolved "https://registry.npm.taobao.org/get-stream/download/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha1-wbJVV189wh1Zv8ec09K0axw6VLU= + dependencies: + pump "^3.0.0" + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.npm.taobao.org/getpass/download/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + dependencies: + assert-plus "^1.0.0" + +glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/glob-parent/download/glob-parent-3.1.0.tgz?cache=0&sync_timestamp=1569136652060&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglob-parent%2Fdownload%2Fglob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + +glob-parent@~5.1.0: + version "5.1.0" + resolved "https://registry.npm.taobao.org/glob-parent/download/glob-parent-5.1.0.tgz?cache=0&sync_timestamp=1569136652060&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglob-parent%2Fdownload%2Fglob-parent-5.1.0.tgz#5f4c1d1e748d30cd73ad2944b3577a81b081e8c2" + integrity sha1-X0wdHnSNMM1zrSlEs1d6gbCB6MI= + dependencies: + is-glob "^4.0.1" + +glob@7.0.x: + version "7.0.6" + resolved "https://registry.npm.taobao.org/glob/download/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" + integrity sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo= + 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" + +glob@7.1.4: + version "7.1.4" + resolved "https://registry.npm.taobao.org/glob/download/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" + integrity sha1-qmCKL2xXetNX4a5aXCbZqNGWklU= + 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" + +glob@^7.0.3, glob@^7.0.6, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: + version "7.1.6" + resolved "https://registry.npm.taobao.org/glob/download/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha1-FB8zuBp8JJLhJVlDB0gMRmeSeKY= + 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" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.npm.taobao.org/globals/download/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha1-q4eVM4hooLq9hSV1gBjCp+uVxC4= + +globals@^9.18.0: + version "9.18.0" + resolved "https://registry.npm.taobao.org/globals/download/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" + integrity sha1-qjiWs+abSH8X4x7SFD1pqOMMLYo= + +globby@^5.0.0: + version "5.0.0" + resolved "https://registry.npm.taobao.org/globby/download/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" + integrity sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0= + dependencies: + 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" + +globby@^6.1.0: + version "6.1.0" + resolved "https://registry.npm.taobao.org/globby/download/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" + integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= + dependencies: + array-union "^1.0.1" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +globby@^7.1.1: + version "7.1.1" + resolved "https://registry.npm.taobao.org/globby/download/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" + integrity sha1-+yzP+UAfhgCUXfral0QMypcrhoA= + dependencies: + array-union "^1.0.1" + dir-glob "^2.0.0" + glob "^7.1.2" + ignore "^3.3.5" + pify "^3.0.0" + slash "^1.0.0" + +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6: + version "4.2.3" + resolved "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" + integrity sha1-ShL/G2A3bvCYYsIJPt2Qgyi+hCM= + +handle-thing@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/handle-thing/download/handle-thing-2.0.0.tgz#0e039695ff50c93fc288557d696f3c1dc6776754" + integrity sha1-DgOWlf9QyT/CiFV9aW88HcZ3Z1Q= + +handlebars@^4.1.2: + version "4.5.3" + resolved "https://registry.npm.taobao.org/handlebars/download/handlebars-4.5.3.tgz?cache=0&sync_timestamp=1574061065936&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhandlebars%2Fdownload%2Fhandlebars-4.5.3.tgz#5cf75bd8714f7605713511a56be7c349becb0482" + integrity sha1-XPdb2HFPdgVxNRGla+fDSb7LBII= + dependencies: + neo-async "^2.6.0" + optimist "^0.6.1" + source-map "^0.6.1" + optionalDependencies: + uglify-js "^3.1.4" + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/har-schema/download/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= + +har-validator@~5.1.0: + version "5.1.3" + resolved "https://registry.npm.taobao.org/har-validator/download/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" + integrity sha1-HvievT5JllV2de7ZiTEQ3DUPoIA= + dependencies: + ajv "^6.5.5" + har-schema "^2.0.0" + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/has-ansi/download/has-ansi-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-ansi%2Fdownload%2Fhas-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= + dependencies: + ansi-regex "^2.0.0" + +has-binary2@~1.0.2: + version "1.0.3" + resolved "https://registry.npm.taobao.org/has-binary2/download/has-binary2-1.0.3.tgz#7776ac627f3ea77250cfc332dab7ddf5e4f5d11d" + integrity sha1-d3asYn8+p3JQz8My2rfd9eT10R0= + dependencies: + isarray "2.0.1" + +has-cors@1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/has-cors/download/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" + integrity sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk= + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/has-flag/download/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-symbols@^1.0.0, has-symbols@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.1.tgz?cache=0&sync_timestamp=1573950719586&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-symbols%2Fdownload%2Fhas-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" + integrity sha1-n1IUdYpEGWxAbZvXbOv4HsLdMeg= + +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.npm.taobao.org/has-unicode/download/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.npm.taobao.org/has-value/download/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/has-value/download/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.npm.taobao.org/has-values/download/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/has-values/download/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.npm.taobao.org/has/download/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y= + dependencies: + function-bind "^1.1.1" + +hash-base@^3.0.0: + version "3.0.4" + resolved "https://registry.npm.taobao.org/hash-base/download/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" + integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.npm.taobao.org/hash.js/download/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha1-C6vKU46NTuSg+JiNaIZlN6ADz0I= + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hmac-drbg@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/hmac-drbg/download/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hosted-git-info@^2.1.4, hosted-git-info@^2.6.0, hosted-git-info@^2.7.1: + version "2.8.5" + resolved "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-2.8.5.tgz#759cfcf2c4d156ade59b0b2dfabddc42a6b9c70c" + integrity sha1-dZz88sTRVq3lmwst+r3cQqa5xww= + +hpack.js@^2.1.6: + version "2.1.6" + resolved "https://registry.npm.taobao.org/hpack.js/download/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= + dependencies: + inherits "^2.0.1" + obuf "^1.0.0" + readable-stream "^2.0.1" + wbuf "^1.1.0" + +html-entities@^1.2.1: + version "1.2.1" + resolved "https://registry.npm.taobao.org/html-entities/download/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" + integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8= + +http-cache-semantics@^3.8.1: + version "3.8.1" + resolved "https://registry.npm.taobao.org/http-cache-semantics/download/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" + integrity sha1-ObDhat2bYFvwqe89nar0hDtMrNI= + +http-deceiver@^1.2.7: + version "1.2.7" + resolved "https://registry.npm.taobao.org/http-deceiver/download/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= + +http-errors@1.7.2: + version "1.7.2" + resolved "https://registry.npm.taobao.org/http-errors/download/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" + integrity sha1-T1ApzxMjnzEDblsuVSkrz7zIXI8= + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.npm.taobao.org/http-errors/download/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + +http-errors@~1.7.2: + version "1.7.3" + resolved "https://registry.npm.taobao.org/http-errors/download/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" + integrity sha1-bGGeT5xgMIw4UZSYwU+7EKrOuwY= + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +"http-parser-js@>=0.4.0 <0.4.11": + version "0.4.10" + resolved "https://registry.npm.taobao.org/http-parser-js/download/http-parser-js-0.4.10.tgz?cache=0&sync_timestamp=1572714277347&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-parser-js%2Fdownload%2Fhttp-parser-js-0.4.10.tgz#92c9c1374c35085f75db359ec56cc257cbb93fa4" + integrity sha1-ksnBN0w1CF912zWexWzCV8u5P6Q= + +http-proxy-agent@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/http-proxy-agent/download/http-proxy-agent-2.1.0.tgz?cache=0&sync_timestamp=1576011099220&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-proxy-agent%2Fdownload%2Fhttp-proxy-agent-2.1.0.tgz#e4821beef5b2142a2026bd73926fe537631c5405" + integrity sha1-5IIb7vWyFCogJr1zkm/lN2McVAU= + dependencies: + agent-base "4" + debug "3.1.0" + +http-proxy-middleware@0.19.1: + version "0.19.1" + resolved "https://registry.npm.taobao.org/http-proxy-middleware/download/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a" + integrity sha1-GDx9xKoUeRUDBkmMIQza+WCApDo= + dependencies: + http-proxy "^1.17.0" + is-glob "^4.0.0" + lodash "^4.17.11" + micromatch "^3.1.10" + +http-proxy@^1.13.0, http-proxy@^1.17.0: + version "1.18.0" + resolved "https://registry.npm.taobao.org/http-proxy/download/http-proxy-1.18.0.tgz?cache=0&sync_timestamp=1568770896103&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-proxy%2Fdownload%2Fhttp-proxy-1.18.0.tgz#dbe55f63e75a347db7f3d99974f2692a314a6a3a" + integrity sha1-2+VfY+daNH2389mZdPJpKjFKajo= + dependencies: + eventemitter3 "^4.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.npm.taobao.org/http-signature/download/http-signature-1.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-signature%2Fdownload%2Fhttp-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +https-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/https-browserify/download/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" + integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= + +https-proxy-agent@^2.2.1, https-proxy-agent@^2.2.3: + version "2.2.4" + resolved "https://registry.npm.taobao.org/https-proxy-agent/download/https-proxy-agent-2.2.4.tgz?cache=0&sync_timestamp=1576013885663&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttps-proxy-agent%2Fdownload%2Fhttps-proxy-agent-2.2.4.tgz#4ee7a737abd92678a293d9b34a1af4d0d08c787b" + integrity sha1-TuenN6vZJniik9mzShr00NCMeHs= + dependencies: + agent-base "^4.3.0" + debug "^3.1.0" + +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.npm.taobao.org/humanize-ms/download/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0= + dependencies: + ms "^2.0.0" + +iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: + version "0.4.24" + resolved "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha1-ICK0sl+93CHS9SSXSkdKr+czkIs= + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ieee754@^1.1.4: + version "1.1.13" + resolved "https://registry.npm.taobao.org/ieee754/download/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" + integrity sha1-7BaFWOlaoYH9h9N/VcMrvLZwi4Q= + +iferr@^0.1.5: + version "0.1.5" + resolved "https://registry.npm.taobao.org/iferr/download/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= + +ignore-walk@^3.0.1: + version "3.0.3" + resolved "https://registry.npm.taobao.org/ignore-walk/download/ignore-walk-3.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fignore-walk%2Fdownload%2Fignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" + integrity sha1-AX4kRxhL/q3nwjjkrv3R6PlbHjc= + dependencies: + minimatch "^3.0.4" + +ignore@^3.3.5: + version "3.3.10" + resolved "https://registry.npm.taobao.org/ignore/download/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" + integrity sha1-Cpf7h2mG6AgcYxFg+PnziRV/AEM= + +image-size@~0.5.0: + version "0.5.5" + resolved "https://registry.npm.taobao.org/image-size/download/image-size-0.5.5.tgz?cache=0&sync_timestamp=1569841504754&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fimage-size%2Fdownload%2Fimage-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" + integrity sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w= + +immediate@~3.0.5: + version "3.0.6" + resolved "https://registry.npm.taobao.org/immediate/download/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" + integrity sha1-nbHb0Pr43m++D13V5Wu2BigN5ps= + +import-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/import-cwd/download/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" + integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= + dependencies: + import-from "^2.1.0" + +import-fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/import-fresh/download/import-fresh-2.0.0.tgz?cache=0&sync_timestamp=1573665028675&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fimport-fresh%2Fdownload%2Fimport-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= + dependencies: + caller-path "^2.0.0" + resolve-from "^3.0.0" + +import-from@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/import-from/download/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" + integrity sha1-M1238qev/VOqpHHUuAId7ja387E= + dependencies: + resolve-from "^3.0.0" + +import-local@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/import-local/download/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" + integrity sha1-VQcL44pZk88Y72236WH1vuXFoJ0= + dependencies: + pkg-dir "^3.0.0" + resolve-cwd "^2.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.npm.taobao.org/imurmurhash/download/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +indexof@0.0.1: + version "0.0.1" + resolved "https://registry.npm.taobao.org/indexof/download/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" + integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= + +infer-owner@^1.0.3, infer-owner@^1.0.4: + version "1.0.4" + resolved "https://registry.npm.taobao.org/infer-owner/download/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha1-xM78qo5RBRwqQLos6KPScpWvlGc= + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.npm.taobao.org/inherits/download/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w= + +inherits@2.0.1: + version "2.0.1" + resolved "https://registry.npm.taobao.org/inherits/download/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" + integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= + +inherits@2.0.3: + version "2.0.3" + resolved "https://registry.npm.taobao.org/inherits/download/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + +ini@1.3.5, ini@^1.3.4, ini@~1.3.0: + version "1.3.5" + resolved "https://registry.npm.taobao.org/ini/download/ini-1.3.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fini%2Fdownload%2Fini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" + integrity sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc= + +inquirer@6.5.1: + version "6.5.1" + resolved "https://registry.npm.taobao.org/inquirer/download/inquirer-6.5.1.tgz#8bfb7a5ac02dac6ff641ac4c5ff17da112fcdb42" + integrity sha1-i/t6WsAtrG/2QaxMX/F9oRL820I= + dependencies: + ansi-escapes "^4.2.1" + chalk "^2.4.2" + cli-cursor "^3.1.0" + cli-width "^2.0.0" + external-editor "^3.0.3" + figures "^3.0.0" + lodash "^4.17.15" + mute-stream "0.0.8" + run-async "^2.2.0" + rxjs "^6.4.0" + string-width "^4.1.0" + strip-ansi "^5.1.0" + through "^2.3.6" + +internal-ip@^4.3.0: + version "4.3.0" + resolved "https://registry.npm.taobao.org/internal-ip/download/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" + integrity sha1-hFRSuq2dLKO2nGNaE3rLmg2tCQc= + dependencies: + default-gateway "^4.2.0" + ipaddr.js "^1.9.0" + +invariant@^2.2.2: + version "2.2.4" + resolved "https://registry.npm.taobao.org/invariant/download/invariant-2.2.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Finvariant%2Fdownload%2Finvariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + integrity sha1-YQ88ksk1nOHbYW5TgAjSP/NRWOY= + dependencies: + loose-envify "^1.0.0" + +invert-kv@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/invert-kv/download/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" + integrity sha1-c5P1r6Weyf9fZ6J2INEcIm4+7AI= + +ip-regex@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/ip-regex/download/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" + integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= + +ip@1.1.5, ip@^1.1.0, ip@^1.1.5: + version "1.1.5" + resolved "https://registry.npm.taobao.org/ip/download/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + +ipaddr.js@1.9.0: + version "1.9.0" + resolved "https://registry.npm.taobao.org/ipaddr.js/download/ipaddr.js-1.9.0.tgz#37df74e430a0e47550fe54a2defe30d8acd95f65" + integrity sha1-N9905DCg5HVQ/lSi3v4w2KzZX2U= + +ipaddr.js@^1.9.0: + version "1.9.1" + resolved "https://registry.npm.taobao.org/ipaddr.js/download/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha1-v/OFQ+64mEglB5/zoqjmy9RngbM= + +is-absolute-url@^3.0.3: + version "3.0.3" + resolved "https://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-3.0.3.tgz?cache=0&sync_timestamp=1569736493122&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-absolute-url%2Fdownload%2Fis-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" + integrity sha1-lsaiK2ojkpsR6gr7GDbDatSl1pg= + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + integrity sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY= + dependencies: + kind-of "^6.0.0" + +is-arguments@^1.0.4: + version "1.0.4" + resolved "https://registry.npm.taobao.org/is-arguments/download/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3" + integrity sha1-P6+WbHy6D/Q3+zH2JQCC/PBEjPM= + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= + dependencies: + binary-extensions "^1.0.0" + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha1-6h9/O4DwZCNug0cPhsCcJU+0Wwk= + dependencies: + binary-extensions "^2.0.0" + +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha1-76ouqdqg16suoTqXsritUf776L4= + +is-callable@^1.1.4, is-callable@^1.1.5: + version "1.1.5" + resolved "https://registry.npm.taobao.org/is-callable/download/is-callable-1.1.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-callable%2Fdownload%2Fis-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab" + integrity sha1-9+RrWWiQRW23Tn9ul2yzJz0G+qs= + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + integrity sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc= + dependencies: + kind-of "^6.0.0" + +is-date-object@^1.0.1: + version "1.0.2" + resolved "https://registry.npm.taobao.org/is-date-object/download/is-date-object-1.0.2.tgz?cache=0&sync_timestamp=1576729293199&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-date-object%2Fdownload%2Fis-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" + integrity sha1-vac28s2P0G0yhE53Q7+nSUw7/X4= + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + integrity sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco= + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + integrity sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw= + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.npm.taobao.org/is-directory/download/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.npm.taobao.org/is-extendable/download/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ= + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^2.1.0, is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-finite@^1.0.0: + version "1.0.2" + resolved "https://registry.npm.taobao.org/is-finite/download/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" + integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0= + +is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= + dependencies: + is-extglob "^2.1.0" + +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.1" + resolved "https://registry.npm.taobao.org/is-glob/download/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + integrity sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw= + dependencies: + is-extglob "^2.1.1" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= + dependencies: + kind-of "^3.0.2" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.npm.taobao.org/is-number/download/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha1-dTU0W4lnNNX4DE0GxQlVUnoU8Ss= + +is-path-cwd@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/is-path-cwd/download/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" + integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= + +is-path-cwd@^2.0.0: + version "2.2.0" + resolved "https://registry.npm.taobao.org/is-path-cwd/download/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" + integrity sha1-Z9Q7gmZKe1GR/ZEZEn6zAASKn9s= + +is-path-in-cwd@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/is-path-in-cwd/download/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" + integrity sha1-WsSLNF72dTOb1sekipEhELJBz1I= + dependencies: + is-path-inside "^1.0.0" + +is-path-in-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/is-path-in-cwd/download/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" + integrity sha1-v+Lcomxp85cmWkAJljYCk1oFOss= + dependencies: + is-path-inside "^2.1.0" + +is-path-inside@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/is-path-inside/download/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" + integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= + dependencies: + path-is-inside "^1.0.1" + +is-path-inside@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/is-path-inside/download/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" + integrity sha1-fJgQWH1lmkDSe8201WFuqwWUlLI= + dependencies: + path-is-inside "^1.0.2" + +is-plain-obj@^1.0.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + +is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.npm.taobao.org/is-plain-object/download/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc= + dependencies: + isobject "^3.0.1" + +is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/is-promise/download/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" + integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= + +is-regex@^1.0.4, is-regex@^1.0.5: + version "1.0.5" + resolved "https://registry.npm.taobao.org/is-regex/download/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae" + integrity sha1-OdWJo1i/GJZ/cmlnEguPwa7XTq4= + dependencies: + has "^1.0.3" + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/is-stream/download/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= + +is-symbol@^1.0.2: + version "1.0.3" + resolved "https://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" + integrity sha1-OOEBS55jKb4N6dJKQU/XRB7GGTc= + dependencies: + has-symbols "^1.0.1" + +is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/is-typedarray/download/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + +is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0= + +is-wsl@^1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/is-wsl/download/is-wsl-1.1.0.tgz?cache=0&sync_timestamp=1569219566107&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-wsl%2Fdownload%2Fis-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" + integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= + +isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + +isarray@2.0.1: + version "2.0.1" + resolved "https://registry.npm.taobao.org/isarray/download/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e" + integrity sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4= + +isbinaryfile@^3.0.0: + version "3.0.3" + resolved "https://registry.npm.taobao.org/isbinaryfile/download/isbinaryfile-3.0.3.tgz#5d6def3edebf6e8ca8cae9c30183a804b5f8be80" + integrity sha1-XW3vPt6/boyoyunDAYOoBLX4voA= + dependencies: + buffer-alloc "^1.2.0" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/isobject/download/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.npm.taobao.org/isobject/download/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + +istanbul-api@^2.1.6: + version "2.1.6" + resolved "https://registry.npm.taobao.org/istanbul-api/download/istanbul-api-2.1.6.tgz#d61702a9d1c66ad89d92e66d401e16b0bda4a35f" + integrity sha1-1hcCqdHGatidkuZtQB4WsL2ko18= + dependencies: + async "^2.6.2" + compare-versions "^3.4.0" + fileset "^2.0.3" + istanbul-lib-coverage "^2.0.5" + istanbul-lib-hook "^2.0.7" + istanbul-lib-instrument "^3.3.0" + istanbul-lib-report "^2.0.8" + istanbul-lib-source-maps "^3.0.6" + istanbul-reports "^2.2.4" + js-yaml "^3.13.1" + make-dir "^2.1.0" + minimatch "^3.0.4" + once "^1.4.0" + +istanbul-instrumenter-loader@3.0.1: + version "3.0.1" + resolved "https://registry.npm.taobao.org/istanbul-instrumenter-loader/download/istanbul-instrumenter-loader-3.0.1.tgz#9957bd59252b373fae5c52b7b5188e6fde2a0949" + integrity sha1-mVe9WSUrNz+uXFK3tRiOb94qCUk= + dependencies: + convert-source-map "^1.5.0" + istanbul-lib-instrument "^1.7.3" + loader-utils "^1.1.0" + schema-utils "^0.3.0" + +istanbul-lib-coverage@^1.2.1: + version "1.2.1" + resolved "https://registry.npm.taobao.org/istanbul-lib-coverage/download/istanbul-lib-coverage-1.2.1.tgz?cache=0&sync_timestamp=1577062400885&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fistanbul-lib-coverage%2Fdownload%2Fistanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0" + integrity sha1-zPftzQoLubj3Kf7rCTBHD5r2ZPA= + +istanbul-lib-coverage@^2.0.5: + version "2.0.5" + resolved "https://registry.npm.taobao.org/istanbul-lib-coverage/download/istanbul-lib-coverage-2.0.5.tgz?cache=0&sync_timestamp=1577062400885&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fistanbul-lib-coverage%2Fdownload%2Fistanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" + integrity sha1-Z18KtpUD+tSx2En3NrqsqAM0T0k= + +istanbul-lib-hook@^2.0.7: + version "2.0.7" + resolved "https://registry.npm.taobao.org/istanbul-lib-hook/download/istanbul-lib-hook-2.0.7.tgz#c95695f383d4f8f60df1f04252a9550e15b5b133" + integrity sha1-yVaV84PU+PYN8fBCUqlVDhW1sTM= + dependencies: + append-transform "^1.0.0" + +istanbul-lib-instrument@^1.7.3: + version "1.10.2" + resolved "https://registry.npm.taobao.org/istanbul-lib-instrument/download/istanbul-lib-instrument-1.10.2.tgz#1f55ed10ac3c47f2bdddd5307935126754d0a9ca" + integrity sha1-H1XtEKw8R/K93dUweTUSZ1TQqco= + dependencies: + babel-generator "^6.18.0" + babel-template "^6.16.0" + babel-traverse "^6.18.0" + babel-types "^6.18.0" + babylon "^6.18.0" + istanbul-lib-coverage "^1.2.1" + semver "^5.3.0" + +istanbul-lib-instrument@^3.3.0: + version "3.3.0" + resolved "https://registry.npm.taobao.org/istanbul-lib-instrument/download/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630" + integrity sha1-pfY9kfC7wMPkee9MXeAnM17G1jA= + dependencies: + "@babel/generator" "^7.4.0" + "@babel/parser" "^7.4.3" + "@babel/template" "^7.4.0" + "@babel/traverse" "^7.4.3" + "@babel/types" "^7.4.0" + istanbul-lib-coverage "^2.0.5" + semver "^6.0.0" + +istanbul-lib-report@^2.0.8: + version "2.0.8" + resolved "https://registry.npm.taobao.org/istanbul-lib-report/download/istanbul-lib-report-2.0.8.tgz?cache=0&sync_timestamp=1577062405578&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fistanbul-lib-report%2Fdownload%2Fistanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33" + integrity sha1-WoETzXRtQ8SInro2qxDn1QybTzM= + dependencies: + istanbul-lib-coverage "^2.0.5" + make-dir "^2.1.0" + supports-color "^6.1.0" + +istanbul-lib-source-maps@^3.0.6: + version "3.0.6" + resolved "https://registry.npm.taobao.org/istanbul-lib-source-maps/download/istanbul-lib-source-maps-3.0.6.tgz?cache=0&sync_timestamp=1577062405633&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fistanbul-lib-source-maps%2Fdownload%2Fistanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" + integrity sha1-KEmXxIIRdS7EhiU9qX44ed77qMg= + dependencies: + debug "^4.1.1" + istanbul-lib-coverage "^2.0.5" + make-dir "^2.1.0" + rimraf "^2.6.3" + source-map "^0.6.1" + +istanbul-reports@^2.2.4: + version "2.2.6" + resolved "https://registry.npm.taobao.org/istanbul-reports/download/istanbul-reports-2.2.6.tgz#7b4f2660d82b29303a8fe6091f8ca4bf058da1af" + integrity sha1-e08mYNgrKTA6j+YJH4ykvwWNoa8= + dependencies: + handlebars "^4.1.2" + +jasmine-core@^3.3: + version "3.5.0" + resolved "https://registry.npm.taobao.org/jasmine-core/download/jasmine-core-3.5.0.tgz#132c23e645af96d85c8bca13c8758b18429fc1e4" + integrity sha1-Eywj5kWvlthci8oTyHWLGEKfweQ= + +jasmine-core@~2.8.0: + version "2.8.0" + resolved "https://registry.npm.taobao.org/jasmine-core/download/jasmine-core-2.8.0.tgz#bcc979ae1f9fd05701e45e52e65d3a5d63f1a24e" + integrity sha1-vMl5rh+f0FcB5F5S5l06XWPxok4= + +jasmine-core@~3.4.0: + version "3.4.0" + resolved "https://registry.npm.taobao.org/jasmine-core/download/jasmine-core-3.4.0.tgz#2a74618e966026530c3518f03e9f845d26473ce3" + integrity sha1-KnRhjpZgJlMMNRjwPp+EXSZHPOM= + +jasmine-spec-reporter@~4.2.1: + version "4.2.1" + resolved "https://registry.npm.taobao.org/jasmine-spec-reporter/download/jasmine-spec-reporter-4.2.1.tgz#1d632aec0341670ad324f92ba84b4b32b35e9e22" + integrity sha1-HWMq7ANBZwrTJPkrqEtLMrNeniI= + dependencies: + colors "1.1.2" + +jasmine@2.8.0: + version "2.8.0" + resolved "https://registry.npm.taobao.org/jasmine/download/jasmine-2.8.0.tgz#6b089c0a11576b1f16df11b80146d91d4e8b8a3e" + integrity sha1-awicChFXax8W3xG4AUbZHU6Lij4= + dependencies: + exit "^0.1.2" + glob "^7.0.6" + jasmine-core "~2.8.0" + +jasminewd2@^2.1.0: + version "2.2.0" + resolved "https://registry.npm.taobao.org/jasminewd2/download/jasminewd2-2.2.0.tgz#e37cf0b17f199cce23bea71b2039395246b4ec4e" + integrity sha1-43zwsX8ZnM4jvqcbIDk5Uka07E4= + +jest-worker@24.9.0: + version "24.9.0" + resolved "https://registry.npm.taobao.org/jest-worker/download/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5" + integrity sha1-Xb/bWy0yLphWeJgjipaXvM5ns+U= + dependencies: + merge-stream "^2.0.0" + supports-color "^6.1.0" + +js-levenshtein@^1.1.3: + version "1.1.6" + resolved "https://registry.npm.taobao.org/js-levenshtein/download/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d" + integrity sha1-xs7ljrNVA3LfjeuF+tXOZs4B1Z0= + +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/js-tokens/download/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha1-GSA/tZmR35jjoocFDUZHzerzJJk= + +js-tokens@^3.0.2: + version "3.0.2" + resolved "https://registry.npm.taobao.org/js-tokens/download/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= + +js-yaml@^3.13.0, js-yaml@^3.13.1: + version "3.13.1" + resolved "https://registry.npm.taobao.org/js-yaml/download/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" + integrity sha1-r/FRswv9+o5J4F2iLnQV6d+jeEc= + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.npm.taobao.org/jsbn/download/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + +jsesc@^1.3.0: + version "1.3.0" + resolved "https://registry.npm.taobao.org/jsesc/download/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" + integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.npm.taobao.org/jsesc/download/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha1-gFZNLkg9rPbo7yCWUKZ98/DCg6Q= + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.npm.taobao.org/jsesc/download/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= + +json-parse-better-errors@^1.0.0, json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/json-parse-better-errors/download/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + integrity sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk= + +json-schema-traverse@^0.3.0: + version "0.3.1" + resolved "https://registry.npm.taobao.org/json-schema-traverse/download/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" + integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.npm.taobao.org/json-schema-traverse/download/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha1-afaofZUTq4u4/mO9sJecRI5oRmA= + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.npm.taobao.org/json-schema/download/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= + +json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.npm.taobao.org/json-stringify-safe/download/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + +json3@^3.3.2: + version "3.3.3" + resolved "https://registry.npm.taobao.org/json3/download/json3-3.3.3.tgz#7fc10e375fc5ae42c4705a5cc0aa6f62be305b81" + integrity sha1-f8EON1/FrkLEcFpcwKpvYr4wW4E= + +json5@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/json5/download/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" + integrity sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4= + dependencies: + minimist "^1.2.0" + +json5@^2.1.0: + version "2.1.1" + resolved "https://registry.npm.taobao.org/json5/download/json5-2.1.1.tgz#81b6cb04e9ba496f1c7005d07b4368a2638f90b6" + integrity sha1-gbbLBOm6SW8ccAXQe0NoomOPkLY= + dependencies: + minimist "^1.2.0" + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/jsonfile/download/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + optionalDependencies: + graceful-fs "^4.1.6" + +jsonparse@^1.2.0: + version "1.3.1" + resolved "https://registry.npm.taobao.org/jsonparse/download/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= + +jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.npm.taobao.org/jsprim/download/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + +jszip@^3.1.3: + version "3.2.2" + resolved "https://registry.npm.taobao.org/jszip/download/jszip-3.2.2.tgz#b143816df7e106a9597a94c77493385adca5bd1d" + integrity sha1-sUOBbffhBqlZepTHdJM4WtylvR0= + dependencies: + lie "~3.3.0" + pako "~1.0.2" + readable-stream "~2.3.6" + set-immediate-shim "~1.0.1" + +karma-chrome-launcher@~2.2.0: + version "2.2.0" + resolved "https://registry.npm.taobao.org/karma-chrome-launcher/download/karma-chrome-launcher-2.2.0.tgz#cf1b9d07136cc18fe239327d24654c3dbc368acf" + integrity sha1-zxudBxNswY/iOTJ9JGVMPbw2is8= + dependencies: + fs-access "^1.0.0" + which "^1.2.1" + +karma-coverage-istanbul-reporter@~2.0.1: + version "2.0.6" + resolved "https://registry.npm.taobao.org/karma-coverage-istanbul-reporter/download/karma-coverage-istanbul-reporter-2.0.6.tgz#7b6e9c88781447bb87aa6ac24bf74b93e558adc3" + integrity sha1-e26ciHgUR7uHqmrCS/dLk+VYrcM= + dependencies: + istanbul-api "^2.1.6" + minimatch "^3.0.4" + +karma-jasmine-html-reporter@^1.4.0: + version "1.5.1" + resolved "https://registry.npm.taobao.org/karma-jasmine-html-reporter/download/karma-jasmine-html-reporter-1.5.1.tgz#0fad2d2ac416bc04724318aad29b89bd86f7bfbc" + integrity sha1-D60tKsQWvARyQxiq0puJvYb3v7w= + +karma-jasmine@~2.0.1: + version "2.0.1" + resolved "https://registry.npm.taobao.org/karma-jasmine/download/karma-jasmine-2.0.1.tgz#26e3e31f2faf272dd80ebb0e1898914cc3a19763" + integrity sha1-JuPjHy+vJy3YDrsOGJiRTMOhl2M= + dependencies: + jasmine-core "^3.3" + +karma-source-map-support@1.4.0: + version "1.4.0" + resolved "https://registry.npm.taobao.org/karma-source-map-support/download/karma-source-map-support-1.4.0.tgz#58526ceccf7e8730e56effd97a4de8d712ac0d6b" + integrity sha1-WFJs7M9+hzDlbv/Zek3o1xKsDWs= + dependencies: + source-map-support "^0.5.5" + +karma@~4.1.0: + version "4.1.0" + resolved "https://registry.npm.taobao.org/karma/download/karma-4.1.0.tgz#d07387c9743a575b40faf73e8a3eb5421c2193e1" + integrity sha1-0HOHyXQ6V1tA+vc+ij61Qhwhk+E= + dependencies: + bluebird "^3.3.0" + body-parser "^1.16.1" + braces "^2.3.2" + chokidar "^2.0.3" + colors "^1.1.0" + connect "^3.6.0" + core-js "^2.2.0" + di "^0.0.1" + dom-serialize "^2.2.0" + flatted "^2.0.0" + glob "^7.1.1" + graceful-fs "^4.1.2" + http-proxy "^1.13.0" + isbinaryfile "^3.0.0" + lodash "^4.17.11" + log4js "^4.0.0" + mime "^2.3.1" + minimatch "^3.0.2" + optimist "^0.6.1" + qjobs "^1.1.4" + range-parser "^1.2.0" + rimraf "^2.6.0" + safe-buffer "^5.0.1" + socket.io "2.1.1" + source-map "^0.6.1" + tmp "0.0.33" + useragent "2.3.0" + +killable@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/killable/download/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" + integrity sha1-TIzkQRh6Bhx0dPuHygjipjgZSJI= + +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + integrity sha1-cpyR4thXt6QZofmqZWhcTDP1hF0= + +kind-of@^6.0.0, kind-of@^6.0.2: + version "6.0.2" + resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" + integrity sha1-ARRrNqYhjmTljzqNZt5df8b20FE= + +lcid@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/lcid/download/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" + integrity sha1-bvXS32DlL4LrIopMNz6NHzlyU88= + dependencies: + invert-kv "^2.0.0" + +less-loader@5.0.0: + version "5.0.0" + resolved "https://registry.npm.taobao.org/less-loader/download/less-loader-5.0.0.tgz#498dde3a6c6c4f887458ee9ed3f086a12ad1b466" + integrity sha1-SY3eOmxsT4h0WO6e0/CGoSrRtGY= + dependencies: + clone "^2.1.1" + loader-utils "^1.1.0" + pify "^4.0.1" + +less@3.9.0: + version "3.9.0" + resolved "https://registry.npm.taobao.org/less/download/less-3.9.0.tgz#b7511c43f37cf57dc87dffd9883ec121289b1474" + integrity sha1-t1EcQ/N89X3Iff/ZiD7BISibFHQ= + dependencies: + clone "^2.1.2" + optionalDependencies: + errno "^0.1.1" + graceful-fs "^4.1.2" + image-size "~0.5.0" + mime "^1.4.1" + mkdirp "^0.5.0" + promise "^7.1.1" + request "^2.83.0" + source-map "~0.6.0" + +license-webpack-plugin@2.1.2: + version "2.1.2" + resolved "https://registry.npm.taobao.org/license-webpack-plugin/download/license-webpack-plugin-2.1.2.tgz?cache=0&sync_timestamp=1571015201302&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flicense-webpack-plugin%2Fdownload%2Flicense-webpack-plugin-2.1.2.tgz#63f7c571537a450ec47dc98f5d5ffdbca7b3b14f" + integrity sha1-Y/fFcVN6RQ7EfcmPXV/9vKezsU8= + dependencies: + "@types/webpack-sources" "^0.1.5" + webpack-sources "^1.2.0" + +lie@~3.3.0: + version "3.3.0" + resolved "https://registry.npm.taobao.org/lie/download/lie-3.3.0.tgz#dcf82dee545f46074daf200c7c1c5a08e0f40f6a" + integrity sha1-3Pgt7lRfRgdNryAMfBxaCOD0D2o= + dependencies: + immediate "~3.0.5" + +loader-runner@^2.4.0: + version "2.4.0" + resolved "https://registry.npm.taobao.org/loader-runner/download/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" + integrity sha1-7UcGa/5TTX6ExMe5mYwqdWB9k1c= + +loader-utils@1.2.3, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3: + version "1.2.3" + resolved "https://registry.npm.taobao.org/loader-utils/download/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" + integrity sha1-H/XcaRHJ8KBiUxpMBLYJQGEIwsc= + dependencies: + big.js "^5.2.2" + emojis-list "^2.0.0" + json5 "^1.0.1" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/locate-path/download/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4= + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.npm.taobao.org/locate-path/download/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha1-Gvujlq/WdqbUJQTQpno6frn2KqA= + dependencies: + p-locate "^4.1.0" + +lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.npm.taobao.org/lodash.clonedeep/download/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= + +lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4, lodash@^4.17.5: + version "4.17.15" + resolved "https://registry.npm.taobao.org/lodash/download/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha1-tEf2ZwoEVbv+7dETku/zMOoJdUg= + +log4js@^4.0.0: + version "4.5.1" + resolved "https://registry.npm.taobao.org/log4js/download/log4js-4.5.1.tgz#e543625e97d9e6f3e6e7c9fc196dd6ab2cae30b5" + integrity sha1-5UNiXpfZ5vPm58n8GW3WqyyuMLU= + dependencies: + date-format "^2.0.0" + debug "^4.1.1" + flatted "^2.0.0" + rfdc "^1.1.4" + streamroller "^1.0.6" + +loglevel@^1.6.4: + version "1.6.6" + resolved "https://registry.npm.taobao.org/loglevel/download/loglevel-1.6.6.tgz?cache=0&sync_timestamp=1573148120654&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Floglevel%2Fdownload%2Floglevel-1.6.6.tgz#0ee6300cc058db6b3551fa1c4bf73b83bb771312" + integrity sha1-DuYwDMBY22s1UfocS/c7g7t3ExI= + +loose-envify@^1.0.0: + version "1.4.0" + resolved "https://registry.npm.taobao.org/loose-envify/download/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8= + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +lru-cache@4.1.x: + version "4.1.5" + resolved "https://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80= + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.npm.taobao.org/lru-cache/download/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA= + dependencies: + yallist "^3.0.2" + +magic-string@0.25.3: + version "0.25.3" + resolved "https://registry.npm.taobao.org/magic-string/download/magic-string-0.25.3.tgz#34b8d2a2c7fec9d9bdf9929a3fd81d271ef35be9" + integrity sha1-NLjSosf+ydm9+ZKaP9gdJx7zW+k= + dependencies: + sourcemap-codec "^1.4.4" + +magic-string@^0.25.0: + version "0.25.5" + resolved "https://registry.npm.taobao.org/magic-string/download/magic-string-0.25.5.tgz#694fa8c6b9a51d83cc4a72c5b6883a7cfa890e40" + integrity sha1-aU+oxrmlHYPMSnLFtog6fPqJDkA= + dependencies: + sourcemap-codec "^1.4.4" + +make-dir@^2.0.0, make-dir@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/make-dir/download/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + integrity sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU= + dependencies: + pify "^4.0.1" + semver "^5.6.0" + +make-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/make-dir/download/make-dir-3.0.0.tgz#1b5f39f6b9270ed33f9f054c5c0f84304989f801" + integrity sha1-G1859rknDtM/nwVMXA+EMEmJ+AE= + dependencies: + semver "^6.0.0" + +make-error@^1.1.1: + version "1.3.5" + resolved "https://registry.npm.taobao.org/make-error/download/make-error-1.3.5.tgz#efe4e81f6db28cadd605c70f29c831b58ef776c8" + integrity sha1-7+ToH22yjK3WBccPKcgxtY73dsg= + +make-fetch-happen@^5.0.0: + version "5.0.2" + resolved "https://registry.npm.taobao.org/make-fetch-happen/download/make-fetch-happen-5.0.2.tgz?cache=0&sync_timestamp=1576544141539&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmake-fetch-happen%2Fdownload%2Fmake-fetch-happen-5.0.2.tgz#aa8387104f2687edca01c8687ee45013d02d19bd" + integrity sha1-qoOHEE8mh+3KAchofuRQE9AtGb0= + dependencies: + agentkeepalive "^3.4.1" + cacache "^12.0.0" + http-cache-semantics "^3.8.1" + http-proxy-agent "^2.1.0" + https-proxy-agent "^2.2.3" + lru-cache "^5.1.1" + mississippi "^3.0.0" + node-fetch-npm "^2.0.2" + promise-retry "^1.1.1" + socks-proxy-agent "^4.0.0" + ssri "^6.0.0" + +mamacro@^0.0.3: + version "0.0.3" + resolved "https://registry.npm.taobao.org/mamacro/download/mamacro-0.0.3.tgz#ad2c9576197c9f1abf308d0787865bd975a3f3e4" + integrity sha1-rSyVdhl8nxq/MI0Hh4Zb2XWj8+Q= + +map-age-cleaner@^0.1.1: + version "0.1.3" + resolved "https://registry.npm.taobao.org/map-age-cleaner/download/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha1-fVg6cwZDTAVf5HSw9FB45uG0uSo= + dependencies: + p-defer "^1.0.0" + +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.npm.taobao.org/map-cache/download/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/map-visit/download/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + dependencies: + object-visit "^1.0.0" + +md5.js@^1.3.4: + version "1.3.5" + resolved "https://registry.npm.taobao.org/md5.js/download/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" + integrity sha1-tdB7jjIW4+J81yjXL3DR5qNCAF8= + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.npm.taobao.org/media-typer/download/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= + +mem@^4.0.0: + version "4.3.0" + resolved "https://registry.npm.taobao.org/mem/download/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" + integrity sha1-Rhr0l7xK4JYIzbLmDu+2m/90QXg= + dependencies: + map-age-cleaner "^0.1.1" + mimic-fn "^2.0.0" + p-is-promise "^2.0.0" + +memory-fs@^0.4.0, memory-fs@^0.4.1: + version "0.4.1" + resolved "https://registry.npm.taobao.org/memory-fs/download/memory-fs-0.4.1.tgz?cache=0&sync_timestamp=1570537491040&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmemory-fs%2Fdownload%2Fmemory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + +memory-fs@^0.5.0: + version "0.5.0" + resolved "https://registry.npm.taobao.org/memory-fs/download/memory-fs-0.5.0.tgz?cache=0&sync_timestamp=1570537491040&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmemory-fs%2Fdownload%2Fmemory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" + integrity sha1-MkwBKIuIZSlm0WHbd4OHIIRajjw= + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + +merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/merge-descriptors/download/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/merge-stream/download/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha1-UoI2KaFN0AyXcPtq1H3GMQ8sH2A= + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.npm.taobao.org/methods/download/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + +micromatch@^3.1.10, micromatch@^3.1.4: + version "3.1.10" + resolved "https://registry.npm.taobao.org/micromatch/download/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha1-cIWbyVyYQJUvNZoGij/En57PrCM= + 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" + +miller-rabin@^4.0.0: + version "4.0.1" + resolved "https://registry.npm.taobao.org/miller-rabin/download/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + integrity sha1-8IA1HIZbDcViqEYpZtqlNUPHik0= + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +mime-db@1.42.0, "mime-db@>= 1.40.0 < 2": + version "1.42.0" + resolved "https://registry.npm.taobao.org/mime-db/download/mime-db-1.42.0.tgz?cache=0&sync_timestamp=1569468742433&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime-db%2Fdownload%2Fmime-db-1.42.0.tgz#3e252907b4c7adb906597b4b65636272cf9e7bac" + integrity sha1-PiUpB7THrbkGWXtLZWNics+ee6w= + +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: + version "2.1.25" + resolved "https://registry.npm.taobao.org/mime-types/download/mime-types-2.1.25.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime-types%2Fdownload%2Fmime-types-2.1.25.tgz#39772d46621f93e2a80a856c53b86a62156a6437" + integrity sha1-OXctRmIfk+KoCoVsU7hqYhVqZDc= + dependencies: + mime-db "1.42.0" + +mime@1.6.0, mime@^1.4.1: + version "1.6.0" + resolved "https://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE= + +mime@^2.3.1, mime@^2.4.4: + version "2.4.4" + resolved "https://registry.npm.taobao.org/mime/download/mime-2.4.4.tgz#bd7b91135fc6b01cde3e9bae33d659b63d8857e5" + integrity sha1-vXuRE1/GsBzePpuuM9ZZtj2IV+U= + +mimic-fn@^2.0.0, mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs= + +mini-css-extract-plugin@0.8.0: + version "0.8.0" + resolved "https://registry.npm.taobao.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.8.0.tgz?cache=0&sync_timestamp=1576856499989&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmini-css-extract-plugin%2Fdownload%2Fmini-css-extract-plugin-0.8.0.tgz#81d41ec4fe58c713a96ad7c723cdb2d0bd4d70e1" + integrity sha1-gdQexP5YxxOpatfHI82y0L1NcOE= + dependencies: + loader-utils "^1.1.0" + normalize-url "1.9.1" + schema-utils "^1.0.0" + webpack-sources "^1.1.0" + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/minimalistic-assert/download/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha1-LhlN4ERibUoQ5/f7wAznPoPk1cc= + +minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/minimalistic-crypto-utils/download/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= + +minimatch@3.0.4, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM= + dependencies: + brace-expansion "^1.1.7" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.npm.taobao.org/minimist/download/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= + +minimist@^1.2.0: + version "1.2.0" + resolved "https://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= + +minimist@~0.0.1: + version "0.0.10" + resolved "https://registry.npm.taobao.org/minimist/download/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" + integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= + +minipass@^2.3.5, minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: + version "2.9.0" + resolved "https://registry.npm.taobao.org/minipass/download/minipass-2.9.0.tgz?cache=0&sync_timestamp=1571953917221&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fminipass%2Fdownload%2Fminipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" + integrity sha1-5xN2Ln0+Mv7YAxFc+T4EvKn8yaY= + dependencies: + safe-buffer "^5.1.2" + yallist "^3.0.0" + +minizlib@^1.2.1: + version "1.3.3" + resolved "https://registry.npm.taobao.org/minizlib/download/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" + integrity sha1-IpDeloGKNMKVUcio0wEha9Zahh0= + dependencies: + minipass "^2.9.0" + +mississippi@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/mississippi/download/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" + integrity sha1-6goykfl+C16HdrNj1fChLZTGcCI= + 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" + +mixin-deep@^1.2.0: + version "1.3.2" + resolved "https://registry.npm.taobao.org/mixin-deep/download/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha1-ESC0PcNZp4Xc5ltVuC4lfM9HlWY= + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1: + version "0.5.1" + resolved "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmkdirp%2Fdownload%2Fmkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= + dependencies: + minimist "0.0.8" + +move-concurrently@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= + 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" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +ms@2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo= + +ms@^2.0.0, ms@^2.1.1: + version "2.1.2" + resolved "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk= + +multicast-dns-service-types@^1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/multicast-dns-service-types/download/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" + integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= + +multicast-dns@^6.0.1: + version "6.2.3" + resolved "https://registry.npm.taobao.org/multicast-dns/download/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" + integrity sha1-oOx72QVcQoL3kMPIL04o2zsxsik= + dependencies: + dns-packet "^1.3.1" + thunky "^1.0.2" + +mute-stream@0.0.8: + version "0.0.8" + resolved "https://registry.npm.taobao.org/mute-stream/download/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha1-FjDEKyJR/4HiooPelqVJfqkuXg0= + +nan@^2.12.1: + version "2.14.0" + resolved "https://registry.npm.taobao.org/nan/download/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" + integrity sha1-eBj3IgJ7JFmobwKV1DTR/CM2xSw= + +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.npm.taobao.org/nanomatch/download/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha1-uHqKpPwN6P5r6IiVs4mD/yZb0Rk= + 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" + +needle@^2.2.1: + version "2.4.0" + resolved "https://registry.npm.taobao.org/needle/download/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c" + integrity sha1-aDPnSXXERGQlkOFadQKIxfk5tXw= + dependencies: + debug "^3.2.6" + iconv-lite "^0.4.4" + sax "^1.2.4" + +negotiator@0.6.2: + version "0.6.2" + resolved "https://registry.npm.taobao.org/negotiator/download/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" + integrity sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs= + +neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1: + version "2.6.1" + resolved "https://registry.npm.taobao.org/neo-async/download/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" + integrity sha1-rCetpmFn+ohJpq3dg39rGJrSCBw= + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.npm.taobao.org/nice-try/download/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha1-ozeKdpbOfSI+iPybdkvX7xCJ42Y= + +node-fetch-npm@^2.0.2: + version "2.0.2" + resolved "https://registry.npm.taobao.org/node-fetch-npm/download/node-fetch-npm-2.0.2.tgz#7258c9046182dca345b4208eda918daf33697ff7" + integrity sha1-cljJBGGC3KNFtCCO2pGNrzNpf/c= + dependencies: + encoding "^0.1.11" + json-parse-better-errors "^1.0.0" + safe-buffer "^5.1.1" + +node-forge@0.9.0: + version "0.9.0" + resolved "https://registry.npm.taobao.org/node-forge/download/node-forge-0.9.0.tgz?cache=0&sync_timestamp=1569524669712&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-forge%2Fdownload%2Fnode-forge-0.9.0.tgz#d624050edbb44874adca12bb9a52ec63cb782579" + integrity sha1-1iQFDtu0SHStyhK7mlLsY8t4JXk= + +node-libs-browser@^2.2.1: + version "2.2.1" + resolved "https://registry.npm.taobao.org/node-libs-browser/download/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" + integrity sha1-tk9RPRgzhiX5A0bSew0jXmMfZCU= + 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-pre-gyp@*: + version "0.14.0" + resolved "https://registry.npm.taobao.org/node-pre-gyp/download/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83" + integrity sha1-mgWWUzuHcom8rU4UOYLKPZBN3IM= + dependencies: + 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.4.2" + +node-releases@^1.1.25, node-releases@^1.1.44: + version "1.1.44" + resolved "https://registry.npm.taobao.org/node-releases/download/node-releases-1.1.44.tgz#cd66438a6eb875e3eb012b6a12e48d9f4326ffd7" + integrity sha1-zWZDim64dePrAStqEuSNn0Mm/9c= + dependencies: + semver "^6.3.0" + +nopt@^4.0.1: + version "4.0.1" + resolved "https://registry.npm.taobao.org/nopt/download/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= + dependencies: + abbrev "1" + osenv "^0.1.4" + +normalize-package-data@^2.0.0, normalize-package-data@^2.4.0: + version "2.5.0" + resolved "https://registry.npm.taobao.org/normalize-package-data/download/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha1-5m2xg4sgDB38IzIl0SyzZSDiNKg= + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/normalize-path/download/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/normalize-path/download/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU= + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.npm.taobao.org/normalize-range/download/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= + +normalize-url@1.9.1: + version "1.9.1" + resolved "https://registry.npm.taobao.org/normalize-url/download/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" + integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= + dependencies: + object-assign "^4.0.1" + prepend-http "^1.0.0" + query-string "^4.1.0" + sort-keys "^1.0.0" + +npm-bundled@^1.0.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/npm-bundled/download/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b" + integrity sha1-Ht1XCGWpTNsbyCIHdeKUZsn7I0s= + dependencies: + npm-normalize-package-bin "^1.0.1" + +npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/npm-normalize-package-bin/download/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" + integrity sha1-bnmkHyP9I1wGIyGCKNp9nCO49uI= + +npm-package-arg@6.1.0: + version "6.1.0" + resolved "https://registry.npm.taobao.org/npm-package-arg/download/npm-package-arg-6.1.0.tgz#15ae1e2758a5027efb4c250554b85a737db7fcc1" + integrity sha1-Fa4eJ1ilAn77TCUFVLhac323/ME= + dependencies: + hosted-git-info "^2.6.0" + osenv "^0.1.5" + semver "^5.5.0" + validate-npm-package-name "^3.0.0" + +npm-package-arg@^6.0.0, npm-package-arg@^6.1.0: + version "6.1.1" + resolved "https://registry.npm.taobao.org/npm-package-arg/download/npm-package-arg-6.1.1.tgz#02168cb0a49a2b75bf988a28698de7b529df5cb7" + integrity sha1-AhaMsKSaK3W/mIooaY3ntSnfXLc= + dependencies: + hosted-git-info "^2.7.1" + osenv "^0.1.5" + semver "^5.6.0" + validate-npm-package-name "^3.0.0" + +npm-packlist@^1.1.12, npm-packlist@^1.1.6: + version "1.4.7" + resolved "https://registry.npm.taobao.org/npm-packlist/download/npm-packlist-1.4.7.tgz#9e954365a06b80b18111ea900945af4f88ed4848" + integrity sha1-npVDZaBrgLGBEeqQCUWvT4jtSEg= + dependencies: + ignore-walk "^3.0.1" + npm-bundled "^1.0.1" + +npm-pick-manifest@3.0.2: + version "3.0.2" + resolved "https://registry.npm.taobao.org/npm-pick-manifest/download/npm-pick-manifest-3.0.2.tgz?cache=0&sync_timestamp=1576390636485&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-pick-manifest%2Fdownload%2Fnpm-pick-manifest-3.0.2.tgz#f4d9e5fd4be2153e5f4e5f9b7be8dc419a99abb7" + integrity sha1-9Nnl/UviFT5fTl+be+jcQZqZq7c= + dependencies: + figgy-pudding "^3.5.1" + npm-package-arg "^6.0.0" + semver "^5.4.1" + +npm-pick-manifest@^2.2.3: + version "2.2.3" + resolved "https://registry.npm.taobao.org/npm-pick-manifest/download/npm-pick-manifest-2.2.3.tgz?cache=0&sync_timestamp=1576390636485&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-pick-manifest%2Fdownload%2Fnpm-pick-manifest-2.2.3.tgz#32111d2a9562638bb2c8f2bf27f7f3092c8fae40" + integrity sha1-MhEdKpViY4uyyPK/J/fzCSyPrkA= + dependencies: + figgy-pudding "^3.5.1" + npm-package-arg "^6.0.0" + semver "^5.4.1" + +npm-registry-fetch@^4.0.0: + version "4.0.2" + resolved "https://registry.npm.taobao.org/npm-registry-fetch/download/npm-registry-fetch-4.0.2.tgz#2b1434f93ccbe6b6385f8e45f45db93e16921d7a" + integrity sha1-KxQ0+TzL5rY4X45F9F25PhaSHXo= + dependencies: + JSONStream "^1.3.4" + bluebird "^3.5.1" + figgy-pudding "^3.4.1" + lru-cache "^5.1.1" + make-fetch-happen "^5.0.0" + npm-package-arg "^6.1.0" + safe-buffer "^5.2.0" + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.npm.taobao.org/npm-run-path/download/npm-run-path-2.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-run-path%2Fdownload%2Fnpm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= + dependencies: + path-key "^2.0.0" + +npmlog@^4.0.2: + version "4.1.2" + resolved "https://registry.npm.taobao.org/npmlog/download/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + integrity sha1-CKfyqL9zRgR3mp76StXMcXq7lUs= + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + +null-check@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/null-check/download/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd" + integrity sha1-l33/1xdgErnsMNKjnbXPcqBDnt0= + +num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.npm.taobao.org/num2fraction/download/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/number-is-nan/download/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU= + +object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +object-component@0.0.3: + version "0.0.3" + resolved "https://registry.npm.taobao.org/object-component/download/object-component-0.0.3.tgz#f0c69aa50efc95b866c186f400a33769cb2f1291" + integrity sha1-8MaapQ78lbhmwYb0AKM3acsvEpE= + +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.npm.taobao.org/object-copy/download/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-inspect@^1.7.0: + version "1.7.0" + resolved "https://registry.npm.taobao.org/object-inspect/download/object-inspect-1.7.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-inspect%2Fdownload%2Fobject-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" + integrity sha1-9Pa9GBrXfwBrXs5gvQtvOY/3Smc= + +object-is@^1.0.1: + version "1.0.2" + resolved "https://registry.npm.taobao.org/object-is/download/object-is-1.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-is%2Fdownload%2Fobject-is-1.0.2.tgz#6b80eb84fe451498f65007982f035a5b445edec4" + integrity sha1-a4DrhP5FFJj2UAeYLwNaW0Re3sQ= + +object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/object-keys/download/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha1-HEfyct8nfzsdrwYWd9nILiMixg4= + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= + dependencies: + isobject "^3.0.0" + +object.assign@^4.1.0: + version "4.1.0" + resolved "https://registry.npm.taobao.org/object.assign/download/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + integrity sha1-lovxEA15Vrs8oIbwBvhGs7xACNo= + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" + +object.getownpropertydescriptors@^2.0.3: + version "2.1.0" + resolved "https://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" + integrity sha1-Npvx+VktiridcS3O1cuBx8U1Jkk= + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + dependencies: + isobject "^3.0.1" + +obuf@^1.0.0, obuf@^1.1.2: + version "1.1.2" + resolved "https://registry.npm.taobao.org/obuf/download/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" + integrity sha1-Cb6jND1BhZ69RGKS0RydTbYZCE4= + +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= + dependencies: + ee-first "1.1.1" + +on-headers@~1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/on-headers/download/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" + integrity sha1-dysK5qqlJcOZ5Imt+tkMQD6zwo8= + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.npm.taobao.org/once/download/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +onetime@^5.1.0: + version "5.1.0" + resolved "https://registry.npm.taobao.org/onetime/download/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" + integrity sha1-//DzyRYX/mK7UBiWNumayKbfe+U= + dependencies: + mimic-fn "^2.1.0" + +open@6.4.0: + version "6.4.0" + resolved "https://registry.npm.taobao.org/open/download/open-6.4.0.tgz?cache=0&sync_timestamp=1571165370049&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fopen%2Fdownload%2Fopen-6.4.0.tgz#5c13e96d0dc894686164f18965ecfe889ecfc8a9" + integrity sha1-XBPpbQ3IlGhhZPGJZez+iJ7PyKk= + dependencies: + is-wsl "^1.1.0" + +opn@^5.5.0: + version "5.5.0" + resolved "https://registry.npm.taobao.org/opn/download/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" + integrity sha1-/HFk+rVtI1kExRw7J9pnWMo7m/w= + dependencies: + is-wsl "^1.1.0" + +optimist@^0.6.1, optimist@~0.6.0: + version "0.6.1" + resolved "https://registry.npm.taobao.org/optimist/download/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" + integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= + dependencies: + minimist "~0.0.1" + wordwrap "~0.0.2" + +original@^1.0.0: + version "1.0.2" + resolved "https://registry.npm.taobao.org/original/download/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" + integrity sha1-5EKmHP/hxf0gpl8yYcJmY7MD8l8= + dependencies: + url-parse "^1.4.3" + +os-browserify@^0.3.0: + version "0.3.0" + resolved "https://registry.npm.taobao.org/os-browserify/download/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" + integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= + +os-homedir@^1.0.0: + version "1.0.2" + resolved "https://registry.npm.taobao.org/os-homedir/download/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= + +os-locale@^3.0.0, os-locale@^3.1.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/os-locale/download/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" + integrity sha1-qAKm7hfyTBBIOrmTVxnO9O0Wvxo= + dependencies: + execa "^1.0.0" + lcid "^2.0.0" + mem "^4.0.0" + +os-tmpdir@^1.0.0, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/os-tmpdir/download/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= + +osenv@^0.1.4, osenv@^0.1.5: + version "0.1.5" + resolved "https://registry.npm.taobao.org/osenv/download/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" + integrity sha1-hc36+uso6Gd/QW4odZK18/SepBA= + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/p-defer/download/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/p-finally/download/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + +p-is-promise@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/p-is-promise/download/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha1-kYzrrqJIpiz3/6uOO8qMX4gvxC4= + +p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.2.1: + version "2.2.2" + resolved "https://registry.npm.taobao.org/p-limit/download/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e" + integrity sha1-YSebZ3IfUoeqHBOpp/u8SMkpGx4= + dependencies: + p-try "^2.0.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/p-locate/download/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ= + dependencies: + p-limit "^2.0.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.npm.taobao.org/p-locate/download/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha1-o0KLtwiLOmApL2aRkni3wpetTwc= + dependencies: + p-limit "^2.2.0" + +p-map@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/p-map/download/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" + integrity sha1-MQko/u+cnsxltosXaTAYpmXOoXU= + +p-retry@^3.0.1: + version "3.0.1" + resolved "https://registry.npm.taobao.org/p-retry/download/p-retry-3.0.1.tgz?cache=0&sync_timestamp=1572521210242&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-retry%2Fdownload%2Fp-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" + integrity sha1-MWtMiJPiyNwc+okfQGxLQivr8yg= + dependencies: + retry "^0.12.0" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha1-yyhoVA4xPWHeWPr741zpAE1VQOY= + +pacote@9.5.5: + version "9.5.5" + resolved "https://registry.npm.taobao.org/pacote/download/pacote-9.5.5.tgz#63355a393614c3424e735820c3731e2cbbedaeeb" + integrity sha1-YzVaOTYUw0JOc1ggw3MeLLvtrus= + dependencies: + bluebird "^3.5.3" + cacache "^12.0.2" + figgy-pudding "^3.5.1" + get-stream "^4.1.0" + glob "^7.1.3" + infer-owner "^1.0.4" + lru-cache "^5.1.1" + make-fetch-happen "^5.0.0" + minimatch "^3.0.4" + minipass "^2.3.5" + mississippi "^3.0.0" + mkdirp "^0.5.1" + normalize-package-data "^2.4.0" + npm-package-arg "^6.1.0" + npm-packlist "^1.1.12" + npm-pick-manifest "^2.2.3" + npm-registry-fetch "^4.0.0" + osenv "^0.1.5" + promise-inflight "^1.0.1" + promise-retry "^1.1.1" + protoduck "^5.0.1" + rimraf "^2.6.2" + safe-buffer "^5.1.2" + semver "^5.6.0" + ssri "^6.0.1" + tar "^4.4.8" + unique-filename "^1.1.1" + which "^1.3.1" + +pako@~1.0.2, pako@~1.0.5: + version "1.0.10" + resolved "https://registry.npm.taobao.org/pako/download/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732" + integrity sha1-Qyi621CGpCaqkPVBl31JVdpclzI= + +parallel-transform@^1.1.0: + version "1.2.0" + resolved "https://registry.npm.taobao.org/parallel-transform/download/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" + integrity sha1-kEnKN9bLIYLDsdLHIL6U0UpYFPw= + dependencies: + cyclist "^1.0.1" + inherits "^2.0.3" + readable-stream "^2.1.5" + +parse-asn1@^5.0.0: + version "5.1.5" + resolved "https://registry.npm.taobao.org/parse-asn1/download/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e" + integrity sha1-ADJxND2ljclMrOSU+u89IUfs6g4= + 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" + +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/parse-json/download/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + +parse5@4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/parse5/download/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" + integrity sha1-bXhlbj2o14tOwLkG98CO8d/j9gg= + +parse5@^5.0.0: + version "5.1.1" + resolved "https://registry.npm.taobao.org/parse5/download/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" + integrity sha1-9o5OW6GFKsLK3AD0VV//bCq7YXg= + +parseqs@0.0.5: + version "0.0.5" + resolved "https://registry.npm.taobao.org/parseqs/download/parseqs-0.0.5.tgz#d5208a3738e46766e291ba2ea173684921a8b89d" + integrity sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0= + dependencies: + better-assert "~1.0.0" + +parseuri@0.0.5: + version "0.0.5" + resolved "https://registry.npm.taobao.org/parseuri/download/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a" + integrity sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo= + dependencies: + better-assert "~1.0.0" + +parseurl@~1.3.2, parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ= + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + +path-browserify@0.0.1: + version "0.0.1" + resolved "https://registry.npm.taobao.org/path-browserify/download/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" + integrity sha1-5sTd1+06onxoogzE5Q4aTug7vEo= + +path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.npm.taobao.org/path-dirname/download/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/path-exists/download/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/path-exists/download/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha1-UTvb4tO5XXdi6METfvoZXGxhtbM= + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-is-inside@^1.0.1, path-is-inside@^1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/path-is-inside/download/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= + +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.npm.taobao.org/path-key/download/path-key-2.0.1.tgz?cache=0&sync_timestamp=1574441404712&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-key%2Fdownload%2Fpath-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= + +path-parse@^1.0.6: + version "1.0.6" + resolved "https://registry.npm.taobao.org/path-parse/download/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" + integrity sha1-1i27VnlAXXLEc37FhgDp3c8G0kw= + +path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz?cache=0&sync_timestamp=1574278831909&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-to-regexp%2Fdownload%2Fpath-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= + +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/path-type/download/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + integrity sha1-zvMdyOCho7sNEFwM2Xzzv0f0428= + dependencies: + pify "^3.0.0" + +pbkdf2@^3.0.3: + version "3.0.17" + resolved "https://registry.npm.taobao.org/pbkdf2/download/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" + integrity sha1-l2wgZTBhexTrsyEUI597CTNuk6Y= + 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" + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/performance-now/download/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + +picomatch@^2.0.4, picomatch@^2.0.7: + version "2.2.1" + resolved "https://registry.npm.taobao.org/picomatch/download/picomatch-2.2.1.tgz?cache=0&sync_timestamp=1578174759917&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpicomatch%2Fdownload%2Fpicomatch-2.2.1.tgz#21bac888b6ed8601f831ce7816e335bc779f0a4a" + integrity sha1-IbrIiLbthgH4Mc54FuM1vHefCko= + +pify@^2.0.0, pify@^2.3.0: + version "2.3.0" + resolved "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.npm.taobao.org/pify/download/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE= + +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.npm.taobao.org/pinkie-promise/download/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.npm.taobao.org/pinkie/download/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= + +pkg-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/pkg-dir/download/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" + integrity sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM= + dependencies: + find-up "^3.0.0" + +pkg-dir@^4.1.0: + version "4.2.0" + resolved "https://registry.npm.taobao.org/pkg-dir/download/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha1-8JkTPfft5CLoHR2ESCcO6z5CYfM= + dependencies: + find-up "^4.0.0" + +portfinder@^1.0.25: + version "1.0.25" + resolved "https://registry.npm.taobao.org/portfinder/download/portfinder-1.0.25.tgz#254fd337ffba869f4b9d37edc298059cb4d35eca" + integrity sha1-JU/TN/+6hp9LnTftwpgFnLTTXso= + dependencies: + async "^2.6.2" + debug "^3.1.1" + mkdirp "^0.5.1" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.npm.taobao.org/posix-character-classes/download/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= + +postcss-import@12.0.1: + version "12.0.1" + resolved "https://registry.npm.taobao.org/postcss-import/download/postcss-import-12.0.1.tgz#cf8c7ab0b5ccab5649024536e565f841928b7153" + integrity sha1-z4x6sLXMq1ZJAkU25WX4QZKLcVM= + dependencies: + postcss "^7.0.1" + postcss-value-parser "^3.2.3" + read-cache "^1.0.0" + resolve "^1.1.7" + +postcss-load-config@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/postcss-load-config/download/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003" + integrity sha1-yE1pK3u3tB3c7ZTuYuirMbQXsAM= + dependencies: + cosmiconfig "^5.0.0" + import-cwd "^2.0.0" + +postcss-loader@3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/postcss-loader/download/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" + integrity sha1-a5eUPkfHLYRfqeA/Jzdz1OjdbC0= + dependencies: + loader-utils "^1.1.0" + postcss "^7.0.0" + postcss-load-config "^2.0.0" + schema-utils "^1.0.0" + +postcss-value-parser@^3.2.3: + version "3.3.1" + resolved "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" + integrity sha1-n/giVH4okyE88cMO+lGsX9G6goE= + +postcss-value-parser@^4.0.0: + version "4.0.2" + resolved "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-4.0.2.tgz#482282c09a42706d1fc9a069b73f44ec08391dc9" + integrity sha1-SCKCwJpCcG0fyaBptz9E7Ag5Hck= + +postcss@7.0.17: + version "7.0.17" + resolved "https://registry.npm.taobao.org/postcss/download/postcss-7.0.17.tgz?cache=0&sync_timestamp=1577778306542&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss%2Fdownload%2Fpostcss-7.0.17.tgz#4da1bdff5322d4a0acaab4d87f3e782436bad31f" + integrity sha1-TaG9/1Mi1KCsqrTYfz54JDa60x8= + dependencies: + chalk "^2.4.2" + source-map "^0.6.1" + supports-color "^6.1.0" + +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.17: + version "7.0.26" + resolved "https://registry.npm.taobao.org/postcss/download/postcss-7.0.26.tgz?cache=0&sync_timestamp=1577778306542&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss%2Fdownload%2Fpostcss-7.0.26.tgz#5ed615cfcab35ba9bbb82414a4fa88ea10429587" + integrity sha1-XtYVz8qzW6m7uCQUpPqI6hBClYc= + dependencies: + chalk "^2.4.2" + source-map "^0.6.1" + supports-color "^6.1.0" + +prepend-http@^1.0.0: + version "1.0.4" + resolved "https://registry.npm.taobao.org/prepend-http/download/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= + +private@^0.1.6: + version "0.1.8" + resolved "https://registry.npm.taobao.org/private/download/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" + integrity sha1-I4Hts2ifelPWUxkAYPz4ItLzaP8= + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha1-eCDZsWEgzFXKmud5JoCufbptf+I= + +process@^0.11.10: + version "0.11.10" + resolved "https://registry.npm.taobao.org/process/download/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/promise-inflight/download/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= + +promise-retry@^1.1.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/promise-retry/download/promise-retry-1.1.1.tgz#6739e968e3051da20ce6497fb2b50f6911df3d6d" + integrity sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0= + dependencies: + err-code "^1.0.0" + retry "^0.10.0" + +promise@^7.1.1: + version "7.3.1" + resolved "https://registry.npm.taobao.org/promise/download/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + integrity sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078= + dependencies: + asap "~2.0.3" + +protoduck@^5.0.1: + version "5.0.1" + resolved "https://registry.npm.taobao.org/protoduck/download/protoduck-5.0.1.tgz#03c3659ca18007b69a50fd82a7ebcc516261151f" + integrity sha1-A8NlnKGAB7aaUP2Cp+vMUWJhFR8= + dependencies: + genfun "^5.0.0" + +protractor@~5.4.0: + version "5.4.2" + resolved "https://registry.npm.taobao.org/protractor/download/protractor-5.4.2.tgz#329efe37f48b2141ab9467799be2d4d12eb48c13" + integrity sha1-Mp7+N/SLIUGrlGd5m+LU0S60jBM= + dependencies: + "@types/q" "^0.0.32" + "@types/selenium-webdriver" "^3.0.0" + blocking-proxy "^1.0.0" + browserstack "^1.5.1" + chalk "^1.1.3" + glob "^7.0.3" + jasmine "2.8.0" + jasminewd2 "^2.1.0" + optimist "~0.6.0" + q "1.4.1" + saucelabs "^1.5.0" + selenium-webdriver "3.6.0" + source-map-support "~0.4.0" + webdriver-js-extender "2.1.0" + webdriver-manager "^12.0.6" + +proxy-addr@~2.0.5: + version "2.0.5" + resolved "https://registry.npm.taobao.org/proxy-addr/download/proxy-addr-2.0.5.tgz#34cbd64a2d81f4b1fd21e76f9f06c8a45299ee34" + integrity sha1-NMvWSi2B9LH9IedvnwbIpFKZ7jQ= + dependencies: + forwarded "~0.1.2" + ipaddr.js "1.9.0" + +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/prr/download/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= + +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/pseudomap/download/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + +psl@^1.1.24: + version "1.7.0" + resolved "https://registry.npm.taobao.org/psl/download/psl-1.7.0.tgz?cache=0&sync_timestamp=1577538583463&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpsl%2Fdownload%2Fpsl-1.7.0.tgz#f1c4c47a8ef97167dea5d6bbf4816d736e884a3c" + integrity sha1-8cTEeo75cWfepda79IFtc26ISjw= + +public-encrypt@^4.0.0: + version "4.0.3" + resolved "https://registry.npm.taobao.org/public-encrypt/download/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" + integrity sha1-T8ydd6B+SLp1J+fL4N4z0HATMeA= + 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" + +pump@^2.0.0: + version "2.0.1" + resolved "https://registry.npm.taobao.org/pump/download/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + integrity sha1-Ejma3W5M91Jtlzy8i1zi4pCLOQk= + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/pump/download/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ= + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pumpify@^1.3.3: + version "1.5.1" + resolved "https://registry.npm.taobao.org/pumpify/download/pumpify-1.5.1.tgz?cache=0&sync_timestamp=1569938200736&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpumpify%2Fdownload%2Fpumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" + integrity sha1-NlE74karJ1cLGjdKXOJ4v9dDcM4= + dependencies: + duplexify "^3.6.0" + inherits "^2.0.3" + pump "^2.0.0" + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.npm.taobao.org/punycode/download/punycode-1.3.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpunycode%2Fdownload%2Fpunycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= + +punycode@^1.2.4, punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpunycode%2Fdownload%2Fpunycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= + +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.npm.taobao.org/punycode/download/punycode-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpunycode%2Fdownload%2Fpunycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha1-tYsBCsQMIsVldhbI0sLALHv0eew= + +q@1.4.1: + version "1.4.1" + resolved "https://registry.npm.taobao.org/q/download/q-1.4.1.tgz#55705bcd93c5f3673530c2c2cbc0c2b3addc286e" + integrity sha1-VXBbzZPF82c1MMLCy8DCs63cKG4= + +q@^1.4.1: + version "1.5.1" + resolved "https://registry.npm.taobao.org/q/download/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= + +qjobs@^1.1.4: + version "1.2.0" + resolved "https://registry.npm.taobao.org/qjobs/download/qjobs-1.2.0.tgz#c45e9c61800bd087ef88d7e256423bdd49e5d071" + integrity sha1-xF6cYYAL0IfviNfiVkI73Unl0HE= + +qs@6.7.0: + version "6.7.0" + resolved "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz?cache=0&sync_timestamp=1573195631718&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fqs%2Fdownload%2Fqs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" + integrity sha1-QdwaAV49WB8WIXdr4xr7KHapsbw= + +qs@~6.5.2: + version "6.5.2" + resolved "https://registry.npm.taobao.org/qs/download/qs-6.5.2.tgz?cache=0&sync_timestamp=1573195631718&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fqs%2Fdownload%2Fqs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha1-yzroBuh0BERYTvFUzo7pjUA/PjY= + +query-string@^4.1.0: + version "4.3.4" + resolved "https://registry.npm.taobao.org/query-string/download/query-string-4.3.4.tgz?cache=0&sync_timestamp=1573620418700&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fquery-string%2Fdownload%2Fquery-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" + integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= + dependencies: + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" + +querystring-es3@^0.2.0: + version "0.2.1" + resolved "https://registry.npm.taobao.org/querystring-es3/download/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= + +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.npm.taobao.org/querystring/download/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= + +querystringify@^2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/querystringify/download/querystringify-2.1.1.tgz#60e5a5fd64a7f8bfa4d2ab2ed6fdf4c85bad154e" + integrity sha1-YOWl/WSn+L+k0qsu1v30yFutFU4= + +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: + version "2.1.0" + resolved "https://registry.npm.taobao.org/randombytes/download/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha1-32+ENy8CcNxlzfYpE0mrekc9Tyo= + dependencies: + safe-buffer "^5.1.0" + +randomfill@^1.0.3: + version "1.0.4" + resolved "https://registry.npm.taobao.org/randomfill/download/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" + integrity sha1-ySGW/IarQr6YPxvzF3giSTHWFFg= + dependencies: + randombytes "^2.0.5" + safe-buffer "^5.1.0" + +range-parser@^1.2.0, range-parser@^1.2.1, range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.npm.taobao.org/range-parser/download/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha1-PPNwI9GZ4cJNGlW4SADC8+ZGgDE= + +raw-body@2.4.0: + version "2.4.0" + resolved "https://registry.npm.taobao.org/raw-body/download/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" + integrity sha1-oc5vucm8NWylLoklarWQWeE9AzI= + dependencies: + bytes "3.1.0" + http-errors "1.7.2" + iconv-lite "0.4.24" + unpipe "1.0.0" + +raw-loader@3.1.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/raw-loader/download/raw-loader-3.1.0.tgz?cache=0&sync_timestamp=1574695176795&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fraw-loader%2Fdownload%2Fraw-loader-3.1.0.tgz#5e9d399a5a222cc0de18f42c3bc5e49677532b3f" + integrity sha1-Xp05mloiLMDeGPQsO8XklndTKz8= + dependencies: + loader-utils "^1.1.0" + schema-utils "^2.0.1" + +rc@^1.2.7: + version "1.2.8" + resolved "https://registry.npm.taobao.org/rc/download/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + integrity sha1-zZJL9SAKB1uDwYjNa54hG3/A0+0= + dependencies: + deep-extend "^0.6.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +read-cache@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/read-cache/download/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + integrity sha1-5mTvMRYRZsl1HNvo28+GtftY93Q= + dependencies: + pify "^2.3.0" + +read-package-json@^2.0.0: + version "2.1.1" + resolved "https://registry.npm.taobao.org/read-package-json/download/read-package-json-2.1.1.tgz#16aa66c59e7d4dad6288f179dd9295fd59bb98f1" + integrity sha1-FqpmxZ59Ta1iiPF53ZKV/Vm7mPE= + dependencies: + glob "^7.1.1" + json-parse-better-errors "^1.0.1" + normalize-package-data "^2.0.0" + npm-normalize-package-bin "^1.0.0" + optionalDependencies: + graceful-fs "^4.1.2" + +read-package-tree@5.3.1: + version "5.3.1" + resolved "https://registry.npm.taobao.org/read-package-tree/download/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" + integrity sha1-oyy2TH8x64pvMe8G+c7fdAaP5jY= + dependencies: + read-package-json "^2.0.0" + readdir-scoped-modules "^1.0.0" + util-promisify "^2.1.0" + +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: + version "2.3.7" + resolved "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" + integrity sha1-Hsoc9xGu+BTAT2IlKjamL2yyO1c= + 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" + +readable-stream@^3.0.6: + version "3.4.0" + resolved "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.4.0.tgz#a51c26754658e0a3c21dbf59163bd45ba6f447fc" + integrity sha1-pRwmdUZY4KPCHb9ZFjvUW6b0R/w= + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readdir-scoped-modules@^1.0.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/readdir-scoped-modules/download/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" + integrity sha1-jUVAe0+HCg3K68DihnDRjnRRQwk= + dependencies: + debuglog "^1.0.1" + dezalgo "^1.0.0" + graceful-fs "^4.1.2" + once "^1.3.0" + +readdirp@^2.2.1: + version "2.2.1" + resolved "https://registry.npm.taobao.org/readdirp/download/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" + integrity sha1-DodiKjMlqjPokihcr4tOhGUppSU= + dependencies: + graceful-fs "^4.1.11" + micromatch "^3.1.10" + readable-stream "^2.0.2" + +readdirp@~3.3.0: + version "3.3.0" + resolved "https://registry.npm.taobao.org/readdirp/download/readdirp-3.3.0.tgz#984458d13a1e42e2e9f5841b129e162f369aff17" + integrity sha1-mERY0ToeQuLp9YQbEp4WLzaa/xc= + dependencies: + picomatch "^2.0.7" + +reflect-metadata@^0.1.2: + version "0.1.13" + resolved "https://registry.npm.taobao.org/reflect-metadata/download/reflect-metadata-0.1.13.tgz#67ae3ca57c972a2aa1642b10fe363fe32d49dc08" + integrity sha1-Z648pXyXKiqhZCsQ/jY/4y1J3Ag= + +regenerate-unicode-properties@^8.1.0: + version "8.1.0" + resolved "https://registry.npm.taobao.org/regenerate-unicode-properties/download/regenerate-unicode-properties-8.1.0.tgz#ef51e0f0ea4ad424b77bf7cb41f3e015c70a3f0e" + integrity sha1-71Hg8OpK1CS3e/fLQfPgFccKPw4= + dependencies: + regenerate "^1.4.0" + +regenerate@^1.2.1, regenerate@^1.4.0: + version "1.4.0" + resolved "https://registry.npm.taobao.org/regenerate/download/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" + integrity sha1-SoVuxLVuQHfFV1icroXnpMiGmhE= + +regenerator-runtime@0.13.3: + version "0.13.3" + resolved "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" + integrity sha1-fPanfY9cb2Drc8X8GVWyzrAea/U= + +regenerator-runtime@^0.11.0: + version "0.11.1" + resolved "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" + integrity sha1-vgWtf5v30i4Fb5cmzuUBf78Z4uk= + +regenerator-transform@^0.14.0: + version "0.14.1" + resolved "https://registry.npm.taobao.org/regenerator-transform/download/regenerator-transform-0.14.1.tgz#3b2fce4e1ab7732c08f665dfdb314749c7ddd2fb" + integrity sha1-Oy/OThq3cywI9mXf2zFHScfd0vs= + dependencies: + private "^0.1.6" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha1-H07OJ+ALC2XgJHpoEOaoXYOldSw= + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regexp.prototype.flags@^1.2.0: + version "1.3.0" + resolved "https://registry.npm.taobao.org/regexp.prototype.flags/download/regexp.prototype.flags-1.3.0.tgz#7aba89b3c13a64509dabcf3ca8d9fbb9bdf5cb75" + integrity sha1-erqJs8E6ZFCdq888qNn7ub31y3U= + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + +regexpu-core@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-1.0.0.tgz?cache=0&sync_timestamp=1568376298517&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregexpu-core%2Fdownload%2Fregexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" + integrity sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs= + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + +regexpu-core@^4.6.0: + version "4.6.0" + resolved "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-4.6.0.tgz?cache=0&sync_timestamp=1568376298517&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregexpu-core%2Fdownload%2Fregexpu-core-4.6.0.tgz#2037c18b327cfce8a6fea2a4ec441f2432afb8b6" + integrity sha1-IDfBizJ8/Oim/qKk7EQfJDKvuLY= + dependencies: + regenerate "^1.4.0" + regenerate-unicode-properties "^8.1.0" + regjsgen "^0.5.0" + regjsparser "^0.6.0" + unicode-match-property-ecmascript "^1.0.4" + unicode-match-property-value-ecmascript "^1.1.0" + +regjsgen@^0.2.0: + version "0.2.0" + resolved "https://registry.npm.taobao.org/regjsgen/download/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" + integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= + +regjsgen@^0.5.0: + version "0.5.1" + resolved "https://registry.npm.taobao.org/regjsgen/download/regjsgen-0.5.1.tgz#48f0bf1a5ea205196929c0d9798b42d1ed98443c" + integrity sha1-SPC/Gl6iBRlpKcDZeYtC0e2YRDw= + +regjsparser@^0.1.4: + version "0.1.5" + resolved "https://registry.npm.taobao.org/regjsparser/download/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" + integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= + dependencies: + jsesc "~0.5.0" + +regjsparser@^0.6.0: + version "0.6.2" + resolved "https://registry.npm.taobao.org/regjsparser/download/regjsparser-0.6.2.tgz#fd62c753991467d9d1ffe0a9f67f27a529024b96" + integrity sha1-/WLHU5kUZ9nR/+Cp9n8npSkCS5Y= + dependencies: + jsesc "~0.5.0" + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.npm.taobao.org/remove-trailing-separator/download/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= + +repeat-element@^1.1.2: + version "1.1.3" + resolved "https://registry.npm.taobao.org/repeat-element/download/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" + integrity sha1-eC4NglwMWjuzlzH4Tv7mt0Lmsc4= + +repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.npm.taobao.org/repeat-string/download/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.npm.taobao.org/repeating/download/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= + dependencies: + is-finite "^1.0.0" + +request@^2.83.0, request@^2.87.0, request@^2.88.0: + version "2.88.0" + resolved "https://registry.npm.taobao.org/request/download/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" + integrity sha1-nC/KT301tZLv5Xx/ClXoEFIST+8= + 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.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.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.4.3" + tunnel-agent "^0.6.0" + uuid "^3.3.2" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/require-directory/download/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + +require-main-filename@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/require-main-filename/download/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" + integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/require-main-filename/download/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha1-0LMp7MfMD2Fkn2IhW+aa9UqomJs= + +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/requires-port/download/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= + +resolve-cwd@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/resolve-cwd/download/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" + integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= + dependencies: + resolve-from "^3.0.0" + +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/resolve-from/download/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + integrity sha1-six699nWiBvItuZTM17rywoYh0g= + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= + +resolve@^1.1.7, resolve@^1.10.0, resolve@^1.3.2: + version "1.14.1" + resolved "https://registry.npm.taobao.org/resolve/download/resolve-1.14.1.tgz#9e018c540fcf0c427d678b9931cbf45e984bcaff" + integrity sha1-ngGMVA/PDEJ9Z4uZMcv0XphLyv8= + dependencies: + path-parse "^1.0.6" + +restore-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/restore-cursor/download/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + integrity sha1-OfZ8VLOnpYzqUjbZXPADQjljH34= + dependencies: + onetime "^5.1.0" + signal-exit "^3.0.2" + +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.npm.taobao.org/ret/download/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha1-uKSCXVvbH8P29Twrwz+BOIaBx7w= + +retry@^0.10.0: + version "0.10.1" + resolved "https://registry.npm.taobao.org/retry/download/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" + integrity sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q= + +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.npm.taobao.org/retry/download/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + +rfdc@^1.1.4: + version "1.1.4" + resolved "https://registry.npm.taobao.org/rfdc/download/rfdc-1.1.4.tgz#ba72cc1367a0ccd9cf81a870b3b58bd3ad07f8c2" + integrity sha1-unLME2egzNnPgahws7WL060H+MI= + +rimraf@3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/rimraf/download/rimraf-3.0.0.tgz#614176d4b3010b75e5c390eb0ee96f6dc0cebb9b" + integrity sha1-YUF21LMBC3Xlw5DrDulvbcDOu5s= + dependencies: + glob "^7.1.3" + +rimraf@^2.2.8, rimraf@^2.5.2, rimraf@^2.5.4, rimraf@^2.6.0, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3: + version "2.7.1" + resolved "https://registry.npm.taobao.org/rimraf/download/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha1-NXl/E6f9rcVmFCwp1PB8ytSD4+w= + dependencies: + glob "^7.1.3" + +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.2" + resolved "https://registry.npm.taobao.org/ripemd160/download/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" + integrity sha1-ocGm9iR1FXe6XQeRTLyShQWFiQw= + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + +run-async@^2.2.0: + version "2.3.0" + resolved "https://registry.npm.taobao.org/run-async/download/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" + integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= + dependencies: + is-promise "^2.1.0" + +run-queue@^1.0.0, run-queue@^1.0.3: + version "1.0.3" + resolved "https://registry.npm.taobao.org/run-queue/download/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= + dependencies: + aproba "^1.1.1" + +rxjs@6.4.0, rxjs@~6.4.0: + version "6.4.0" + resolved "https://registry.npm.taobao.org/rxjs/download/rxjs-6.4.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frxjs%2Fdownload%2Frxjs-6.4.0.tgz#f3bb0fe7bda7fb69deac0c16f17b50b0b8790504" + integrity sha1-87sP572n+2nerAwW8XtQsLh5BQQ= + dependencies: + tslib "^1.9.0" + +rxjs@^6.4.0: + version "6.5.4" + resolved "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frxjs%2Fdownload%2Frxjs-6.5.4.tgz#e0777fe0d184cec7872df147f303572d414e211c" + integrity sha1-4Hd/4NGEzseHLfFH8wNXLUFOIRw= + dependencies: + tslib "^1.9.0" + +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha1-mR7GnSluAxN0fVm9/St0XDX4go0= + +safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: + version "5.2.0" + resolved "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" + integrity sha1-t02uxJsRSPiMZLaNSbHoFcHy9Rk= + +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/safe-regex/download/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= + dependencies: + ret "~0.1.10" + +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: + version "2.1.2" + resolved "https://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo= + +sass-loader@7.2.0: + version "7.2.0" + resolved "https://registry.npm.taobao.org/sass-loader/download/sass-loader-7.2.0.tgz#e34115239309d15b2527cb62b5dfefb62a96ff7f" + integrity sha1-40EVI5MJ0VslJ8titd/vtiqW/38= + dependencies: + clone-deep "^4.0.1" + loader-utils "^1.0.1" + neo-async "^2.5.0" + pify "^4.0.1" + semver "^5.5.0" + +sass@1.22.9: + version "1.22.9" + resolved "https://registry.npm.taobao.org/sass/download/sass-1.22.9.tgz#41a2ed6038027f58be2bd5041293452a29c2cb84" + integrity sha1-QaLtYDgCf1i+K9UEEpNFKinCy4Q= + dependencies: + chokidar ">=2.0.0 <4.0.0" + +saucelabs@^1.5.0: + version "1.5.0" + resolved "https://registry.npm.taobao.org/saucelabs/download/saucelabs-1.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsaucelabs%2Fdownload%2Fsaucelabs-1.5.0.tgz#9405a73c360d449b232839919a86c396d379fd9d" + integrity sha1-lAWnPDYNRJsjKDmRmobDltN5/Z0= + dependencies: + https-proxy-agent "^2.2.1" + +sax@0.5.x: + version "0.5.8" + resolved "https://registry.npm.taobao.org/sax/download/sax-0.5.8.tgz#d472db228eb331c2506b0e8c15524adb939d12c1" + integrity sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE= + +sax@>=0.6.0, sax@^1.2.4: + version "1.2.4" + resolved "https://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha1-KBYjTiN4vdxOU1T6tcqold9xANk= + +schema-utils@^0.3.0: + version "0.3.0" + resolved "https://registry.npm.taobao.org/schema-utils/download/schema-utils-0.3.0.tgz?cache=0&sync_timestamp=1574946791935&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf" + integrity sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8= + dependencies: + ajv "^5.0.0" + +schema-utils@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1574946791935&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" + integrity sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A= + dependencies: + ajv "^6.1.0" + ajv-errors "^1.0.0" + ajv-keywords "^3.1.0" + +schema-utils@^2.0.0, schema-utils@^2.0.1: + version "2.6.1" + resolved "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.6.1.tgz?cache=0&sync_timestamp=1574946791935&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.6.1.tgz#eb78f0b945c7bcfa2082b3565e8db3548011dc4f" + integrity sha1-63jwuUXHvPoggrNWXo2zVIAR3E8= + dependencies: + ajv "^6.10.2" + ajv-keywords "^3.4.1" + +select-hose@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/select-hose/download/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= + +selenium-webdriver@3.6.0, selenium-webdriver@^3.0.1: + version "3.6.0" + resolved "https://registry.npm.taobao.org/selenium-webdriver/download/selenium-webdriver-3.6.0.tgz#2ba87a1662c020b8988c981ae62cb2a01298eafc" + integrity sha1-K6h6FmLAILiYjJga5iyyoBKY6vw= + dependencies: + jszip "^3.1.3" + rimraf "^2.5.4" + tmp "0.0.30" + xml2js "^0.4.17" + +selfsigned@^1.10.7: + version "1.10.7" + resolved "https://registry.npm.taobao.org/selfsigned/download/selfsigned-1.10.7.tgz?cache=0&sync_timestamp=1569952074772&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fselfsigned%2Fdownload%2Fselfsigned-1.10.7.tgz#da5819fd049d5574f28e88a9bcc6dbc6e6f3906b" + integrity sha1-2lgZ/QSdVXTyjoipvMbbxubzkGs= + dependencies: + node-forge "0.9.0" + +semver-dsl@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/semver-dsl/download/semver-dsl-1.0.1.tgz#d3678de5555e8a61f629eed025366ae5f27340a0" + integrity sha1-02eN5VVeimH2Ke7QJTZq5fJzQKA= + dependencies: + semver "^5.3.0" + +semver-intersect@1.4.0: + version "1.4.0" + resolved "https://registry.npm.taobao.org/semver-intersect/download/semver-intersect-1.4.0.tgz#bdd9c06bedcdd2fedb8cd352c3c43ee8c61321f3" + integrity sha1-vdnAa+3N0v7bjNNSw8Q+6MYTIfM= + dependencies: + semver "^5.0.0" + +"semver@2 || 3 || 4 || 5", semver@^5.0.0, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: + version "5.7.1" + resolved "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha1-qVT5Ma66UI0we78Gnv8MAclhFvc= + +semver@6.3.0, semver@^6.0.0, semver@^6.3.0: + version "6.3.0" + resolved "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0= + +semver@7.0.0: + version "7.0.0" + resolved "https://registry.npm.taobao.org/semver/download/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" + integrity sha1-XzyjV2HkfgWyBsba/yz4FPAxa44= + +send@0.17.1: + version "0.17.1" + resolved "https://registry.npm.taobao.org/send/download/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" + integrity sha1-wdiwWfeQD3Rm3Uk4vcROEd2zdsg= + 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" + +serialize-javascript@^2.1.2: + version "2.1.2" + resolved "https://registry.npm.taobao.org/serialize-javascript/download/serialize-javascript-2.1.2.tgz?cache=0&sync_timestamp=1575910505665&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fserialize-javascript%2Fdownload%2Fserialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" + integrity sha1-7OxTsOAxe9yV73arcHS3OEeF+mE= + +serve-index@^1.9.1: + version "1.9.1" + resolved "https://registry.npm.taobao.org/serve-index/download/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" + integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= + 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" + +serve-static@1.14.1: + version "1.14.1" + resolved "https://registry.npm.taobao.org/serve-static/download/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" + integrity sha1-Zm5jbcTwEPfvKZcKiKZ0MgiYsvk= + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.17.1" + +set-blocking@^2.0.0, set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/set-blocking/download/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + +set-immediate-shim@~1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/set-immediate-shim/download/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" + integrity sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E= + +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.npm.taobao.org/set-value/download/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha1-oY1AUw5vB95CKMfe/kInr4ytAFs= + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +setimmediate@^1.0.4: + version "1.0.5" + resolved "https://registry.npm.taobao.org/setimmediate/download/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= + +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + integrity sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY= + +setprototypeof@1.1.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" + integrity sha1-fpWsskqpL1iF4KvvW6ExMw1K5oM= + +sha.js@^2.4.0, sha.js@^2.4.8: + version "2.4.11" + resolved "https://registry.npm.taobao.org/sha.js/download/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + integrity sha1-N6XPC4HsvGlD3hCbopYNGyZYSuc= + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +shallow-clone@^3.0.0: + version "3.0.1" + resolved "https://registry.npm.taobao.org/shallow-clone/download/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + integrity sha1-jymBrZJTH1UDWwH7IwdppA4C76M= + dependencies: + kind-of "^6.0.2" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.npm.taobao.org/shebang-command/download/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= + dependencies: + shebang-regex "^1.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/shebang-regex/download/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.2" + resolved "https://registry.npm.taobao.org/signal-exit/download/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= + +slash@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/slash/download/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" + integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= + +smart-buffer@^4.1.0: + version "4.1.0" + resolved "https://registry.npm.taobao.org/smart-buffer/download/smart-buffer-4.1.0.tgz#91605c25d91652f4661ea69ccf45f1b331ca21ba" + integrity sha1-kWBcJdkWUvRmHqacz0XxszHKIbo= + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/snapdragon-node/download/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha1-bBdfhv8UvbByRWPo88GwIaKGhTs= + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.npm.taobao.org/snapdragon-util/download/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI= + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.npm.taobao.org/snapdragon/download/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha1-ZJIufFZbDhQgS6GqfWlkJ40lGC0= + 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" + +socket.io-adapter@~1.1.0: + version "1.1.2" + resolved "https://registry.npm.taobao.org/socket.io-adapter/download/socket.io-adapter-1.1.2.tgz?cache=0&sync_timestamp=1574684498510&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsocket.io-adapter%2Fdownload%2Fsocket.io-adapter-1.1.2.tgz#ab3f0d6f66b8fc7fca3959ab5991f82221789be9" + integrity sha1-qz8Nb2a4/H/KOVmrWZH4IiF4m+k= + +socket.io-client@2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/socket.io-client/download/socket.io-client-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsocket.io-client%2Fdownload%2Fsocket.io-client-2.1.1.tgz#dcb38103436ab4578ddb026638ae2f21b623671f" + integrity sha1-3LOBA0NqtFeN2wJmOK4vIbYjZx8= + dependencies: + backo2 "1.0.2" + base64-arraybuffer "0.1.5" + component-bind "1.0.0" + component-emitter "1.2.1" + debug "~3.1.0" + engine.io-client "~3.2.0" + has-binary2 "~1.0.2" + has-cors "1.1.0" + indexof "0.0.1" + object-component "0.0.3" + parseqs "0.0.5" + parseuri "0.0.5" + socket.io-parser "~3.2.0" + to-array "0.1.4" + +socket.io-parser@~3.2.0: + version "3.2.0" + resolved "https://registry.npm.taobao.org/socket.io-parser/download/socket.io-parser-3.2.0.tgz#e7c6228b6aa1f814e6148aea325b51aa9499e077" + integrity sha1-58Yii2qh+BTmFIrqMltRqpSZ4Hc= + dependencies: + component-emitter "1.2.1" + debug "~3.1.0" + isarray "2.0.1" + +socket.io@2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/socket.io/download/socket.io-2.1.1.tgz?cache=0&sync_timestamp=1569002852515&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsocket.io%2Fdownload%2Fsocket.io-2.1.1.tgz#a069c5feabee3e6b214a75b40ce0652e1cfb9980" + integrity sha1-oGnF/qvuPmshSnW0DOBlLhz7mYA= + dependencies: + debug "~3.1.0" + engine.io "~3.2.0" + has-binary2 "~1.0.2" + socket.io-adapter "~1.1.0" + socket.io-client "2.1.1" + socket.io-parser "~3.2.0" + +sockjs-client@1.4.0: + version "1.4.0" + resolved "https://registry.npm.taobao.org/sockjs-client/download/sockjs-client-1.4.0.tgz#c9f2568e19c8fd8173b4997ea3420e0bb306c7d5" + integrity sha1-yfJWjhnI/YFztJl+o0IOC7MGx9U= + dependencies: + debug "^3.2.5" + eventsource "^1.0.7" + faye-websocket "~0.11.1" + inherits "^2.0.3" + json3 "^3.3.2" + url-parse "^1.4.3" + +sockjs@0.3.19: + version "0.3.19" + resolved "https://registry.npm.taobao.org/sockjs/download/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" + integrity sha1-2Xa76ACve9IK4IWY1YI5NQiZPA0= + dependencies: + faye-websocket "^0.10.0" + uuid "^3.0.1" + +socks-proxy-agent@^4.0.0: + version "4.0.2" + resolved "https://registry.npm.taobao.org/socks-proxy-agent/download/socks-proxy-agent-4.0.2.tgz#3c8991f3145b2799e70e11bd5fbc8b1963116386" + integrity sha1-PImR8xRbJ5nnDhG9X7yLGWMRY4Y= + dependencies: + agent-base "~4.2.1" + socks "~2.3.2" + +socks@~2.3.2: + version "2.3.3" + resolved "https://registry.npm.taobao.org/socks/download/socks-2.3.3.tgz#01129f0a5d534d2b897712ed8aceab7ee65d78e3" + integrity sha1-ARKfCl1TTSuJdxLtis6rfuZdeOM= + dependencies: + ip "1.1.5" + smart-buffer "^4.1.0" + +sort-keys@^1.0.0: + version "1.1.2" + resolved "https://registry.npm.taobao.org/sort-keys/download/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" + integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= + dependencies: + is-plain-obj "^1.0.0" + +source-list-map@^2.0.0: + version "2.0.1" + resolved "https://registry.npm.taobao.org/source-list-map/download/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" + integrity sha1-OZO9hzv8SEecyp6jpUeDXHwVSzQ= + +source-list-map@~0.1.7: + version "0.1.8" + resolved "https://registry.npm.taobao.org/source-list-map/download/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106" + integrity sha1-xVCyq1Qn9rPyH1r+rYjE9Vh7IQY= + +source-map-loader@0.2.4: + version "0.2.4" + resolved "https://registry.npm.taobao.org/source-map-loader/download/source-map-loader-0.2.4.tgz#c18b0dc6e23bf66f6792437557c569a11e072271" + integrity sha1-wYsNxuI79m9nkkN1V8VpoR4HInE= + dependencies: + async "^2.5.0" + loader-utils "^1.1.0" + +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.npm.taobao.org/source-map-resolve/download/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha1-GQhmvs51U+H48mei7oLGBrVQmho= + 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" + +source-map-support@0.5.13: + version "0.5.13" + resolved "https://registry.npm.taobao.org/source-map-support/download/source-map-support-0.5.13.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map-support%2Fdownload%2Fsource-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" + integrity sha1-MbJKnC5zwt6FBmwP631Edn7VKTI= + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-support@^0.5.5, source-map-support@^0.5.6, source-map-support@~0.5.12: + version "0.5.16" + resolved "https://registry.npm.taobao.org/source-map-support/download/source-map-support-0.5.16.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map-support%2Fdownload%2Fsource-map-support-0.5.16.tgz#0ae069e7fe3ba7538c64c98515e35339eac5a042" + integrity sha1-CuBp5/47p1OMZMmFFeNTOerFoEI= + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-support@~0.4.0: + version "0.4.18" + resolved "https://registry.npm.taobao.org/source-map-support/download/source-map-support-0.4.18.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map-support%2Fdownload%2Fsource-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" + integrity sha1-Aoam3ovkJkEzhZTpfM6nXwosWF8= + dependencies: + source-map "^0.5.6" + +source-map-url@^0.4.0: + version "0.4.0" + resolved "https://registry.npm.taobao.org/source-map-url/download/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" + integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= + +source-map@0.1.x: + version "0.1.43" + resolved "https://registry.npm.taobao.org/source-map/download/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" + integrity sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y= + dependencies: + amdefine ">=0.0.4" + +source-map@0.7.3: + version "0.7.3" + resolved "https://registry.npm.taobao.org/source-map/download/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha1-UwL4FpAxc1ImVECS5kmB91F1A4M= + +source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: + version "0.5.7" + resolved "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha1-dHIq8y6WFOnCh6jQu95IteLxomM= + +source-map@~0.4.1: + version "0.4.4" + resolved "https://registry.npm.taobao.org/source-map/download/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" + integrity sha1-66T12pwNyZneaAMti092FzZSA2s= + dependencies: + amdefine ">=0.0.4" + +sourcemap-codec@^1.4.4: + version "1.4.7" + resolved "https://registry.npm.taobao.org/sourcemap-codec/download/sourcemap-codec-1.4.7.tgz#5b2cd184e3fe51fd30ba049f7f62bf499b4f73ae" + integrity sha1-WyzRhOP+Uf0wugSff2K/SZtPc64= + +spdx-correct@^3.0.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/spdx-correct/download/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" + integrity sha1-+4PlBERSaPFUsHTiGMh8ADzTHfQ= + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.2.0" + resolved "https://registry.npm.taobao.org/spdx-exceptions/download/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" + integrity sha1-LqRQrudPKom/uUUZwH/Nb0EyKXc= + +spdx-expression-parse@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/spdx-expression-parse/download/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" + integrity sha1-meEZt6XaAOBUkcn6M4t5BII7QdA= + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.5" + resolved "https://registry.npm.taobao.org/spdx-license-ids/download/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" + integrity sha1-NpS1gEVnpFjTyARYQqY1hjL2JlQ= + +spdy-transport@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/spdy-transport/download/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" + integrity sha1-ANSGOmQArXXfkzYaFghgXl3NzzE= + dependencies: + debug "^4.1.0" + detect-node "^2.0.4" + hpack.js "^2.1.6" + obuf "^1.1.2" + readable-stream "^3.0.6" + wbuf "^1.7.3" + +spdy@^4.0.1: + version "4.0.1" + resolved "https://registry.npm.taobao.org/spdy/download/spdy-4.0.1.tgz#6f12ed1c5db7ea4f24ebb8b89ba58c87c08257f2" + integrity sha1-bxLtHF236k8k67i4m6WMh8CCV/I= + dependencies: + debug "^4.1.0" + handle-thing "^2.0.0" + http-deceiver "^1.2.7" + select-hose "^2.0.0" + spdy-transport "^3.0.0" + +speed-measure-webpack-plugin@1.3.1: + version "1.3.1" + resolved "https://registry.npm.taobao.org/speed-measure-webpack-plugin/download/speed-measure-webpack-plugin-1.3.1.tgz#69840a5cdc08b4638697dac7db037f595d7f36a0" + integrity sha1-aYQKXNwItGOGl9rH2wN/WV1/NqA= + dependencies: + chalk "^2.0.1" + +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.npm.taobao.org/split-string/download/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha1-fLCd2jqGWFcFxks5pkZgOGguj+I= + dependencies: + extend-shallow "^3.0.0" + +sprintf-js@^1.1.2: + version "1.1.2" + resolved "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsprintf-js%2Fdownload%2Fsprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673" + integrity sha1-2hdlJiv4wPVxdJ8q1sJjACB65nM= + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsprintf-js%2Fdownload%2Fsprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +sshpk@^1.7.0: + version "1.16.1" + resolved "https://registry.npm.taobao.org/sshpk/download/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" + integrity sha1-+2YcC+8ps520B2nuOfpwCT1vaHc= + 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" + +ssri@^6.0.0, ssri@^6.0.1: + version "6.0.1" + resolved "https://registry.npm.taobao.org/ssri/download/ssri-6.0.1.tgz?cache=0&sync_timestamp=1571961736774&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssri%2Fdownload%2Fssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" + integrity sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg= + dependencies: + figgy-pudding "^3.5.1" + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.npm.taobao.org/static-extend/download/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@~1.5.0: + version "1.5.0" + resolved "https://registry.npm.taobao.org/statuses/download/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= + +stream-browserify@^2.0.1: + version "2.0.2" + resolved "https://registry.npm.taobao.org/stream-browserify/download/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" + integrity sha1-h1IdOKRKp+6RzhzSpH3wy0ndZgs= + dependencies: + inherits "~2.0.1" + readable-stream "^2.0.2" + +stream-each@^1.1.0: + version "1.2.3" + resolved "https://registry.npm.taobao.org/stream-each/download/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" + integrity sha1-6+J6DDibBPvMIzZClS4Qcxr6m64= + dependencies: + end-of-stream "^1.1.0" + stream-shift "^1.0.0" + +stream-http@^2.7.2: + version "2.8.3" + resolved "https://registry.npm.taobao.org/stream-http/download/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" + integrity sha1-stJCRpKIpaJ+xP6JM6z2I95lFPw= + 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" + +stream-shift@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.1.tgz?cache=0&sync_timestamp=1576147178936&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstream-shift%2Fdownload%2Fstream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" + integrity sha1-1wiCgVWasneEJCebCHfaPDktWj0= + +streamroller@^1.0.6: + version "1.0.6" + resolved "https://registry.npm.taobao.org/streamroller/download/streamroller-1.0.6.tgz#8167d8496ed9f19f05ee4b158d9611321b8cacd9" + integrity sha1-gWfYSW7Z8Z8F7ksVjZYRMhuMrNk= + dependencies: + async "^2.6.2" + date-format "^2.0.0" + debug "^3.2.6" + fs-extra "^7.0.1" + lodash "^4.17.14" + +strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/strict-uri-encode/download/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= + +string-width@^1.0.1: + version "1.0.2" + resolved "https://registry.npm.taobao.org/string-width/download/string-width-1.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/string-width/download/string-width-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4= + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^3.0.0: + version "3.1.0" + resolved "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha1-InZ74htirxCBV0MG9prFG2IgOWE= + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string-width@^4.1.0: + version "4.2.0" + resolved "https://registry.npm.taobao.org/string-width/download/string-width-4.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" + integrity sha1-lSGCxGzHssMT0VluYjmSvRY7crU= + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string.prototype.trimleft@^2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/string.prototype.trimleft/download/string.prototype.trimleft-2.1.1.tgz#9bdb8ac6abd6d602b17a4ed321870d2f8dcefc74" + integrity sha1-m9uKxqvW1gKxek7TIYcNL43O/HQ= + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + +string.prototype.trimright@^2.1.1: + version "2.1.1" + resolved "https://registry.npm.taobao.org/string.prototype.trimright/download/string.prototype.trimright-2.1.1.tgz#440314b15996c866ce8a0341894d45186200c5d9" + integrity sha1-RAMUsVmWyGbOigNBiU1FGGIAxdk= + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + +string_decoder@^1.0.0, string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha1-QvEUWUpGzxqOMLCoT1bHjD7awh4= + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha1-nPFhG6YmhdcDCunkujQUnDrwP8g= + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.1.0: + version "5.2.0" + resolved "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4= + dependencies: + ansi-regex "^4.1.0" + +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha1-CxVx3XZpzNTz4G4U7x7tJiJa5TI= + dependencies: + ansi-regex "^5.0.0" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/strip-bom/download/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/strip-eof/download/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= + +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.npm.taobao.org/strip-json-comments/download/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + +style-loader@1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/style-loader/download/style-loader-1.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstyle-loader%2Fdownload%2Fstyle-loader-1.0.0.tgz#1d5296f9165e8e2c85d24eee0b7caf9ec8ca1f82" + integrity sha1-HVKW+RZejiyF0k7uC3yvnsjKH4I= + dependencies: + loader-utils "^1.2.3" + schema-utils "^2.0.1" + +stylus-loader@3.0.2: + version "3.0.2" + resolved "https://registry.npm.taobao.org/stylus-loader/download/stylus-loader-3.0.2.tgz#27a706420b05a38e038e7cacb153578d450513c6" + integrity sha1-J6cGQgsFo44DjnyssVNXjUUFE8Y= + dependencies: + loader-utils "^1.0.2" + lodash.clonedeep "^4.5.0" + when "~3.6.x" + +stylus@0.54.5: + version "0.54.5" + resolved "https://registry.npm.taobao.org/stylus/download/stylus-0.54.5.tgz#42b9560931ca7090ce8515a798ba9e6aa3d6dc79" + integrity sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk= + dependencies: + css-parse "1.7.x" + debug "*" + glob "7.0.x" + mkdirp "0.5.x" + sax "0.5.x" + source-map "0.1.x" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/supports-color/download/supports-color-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.npm.taobao.org/supports-color/download/supports-color-5.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha1-4uaaRKyHcveKHsCzW2id9lMO/I8= + dependencies: + has-flag "^3.0.0" + +supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" + integrity sha1-B2Srxpxj1ayELdSGfo0CXogN+PM= + dependencies: + has-flag "^3.0.0" + +symbol-observable@1.2.0: + version "1.2.0" + resolved "https://registry.npm.taobao.org/symbol-observable/download/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" + integrity sha1-wiaIrtTqs83C3+rLtWFmBWCgCAQ= + +tapable@^1.0.0, tapable@^1.1.3: + version "1.1.3" + resolved "https://registry.npm.taobao.org/tapable/download/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" + integrity sha1-ofzMBrWNth/XpF2i2kT186Pme6I= + +tar@^4.4.2, tar@^4.4.8: + version "4.4.13" + resolved "https://registry.npm.taobao.org/tar/download/tar-4.4.13.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftar%2Fdownload%2Ftar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" + integrity sha1-Q7NkvFKIjVVSmGN7ENYHkCVKtSU= + dependencies: + chownr "^1.1.1" + fs-minipass "^1.2.5" + minipass "^2.8.6" + minizlib "^1.2.1" + mkdirp "^0.5.0" + safe-buffer "^5.1.2" + yallist "^3.0.3" + +terser-webpack-plugin@1.4.3, terser-webpack-plugin@^1.4.1: + version "1.4.3" + resolved "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-1.4.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser-webpack-plugin%2Fdownload%2Fterser-webpack-plugin-1.4.3.tgz#5ecaf2dbdc5fb99745fd06791f46fc9ddb1c9a7c" + integrity sha1-Xsry29xfuZdF/QZ5H0b8ndscmnw= + dependencies: + cacache "^12.0.2" + find-cache-dir "^2.1.0" + is-wsl "^1.1.0" + schema-utils "^1.0.0" + serialize-javascript "^2.1.2" + source-map "^0.6.1" + terser "^4.1.2" + webpack-sources "^1.4.0" + worker-farm "^1.7.0" + +terser@4.3.9: + version "4.3.9" + resolved "https://registry.npm.taobao.org/terser/download/terser-4.3.9.tgz?cache=0&sync_timestamp=1578021305565&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser%2Fdownload%2Fterser-4.3.9.tgz#e4be37f80553d02645668727777687dad26bbca8" + integrity sha1-5L43+AVT0CZFZocnd3aH2tJrvKg= + dependencies: + commander "^2.20.0" + source-map "~0.6.1" + source-map-support "~0.5.12" + +terser@^4.1.2: + version "4.5.1" + resolved "https://registry.npm.taobao.org/terser/download/terser-4.5.1.tgz?cache=0&sync_timestamp=1578021305565&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser%2Fdownload%2Fterser-4.5.1.tgz#63b52d6b6ce344aa6fedcd0ee06a695799eb50bd" + integrity sha1-Y7Uta2zjRKpv7c0O4GppV5nrUL0= + dependencies: + commander "^2.20.0" + source-map "~0.6.1" + source-map-support "~0.5.12" + +through2@^2.0.0: + version "2.0.5" + resolved "https://registry.npm.taobao.org/through2/download/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0= + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +"through@>=2.2.7 <3", through@X.X.X, through@^2.3.6: + version "2.3.8" + resolved "https://registry.npm.taobao.org/through/download/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + +thunky@^1.0.2: + version "1.1.0" + resolved "https://registry.npm.taobao.org/thunky/download/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" + integrity sha1-Wrr3FKlAXbBQRzK7zNLO3Z75U30= + +timers-browserify@^2.0.4: + version "2.0.11" + resolved "https://registry.npm.taobao.org/timers-browserify/download/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f" + integrity sha1-gAsfPu4nLlvFPuRloE0OgEwxIR8= + dependencies: + setimmediate "^1.0.4" + +tmp@0.0.30: + version "0.0.30" + resolved "https://registry.npm.taobao.org/tmp/download/tmp-0.0.30.tgz#72419d4a8be7d6ce75148fd8b324e593a711c2ed" + integrity sha1-ckGdSovn1s51FI/YsyTlk6cRwu0= + dependencies: + os-tmpdir "~1.0.1" + +tmp@0.0.33, tmp@0.0.x, tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.npm.taobao.org/tmp/download/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha1-bTQzWIl2jSGyvNoKonfO07G/rfk= + dependencies: + os-tmpdir "~1.0.2" + +to-array@0.1.4: + version "0.1.4" + resolved "https://registry.npm.taobao.org/to-array/download/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890" + integrity sha1-F+bBH3PdTz10zaek/zI46a2b+JA= + +to-arraybuffer@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/to-arraybuffer/download/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" + integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= + +to-fast-properties@^1.0.3: + version "1.0.3" + resolved "https://registry.npm.taobao.org/to-fast-properties/download/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" + integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/to-fast-properties/download/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.npm.taobao.org/to-object-path/download/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.npm.taobao.org/to-regex-range/download/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.npm.taobao.org/to-regex-range/download/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha1-FkjESq58jZiKMmAY7XL1tN0DkuQ= + dependencies: + is-number "^7.0.0" + +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.npm.taobao.org/to-regex/download/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha1-E8/dmzNlUvMLUfM6iuG0Knp1mc4= + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + +toidentifier@1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/toidentifier/download/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" + integrity sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM= + +tough-cookie@~2.4.3: + version "2.4.3" + resolved "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" + integrity sha1-U/Nto/R3g7CSWvoG/587FlKA94E= + dependencies: + psl "^1.1.24" + punycode "^1.4.1" + +tree-kill@1.2.1: + version "1.2.1" + resolved "https://registry.npm.taobao.org/tree-kill/download/tree-kill-1.2.1.tgz?cache=0&sync_timestamp=1576105318345&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftree-kill%2Fdownload%2Ftree-kill-1.2.1.tgz#5398f374e2f292b9dcc7b2e71e30a5c3bb6c743a" + integrity sha1-U5jzdOLykrncx7LnHjClw7tsdDo= + +trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/trim-right/download/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= + +ts-node@~7.0.0: + version "7.0.1" + resolved "https://registry.npm.taobao.org/ts-node/download/ts-node-7.0.1.tgz#9562dc2d1e6d248d24bc55f773e3f614337d9baf" + integrity sha1-lWLcLR5tJI0kvFX3c+P2FDN9m68= + dependencies: + arrify "^1.0.0" + buffer-from "^1.1.0" + diff "^3.1.0" + make-error "^1.1.1" + minimist "^1.2.0" + mkdirp "^0.5.1" + source-map-support "^0.5.6" + yn "^2.0.0" + +tslib@1.10.0, tslib@^1.10.0, tslib@^1.7.1, tslib@^1.8.0, tslib@^1.8.1, tslib@^1.9.0: + version "1.10.0" + resolved "https://registry.npm.taobao.org/tslib/download/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" + integrity sha1-w8GflZc/sKYpc/sJ2Q2WHuQ+XIo= + +tslint@~5.15.0: + version "5.15.0" + resolved "https://registry.npm.taobao.org/tslint/download/tslint-5.15.0.tgz#6ffb180986d63afa1e531feb2a134dbf961e27d3" + integrity sha1-b/sYCYbWOvoeUx/rKhNNv5YeJ9M= + dependencies: + babel-code-frame "^6.22.0" + builtin-modules "^1.1.1" + chalk "^2.3.0" + commander "^2.12.1" + diff "^3.2.0" + glob "^7.1.1" + js-yaml "^3.13.0" + minimatch "^3.0.4" + mkdirp "^0.5.1" + resolve "^1.3.2" + semver "^5.3.0" + tslib "^1.8.0" + tsutils "^2.29.0" + +tsutils@^2.29.0: + version "2.29.0" + resolved "https://registry.npm.taobao.org/tsutils/download/tsutils-2.29.0.tgz#32b488501467acbedd4b85498673a0812aca0b99" + integrity sha1-MrSIUBRnrL7dS4VJhnOggSrKC5k= + dependencies: + tslib "^1.8.1" + +tty-browserify@0.0.0: + version "0.0.0" + resolved "https://registry.npm.taobao.org/tty-browserify/download/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.npm.taobao.org/tunnel-agent/download/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + dependencies: + safe-buffer "^5.0.1" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.npm.taobao.org/type-fest/download/type-fest-0.8.1.tgz?cache=0&sync_timestamp=1569404138136&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha1-CeJJ696FHTseSNJ8EFREZn8XuD0= + +type-is@~1.6.17, type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.npm.taobao.org/type-is/download/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha1-TlUs0F3wlGfcvE73Od6J8s83wTE= + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.npm.taobao.org/typedarray/download/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + +typescript@3.5.3, typescript@~3.5.3: + version "3.5.3" + resolved "https://registry.npm.taobao.org/typescript/download/typescript-3.5.3.tgz#c830f657f93f1ea846819e929092f5fe5983e977" + integrity sha1-yDD2V/k/HqhGgZ6SkJL1/lmD6Xc= + +uglify-js@^3.1.4: + version "3.7.3" + resolved "https://registry.npm.taobao.org/uglify-js/download/uglify-js-3.7.3.tgz?cache=0&sync_timestamp=1577407829710&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuglify-js%2Fdownload%2Fuglify-js-3.7.3.tgz#f918fce9182f466d5140f24bb0ff35c2d32dcc6a" + integrity sha1-+Rj86RgvRm1RQPJLsP81wtMtzGo= + dependencies: + commander "~2.20.3" + source-map "~0.6.1" + +ultron@~1.1.0: + version "1.1.1" + resolved "https://registry.npm.taobao.org/ultron/download/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" + integrity sha1-n+FTahCmZKZSZqHjzPhf02MCvJw= + +unicode-canonical-property-names-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.npm.taobao.org/unicode-canonical-property-names-ecmascript/download/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" + integrity sha1-JhmADEyCWADv3YNDr33Zkzy+KBg= + +unicode-match-property-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.npm.taobao.org/unicode-match-property-ecmascript/download/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" + integrity sha1-jtKjJWmWG86SJ9Cc0/+7j+1fAgw= + dependencies: + unicode-canonical-property-names-ecmascript "^1.0.4" + unicode-property-aliases-ecmascript "^1.0.4" + +unicode-match-property-value-ecmascript@^1.1.0: + version "1.1.0" + resolved "https://registry.npm.taobao.org/unicode-match-property-value-ecmascript/download/unicode-match-property-value-ecmascript-1.1.0.tgz#5b4b426e08d13a80365e0d657ac7a6c1ec46a277" + integrity sha1-W0tCbgjROoA2Xg1lesemwexGonc= + +unicode-property-aliases-ecmascript@^1.0.4: + version "1.0.5" + resolved "https://registry.npm.taobao.org/unicode-property-aliases-ecmascript/download/unicode-property-aliases-ecmascript-1.0.5.tgz#a9cc6cc7ce63a0a3023fc99e341b94431d405a57" + integrity sha1-qcxsx85joKMCP8meNBuUQx1AWlc= + +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.npm.taobao.org/union-value/download/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha1-C2/nuDWuzaYcbqTU8CwUIh4QmEc= + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + +unique-filename@^1.1.1: + version "1.1.1" + resolved "https://registry.npm.taobao.org/unique-filename/download/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + integrity sha1-HWl2k2mtoFgxA6HmrodoG1ZXMjA= + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.2" + resolved "https://registry.npm.taobao.org/unique-slug/download/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + integrity sha1-uqvOkQg/xk6UWw861hPiZPfNTmw= + dependencies: + imurmurhash "^0.1.4" + +universal-analytics@^0.4.20: + version "0.4.20" + resolved "https://registry.npm.taobao.org/universal-analytics/download/universal-analytics-0.4.20.tgz#d6b64e5312bf74f7c368e3024a922135dbf24b03" + integrity sha1-1rZOUxK/dPfDaOMCSpIhNdvySwM= + dependencies: + debug "^3.0.0" + request "^2.88.0" + uuid "^3.0.0" + +universalify@^0.1.0: + version "0.1.2" + resolved "https://registry.npm.taobao.org/universalify/download/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY= + +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= + +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.npm.taobao.org/unset-value/download/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +upath@^1.1.1: + version "1.2.0" + resolved "https://registry.npm.taobao.org/upath/download/upath-1.2.0.tgz?cache=0&sync_timestamp=1567458131109&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fupath%2Fdownload%2Fupath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" + integrity sha1-j2bbzVWog6za5ECK+LA1pQRMGJQ= + +uri-js@^4.2.2: + version "4.2.2" + resolved "https://registry.npm.taobao.org/uri-js/download/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" + integrity sha1-lMVA4f93KVbiKZUHwBCupsiDjrA= + dependencies: + punycode "^2.1.0" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= + +url-parse@^1.4.3: + version "1.4.7" + resolved "https://registry.npm.taobao.org/url-parse/download/url-parse-1.4.7.tgz#a8a83535e8c00a316e403a5db4ac1b9b853ae278" + integrity sha1-qKg1NejACjFuQDpdtKwbm4U64ng= + dependencies: + querystringify "^2.1.1" + requires-port "^1.0.0" + +url@^0.11.0: + version "0.11.0" + resolved "https://registry.npm.taobao.org/url/download/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" + integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.npm.taobao.org/use/download/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8= + +useragent@2.3.0: + version "2.3.0" + resolved "https://registry.npm.taobao.org/useragent/download/useragent-2.3.0.tgz#217f943ad540cb2128658ab23fc960f6a88c9972" + integrity sha1-IX+UOtVAyyEoZYqyP8lg9qiMmXI= + dependencies: + lru-cache "4.1.x" + tmp "0.0.x" + +util-deprecate@^1.0.1, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + +util-promisify@^2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/util-promisify/download/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" + integrity sha1-PCI2R2xNMsX/PEcAKt18E7moKlM= + dependencies: + object.getownpropertydescriptors "^2.0.3" + +util@0.10.3: + version "0.10.3" + resolved "https://registry.npm.taobao.org/util/download/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" + integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= + dependencies: + inherits "2.0.1" + +util@^0.11.0: + version "0.11.1" + resolved "https://registry.npm.taobao.org/util/download/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" + integrity sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE= + dependencies: + inherits "2.0.3" + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= + +uuid@^3.0.0, uuid@^3.0.1, uuid@^3.3.2: + version "3.3.3" + resolved "https://registry.npm.taobao.org/uuid/download/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" + integrity sha1-RWjwIW54dg7h2/Ok0s9T4iQRKGY= + +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.npm.taobao.org/validate-npm-package-license/download/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha1-/JH2uce6FchX9MssXe/uw51PQQo= + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +validate-npm-package-name@^3.0.0: + version "3.0.0" + resolved "https://registry.npm.taobao.org/validate-npm-package-name/download/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" + integrity sha1-X6kS2B630MdK/BQN5zF/DKffQ34= + dependencies: + builtins "^1.0.3" + +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.npm.taobao.org/verror/download/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +vm-browserify@^1.0.1: + version "1.1.2" + resolved "https://registry.npm.taobao.org/vm-browserify/download/vm-browserify-1.1.2.tgz?cache=0&sync_timestamp=1572870717730&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvm-browserify%2Fdownload%2Fvm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" + integrity sha1-eGQcSIuObKkadfUR56OzKobl3aA= + +void-elements@^2.0.0: + version "2.0.1" + resolved "https://registry.npm.taobao.org/void-elements/download/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" + integrity sha1-wGavtYK7HLQSjWDqkjkulNXp2+w= + +watchpack@^1.6.0: + version "1.6.0" + resolved "https://registry.npm.taobao.org/watchpack/download/watchpack-1.6.0.tgz?cache=0&sync_timestamp=1573060318538&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwatchpack%2Fdownload%2Fwatchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00" + integrity sha1-S8EsLr6KonenHx0/FNaFx7RGzQA= + dependencies: + chokidar "^2.0.2" + graceful-fs "^4.1.2" + neo-async "^2.5.0" + +wbuf@^1.1.0, wbuf@^1.7.3: + version "1.7.3" + resolved "https://registry.npm.taobao.org/wbuf/download/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" + integrity sha1-wdjRSTFtPqhShIiVy2oL/oh7h98= + dependencies: + minimalistic-assert "^1.0.0" + +webdriver-js-extender@2.1.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/webdriver-js-extender/download/webdriver-js-extender-2.1.0.tgz#57d7a93c00db4cc8d556e4d3db4b5db0a80c3bb7" + integrity sha1-V9epPADbTMjVVuTT20tdsKgMO7c= + dependencies: + "@types/selenium-webdriver" "^3.0.0" + selenium-webdriver "^3.0.1" + +webdriver-manager@^12.0.6: + version "12.1.7" + resolved "https://registry.npm.taobao.org/webdriver-manager/download/webdriver-manager-12.1.7.tgz#ed4eaee8f906b33c146e869b55e850553a1b1162" + integrity sha1-7U6u6PkGszwUboabVehQVTobEWI= + dependencies: + adm-zip "^0.4.9" + chalk "^1.1.1" + del "^2.2.0" + glob "^7.0.3" + ini "^1.3.4" + minimist "^1.2.0" + q "^1.4.1" + request "^2.87.0" + rimraf "^2.5.2" + semver "^5.3.0" + xml2js "^0.4.17" + +webpack-core@^0.6.8: + version "0.6.9" + resolved "https://registry.npm.taobao.org/webpack-core/download/webpack-core-0.6.9.tgz#fc571588c8558da77be9efb6debdc5a3b172bdc2" + integrity sha1-/FcViMhVjad76e+23r3Fo7FyvcI= + dependencies: + source-list-map "~0.1.7" + source-map "~0.4.1" + +webpack-dev-middleware@3.7.2, webpack-dev-middleware@^3.7.2: + version "3.7.2" + resolved "https://registry.npm.taobao.org/webpack-dev-middleware/download/webpack-dev-middleware-3.7.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-dev-middleware%2Fdownload%2Fwebpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3" + integrity sha1-ABnD23FuP6XOy/ZPKriKdLqzMfM= + dependencies: + memory-fs "^0.4.1" + mime "^2.4.4" + mkdirp "^0.5.1" + range-parser "^1.2.1" + webpack-log "^2.0.0" + +webpack-dev-server@3.9.0: + version "3.9.0" + resolved "https://registry.npm.taobao.org/webpack-dev-server/download/webpack-dev-server-3.9.0.tgz?cache=0&sync_timestamp=1576754577658&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-dev-server%2Fdownload%2Fwebpack-dev-server-3.9.0.tgz#27c3b5d0f6b6677c4304465ac817623c8b27b89c" + integrity sha1-J8O10Pa2Z3xDBEZayBdiPIsnuJw= + dependencies: + ansi-html "0.0.7" + bonjour "^3.5.0" + chokidar "^2.1.8" + compression "^1.7.4" + connect-history-api-fallback "^1.6.0" + debug "^4.1.1" + del "^4.1.1" + express "^4.17.1" + html-entities "^1.2.1" + http-proxy-middleware "0.19.1" + import-local "^2.0.0" + internal-ip "^4.3.0" + ip "^1.1.5" + is-absolute-url "^3.0.3" + killable "^1.0.1" + loglevel "^1.6.4" + opn "^5.5.0" + p-retry "^3.0.1" + portfinder "^1.0.25" + schema-utils "^1.0.0" + selfsigned "^1.10.7" + semver "^6.3.0" + serve-index "^1.9.1" + sockjs "0.3.19" + sockjs-client "1.4.0" + spdy "^4.0.1" + strip-ansi "^3.0.1" + supports-color "^6.1.0" + url "^0.11.0" + webpack-dev-middleware "^3.7.2" + webpack-log "^2.0.0" + ws "^6.2.1" + yargs "12.0.5" + +webpack-log@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/webpack-log/download/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" + integrity sha1-W3ko4GN1k/EZ0y9iJ8HgrDHhtH8= + dependencies: + ansi-colors "^3.0.0" + uuid "^3.3.2" + +webpack-merge@4.2.1: + version "4.2.1" + resolved "https://registry.npm.taobao.org/webpack-merge/download/webpack-merge-4.2.1.tgz#5e923cf802ea2ace4fd5af1d3247368a633489b4" + integrity sha1-XpI8+ALqKs5P1a8dMkc2imM0ibQ= + dependencies: + lodash "^4.17.5" + +webpack-sources@1.4.3, webpack-sources@^1.1.0, webpack-sources@^1.2.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1: + version "1.4.3" + resolved "https://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.4.3.tgz?cache=0&sync_timestamp=1574264193174&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-sources%2Fdownload%2Fwebpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" + integrity sha1-7t2OwLko+/HL/plOItLYkPMwqTM= + dependencies: + source-list-map "^2.0.0" + source-map "~0.6.1" + +webpack-subresource-integrity@1.1.0-rc.6: + version "1.1.0-rc.6" + resolved "https://registry.npm.taobao.org/webpack-subresource-integrity/download/webpack-subresource-integrity-1.1.0-rc.6.tgz?cache=0&sync_timestamp=1569916474449&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-subresource-integrity%2Fdownload%2Fwebpack-subresource-integrity-1.1.0-rc.6.tgz#37f6f1264e1eb378e41465a98da80fad76ab8886" + integrity sha1-N/bxJk4es3jkFGWpjagPrXariIY= + dependencies: + webpack-core "^0.6.8" + +webpack@4.39.2: + version "4.39.2" + resolved "https://registry.npm.taobao.org/webpack/download/webpack-4.39.2.tgz#c9aa5c1776d7c309d1b3911764f0288c8c2816aa" + integrity sha1-yapcF3bXwwnRs5EXZPAojIwoFqo= + dependencies: + "@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.2.1" + ajv "^6.10.2" + ajv-keywords "^3.4.1" + chrome-trace-event "^1.0.2" + enhanced-resolve "^4.1.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.1" + 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.1" + watchpack "^1.6.0" + webpack-sources "^1.4.1" + +websocket-driver@>=0.5.1: + version "0.7.3" + resolved "https://registry.npm.taobao.org/websocket-driver/download/websocket-driver-0.7.3.tgz#a2d4e0d4f4f116f1e6297eba58b05d430100e9f9" + integrity sha1-otTg1PTxFvHmKX66WLBdQwEA6fk= + dependencies: + http-parser-js ">=0.4.0 <0.4.11" + safe-buffer ">=5.1.0" + websocket-extensions ">=0.1.1" + +websocket-extensions@>=0.1.1: + version "0.1.3" + resolved "https://registry.npm.taobao.org/websocket-extensions/download/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" + integrity sha1-XS/yKXcAPsaHpLhwc9+7rBRszyk= + +when@~3.6.x: + version "3.6.4" + resolved "https://registry.npm.taobao.org/when/download/when-3.6.4.tgz#473b517ec159e2b85005497a13983f095412e34e" + integrity sha1-RztRfsFZ4rhQBUl6E5g/CVQS404= + +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/which-module/download/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= + +which@^1.2.1, which@^1.2.9, which@^1.3.1: + version "1.3.1" + resolved "https://registry.npm.taobao.org/which/download/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo= + dependencies: + isexe "^2.0.0" + +wide-align@^1.1.0: + version "1.1.3" + resolved "https://registry.npm.taobao.org/wide-align/download/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + integrity sha1-rgdOa9wMFKQx6ATmJFScYzsABFc= + dependencies: + string-width "^1.0.2 || 2" + +wordwrap@~0.0.2: + version "0.0.3" + resolved "https://registry.npm.taobao.org/wordwrap/download/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" + integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= + +worker-farm@^1.7.0: + version "1.7.0" + resolved "https://registry.npm.taobao.org/worker-farm/download/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" + integrity sha1-JqlMU5G7ypJhUgAvabhKS/dy5ag= + dependencies: + errno "~0.1.7" + +worker-plugin@3.2.0: + version "3.2.0" + resolved "https://registry.npm.taobao.org/worker-plugin/download/worker-plugin-3.2.0.tgz#ddae9f161b76fcbaacf8f54ecd037844584e43e7" + integrity sha1-3a6fFht2/Lqs+PVOzQN4RFhOQ+c= + dependencies: + loader-utils "^1.1.0" + +wrap-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-2.1.0.tgz?cache=0&sync_timestamp=1573488536792&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwrap-ansi%2Fdownload%2Fwrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + +wrappy@1: + version "1.0.2" + resolved "https://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +ws@^6.2.1: + version "6.2.1" + resolved "https://registry.npm.taobao.org/ws/download/ws-6.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fws%2Fdownload%2Fws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" + integrity sha1-RC/fCkftZPWbal2P8TD0dI7VJPs= + dependencies: + async-limiter "~1.0.0" + +ws@~3.3.1: + version "3.3.3" + resolved "https://registry.npm.taobao.org/ws/download/ws-3.3.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fws%2Fdownload%2Fws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" + integrity sha1-8c+E/i1ekB686U767OeF8YeiKPI= + dependencies: + async-limiter "~1.0.0" + safe-buffer "~5.1.0" + ultron "~1.1.0" + +xml2js@^0.4.17: + version "0.4.23" + resolved "https://registry.npm.taobao.org/xml2js/download/xml2js-0.4.23.tgz?cache=0&sync_timestamp=1576776888003&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxml2js%2Fdownload%2Fxml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" + integrity sha1-oMaVFnUkIesqx1juTUzPWIQ+rGY= + dependencies: + sax ">=0.6.0" + xmlbuilder "~11.0.0" + +xmlbuilder@~11.0.0: + version "11.0.1" + resolved "https://registry.npm.taobao.org/xmlbuilder/download/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" + integrity sha1-vpuuHIoEbnazESdyY0fQrXACvrM= + +xmlhttprequest-ssl@~1.5.4: + version "1.5.5" + resolved "https://registry.npm.taobao.org/xmlhttprequest-ssl/download/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e" + integrity sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4= + +xtend@^4.0.0, xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.npm.taobao.org/xtend/download/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha1-u3J3n1+kZRhrH0OPZ0+jR/2121Q= + +"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: + version "4.0.0" + resolved "https://registry.npm.taobao.org/y18n/download/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" + integrity sha1-le+U+F7MgdAHwmThkKEg8KPIVms= + +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + +yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: + version "3.1.1" + resolved "https://registry.npm.taobao.org/yallist/download/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha1-27fa+b/YusmrRev2ArjLrQ1dCP0= + +yargs-parser@^11.1.1: + version "11.1.1" + resolved "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" + integrity sha1-h5oIZZc7yp9rq1y987HGfsfTvPQ= + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^13.0.0: + version "13.1.1" + resolved "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" + integrity sha1-0mBYUyqgbTZf4JH2ofwGsvfl7KA= + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs@12.0.5: + version "12.0.5" + resolved "https://registry.npm.taobao.org/yargs/download/yargs-12.0.5.tgz?cache=0&sync_timestamp=1577940993299&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" + integrity sha1-BfWZe2CWR7ZPZrgeO0sQo2jnrRM= + 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" + +yargs@13.1.0: + version "13.1.0" + resolved "https://registry.npm.taobao.org/yargs/download/yargs-13.1.0.tgz?cache=0&sync_timestamp=1577940993299&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-13.1.0.tgz#b2729ce4bfc0c584939719514099d8a916ad2301" + integrity sha1-snKc5L/AxYSTlxlRQJnYqRatIwE= + dependencies: + cliui "^4.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + os-locale "^3.1.0" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.0.0" + +yeast@0.1.2: + version "0.1.2" + resolved "https://registry.npm.taobao.org/yeast/download/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" + integrity sha1-AI4G2AlDIMNy28L47XagymyKxBk= + +yn@^2.0.0: + version "2.0.0" + resolved "https://registry.npm.taobao.org/yn/download/yn-2.0.0.tgz#e5adabc8acf408f6385fc76495684c88e6af689a" + integrity sha1-5a2ryKz0CPY4X8dklWhMiOavaJo= + +zone.js@~0.9.1: + version "0.9.1" + resolved "https://registry.npm.taobao.org/zone.js/download/zone.js-0.9.1.tgz#e37c6e5c54c13fae4de26b5ffe8d8e9212da6d9b" + integrity sha1-43xuXFTBP65N4mtf/o2OkhLabZs=