diff --git a/blog-applet-master/.gitignore b/blog-applet-master/.gitignore
new file mode 100644
index 0000000..b9d3366
--- /dev/null
+++ b/blog-applet-master/.gitignore
@@ -0,0 +1,49 @@
+######################################################################
+# Build Tools
+
+.gradle
+/build/
+!gradle/wrapper/gradle-wrapper.jar
+
+target/
+!.mvn/wrapper/maven-wrapper.jar
+
+######################################################################
+# IDE
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### JRebel ###
+rebel.xml
+
+### NetBeans ###
+nbproject/private/
+build/*
+nbbuild/
+dist/
+nbdist/
+.nb-gradle/
+.node-moudles/
+######################################################################
+# Others
+*.log
+*.xml.versionsBackup
+*.swp
+
+!*/build/*.java
+!*/build/*.html
+!*/build/*.xml
+
+
diff --git a/blog-applet-master/README.md b/blog-applet-master/README.md
new file mode 100644
index 0000000..cb90a56
--- /dev/null
+++ b/blog-applet-master/README.md
@@ -0,0 +1,27 @@
+# 代码生成器
+
+#### 前言:
+
+自研代码生成器,注意使用时需要依赖redis存储数据,需要修改配置文件中的模板文件地址,且在xml多表联查生成时存在小问题,然后就是vue-elementui-admin这个模板的前端依赖下载可能出现问题。
+
+
+
+#### csdn等项目下载链接:
+
+## [点击前往](http://transfer.azhou.cloud/)
+
+
+## http://transfer.azhou.cloud/
+
+
+
+#### 介绍
+
+技术栈:
+
+- 后端:SpringBoot
+- 前端:Vue
+
+存储:
+
+- Redis
diff --git a/blog-applet-master/azhou-code-plugins/README.md b/blog-applet-master/azhou-code-plugins/README.md
new file mode 100644
index 0000000..8a0acc0
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/README.md
@@ -0,0 +1,19 @@
+# azhou-code-plugins
+
+## Project setup
+```
+npm install
+```
+
+### Compiles and hot-reloads for development
+```
+npm run serve
+```
+
+### Compiles and minifies for production
+```
+npm run build
+```
+
+### Customize configuration
+See [Configuration Reference](https://cli.vuejs.org/config/).
diff --git a/blog-applet-master/azhou-code-plugins/babel.config.js b/blog-applet-master/azhou-code-plugins/babel.config.js
new file mode 100644
index 0000000..e955840
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/babel.config.js
@@ -0,0 +1,5 @@
+module.exports = {
+ presets: [
+ '@vue/cli-plugin-babel/preset'
+ ]
+}
diff --git a/blog-applet-master/azhou-code-plugins/package-lock.json b/blog-applet-master/azhou-code-plugins/package-lock.json
new file mode 100644
index 0000000..33c1833
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/package-lock.json
@@ -0,0 +1,12170 @@
+{
+ "name": "azhou-code-plugins",
+ "version": "0.1.0",
+ "lockfileVersion": 1,
+ "requires": true,
+ "dependencies": {
+ "@babel/code-frame": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/code-frame/download/@babel/code-frame-7.16.0.tgz?cache=0&sync_timestamp=1635560663383&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fcode-frame%2Fdownload%2F%40babel%2Fcode-frame-7.16.0.tgz",
+ "integrity": "sha1-DfyAMJvuyEEeZecGRhxAiwu5tDE=",
+ "dev": true,
+ "requires": {
+ "@babel/highlight": "^7.16.0"
+ }
+ },
+ "@babel/compat-data": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/compat-data/download/@babel/compat-data-7.16.0.tgz?cache=0&sync_timestamp=1635560846497&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fcompat-data%2Fdownload%2F%40babel%2Fcompat-data-7.16.0.tgz",
+ "integrity": "sha1-6iadf3jes6eCbDmkBI7s2lQevao=",
+ "dev": true
+ },
+ "@babel/core": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/core/download/@babel/core-7.16.0.tgz",
+ "integrity": "sha1-xP9EBG9f4xBSXMnrTvUUfwxTdNQ=",
+ "dev": true,
+ "requires": {
+ "@babel/code-frame": "^7.16.0",
+ "@babel/generator": "^7.16.0",
+ "@babel/helper-compilation-targets": "^7.16.0",
+ "@babel/helper-module-transforms": "^7.16.0",
+ "@babel/helpers": "^7.16.0",
+ "@babel/parser": "^7.16.0",
+ "@babel/template": "^7.16.0",
+ "@babel/traverse": "^7.16.0",
+ "@babel/types": "^7.16.0",
+ "convert-source-map": "^1.7.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.1.2",
+ "semver": "^6.3.0",
+ "source-map": "^0.5.0"
+ }
+ },
+ "@babel/generator": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/generator/download/@babel/generator-7.16.0.tgz?cache=0&sync_timestamp=1635560663614&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fgenerator%2Fdownload%2F%40babel%2Fgenerator-7.16.0.tgz",
+ "integrity": "sha1-1A89HVB15i01ALzLZ/PaqKlSZbI=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0",
+ "jsesc": "^2.5.1",
+ "source-map": "^0.5.0"
+ }
+ },
+ "@babel/helper-annotate-as-pure": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-annotate-as-pure/download/@babel/helper-annotate-as-pure-7.16.0.tgz",
+ "integrity": "sha1-mh8OvNpT2aLQAQjEzqzmpdXx8I0=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-builder-binary-assignment-operator-visitor": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-builder-binary-assignment-operator-visitor/download/@babel/helper-builder-binary-assignment-operator-visitor-7.16.0.tgz",
+ "integrity": "sha1-8aaGuS2nlAIMJlguuFLprM0NeII=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-explode-assignable-expression": "^7.16.0",
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-compilation-targets": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-compilation-targets/download/@babel/helper-compilation-targets-7.16.0.tgz",
+ "integrity": "sha1-AdYVdi55bBeVLCnj7enW3gfSNag=",
+ "dev": true,
+ "requires": {
+ "@babel/compat-data": "^7.16.0",
+ "@babel/helper-validator-option": "^7.14.5",
+ "browserslist": "^4.16.6",
+ "semver": "^6.3.0"
+ }
+ },
+ "@babel/helper-create-class-features-plugin": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-create-class-features-plugin/download/@babel/helper-create-class-features-plugin-7.16.0.tgz",
+ "integrity": "sha1-CQ1NFms0KgOp/sN+9P1a65x8aks=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-annotate-as-pure": "^7.16.0",
+ "@babel/helper-function-name": "^7.16.0",
+ "@babel/helper-member-expression-to-functions": "^7.16.0",
+ "@babel/helper-optimise-call-expression": "^7.16.0",
+ "@babel/helper-replace-supers": "^7.16.0",
+ "@babel/helper-split-export-declaration": "^7.16.0"
+ }
+ },
+ "@babel/helper-create-regexp-features-plugin": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-create-regexp-features-plugin/download/@babel/helper-create-regexp-features-plugin-7.16.0.tgz",
+ "integrity": "sha1-BrI0jON/zMT14Y3NjXUFPyp8RP8=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-annotate-as-pure": "^7.16.0",
+ "regexpu-core": "^4.7.1"
+ }
+ },
+ "@babel/helper-define-polyfill-provider": {
+ "version": "0.2.4",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-define-polyfill-provider/download/@babel/helper-define-polyfill-provider-0.2.4.tgz",
+ "integrity": "sha1-iGeu150+psreQPgB77esXGaRaxA=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-compilation-targets": "^7.13.0",
+ "@babel/helper-module-imports": "^7.12.13",
+ "@babel/helper-plugin-utils": "^7.13.0",
+ "@babel/traverse": "^7.13.0",
+ "debug": "^4.1.1",
+ "lodash.debounce": "^4.0.8",
+ "resolve": "^1.14.2",
+ "semver": "^6.1.2"
+ }
+ },
+ "@babel/helper-explode-assignable-expression": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-explode-assignable-expression/download/@babel/helper-explode-assignable-expression-7.16.0.tgz",
+ "integrity": "sha1-dTAXM3oV9G+cCfZ0z/EM7pudd3g=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-function-name": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-function-name/download/@babel/helper-function-name-7.16.0.tgz?cache=0&sync_timestamp=1635560944177&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fhelper-function-name%2Fdownload%2F%40babel%2Fhelper-function-name-7.16.0.tgz",
+ "integrity": "sha1-t90Hl9ALv+5PB+nE6lsOMMi7FIE=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-get-function-arity": "^7.16.0",
+ "@babel/template": "^7.16.0",
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-get-function-arity": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.16.0.tgz?cache=0&sync_timestamp=1635560945700&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fhelper-get-function-arity%2Fdownload%2F%40babel%2Fhelper-get-function-arity-7.16.0.tgz",
+ "integrity": "sha1-AIjHSGspqctdlIsaHeRttm4InPo=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-hoist-variables": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-hoist-variables/download/@babel/helper-hoist-variables-7.16.0.tgz?cache=0&sync_timestamp=1635560943828&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fhelper-hoist-variables%2Fdownload%2F%40babel%2Fhelper-hoist-variables-7.16.0.tgz",
+ "integrity": "sha1-TJAjwvHe9+KP9G/B2802o5vqqBo=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-member-expression-to-functions": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-member-expression-to-functions/download/@babel/helper-member-expression-to-functions-7.16.0.tgz",
+ "integrity": "sha1-KShwQO/Rl8d2Nu91GI6B2ovM1aQ=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-module-imports": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/download/@babel/helper-module-imports-7.16.0.tgz?cache=0&sync_timestamp=1635560941965&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fhelper-module-imports%2Fdownload%2F%40babel%2Fhelper-module-imports-7.16.0.tgz",
+ "integrity": "sha1-kFOOYLZy7PG0SPX09UM9N+eaPsM=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-module-transforms": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-module-transforms/download/@babel/helper-module-transforms-7.16.0.tgz",
+ "integrity": "sha1-HIKo3UyzRXdQLr0pCWmbGUw+m7U=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-module-imports": "^7.16.0",
+ "@babel/helper-replace-supers": "^7.16.0",
+ "@babel/helper-simple-access": "^7.16.0",
+ "@babel/helper-split-export-declaration": "^7.16.0",
+ "@babel/helper-validator-identifier": "^7.15.7",
+ "@babel/template": "^7.16.0",
+ "@babel/traverse": "^7.16.0",
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-optimise-call-expression": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-optimise-call-expression/download/@babel/helper-optimise-call-expression-7.16.0.tgz",
+ "integrity": "sha1-zs2xRdcMVAlrFWT46fEM19GTszg=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-plugin-utils": {
+ "version": "7.14.5",
+ "resolved": "https://registry.nlark.com/@babel/helper-plugin-utils/download/@babel/helper-plugin-utils-7.14.5.tgz",
+ "integrity": "sha1-WsgizpfuxGdBq3ClF5ceRDpwxak=",
+ "dev": true
+ },
+ "@babel/helper-remap-async-to-generator": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-remap-async-to-generator/download/@babel/helper-remap-async-to-generator-7.16.0.tgz",
+ "integrity": "sha1-1ao7CG4Tpf4FI4/0DDpaDC2rPq0=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-annotate-as-pure": "^7.16.0",
+ "@babel/helper-wrap-function": "^7.16.0",
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-replace-supers": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-replace-supers/download/@babel/helper-replace-supers-7.16.0.tgz",
+ "integrity": "sha1-cwVejTz5vLqN21XK2T/tyGD2jxc=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-member-expression-to-functions": "^7.16.0",
+ "@babel/helper-optimise-call-expression": "^7.16.0",
+ "@babel/traverse": "^7.16.0",
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-simple-access": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-simple-access/download/@babel/helper-simple-access-7.16.0.tgz",
+ "integrity": "sha1-IdaidiDjg+N1NM9sELugGab5BRc=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-skip-transparent-expression-wrappers": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-skip-transparent-expression-wrappers/download/@babel/helper-skip-transparent-expression-wrappers-7.16.0.tgz",
+ "integrity": "sha1-DuM4gHAUfDrgUeSH7KPrsOLouwk=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-split-export-declaration": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.16.0.tgz?cache=0&sync_timestamp=1635560943488&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fhelper-split-export-declaration%2Fdownload%2F%40babel%2Fhelper-split-export-declaration-7.16.0.tgz",
+ "integrity": "sha1-KWcvQ2Y+k23zcKrrIr7ds7rsdDg=",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helper-validator-identifier": {
+ "version": "7.15.7",
+ "resolved": "https://registry.nlark.com/@babel/helper-validator-identifier/download/@babel/helper-validator-identifier-7.15.7.tgz?cache=0&sync_timestamp=1631920110587&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-validator-identifier%2Fdownload%2F%40babel%2Fhelper-validator-identifier-7.15.7.tgz",
+ "integrity": "sha1-Ig35k7/pBKSmsCq08zhaXr9uI4k=",
+ "dev": true
+ },
+ "@babel/helper-validator-option": {
+ "version": "7.14.5",
+ "resolved": "https://registry.nlark.com/@babel/helper-validator-option/download/@babel/helper-validator-option-7.14.5.tgz",
+ "integrity": "sha1-bnKh//GNXfy4eOHmLxoCHEty1aM=",
+ "dev": true
+ },
+ "@babel/helper-wrap-function": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helper-wrap-function/download/@babel/helper-wrap-function-7.16.0.tgz",
+ "integrity": "sha1-s88xivzndN/nW4Z2fNbWjzSC5Xw=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-function-name": "^7.16.0",
+ "@babel/template": "^7.16.0",
+ "@babel/traverse": "^7.16.0",
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/helpers": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/helpers/download/@babel/helpers-7.16.0.tgz?cache=0&sync_timestamp=1635560662388&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fhelpers%2Fdownload%2F%40babel%2Fhelpers-7.16.0.tgz",
+ "integrity": "sha1-h1UZyXnCMvQa371Do7A5jC44gYM=",
+ "dev": true,
+ "requires": {
+ "@babel/template": "^7.16.0",
+ "@babel/traverse": "^7.16.0",
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/highlight": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/highlight/download/@babel/highlight-7.16.0.tgz?cache=0&sync_timestamp=1635560940881&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fhighlight%2Fdownload%2F%40babel%2Fhighlight-7.16.0.tgz",
+ "integrity": "sha1-bOsysspLj182H7f9gh4/3fShclo=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-validator-identifier": "^7.15.7",
+ "chalk": "^2.0.0",
+ "js-tokens": "^4.0.0"
+ }
+ },
+ "@babel/parser": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/parser/download/@babel/parser-7.16.0.tgz",
+ "integrity": "sha1-zxR9etoKNlXnm/SwjuhG8AoAopU=",
+ "dev": true
+ },
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/download/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-bugfix-safari-id-destructuring-collision-in-function-expression%2Fdownload%2F%40babel%2Fplugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.0.tgz",
+ "integrity": "sha1-77fxRwQqyjTOgVagVZBqerqt6vA=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/download/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.0.tgz",
+ "integrity": "sha1-NYly6qsAb16wgmGDsMk8vK8T4eI=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0",
+ "@babel/plugin-proposal-optional-chaining": "^7.16.0"
+ }
+ },
+ "@babel/plugin-proposal-async-generator-functions": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-async-generator-functions/download/@babel/plugin-proposal-async-generator-functions-7.16.0.tgz",
+ "integrity": "sha1-EUJdR6YDZDUvZorV+8HWWWssXK8=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-remap-async-to-generator": "^7.16.0",
+ "@babel/plugin-syntax-async-generators": "^7.8.4"
+ }
+ },
+ "@babel/plugin-proposal-class-properties": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-class-properties/download/@babel/plugin-proposal-class-properties-7.16.0.tgz?cache=0&sync_timestamp=1635566517277&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-proposal-class-properties%2Fdownload%2F%40babel%2Fplugin-proposal-class-properties-7.16.0.tgz",
+ "integrity": "sha1-wClhgmfd68coD6KG4PjKKieKLRo=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-class-features-plugin": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-proposal-class-static-block": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-class-static-block/download/@babel/plugin-proposal-class-static-block-7.16.0.tgz",
+ "integrity": "sha1-UpaULFZNgUTIPuo0fQqooLiRcOc=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-class-features-plugin": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-class-static-block": "^7.14.5"
+ }
+ },
+ "@babel/plugin-proposal-decorators": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-decorators/download/@babel/plugin-proposal-decorators-7.16.0.tgz?cache=0&sync_timestamp=1635578334765&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-proposal-decorators%2Fdownload%2F%40babel%2Fplugin-proposal-decorators-7.16.0.tgz",
+ "integrity": "sha1-UV219okWEcDRdrY+3ghE+9m+eXs=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-class-features-plugin": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-decorators": "^7.16.0"
+ }
+ },
+ "@babel/plugin-proposal-dynamic-import": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-dynamic-import/download/@babel/plugin-proposal-dynamic-import-7.16.0.tgz",
+ "integrity": "sha1-eD7KYdUFJiAvmylglUU5d+iGWfE=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3"
+ }
+ },
+ "@babel/plugin-proposal-export-namespace-from": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-export-namespace-from/download/@babel/plugin-proposal-export-namespace-from-7.16.0.tgz",
+ "integrity": "sha1-nAHe5Auda4R7ZWqvSjl2pxdA8iI=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
+ }
+ },
+ "@babel/plugin-proposal-json-strings": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-json-strings/download/@babel/plugin-proposal-json-strings-7.16.0.tgz",
+ "integrity": "sha1-yuNale0dKn+inE3EFUC4SnLpqyU=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-json-strings": "^7.8.3"
+ }
+ },
+ "@babel/plugin-proposal-logical-assignment-operators": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-logical-assignment-operators/download/@babel/plugin-proposal-logical-assignment-operators-7.16.0.tgz",
+ "integrity": "sha1-pxG4zrP/3dPviNOknobb08x9s/0=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
+ }
+ },
+ "@babel/plugin-proposal-nullish-coalescing-operator": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-nullish-coalescing-operator/download/@babel/plugin-proposal-nullish-coalescing-operator-7.16.0.tgz",
+ "integrity": "sha1-ROHM4I/iQnSCz0RqkbtFFSjtBZY=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
+ }
+ },
+ "@babel/plugin-proposal-numeric-separator": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-numeric-separator/download/@babel/plugin-proposal-numeric-separator-7.16.0.tgz",
+ "integrity": "sha1-XUGOT7v4ubfQMSXTpScwQzo3NzQ=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4"
+ }
+ },
+ "@babel/plugin-proposal-object-rest-spread": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-object-rest-spread/download/@babel/plugin-proposal-object-rest-spread-7.16.0.tgz",
+ "integrity": "sha1-X7MvbZJNbmcSgQNipg4SomCYcuY=",
+ "dev": true,
+ "requires": {
+ "@babel/compat-data": "^7.16.0",
+ "@babel/helper-compilation-targets": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-transform-parameters": "^7.16.0"
+ }
+ },
+ "@babel/plugin-proposal-optional-catch-binding": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-optional-catch-binding/download/@babel/plugin-proposal-optional-catch-binding-7.16.0.tgz",
+ "integrity": "sha1-WRAIWBGrTCiwDW6/+kqwJ00eXxY=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
+ }
+ },
+ "@babel/plugin-proposal-optional-chaining": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-optional-chaining/download/@babel/plugin-proposal-optional-chaining-7.16.0.tgz",
+ "integrity": "sha1-VtvDlwglaDYI6e+1XqgsKi1sjcA=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0",
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3"
+ }
+ },
+ "@babel/plugin-proposal-private-methods": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-private-methods/download/@babel/plugin-proposal-private-methods-7.16.0.tgz",
+ "integrity": "sha1-tNr7nHF+QwHFd2sw0IDWODyJr/Y=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-class-features-plugin": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-proposal-private-property-in-object": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-private-property-in-object/download/@babel/plugin-proposal-private-property-in-object-7.16.0.tgz",
+ "integrity": "sha1-aek1ssXHnSSIES2IbwxOJ5D+528=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-annotate-as-pure": "^7.16.0",
+ "@babel/helper-create-class-features-plugin": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
+ }
+ },
+ "@babel/plugin-proposal-unicode-property-regex": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-unicode-property-regex/download/@babel/plugin-proposal-unicode-property-regex-7.16.0.tgz",
+ "integrity": "sha1-iQSC38XqN45C4Zpx5wlyjKvxhhI=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-regexp-features-plugin": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@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-class-properties": {
+ "version": "7.12.13",
+ "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-class-properties/download/@babel/plugin-syntax-class-properties-7.12.13.tgz",
+ "integrity": "sha1-tcmHJ0xKOoK4lxR5aTGmtTVErhA=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.12.13"
+ }
+ },
+ "@babel/plugin-syntax-class-static-block": {
+ "version": "7.14.5",
+ "resolved": "https://registry.nlark.com/@babel/plugin-syntax-class-static-block/download/@babel/plugin-syntax-class-static-block-7.14.5.tgz?cache=0&sync_timestamp=1623281106862&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fplugin-syntax-class-static-block%2Fdownload%2F%40babel%2Fplugin-syntax-class-static-block-7.14.5.tgz",
+ "integrity": "sha1-GV34mxRrS3izv4l/16JXyEZZ1AY=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-syntax-decorators": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-decorators/download/@babel/plugin-syntax-decorators-7.16.0.tgz",
+ "integrity": "sha1-642BHN0QYPasPACVa/P2M1UFoy8=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@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-export-namespace-from": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-export-namespace-from/download/@babel/plugin-syntax-export-namespace-from-7.8.3.tgz",
+ "integrity": "sha1-AolkqbqA28CUyRXEh618TnpmRlo=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.8.3"
+ }
+ },
+ "@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-jsx": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-jsx/download/@babel/plugin-syntax-jsx-7.16.0.tgz?cache=0&sync_timestamp=1635578642050&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-syntax-jsx%2Fdownload%2F%40babel%2Fplugin-syntax-jsx-7.16.0.tgz",
+ "integrity": "sha1-+WJDlDFzZamojII1jT+EcRVGmPE=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-syntax-logical-assignment-operators": {
+ "version": "7.10.4",
+ "resolved": "https://registry.nlark.com/@babel/plugin-syntax-logical-assignment-operators/download/@babel/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
+ "integrity": "sha1-ypHvRjA1MESLkGZSusLp/plB9pk=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ }
+ },
+ "@babel/plugin-syntax-nullish-coalescing-operator": {
+ "version": "7.8.3",
+ "resolved": "https://registry.nlark.com/@babel/plugin-syntax-nullish-coalescing-operator/download/@babel/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
+ "integrity": "sha1-Fn7XA2iIYIH3S1w2xlqIwDtm0ak=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ }
+ },
+ "@babel/plugin-syntax-numeric-separator": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-numeric-separator/download/@babel/plugin-syntax-numeric-separator-7.10.4.tgz",
+ "integrity": "sha1-ubBws+M1cM2f0Hun+pHA3Te5r5c=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.10.4"
+ }
+ },
+ "@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-optional-chaining": {
+ "version": "7.8.3",
+ "resolved": "https://registry.nlark.com/@babel/plugin-syntax-optional-chaining/download/@babel/plugin-syntax-optional-chaining-7.8.3.tgz",
+ "integrity": "sha1-T2nCq5UWfgGAzVM2YT+MV4j31Io=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ }
+ },
+ "@babel/plugin-syntax-private-property-in-object": {
+ "version": "7.14.5",
+ "resolved": "https://registry.nlark.com/@babel/plugin-syntax-private-property-in-object/download/@babel/plugin-syntax-private-property-in-object-7.14.5.tgz?cache=0&sync_timestamp=1623280462994&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fplugin-syntax-private-property-in-object%2Fdownload%2F%40babel%2Fplugin-syntax-private-property-in-object-7.14.5.tgz",
+ "integrity": "sha1-DcZnHsDqIrbpShEU+FeXDNOd4a0=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-syntax-top-level-await": {
+ "version": "7.14.5",
+ "resolved": "https://registry.nlark.com/@babel/plugin-syntax-top-level-await/download/@babel/plugin-syntax-top-level-await-7.14.5.tgz?cache=0&sync_timestamp=1623280464882&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fplugin-syntax-top-level-await%2Fdownload%2F%40babel%2Fplugin-syntax-top-level-await-7.14.5.tgz",
+ "integrity": "sha1-wc/a3DWmRiQAAfBhOCR7dBw02Uw=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-arrow-functions": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-arrow-functions/download/@babel/plugin-transform-arrow-functions-7.16.0.tgz",
+ "integrity": "sha1-lRcG+LRJyDTtB71HTAkkyUS5Wo4=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-async-to-generator": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-async-to-generator/download/@babel/plugin-transform-async-to-generator-7.16.0.tgz",
+ "integrity": "sha1-3xJjf5Yw3foO+dehG8QU1inThgQ=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-module-imports": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-remap-async-to-generator": "^7.16.0"
+ }
+ },
+ "@babel/plugin-transform-block-scoped-functions": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-block-scoped-functions/download/@babel/plugin-transform-block-scoped-functions-7.16.0.tgz?cache=0&sync_timestamp=1635567466710&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-block-scoped-functions%2Fdownload%2F%40babel%2Fplugin-transform-block-scoped-functions-7.16.0.tgz",
+ "integrity": "sha1-xhh2MjOtAoR4BavKxMNFzp3nFF0=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-block-scoping": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-block-scoping/download/@babel/plugin-transform-block-scoping-7.16.0.tgz?cache=0&sync_timestamp=1635567471555&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-block-scoping%2Fdownload%2F%40babel%2Fplugin-transform-block-scoping-7.16.0.tgz",
+ "integrity": "sha1-vPQz+0gv6MPTtOimaxxKjnfTfBY=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-classes": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-classes/download/@babel/plugin-transform-classes-7.16.0.tgz?cache=0&sync_timestamp=1635567479103&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-classes%2Fdownload%2F%40babel%2Fplugin-transform-classes-7.16.0.tgz",
+ "integrity": "sha1-VM9f8LIkLGVz11PNS/xwd6iygvU=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-annotate-as-pure": "^7.16.0",
+ "@babel/helper-function-name": "^7.16.0",
+ "@babel/helper-optimise-call-expression": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-replace-supers": "^7.16.0",
+ "@babel/helper-split-export-declaration": "^7.16.0",
+ "globals": "^11.1.0"
+ }
+ },
+ "@babel/plugin-transform-computed-properties": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-computed-properties/download/@babel/plugin-transform-computed-properties-7.16.0.tgz?cache=0&sync_timestamp=1635567483688&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-computed-properties%2Fdownload%2F%40babel%2Fplugin-transform-computed-properties-7.16.0.tgz",
+ "integrity": "sha1-4MOFUH0h4bCwdtZr7W1SMbhRELc=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-destructuring": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-destructuring/download/@babel/plugin-transform-destructuring-7.16.0.tgz?cache=0&sync_timestamp=1635566910149&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-destructuring%2Fdownload%2F%40babel%2Fplugin-transform-destructuring-7.16.0.tgz",
+ "integrity": "sha1-rT1+dFhK1epOrbHmZCFGxZDe4zw=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-dotall-regex": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-dotall-regex/download/@babel/plugin-transform-dotall-regex-7.16.0.tgz?cache=0&sync_timestamp=1635566910899&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-dotall-regex%2Fdownload%2F%40babel%2Fplugin-transform-dotall-regex-7.16.0.tgz",
+ "integrity": "sha1-ULqwDBCEthYtClioGAMc9XeY4G8=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-regexp-features-plugin": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-duplicate-keys": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-duplicate-keys/download/@babel/plugin-transform-duplicate-keys-7.16.0.tgz?cache=0&sync_timestamp=1635566910658&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-duplicate-keys%2Fdownload%2F%40babel%2Fplugin-transform-duplicate-keys-7.16.0.tgz",
+ "integrity": "sha1-i8LiGBPj6J5eW/O2CqX8RYV1oXY=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-exponentiation-operator": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-exponentiation-operator/download/@babel/plugin-transform-exponentiation-operator-7.16.0.tgz",
+ "integrity": "sha1-oYDNKIHjUzzvnTkB5I2tD77/S+Q=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-for-of": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-for-of/download/@babel/plugin-transform-for-of-7.16.0.tgz?cache=0&sync_timestamp=1635566911464&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-for-of%2Fdownload%2F%40babel%2Fplugin-transform-for-of-7.16.0.tgz",
+ "integrity": "sha1-96us7RVSYOJGE1m7x8ckispea9I=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-function-name": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-function-name/download/@babel/plugin-transform-function-name-7.16.0.tgz",
+ "integrity": "sha1-AuNpnChMYmIjZZn3UQZcXV8fQA4=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-function-name": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-literals": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-literals/download/@babel/plugin-transform-literals-7.16.0.tgz",
+ "integrity": "sha1-eXEeZw/86zG9KYIp1Q82IfeYDKw=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-member-expression-literals": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-member-expression-literals/download/@babel/plugin-transform-member-expression-literals-7.16.0.tgz?cache=0&sync_timestamp=1635566912290&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-member-expression-literals%2Fdownload%2F%40babel%2Fplugin-transform-member-expression-literals-7.16.0.tgz",
+ "integrity": "sha1-UlG0zOAer4MUQD0hrtsmnXn15ks=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-modules-amd": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-amd/download/@babel/plugin-transform-modules-amd-7.16.0.tgz?cache=0&sync_timestamp=1635566912764&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-modules-amd%2Fdownload%2F%40babel%2Fplugin-transform-modules-amd-7.16.0.tgz",
+ "integrity": "sha1-CavUHhjc9P1HnFmMHO97056xM34=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-module-transforms": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "babel-plugin-dynamic-import-node": "^2.3.3"
+ }
+ },
+ "@babel/plugin-transform-modules-commonjs": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-commonjs/download/@babel/plugin-transform-modules-commonjs-7.16.0.tgz",
+ "integrity": "sha1-rdWOY4yN3Eh1vZqey1xZRhP2ySI=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-module-transforms": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-simple-access": "^7.16.0",
+ "babel-plugin-dynamic-import-node": "^2.3.3"
+ }
+ },
+ "@babel/plugin-transform-modules-systemjs": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-systemjs/download/@babel/plugin-transform-modules-systemjs-7.16.0.tgz?cache=0&sync_timestamp=1635566913014&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-modules-systemjs%2Fdownload%2F%40babel%2Fplugin-transform-modules-systemjs-7.16.0.tgz",
+ "integrity": "sha1-qSzyQK/rYF9MoWZwRTAkQl5CHqQ=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-hoist-variables": "^7.16.0",
+ "@babel/helper-module-transforms": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-validator-identifier": "^7.15.7",
+ "babel-plugin-dynamic-import-node": "^2.3.3"
+ }
+ },
+ "@babel/plugin-transform-modules-umd": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-umd/download/@babel/plugin-transform-modules-umd-7.16.0.tgz?cache=0&sync_timestamp=1635566913244&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-modules-umd%2Fdownload%2F%40babel%2Fplugin-transform-modules-umd-7.16.0.tgz",
+ "integrity": "sha1-GV8mwq1tajkbcIgO/84YzmJeBqc=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-module-transforms": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-named-capturing-groups-regex": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-named-capturing-groups-regex/download/@babel/plugin-transform-named-capturing-groups-regex-7.16.0.tgz",
+ "integrity": "sha1-09thzF1bl5hlWZZ81eqD5cMglso=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-regexp-features-plugin": "^7.16.0"
+ }
+ },
+ "@babel/plugin-transform-new-target": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-new-target/download/@babel/plugin-transform-new-target-7.16.0.tgz",
+ "integrity": "sha1-r4I6tXb3UiFaSZN3eaQcplglqzU=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-object-super": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-object-super/download/@babel/plugin-transform-object-super-7.16.0.tgz?cache=0&sync_timestamp=1635566913937&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-object-super%2Fdownload%2F%40babel%2Fplugin-transform-object-super-7.16.0.tgz",
+ "integrity": "sha1-+yDVgG3GSRoGKWrBTqjo1v7dpys=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-replace-supers": "^7.16.0"
+ }
+ },
+ "@babel/plugin-transform-parameters": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-parameters/download/@babel/plugin-transform-parameters-7.16.0.tgz?cache=0&sync_timestamp=1635566914182&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-parameters%2Fdownload%2F%40babel%2Fplugin-transform-parameters-7.16.0.tgz",
+ "integrity": "sha1-G1B2X8QhwimBncTHzbiRFmCzwtc=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-property-literals": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-property-literals/download/@babel/plugin-transform-property-literals-7.16.0.tgz?cache=0&sync_timestamp=1635566914424&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-property-literals%2Fdownload%2F%40babel%2Fplugin-transform-property-literals-7.16.0.tgz",
+ "integrity": "sha1-qVxVIYmpagAFn2d23E4A42kMeNE=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-regenerator": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-regenerator/download/@babel/plugin-transform-regenerator-7.16.0.tgz?cache=0&sync_timestamp=1635566914723&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-regenerator%2Fdownload%2F%40babel%2Fplugin-transform-regenerator-7.16.0.tgz",
+ "integrity": "sha1-6u5CLISwIy0Drqfbmcl97q9hJaQ=",
+ "dev": true,
+ "requires": {
+ "regenerator-transform": "^0.14.2"
+ }
+ },
+ "@babel/plugin-transform-reserved-words": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-reserved-words/download/@babel/plugin-transform-reserved-words-7.16.0.tgz",
+ "integrity": "sha1-//S53LGeEmGTlL2hctFPLQTAN5w=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-runtime": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-runtime/download/@babel/plugin-transform-runtime-7.16.0.tgz?cache=0&sync_timestamp=1635578304501&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-runtime%2Fdownload%2F%40babel%2Fplugin-transform-runtime-7.16.0.tgz",
+ "integrity": "sha1-P+DaNsLwg0vvfE0+fystsO4MiQk=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-module-imports": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "babel-plugin-polyfill-corejs2": "^0.2.3",
+ "babel-plugin-polyfill-corejs3": "^0.3.0",
+ "babel-plugin-polyfill-regenerator": "^0.2.3",
+ "semver": "^6.3.0"
+ }
+ },
+ "@babel/plugin-transform-shorthand-properties": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-shorthand-properties/download/@babel/plugin-transform-shorthand-properties-7.16.0.tgz",
+ "integrity": "sha1-CQNy4xQffMMk7XCz2vU3nfL6OE0=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-spread": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-spread/download/@babel/plugin-transform-spread-7.16.0.tgz?cache=0&sync_timestamp=1635566916819&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-spread%2Fdownload%2F%40babel%2Fplugin-transform-spread-7.16.0.tgz",
+ "integrity": "sha1-0hygmbvVOrMHqGIeAZp70PQM3Ps=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0"
+ }
+ },
+ "@babel/plugin-transform-sticky-regex": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-sticky-regex/download/@babel/plugin-transform-sticky-regex-7.16.0.tgz",
+ "integrity": "sha1-w16jGgLYa+SF9qpRAYS2d6kXOP0=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-template-literals": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-template-literals/download/@babel/plugin-transform-template-literals-7.16.0.tgz?cache=0&sync_timestamp=1635566917280&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-template-literals%2Fdownload%2F%40babel%2Fplugin-transform-template-literals-7.16.0.tgz",
+ "integrity": "sha1-qOztOo57ji1A7E7EVIpFkSYw0wI=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-typeof-symbol": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-typeof-symbol/download/@babel/plugin-transform-typeof-symbol-7.16.0.tgz?cache=0&sync_timestamp=1635566920452&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-typeof-symbol%2Fdownload%2F%40babel%2Fplugin-transform-typeof-symbol-7.16.0.tgz",
+ "integrity": "sha1-ixmiRMb4ydZo3Kam91Stbq0RKPI=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-unicode-escapes": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-escapes/download/@babel/plugin-transform-unicode-escapes-7.16.0.tgz?cache=0&sync_timestamp=1635567014397&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-unicode-escapes%2Fdownload%2F%40babel%2Fplugin-transform-unicode-escapes-7.16.0.tgz",
+ "integrity": "sha1-GjVAZLTEVmOjIzT0b6DPYQC1sfM=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/plugin-transform-unicode-regex": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-regex/download/@babel/plugin-transform-unicode-regex-7.16.0.tgz?cache=0&sync_timestamp=1635567014565&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fplugin-transform-unicode-regex%2Fdownload%2F%40babel%2Fplugin-transform-unicode-regex-7.16.0.tgz",
+ "integrity": "sha1-KTuAlQF3yMha7eh87ygCWfuZVAI=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-regexp-features-plugin": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
+ },
+ "@babel/preset-env": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/preset-env/download/@babel/preset-env-7.16.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fpreset-env%2Fdownload%2F%40babel%2Fpreset-env-7.16.0.tgz",
+ "integrity": "sha1-lyKDk9IXVg1qHGxW8K250SvKZ/U=",
+ "dev": true,
+ "requires": {
+ "@babel/compat-data": "^7.16.0",
+ "@babel/helper-compilation-targets": "^7.16.0",
+ "@babel/helper-plugin-utils": "^7.14.5",
+ "@babel/helper-validator-option": "^7.14.5",
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.16.0",
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.16.0",
+ "@babel/plugin-proposal-async-generator-functions": "^7.16.0",
+ "@babel/plugin-proposal-class-properties": "^7.16.0",
+ "@babel/plugin-proposal-class-static-block": "^7.16.0",
+ "@babel/plugin-proposal-dynamic-import": "^7.16.0",
+ "@babel/plugin-proposal-export-namespace-from": "^7.16.0",
+ "@babel/plugin-proposal-json-strings": "^7.16.0",
+ "@babel/plugin-proposal-logical-assignment-operators": "^7.16.0",
+ "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.0",
+ "@babel/plugin-proposal-numeric-separator": "^7.16.0",
+ "@babel/plugin-proposal-object-rest-spread": "^7.16.0",
+ "@babel/plugin-proposal-optional-catch-binding": "^7.16.0",
+ "@babel/plugin-proposal-optional-chaining": "^7.16.0",
+ "@babel/plugin-proposal-private-methods": "^7.16.0",
+ "@babel/plugin-proposal-private-property-in-object": "^7.16.0",
+ "@babel/plugin-proposal-unicode-property-regex": "^7.16.0",
+ "@babel/plugin-syntax-async-generators": "^7.8.4",
+ "@babel/plugin-syntax-class-properties": "^7.12.13",
+ "@babel/plugin-syntax-class-static-block": "^7.14.5",
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3",
+ "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
+ "@babel/plugin-syntax-json-strings": "^7.8.3",
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3",
+ "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
+ "@babel/plugin-syntax-top-level-await": "^7.14.5",
+ "@babel/plugin-transform-arrow-functions": "^7.16.0",
+ "@babel/plugin-transform-async-to-generator": "^7.16.0",
+ "@babel/plugin-transform-block-scoped-functions": "^7.16.0",
+ "@babel/plugin-transform-block-scoping": "^7.16.0",
+ "@babel/plugin-transform-classes": "^7.16.0",
+ "@babel/plugin-transform-computed-properties": "^7.16.0",
+ "@babel/plugin-transform-destructuring": "^7.16.0",
+ "@babel/plugin-transform-dotall-regex": "^7.16.0",
+ "@babel/plugin-transform-duplicate-keys": "^7.16.0",
+ "@babel/plugin-transform-exponentiation-operator": "^7.16.0",
+ "@babel/plugin-transform-for-of": "^7.16.0",
+ "@babel/plugin-transform-function-name": "^7.16.0",
+ "@babel/plugin-transform-literals": "^7.16.0",
+ "@babel/plugin-transform-member-expression-literals": "^7.16.0",
+ "@babel/plugin-transform-modules-amd": "^7.16.0",
+ "@babel/plugin-transform-modules-commonjs": "^7.16.0",
+ "@babel/plugin-transform-modules-systemjs": "^7.16.0",
+ "@babel/plugin-transform-modules-umd": "^7.16.0",
+ "@babel/plugin-transform-named-capturing-groups-regex": "^7.16.0",
+ "@babel/plugin-transform-new-target": "^7.16.0",
+ "@babel/plugin-transform-object-super": "^7.16.0",
+ "@babel/plugin-transform-parameters": "^7.16.0",
+ "@babel/plugin-transform-property-literals": "^7.16.0",
+ "@babel/plugin-transform-regenerator": "^7.16.0",
+ "@babel/plugin-transform-reserved-words": "^7.16.0",
+ "@babel/plugin-transform-shorthand-properties": "^7.16.0",
+ "@babel/plugin-transform-spread": "^7.16.0",
+ "@babel/plugin-transform-sticky-regex": "^7.16.0",
+ "@babel/plugin-transform-template-literals": "^7.16.0",
+ "@babel/plugin-transform-typeof-symbol": "^7.16.0",
+ "@babel/plugin-transform-unicode-escapes": "^7.16.0",
+ "@babel/plugin-transform-unicode-regex": "^7.16.0",
+ "@babel/preset-modules": "^0.1.5",
+ "@babel/types": "^7.16.0",
+ "babel-plugin-polyfill-corejs2": "^0.2.3",
+ "babel-plugin-polyfill-corejs3": "^0.3.0",
+ "babel-plugin-polyfill-regenerator": "^0.2.3",
+ "core-js-compat": "^3.19.0",
+ "semver": "^6.3.0"
+ }
+ },
+ "@babel/preset-modules": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmmirror.com/@babel/preset-modules/download/@babel/preset-modules-0.1.5.tgz",
+ "integrity": "sha1-75Odbn8miCfhhBY43G/5VRXhFdk=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.0.0",
+ "@babel/plugin-proposal-unicode-property-regex": "^7.4.4",
+ "@babel/plugin-transform-dotall-regex": "^7.4.4",
+ "@babel/types": "^7.4.4",
+ "esutils": "^2.0.2"
+ }
+ },
+ "@babel/runtime": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/runtime/download/@babel/runtime-7.16.0.tgz",
+ "integrity": "sha1-4nuXfy4giLokdIv5m14d7OZOTws=",
+ "dev": true,
+ "requires": {
+ "regenerator-runtime": "^0.13.4"
+ }
+ },
+ "@babel/template": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/template/download/@babel/template-7.16.0.tgz",
+ "integrity": "sha1-0Wo16/TNdOICCDNW+rId2JNj3dY=",
+ "dev": true,
+ "requires": {
+ "@babel/code-frame": "^7.16.0",
+ "@babel/parser": "^7.16.0",
+ "@babel/types": "^7.16.0"
+ }
+ },
+ "@babel/traverse": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/traverse/download/@babel/traverse-7.16.0.tgz?cache=0&sync_timestamp=1635560907867&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Ftraverse%2Fdownload%2F%40babel%2Ftraverse-7.16.0.tgz",
+ "integrity": "sha1-ll32xr/AqVjB5zkoTTyfpKbjxFs=",
+ "dev": true,
+ "requires": {
+ "@babel/code-frame": "^7.16.0",
+ "@babel/generator": "^7.16.0",
+ "@babel/helper-function-name": "^7.16.0",
+ "@babel/helper-hoist-variables": "^7.16.0",
+ "@babel/helper-split-export-declaration": "^7.16.0",
+ "@babel/parser": "^7.16.0",
+ "@babel/types": "^7.16.0",
+ "debug": "^4.1.0",
+ "globals": "^11.1.0"
+ }
+ },
+ "@babel/types": {
+ "version": "7.16.0",
+ "resolved": "https://registry.npmmirror.com/@babel/types/download/@babel/types-7.16.0.tgz?cache=0&sync_timestamp=1635560908248&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Ftypes%2Fdownload%2F%40babel%2Ftypes-7.16.0.tgz",
+ "integrity": "sha1-2zsxOAT5aq3Qt3bEgj4SetZyibo=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-validator-identifier": "^7.15.7",
+ "to-fast-properties": "^2.0.0"
+ }
+ },
+ "@hapi/address": {
+ "version": "2.1.4",
+ "resolved": "https://registry.nlark.com/@hapi/address/download/@hapi/address-2.1.4.tgz",
+ "integrity": "sha1-XWftQ/P9QaadS5/3tW58DR0KgeU=",
+ "dev": true
+ },
+ "@hapi/bourne": {
+ "version": "1.3.2",
+ "resolved": "https://registry.nlark.com/@hapi/bourne/download/@hapi/bourne-1.3.2.tgz",
+ "integrity": "sha1-CnCVreoGckPOMoPhtWuKj0U7JCo=",
+ "dev": true
+ },
+ "@hapi/hoek": {
+ "version": "8.5.1",
+ "resolved": "https://registry.npmmirror.com/@hapi/hoek/download/@hapi/hoek-8.5.1.tgz",
+ "integrity": "sha1-/elgZMpEbeyMVajC8TCVewcMbgY=",
+ "dev": true
+ },
+ "@hapi/joi": {
+ "version": "15.1.1",
+ "resolved": "https://registry.nlark.com/@hapi/joi/download/@hapi/joi-15.1.1.tgz",
+ "integrity": "sha1-xnW4pxKW8Cgz+NbSQ7NMV7jOGdc=",
+ "dev": true,
+ "requires": {
+ "@hapi/address": "2.x.x",
+ "@hapi/bourne": "1.x.x",
+ "@hapi/hoek": "8.x.x",
+ "@hapi/topo": "3.x.x"
+ }
+ },
+ "@hapi/topo": {
+ "version": "3.1.6",
+ "resolved": "https://registry.nlark.com/@hapi/topo/download/@hapi/topo-3.1.6.tgz",
+ "integrity": "sha1-aNk1+j6uf91asNf5U/MgXYsr/Ck=",
+ "dev": true,
+ "requires": {
+ "@hapi/hoek": "^8.3.0"
+ }
+ },
+ "@intervolga/optimize-cssnano-plugin": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npm.taobao.org/@intervolga/optimize-cssnano-plugin/download/@intervolga/optimize-cssnano-plugin-1.0.6.tgz",
+ "integrity": "sha1-vnx4RhKLiPapsdEmGgrQbrXA/fg=",
+ "dev": true,
+ "requires": {
+ "cssnano": "^4.0.0",
+ "cssnano-preset-default": "^4.0.0",
+ "postcss": "^7.0.0"
+ }
+ },
+ "@mrmlnc/readdir-enhanced": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npm.taobao.org/@mrmlnc/readdir-enhanced/download/@mrmlnc/readdir-enhanced-2.2.1.tgz",
+ "integrity": "sha1-UkryQNGjYFJ7cwR17PoTRKpUDd4=",
+ "dev": true,
+ "requires": {
+ "call-me-maybe": "^1.0.1",
+ "glob-to-regexp": "^0.3.0"
+ }
+ },
+ "@nodelib/fs.stat": {
+ "version": "1.1.3",
+ "resolved": "https://registry.nlark.com/@nodelib/fs.stat/download/@nodelib/fs.stat-1.1.3.tgz?cache=0&sync_timestamp=1622792655362&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40nodelib%2Ffs.stat%2Fdownload%2F%40nodelib%2Ffs.stat-1.1.3.tgz",
+ "integrity": "sha1-K1o6s/kYzKSKjHVMCBaOPwPrphs=",
+ "dev": true
+ },
+ "@soda/friendly-errors-webpack-plugin": {
+ "version": "1.8.0",
+ "resolved": "https://registry.nlark.com/@soda/friendly-errors-webpack-plugin/download/@soda/friendly-errors-webpack-plugin-1.8.0.tgz",
+ "integrity": "sha1-hHUdgqkwGdXJLAzw5FrFkIfNIkA=",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.4.2",
+ "error-stack-parser": "^2.0.2",
+ "string-width": "^2.0.0",
+ "strip-ansi": "^5"
+ },
+ "dependencies": {
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-5.2.0.tgz",
+ "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.1.0"
+ }
+ }
+ }
+ },
+ "@soda/get-current-script": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/@soda/get-current-script/download/@soda/get-current-script-1.0.2.tgz",
+ "integrity": "sha1-pTUV2yXYA4N0OBtzryC7Ty5QjYc=",
+ "dev": true
+ },
+ "@types/body-parser": {
+ "version": "1.19.1",
+ "resolved": "https://registry.nlark.com/@types/body-parser/download/@types/body-parser-1.19.1.tgz?cache=0&sync_timestamp=1629706773395&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fbody-parser%2Fdownload%2F%40types%2Fbody-parser-1.19.1.tgz",
+ "integrity": "sha1-DAF0xCp9AXuBgwPUtdlpywt1kpw=",
+ "dev": true,
+ "requires": {
+ "@types/connect": "*",
+ "@types/node": "*"
+ }
+ },
+ "@types/connect": {
+ "version": "3.4.35",
+ "resolved": "https://registry.nlark.com/@types/connect/download/@types/connect-3.4.35.tgz?cache=0&sync_timestamp=1629707095675&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fconnect%2Fdownload%2F%40types%2Fconnect-3.4.35.tgz",
+ "integrity": "sha1-X89q5EXkAh0fwiGaSHPMc6O7KtE=",
+ "dev": true,
+ "requires": {
+ "@types/node": "*"
+ }
+ },
+ "@types/connect-history-api-fallback": {
+ "version": "1.3.5",
+ "resolved": "https://registry.nlark.com/@types/connect-history-api-fallback/download/@types/connect-history-api-fallback-1.3.5.tgz?cache=0&sync_timestamp=1629707083783&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fconnect-history-api-fallback%2Fdownload%2F%40types%2Fconnect-history-api-fallback-1.3.5.tgz",
+ "integrity": "sha1-0feooJ0O1aV67lrpwYq5uAMgXa4=",
+ "dev": true,
+ "requires": {
+ "@types/express-serve-static-core": "*",
+ "@types/node": "*"
+ }
+ },
+ "@types/express": {
+ "version": "4.17.13",
+ "resolved": "https://registry.nlark.com/@types/express/download/@types/express-4.17.13.tgz?cache=0&sync_timestamp=1629707798454&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fexpress%2Fdownload%2F%40types%2Fexpress-4.17.13.tgz",
+ "integrity": "sha1-p24plXKJmbq1GjP6vOHXBaNwkDQ=",
+ "dev": true,
+ "requires": {
+ "@types/body-parser": "*",
+ "@types/express-serve-static-core": "^4.17.18",
+ "@types/qs": "*",
+ "@types/serve-static": "*"
+ }
+ },
+ "@types/express-serve-static-core": {
+ "version": "4.17.24",
+ "resolved": "https://registry.nlark.com/@types/express-serve-static-core/download/@types/express-serve-static-core-4.17.24.tgz?cache=0&sync_timestamp=1629707798663&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fexpress-serve-static-core%2Fdownload%2F%40types%2Fexpress-serve-static-core-4.17.24.tgz",
+ "integrity": "sha1-6kH5O/fg1ZzVp2ZlBo7WqraBXAc=",
+ "dev": true,
+ "requires": {
+ "@types/node": "*",
+ "@types/qs": "*",
+ "@types/range-parser": "*"
+ }
+ },
+ "@types/glob": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmmirror.com/@types/glob/download/@types/glob-7.2.0.tgz",
+ "integrity": "sha1-vBtb86qS8lvV3TnzXFc2G9zlsus=",
+ "dev": true,
+ "requires": {
+ "@types/minimatch": "*",
+ "@types/node": "*"
+ }
+ },
+ "@types/http-proxy": {
+ "version": "1.17.7",
+ "resolved": "https://registry.nlark.com/@types/http-proxy/download/@types/http-proxy-1.17.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fhttp-proxy%2Fdownload%2F%40types%2Fhttp-proxy-1.17.7.tgz",
+ "integrity": "sha1-MOqFzCyGg2g1Kjfw0NNYHiSDTG8=",
+ "dev": true,
+ "requires": {
+ "@types/node": "*"
+ }
+ },
+ "@types/json-schema": {
+ "version": "7.0.9",
+ "resolved": "https://registry.nlark.com/@types/json-schema/download/@types/json-schema-7.0.9.tgz?cache=0&sync_timestamp=1629708189890&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fjson-schema%2Fdownload%2F%40types%2Fjson-schema-7.0.9.tgz",
+ "integrity": "sha1-l+3JA36gw4WFMgsolk3eOznkZg0=",
+ "dev": true
+ },
+ "@types/mime": {
+ "version": "1.3.2",
+ "resolved": "https://registry.nlark.com/@types/mime/download/@types/mime-1.3.2.tgz?cache=0&sync_timestamp=1629708374856&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fmime%2Fdownload%2F%40types%2Fmime-1.3.2.tgz",
+ "integrity": "sha1-k+Jb+e51/g/YC1lLxP6w6GIRG1o=",
+ "dev": true
+ },
+ "@types/minimatch": {
+ "version": "3.0.5",
+ "resolved": "https://registry.nlark.com/@types/minimatch/download/@types/minimatch-3.0.5.tgz?cache=0&sync_timestamp=1629708301760&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fminimatch%2Fdownload%2F%40types%2Fminimatch-3.0.5.tgz",
+ "integrity": "sha1-EAHMXmo3BLg8I2An538vWOoBD0A=",
+ "dev": true
+ },
+ "@types/minimist": {
+ "version": "1.2.2",
+ "resolved": "https://registry.nlark.com/@types/minimist/download/@types/minimist-1.2.2.tgz?cache=0&sync_timestamp=1629708337116&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fminimist%2Fdownload%2F%40types%2Fminimist-1.2.2.tgz",
+ "integrity": "sha1-7nceK6Sz3Fs3KTXVSf2WF780W4w=",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "16.11.6",
+ "resolved": "https://registry.npmmirror.com/@types/node/download/@types/node-16.11.6.tgz",
+ "integrity": "sha1-a+96KgrWhM9ukPz+Mc7KvZzgo64=",
+ "dev": true
+ },
+ "@types/normalize-package-data": {
+ "version": "2.4.1",
+ "resolved": "https://registry.nlark.com/@types/normalize-package-data/download/@types/normalize-package-data-2.4.1.tgz?cache=0&sync_timestamp=1629708548426&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fnormalize-package-data%2Fdownload%2F%40types%2Fnormalize-package-data-2.4.1.tgz",
+ "integrity": "sha1-0zV0eaD9/dWQf+Z+F+CoXJBuEwE=",
+ "dev": true
+ },
+ "@types/q": {
+ "version": "1.5.5",
+ "resolved": "https://registry.nlark.com/@types/q/download/@types/q-1.5.5.tgz",
+ "integrity": "sha1-daKo59irSyMEFFBdkjNdHctTpt8=",
+ "dev": true
+ },
+ "@types/qs": {
+ "version": "6.9.7",
+ "resolved": "https://registry.nlark.com/@types/qs/download/@types/qs-6.9.7.tgz",
+ "integrity": "sha1-Y7t9Bn2xB8weRXwwO8JdUR/r9ss=",
+ "dev": true
+ },
+ "@types/range-parser": {
+ "version": "1.2.4",
+ "resolved": "https://registry.nlark.com/@types/range-parser/download/@types/range-parser-1.2.4.tgz",
+ "integrity": "sha1-zWZ7z90CUhOq+3ylkVqTJZCs3Nw=",
+ "dev": true
+ },
+ "@types/serve-static": {
+ "version": "1.13.10",
+ "resolved": "https://registry.nlark.com/@types/serve-static/download/@types/serve-static-1.13.10.tgz",
+ "integrity": "sha1-9eDOh5fS18xevtpIpSyWxPpHqNk=",
+ "dev": true,
+ "requires": {
+ "@types/mime": "^1",
+ "@types/node": "*"
+ }
+ },
+ "@types/source-list-map": {
+ "version": "0.1.2",
+ "resolved": "https://registry.nlark.com/@types/source-list-map/download/@types/source-list-map-0.1.2.tgz",
+ "integrity": "sha1-AHiDYGP/rxdBI0m7o2QIfgrALsk=",
+ "dev": true
+ },
+ "@types/tapable": {
+ "version": "1.0.8",
+ "resolved": "https://registry.nlark.com/@types/tapable/download/@types/tapable-1.0.8.tgz?cache=0&sync_timestamp=1629709376833&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Ftapable%2Fdownload%2F%40types%2Ftapable-1.0.8.tgz",
+ "integrity": "sha1-uUpDkchWZse3Mpn9OtedT6pDUxA=",
+ "dev": true
+ },
+ "@types/uglify-js": {
+ "version": "3.13.1",
+ "resolved": "https://registry.nlark.com/@types/uglify-js/download/@types/uglify-js-3.13.1.tgz?cache=0&sync_timestamp=1629709561839&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fuglify-js%2Fdownload%2F%40types%2Fuglify-js-3.13.1.tgz",
+ "integrity": "sha1-XoienoHpQkXHW2RQYA4cXqKHiuo=",
+ "dev": true,
+ "requires": {
+ "source-map": "^0.6.1"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "@types/webpack": {
+ "version": "4.41.31",
+ "resolved": "https://registry.nlark.com/@types/webpack/download/@types/webpack-4.41.31.tgz",
+ "integrity": "sha1-w18lKjVZ3fnIXA2LC0IBkCXlgao=",
+ "dev": true,
+ "requires": {
+ "@types/node": "*",
+ "@types/tapable": "^1",
+ "@types/uglify-js": "*",
+ "@types/webpack-sources": "*",
+ "anymatch": "^3.0.0",
+ "source-map": "^0.6.0"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "@types/webpack-dev-server": {
+ "version": "3.11.6",
+ "resolved": "https://registry.npmmirror.com/@types/webpack-dev-server/download/@types/webpack-dev-server-3.11.6.tgz?cache=0&sync_timestamp=1633721769803&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40types%2Fwebpack-dev-server%2Fdownload%2F%40types%2Fwebpack-dev-server-3.11.6.tgz",
+ "integrity": "sha1-2IiM/S8GMCA+E9PteDOk0RuKNNw=",
+ "dev": true,
+ "requires": {
+ "@types/connect-history-api-fallback": "*",
+ "@types/express": "*",
+ "@types/serve-static": "*",
+ "@types/webpack": "^4",
+ "http-proxy-middleware": "^1.0.0"
+ }
+ },
+ "@types/webpack-sources": {
+ "version": "3.2.0",
+ "resolved": "https://registry.nlark.com/@types/webpack-sources/download/@types/webpack-sources-3.2.0.tgz?cache=0&sync_timestamp=1629709718286&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fwebpack-sources%2Fdownload%2F%40types%2Fwebpack-sources-3.2.0.tgz",
+ "integrity": "sha1-FtdZuglsKJA0smVT0t8b9FJI04s=",
+ "dev": true,
+ "requires": {
+ "@types/node": "*",
+ "@types/source-list-map": "*",
+ "source-map": "^0.7.3"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.7.3",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.7.3.tgz",
+ "integrity": "sha1-UwL4FpAxc1ImVECS5kmB91F1A4M=",
+ "dev": true
+ }
+ }
+ },
+ "@vue/babel-helper-vue-jsx-merge-props": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npm.taobao.org/@vue/babel-helper-vue-jsx-merge-props/download/@vue/babel-helper-vue-jsx-merge-props-1.2.1.tgz?cache=0&sync_timestamp=1602851122331&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-helper-vue-jsx-merge-props%2Fdownload%2F%40vue%2Fbabel-helper-vue-jsx-merge-props-1.2.1.tgz",
+ "integrity": "sha1-MWJKelBfsU2h1YAjclpMXycOaoE=",
+ "dev": true
+ },
+ "@vue/babel-helper-vue-transform-on": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/@vue/babel-helper-vue-transform-on/download/@vue/babel-helper-vue-transform-on-1.0.2.tgz",
+ "integrity": "sha1-m5xpHNBvyFUiGiR1w8yDHXdLx9w=",
+ "dev": true
+ },
+ "@vue/babel-plugin-jsx": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-jsx/download/@vue/babel-plugin-jsx-1.1.1.tgz?cache=0&sync_timestamp=1634464314876&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40vue%2Fbabel-plugin-jsx%2Fdownload%2F%40vue%2Fbabel-plugin-jsx-1.1.1.tgz",
+ "integrity": "sha1-DFusJ4gNI/iYlM0Daje1XvYd38E=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-module-imports": "^7.0.0",
+ "@babel/plugin-syntax-jsx": "^7.0.0",
+ "@babel/template": "^7.0.0",
+ "@babel/traverse": "^7.0.0",
+ "@babel/types": "^7.0.0",
+ "@vue/babel-helper-vue-transform-on": "^1.0.2",
+ "camelcase": "^6.0.0",
+ "html-tags": "^3.1.0",
+ "svg-tags": "^1.0.0"
+ }
+ },
+ "@vue/babel-plugin-transform-vue-jsx": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npm.taobao.org/@vue/babel-plugin-transform-vue-jsx/download/@vue/babel-plugin-transform-vue-jsx-1.2.1.tgz?cache=0&sync_timestamp=1602851121024&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-plugin-transform-vue-jsx%2Fdownload%2F%40vue%2Fbabel-plugin-transform-vue-jsx-1.2.1.tgz",
+ "integrity": "sha1-ZGBGxlLC8CQnJ/NFGdkXsGQEHtc=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-module-imports": "^7.0.0",
+ "@babel/plugin-syntax-jsx": "^7.2.0",
+ "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
+ "html-tags": "^2.0.0",
+ "lodash.kebabcase": "^4.1.1",
+ "svg-tags": "^1.0.0"
+ },
+ "dependencies": {
+ "html-tags": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npm.taobao.org/html-tags/download/html-tags-2.0.0.tgz",
+ "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=",
+ "dev": true
+ }
+ }
+ },
+ "@vue/babel-preset-app": {
+ "version": "4.5.15",
+ "resolved": "https://registry.npmmirror.com/@vue/babel-preset-app/download/@vue/babel-preset-app-4.5.15.tgz?cache=0&sync_timestamp=1635486009385&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40vue%2Fbabel-preset-app%2Fdownload%2F%40vue%2Fbabel-preset-app-4.5.15.tgz",
+ "integrity": "sha1-9rwI+PZ06YomAAQjTN4YuWbXLrA=",
+ "dev": true,
+ "requires": {
+ "@babel/core": "^7.11.0",
+ "@babel/helper-compilation-targets": "^7.9.6",
+ "@babel/helper-module-imports": "^7.8.3",
+ "@babel/plugin-proposal-class-properties": "^7.8.3",
+ "@babel/plugin-proposal-decorators": "^7.8.3",
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3",
+ "@babel/plugin-syntax-jsx": "^7.8.3",
+ "@babel/plugin-transform-runtime": "^7.11.0",
+ "@babel/preset-env": "^7.11.0",
+ "@babel/runtime": "^7.11.0",
+ "@vue/babel-plugin-jsx": "^1.0.3",
+ "@vue/babel-preset-jsx": "^1.2.4",
+ "babel-plugin-dynamic-import-node": "^2.3.3",
+ "core-js": "^3.6.5",
+ "core-js-compat": "^3.6.5",
+ "semver": "^6.1.0"
+ }
+ },
+ "@vue/babel-preset-jsx": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npm.taobao.org/@vue/babel-preset-jsx/download/@vue/babel-preset-jsx-1.2.4.tgz",
+ "integrity": "sha1-kv6nnbbxOwHoDToAmeKSS9y+Toc=",
+ "dev": true,
+ "requires": {
+ "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
+ "@vue/babel-plugin-transform-vue-jsx": "^1.2.1",
+ "@vue/babel-sugar-composition-api-inject-h": "^1.2.1",
+ "@vue/babel-sugar-composition-api-render-instance": "^1.2.4",
+ "@vue/babel-sugar-functional-vue": "^1.2.2",
+ "@vue/babel-sugar-inject-h": "^1.2.2",
+ "@vue/babel-sugar-v-model": "^1.2.3",
+ "@vue/babel-sugar-v-on": "^1.2.3"
+ }
+ },
+ "@vue/babel-sugar-composition-api-inject-h": {
+ "version": "1.2.1",
+ "resolved": "https://registry.nlark.com/@vue/babel-sugar-composition-api-inject-h/download/@vue/babel-sugar-composition-api-inject-h-1.2.1.tgz",
+ "integrity": "sha1-BdbgxDJxDjdYKyvppgSbaJtvA+s=",
+ "dev": true,
+ "requires": {
+ "@babel/plugin-syntax-jsx": "^7.2.0"
+ }
+ },
+ "@vue/babel-sugar-composition-api-render-instance": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-composition-api-render-instance/download/@vue/babel-sugar-composition-api-render-instance-1.2.4.tgz",
+ "integrity": "sha1-5MvGmXw0T6wnF4WteikyXFHWjRk=",
+ "dev": true,
+ "requires": {
+ "@babel/plugin-syntax-jsx": "^7.2.0"
+ }
+ },
+ "@vue/babel-sugar-functional-vue": {
+ "version": "1.2.2",
+ "resolved": "https://registry.nlark.com/@vue/babel-sugar-functional-vue/download/@vue/babel-sugar-functional-vue-1.2.2.tgz",
+ "integrity": "sha1-JnqayNeHyW7b8Dzj85LEnam9Jlg=",
+ "dev": true,
+ "requires": {
+ "@babel/plugin-syntax-jsx": "^7.2.0"
+ }
+ },
+ "@vue/babel-sugar-inject-h": {
+ "version": "1.2.2",
+ "resolved": "https://registry.nlark.com/@vue/babel-sugar-inject-h/download/@vue/babel-sugar-inject-h-1.2.2.tgz",
+ "integrity": "sha1-1zjTyJM2fshJHcu2abAAkZKT46o=",
+ "dev": true,
+ "requires": {
+ "@babel/plugin-syntax-jsx": "^7.2.0"
+ }
+ },
+ "@vue/babel-sugar-v-model": {
+ "version": "1.2.3",
+ "resolved": "https://registry.nlark.com/@vue/babel-sugar-v-model/download/@vue/babel-sugar-v-model-1.2.3.tgz",
+ "integrity": "sha1-+h8pulHr8KoabDX6ZtU5vEWaGPI=",
+ "dev": true,
+ "requires": {
+ "@babel/plugin-syntax-jsx": "^7.2.0",
+ "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
+ "@vue/babel-plugin-transform-vue-jsx": "^1.2.1",
+ "camelcase": "^5.0.0",
+ "html-tags": "^2.0.0",
+ "svg-tags": "^1.0.0"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz",
+ "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=",
+ "dev": true
+ },
+ "html-tags": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npm.taobao.org/html-tags/download/html-tags-2.0.0.tgz",
+ "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=",
+ "dev": true
+ }
+ }
+ },
+ "@vue/babel-sugar-v-on": {
+ "version": "1.2.3",
+ "resolved": "https://registry.nlark.com/@vue/babel-sugar-v-on/download/@vue/babel-sugar-v-on-1.2.3.tgz",
+ "integrity": "sha1-NCNnF4WGpp85LwS/ujICHQKROto=",
+ "dev": true,
+ "requires": {
+ "@babel/plugin-syntax-jsx": "^7.2.0",
+ "@vue/babel-plugin-transform-vue-jsx": "^1.2.1",
+ "camelcase": "^5.0.0"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz",
+ "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=",
+ "dev": true
+ }
+ }
+ },
+ "@vue/cli-overlay": {
+ "version": "4.5.15",
+ "resolved": "https://registry.npmmirror.com/@vue/cli-overlay/download/@vue/cli-overlay-4.5.15.tgz",
+ "integrity": "sha1-BwD9a605M21Bibo/99JeY46BjJw=",
+ "dev": true
+ },
+ "@vue/cli-plugin-babel": {
+ "version": "4.5.15",
+ "resolved": "https://registry.npmmirror.com/@vue/cli-plugin-babel/download/@vue/cli-plugin-babel-4.5.15.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40vue%2Fcli-plugin-babel%2Fdownload%2F%40vue%2Fcli-plugin-babel-4.5.15.tgz",
+ "integrity": "sha1-rk+y7VQlX+PYTfOB2raFCWQRee0=",
+ "dev": true,
+ "requires": {
+ "@babel/core": "^7.11.0",
+ "@vue/babel-preset-app": "^4.5.15",
+ "@vue/cli-shared-utils": "^4.5.15",
+ "babel-loader": "^8.1.0",
+ "cache-loader": "^4.1.0",
+ "thread-loader": "^2.1.3",
+ "webpack": "^4.0.0"
+ }
+ },
+ "@vue/cli-plugin-router": {
+ "version": "4.5.15",
+ "resolved": "https://registry.npmmirror.com/@vue/cli-plugin-router/download/@vue/cli-plugin-router-4.5.15.tgz",
+ "integrity": "sha1-HnXIyJ30LGlPFDufECjePPXWHh4=",
+ "dev": true,
+ "requires": {
+ "@vue/cli-shared-utils": "^4.5.15"
+ }
+ },
+ "@vue/cli-plugin-vuex": {
+ "version": "4.5.15",
+ "resolved": "https://registry.npmmirror.com/@vue/cli-plugin-vuex/download/@vue/cli-plugin-vuex-4.5.15.tgz",
+ "integrity": "sha1-RmwfAnd9Av71Opu0mjbMOjvP7E4=",
+ "dev": true
+ },
+ "@vue/cli-service": {
+ "version": "4.5.15",
+ "resolved": "https://registry.npmmirror.com/@vue/cli-service/download/@vue/cli-service-4.5.15.tgz",
+ "integrity": "sha1-DpoYbVFVACfQ5o6VBCB3600RW0U=",
+ "dev": true,
+ "requires": {
+ "@intervolga/optimize-cssnano-plugin": "^1.0.5",
+ "@soda/friendly-errors-webpack-plugin": "^1.7.1",
+ "@soda/get-current-script": "^1.0.0",
+ "@types/minimist": "^1.2.0",
+ "@types/webpack": "^4.0.0",
+ "@types/webpack-dev-server": "^3.11.0",
+ "@vue/cli-overlay": "^4.5.15",
+ "@vue/cli-plugin-router": "^4.5.15",
+ "@vue/cli-plugin-vuex": "^4.5.15",
+ "@vue/cli-shared-utils": "^4.5.15",
+ "@vue/component-compiler-utils": "^3.1.2",
+ "@vue/preload-webpack-plugin": "^1.1.0",
+ "@vue/web-component-wrapper": "^1.2.0",
+ "acorn": "^7.4.0",
+ "acorn-walk": "^7.1.1",
+ "address": "^1.1.2",
+ "autoprefixer": "^9.8.6",
+ "browserslist": "^4.12.0",
+ "cache-loader": "^4.1.0",
+ "case-sensitive-paths-webpack-plugin": "^2.3.0",
+ "cli-highlight": "^2.1.4",
+ "clipboardy": "^2.3.0",
+ "cliui": "^6.0.0",
+ "copy-webpack-plugin": "^5.1.1",
+ "css-loader": "^3.5.3",
+ "cssnano": "^4.1.10",
+ "debug": "^4.1.1",
+ "default-gateway": "^5.0.5",
+ "dotenv": "^8.2.0",
+ "dotenv-expand": "^5.1.0",
+ "file-loader": "^4.2.0",
+ "fs-extra": "^7.0.1",
+ "globby": "^9.2.0",
+ "hash-sum": "^2.0.0",
+ "html-webpack-plugin": "^3.2.0",
+ "launch-editor-middleware": "^2.2.1",
+ "lodash.defaultsdeep": "^4.6.1",
+ "lodash.mapvalues": "^4.6.0",
+ "lodash.transform": "^4.6.0",
+ "mini-css-extract-plugin": "^0.9.0",
+ "minimist": "^1.2.5",
+ "pnp-webpack-plugin": "^1.6.4",
+ "portfinder": "^1.0.26",
+ "postcss-loader": "^3.0.0",
+ "ssri": "^8.0.1",
+ "terser-webpack-plugin": "^1.4.4",
+ "thread-loader": "^2.1.3",
+ "url-loader": "^2.2.0",
+ "vue-loader": "^15.9.2",
+ "vue-loader-v16": "npm:vue-loader@^16.1.0",
+ "vue-style-loader": "^4.1.2",
+ "webpack": "^4.0.0",
+ "webpack-bundle-analyzer": "^3.8.0",
+ "webpack-chain": "^6.4.0",
+ "webpack-dev-server": "^3.11.0",
+ "webpack-merge": "^4.2.2"
+ },
+ "dependencies": {
+ "acorn": {
+ "version": "7.4.1",
+ "resolved": "https://registry.nlark.com/acorn/download/acorn-7.4.1.tgz",
+ "integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
+ "dev": true
+ },
+ "ssri": {
+ "version": "8.0.1",
+ "resolved": "https://registry.nlark.com/ssri/download/ssri-8.0.1.tgz?cache=0&sync_timestamp=1621364626710&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fssri%2Fdownload%2Fssri-8.0.1.tgz",
+ "integrity": "sha1-Y45OQ54v+9LNKJd21cpFfE9Roq8=",
+ "dev": true,
+ "requires": {
+ "minipass": "^3.1.1"
+ }
+ }
+ }
+ },
+ "@vue/cli-shared-utils": {
+ "version": "4.5.15",
+ "resolved": "https://registry.npmmirror.com/@vue/cli-shared-utils/download/@vue/cli-shared-utils-4.5.15.tgz?cache=0&sync_timestamp=1635486036027&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40vue%2Fcli-shared-utils%2Fdownload%2F%40vue%2Fcli-shared-utils-4.5.15.tgz",
+ "integrity": "sha1-26OFgWXb40ZXVfJWpIkOaQhFMtY=",
+ "dev": true,
+ "requires": {
+ "@hapi/joi": "^15.0.1",
+ "chalk": "^2.4.2",
+ "execa": "^1.0.0",
+ "launch-editor": "^2.2.1",
+ "lru-cache": "^5.1.1",
+ "node-ipc": "^9.1.1",
+ "open": "^6.3.0",
+ "ora": "^3.4.0",
+ "read-pkg": "^5.1.1",
+ "request": "^2.88.2",
+ "semver": "^6.1.0",
+ "strip-ansi": "^6.0.0"
+ }
+ },
+ "@vue/component-compiler-utils": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmmirror.com/@vue/component-compiler-utils/download/@vue/component-compiler-utils-3.3.0.tgz?cache=0&sync_timestamp=1635248303132&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40vue%2Fcomponent-compiler-utils%2Fdownload%2F%40vue%2Fcomponent-compiler-utils-3.3.0.tgz",
+ "integrity": "sha1-+fX7U0ZLDDeyyNLz+/5E32D2Hck=",
+ "dev": true,
+ "requires": {
+ "consolidate": "^0.15.1",
+ "hash-sum": "^1.0.2",
+ "lru-cache": "^4.1.2",
+ "merge-source-map": "^1.1.0",
+ "postcss": "^7.0.36",
+ "postcss-selector-parser": "^6.0.2",
+ "prettier": "^1.18.2 || ^2.0.0",
+ "source-map": "~0.6.1",
+ "vue-template-es2015-compiler": "^1.9.0"
+ },
+ "dependencies": {
+ "hash-sum": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npm.taobao.org/hash-sum/download/hash-sum-1.0.2.tgz",
+ "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=",
+ "dev": true
+ },
+ "lru-cache": {
+ "version": "4.1.5",
+ "resolved": "https://registry.nlark.com/lru-cache/download/lru-cache-4.1.5.tgz",
+ "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=",
+ "dev": true,
+ "requires": {
+ "pseudomap": "^1.0.2",
+ "yallist": "^2.1.2"
+ }
+ },
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ },
+ "yallist": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz",
+ "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
+ "dev": true
+ }
+ }
+ },
+ "@vue/preload-webpack-plugin": {
+ "version": "1.1.2",
+ "resolved": "https://registry.nlark.com/@vue/preload-webpack-plugin/download/@vue/preload-webpack-plugin-1.1.2.tgz",
+ "integrity": "sha1-zrkktOyzucQ4ccekKaAvhCPmIas=",
+ "dev": true
+ },
+ "@vue/web-component-wrapper": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npm.taobao.org/@vue/web-component-wrapper/download/@vue/web-component-wrapper-1.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fweb-component-wrapper%2Fdownload%2F%40vue%2Fweb-component-wrapper-1.3.0.tgz",
+ "integrity": "sha1-trQKdiVCnSvXwigd26YB7QXcfxo=",
+ "dev": true
+ },
+ "@webassemblyjs/ast": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/ast/download/@webassemblyjs/ast-1.9.0.tgz?cache=0&sync_timestamp=1625473459015&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fast%2Fdownload%2F%40webassemblyjs%2Fast-1.9.0.tgz",
+ "integrity": "sha1-vYUGBLQEJFmlpBzX0zjL7Wle2WQ=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/helper-module-context": "1.9.0",
+ "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
+ "@webassemblyjs/wast-parser": "1.9.0"
+ }
+ },
+ "@webassemblyjs/floating-point-hex-parser": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/floating-point-hex-parser/download/@webassemblyjs/floating-point-hex-parser-1.9.0.tgz",
+ "integrity": "sha1-PD07Jxvd/ITesA9xNEQ4MR1S/7Q=",
+ "dev": true
+ },
+ "@webassemblyjs/helper-api-error": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/helper-api-error/download/@webassemblyjs/helper-api-error-1.9.0.tgz?cache=0&sync_timestamp=1625473346773&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fhelper-api-error%2Fdownload%2F%40webassemblyjs%2Fhelper-api-error-1.9.0.tgz",
+ "integrity": "sha1-ID9nbjM7lsnaLuqzzO8zxFkotqI=",
+ "dev": true
+ },
+ "@webassemblyjs/helper-buffer": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/helper-buffer/download/@webassemblyjs/helper-buffer-1.9.0.tgz?cache=0&sync_timestamp=1625473344792&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fhelper-buffer%2Fdownload%2F%40webassemblyjs%2Fhelper-buffer-1.9.0.tgz",
+ "integrity": "sha1-oUQtJpxf6yP8vJ73WdrDVH8p3gA=",
+ "dev": true
+ },
+ "@webassemblyjs/helper-code-frame": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/helper-code-frame/download/@webassemblyjs/helper-code-frame-1.9.0.tgz",
+ "integrity": "sha1-ZH+Iks0gQ6gqwMjF51w28dkVnyc=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/wast-printer": "1.9.0"
+ }
+ },
+ "@webassemblyjs/helper-fsm": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/helper-fsm/download/@webassemblyjs/helper-fsm-1.9.0.tgz",
+ "integrity": "sha1-wFJWtxJEIUZx9LCOwQitY7cO3bg=",
+ "dev": true
+ },
+ "@webassemblyjs/helper-module-context": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/helper-module-context/download/@webassemblyjs/helper-module-context-1.9.0.tgz",
+ "integrity": "sha1-JdiIS3aDmHGgimxvgGw5ee9xLwc=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.9.0"
+ }
+ },
+ "@webassemblyjs/helper-wasm-bytecode": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/helper-wasm-bytecode/download/@webassemblyjs/helper-wasm-bytecode-1.9.0.tgz",
+ "integrity": "sha1-T+2L6sm4wU+MWLcNEk1UndH+V5A=",
+ "dev": true
+ },
+ "@webassemblyjs/helper-wasm-section": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/helper-wasm-section/download/@webassemblyjs/helper-wasm-section-1.9.0.tgz?cache=0&sync_timestamp=1625473466570&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fhelper-wasm-section%2Fdownload%2F%40webassemblyjs%2Fhelper-wasm-section-1.9.0.tgz",
+ "integrity": "sha1-WkE41aYpK6GLBMWuSXF+QWeWU0Y=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.9.0",
+ "@webassemblyjs/helper-buffer": "1.9.0",
+ "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
+ "@webassemblyjs/wasm-gen": "1.9.0"
+ }
+ },
+ "@webassemblyjs/ieee754": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/ieee754/download/@webassemblyjs/ieee754-1.9.0.tgz",
+ "integrity": "sha1-Fceg+6roP7JhQ7us9tbfFwKtOeQ=",
+ "dev": true,
+ "requires": {
+ "@xtuc/ieee754": "^1.2.0"
+ }
+ },
+ "@webassemblyjs/leb128": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/leb128/download/@webassemblyjs/leb128-1.9.0.tgz?cache=0&sync_timestamp=1625473342433&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fleb128%2Fdownload%2F%40webassemblyjs%2Fleb128-1.9.0.tgz",
+ "integrity": "sha1-8Zygt2ptxVYjoJz/p2noOPoeHJU=",
+ "dev": true,
+ "requires": {
+ "@xtuc/long": "4.2.2"
+ }
+ },
+ "@webassemblyjs/utf8": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/utf8/download/@webassemblyjs/utf8-1.9.0.tgz",
+ "integrity": "sha1-BNM7Y2945qaBMifoJAL3Y3tiKas=",
+ "dev": true
+ },
+ "@webassemblyjs/wasm-edit": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/wasm-edit/download/@webassemblyjs/wasm-edit-1.9.0.tgz?cache=0&sync_timestamp=1625473463093&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fwasm-edit%2Fdownload%2F%40webassemblyjs%2Fwasm-edit-1.9.0.tgz",
+ "integrity": "sha1-P+bXnT8PkiGDqoYALELdJWz+6c8=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.9.0",
+ "@webassemblyjs/helper-buffer": "1.9.0",
+ "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
+ "@webassemblyjs/helper-wasm-section": "1.9.0",
+ "@webassemblyjs/wasm-gen": "1.9.0",
+ "@webassemblyjs/wasm-opt": "1.9.0",
+ "@webassemblyjs/wasm-parser": "1.9.0",
+ "@webassemblyjs/wast-printer": "1.9.0"
+ }
+ },
+ "@webassemblyjs/wasm-gen": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/wasm-gen/download/@webassemblyjs/wasm-gen-1.9.0.tgz?cache=0&sync_timestamp=1625473361759&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fwasm-gen%2Fdownload%2F%40webassemblyjs%2Fwasm-gen-1.9.0.tgz",
+ "integrity": "sha1-ULxw7Gje2OJ2OwGhQYv0NJGnpJw=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.9.0",
+ "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
+ "@webassemblyjs/ieee754": "1.9.0",
+ "@webassemblyjs/leb128": "1.9.0",
+ "@webassemblyjs/utf8": "1.9.0"
+ }
+ },
+ "@webassemblyjs/wasm-opt": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/wasm-opt/download/@webassemblyjs/wasm-opt-1.9.0.tgz?cache=0&sync_timestamp=1625473467198&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fwasm-opt%2Fdownload%2F%40webassemblyjs%2Fwasm-opt-1.9.0.tgz",
+ "integrity": "sha1-IhEYHlsxMmRDzIES658LkChyGmE=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.9.0",
+ "@webassemblyjs/helper-buffer": "1.9.0",
+ "@webassemblyjs/wasm-gen": "1.9.0",
+ "@webassemblyjs/wasm-parser": "1.9.0"
+ }
+ },
+ "@webassemblyjs/wasm-parser": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/wasm-parser/download/@webassemblyjs/wasm-parser-1.9.0.tgz?cache=0&sync_timestamp=1625473464593&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fwasm-parser%2Fdownload%2F%40webassemblyjs%2Fwasm-parser-1.9.0.tgz",
+ "integrity": "sha1-nUjkSCbfSmWYKUqmyHRp1kL/9l4=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.9.0",
+ "@webassemblyjs/helper-api-error": "1.9.0",
+ "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
+ "@webassemblyjs/ieee754": "1.9.0",
+ "@webassemblyjs/leb128": "1.9.0",
+ "@webassemblyjs/utf8": "1.9.0"
+ }
+ },
+ "@webassemblyjs/wast-parser": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/wast-parser/download/@webassemblyjs/wast-parser-1.9.0.tgz?cache=0&sync_timestamp=1625473373987&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40webassemblyjs%2Fwast-parser%2Fdownload%2F%40webassemblyjs%2Fwast-parser-1.9.0.tgz",
+ "integrity": "sha1-MDERXXmsW9JhVWzsw/qQo+9FGRQ=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.9.0",
+ "@webassemblyjs/floating-point-hex-parser": "1.9.0",
+ "@webassemblyjs/helper-api-error": "1.9.0",
+ "@webassemblyjs/helper-code-frame": "1.9.0",
+ "@webassemblyjs/helper-fsm": "1.9.0",
+ "@xtuc/long": "4.2.2"
+ }
+ },
+ "@webassemblyjs/wast-printer": {
+ "version": "1.9.0",
+ "resolved": "https://registry.nlark.com/@webassemblyjs/wast-printer/download/@webassemblyjs/wast-printer-1.9.0.tgz",
+ "integrity": "sha1-STXVTIX+9jewDOn1I3dFHQDUeJk=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.9.0",
+ "@webassemblyjs/wast-parser": "1.9.0",
+ "@xtuc/long": "4.2.2"
+ }
+ },
+ "@xtuc/ieee754": {
+ "version": "1.2.0",
+ "resolved": "https://registry.nlark.com/@xtuc/ieee754/download/@xtuc/ieee754-1.2.0.tgz",
+ "integrity": "sha1-7vAUoxRa5Hehy8AM0eVSM23Ot5A=",
+ "dev": true
+ },
+ "@xtuc/long": {
+ "version": "4.2.2",
+ "resolved": "https://registry.nlark.com/@xtuc/long/download/@xtuc/long-4.2.2.tgz",
+ "integrity": "sha1-0pHGpOl5ibXGHZrPOWrk/hM6cY0=",
+ "dev": true
+ },
+ "abbrev": {
+ "version": "1.1.1",
+ "resolved": "https://registry.nlark.com/abbrev/download/abbrev-1.1.1.tgz",
+ "integrity": "sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg=",
+ "dev": true
+ },
+ "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": "6.4.2",
+ "resolved": "https://registry.nlark.com/acorn/download/acorn-6.4.2.tgz",
+ "integrity": "sha1-NYZv1xBSjpLeEM8GAWSY5H454eY=",
+ "dev": true
+ },
+ "acorn-walk": {
+ "version": "7.2.0",
+ "resolved": "https://registry.nlark.com/acorn-walk/download/acorn-walk-7.2.0.tgz",
+ "integrity": "sha1-DeiJpgEgOQmw++B7iTjcIdLpZ7w=",
+ "dev": true
+ },
+ "address": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npm.taobao.org/address/download/address-1.1.2.tgz",
+ "integrity": "sha1-vxEWycdYxRt6kz0pa3LCIe2UKLY=",
+ "dev": true
+ },
+ "ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.nlark.com/ajv/download/ajv-6.12.6.tgz?cache=0&sync_timestamp=1631470912358&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fajv%2Fdownload%2Fajv-6.12.6.tgz",
+ "integrity": "sha1-uvWmLoArB9l3A0WG+MO69a3ybfQ=",
+ "dev": true,
+ "requires": {
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
+ }
+ },
+ "ajv-errors": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/ajv-errors/download/ajv-errors-1.0.1.tgz",
+ "integrity": "sha1-81mGrOuRr63sQQL72FAUlQzvpk0=",
+ "dev": true
+ },
+ "ajv-keywords": {
+ "version": "3.5.2",
+ "resolved": "https://registry.nlark.com/ajv-keywords/download/ajv-keywords-3.5.2.tgz",
+ "integrity": "sha1-MfKdpatuANHC0yms97WSlhTVAU0=",
+ "dev": true
+ },
+ "alphanum-sort": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/alphanum-sort/download/alphanum-sort-1.0.2.tgz",
+ "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=",
+ "dev": true
+ },
+ "amdefine": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/amdefine/download/amdefine-1.0.1.tgz",
+ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
+ "dev": true
+ },
+ "ansi-colors": {
+ "version": "3.2.4",
+ "resolved": "https://registry.nlark.com/ansi-colors/download/ansi-colors-3.2.4.tgz",
+ "integrity": "sha1-46PaS/uubIapwoViXeEkojQCb78=",
+ "dev": true
+ },
+ "ansi-html": {
+ "version": "0.0.7",
+ "resolved": "https://registry.nlark.com/ansi-html/download/ansi-html-0.0.7.tgz",
+ "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=",
+ "dev": true
+ },
+ "ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-4.1.0.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-4.1.0.tgz",
+ "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-3.2.1.tgz",
+ "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
+ },
+ "any-promise": {
+ "version": "1.3.0",
+ "resolved": "https://registry.nlark.com/any-promise/download/any-promise-1.3.0.tgz",
+ "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=",
+ "dev": true
+ },
+ "anymatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.nlark.com/anymatch/download/anymatch-3.1.2.tgz",
+ "integrity": "sha1-wFV8CWrzLxBhmPT04qODU343hxY=",
+ "dev": true,
+ "requires": {
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
+ }
+ },
+ "aproba": {
+ "version": "1.2.0",
+ "resolved": "https://registry.nlark.com/aproba/download/aproba-1.2.0.tgz",
+ "integrity": "sha1-aALmJk79GMeQobDVF/DyYnvyyUo=",
+ "dev": true
+ },
+ "arch": {
+ "version": "2.2.0",
+ "resolved": "https://registry.nlark.com/arch/download/arch-2.2.0.tgz",
+ "integrity": "sha1-G8R4GPMFdk8jqzMGsL/AhsWinRE=",
+ "dev": true
+ },
+ "are-we-there-yet": {
+ "version": "1.1.7",
+ "resolved": "https://registry.nlark.com/are-we-there-yet/download/are-we-there-yet-1.1.7.tgz",
+ "integrity": "sha1-sVR0qTKtq0/4pQ2a36fk6SbyEUY=",
+ "dev": true,
+ "requires": {
+ "delegates": "^1.0.0",
+ "readable-stream": "^2.0.6"
+ }
+ },
+ "argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.nlark.com/argparse/download/argparse-1.0.10.tgz",
+ "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=",
+ "dev": true,
+ "requires": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "arr-diff": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/arr-diff/download/arr-diff-4.0.0.tgz",
+ "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
+ "dev": true
+ },
+ "arr-flatten": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/arr-flatten/download/arr-flatten-1.1.0.tgz?cache=0&sync_timestamp=1618846805394&other_urls=https%3A%2F%2Fregistry.nlark.com%2Farr-flatten%2Fdownload%2Farr-flatten-1.1.0.tgz",
+ "integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE=",
+ "dev": true
+ },
+ "arr-union": {
+ "version": "3.1.0",
+ "resolved": "https://registry.nlark.com/arr-union/download/arr-union-3.1.0.tgz",
+ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
+ "dev": true
+ },
+ "array-find-index": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/array-find-index/download/array-find-index-1.0.2.tgz",
+ "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
+ "dev": true
+ },
+ "array-flatten": {
+ "version": "1.1.1",
+ "resolved": "https://registry.nlark.com/array-flatten/download/array-flatten-1.1.1.tgz",
+ "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=",
+ "dev": true
+ },
+ "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.nlark.com/array-uniq/download/array-uniq-1.0.3.tgz?cache=0&sync_timestamp=1622605321175&other_urls=https%3A%2F%2Fregistry.nlark.com%2Farray-uniq%2Fdownload%2Farray-uniq-1.0.3.tgz",
+ "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
+ "dev": true
+ },
+ "array-unique": {
+ "version": "0.3.2",
+ "resolved": "https://registry.nlark.com/array-unique/download/array-unique-0.3.2.tgz",
+ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
+ "dev": true
+ },
+ "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": "5.4.1",
+ "resolved": "https://registry.npm.taobao.org/asn1.js/download/asn1.js-5.4.1.tgz",
+ "integrity": "sha1-EamAuE67kXgc41sP3C7ilON4Pwc=",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.0.0",
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0",
+ "safer-buffer": "^2.1.0"
+ },
+ "dependencies": {
+ "bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.12.0.tgz",
+ "integrity": "sha1-d1s/J477uXGO7HNh9IP7Nvu/6og=",
+ "dev": true
+ }
+ }
+ },
+ "assert": {
+ "version": "1.5.0",
+ "resolved": "https://registry.nlark.com/assert/download/assert-1.5.0.tgz?cache=0&sync_timestamp=1618847153747&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fassert%2Fdownload%2Fassert-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.nlark.com/inherits/download/inherits-2.0.1.tgz",
+ "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
+ "dev": true
+ },
+ "util": {
+ "version": "0.10.3",
+ "resolved": "https://registry.nlark.com/util/download/util-0.10.3.tgz?cache=0&sync_timestamp=1622212984161&other_urls=https%3A%2F%2Fregistry.nlark.com%2Futil%2Fdownload%2Futil-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.nlark.com/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
+ },
+ "async": {
+ "version": "2.6.3",
+ "resolved": "https://registry.npmmirror.com/async/download/async-2.6.3.tgz?cache=0&sync_timestamp=1635441262651&other_urls=https%3A%2F%2Fregistry.npmmirror.com%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.nlark.com/async-each/download/async-each-1.0.3.tgz",
+ "integrity": "sha1-tyfb+H12UWAvBvTUrDh/R9kbDL8=",
+ "dev": true
+ },
+ "async-foreach": {
+ "version": "0.1.3",
+ "resolved": "https://registry.nlark.com/async-foreach/download/async-foreach-0.1.3.tgz",
+ "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=",
+ "dev": true
+ },
+ "async-limiter": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npm.taobao.org/async-limiter/download/async-limiter-1.0.1.tgz",
+ "integrity": "sha1-3TeelPDbgxCwgpH51kwyCXZmF/0=",
+ "dev": true
+ },
+ "async-validator": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmmirror.com/async-validator/download/async-validator-1.8.5.tgz?cache=0&sync_timestamp=1634529574100&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fasync-validator%2Fdownload%2Fasync-validator-1.8.5.tgz",
+ "integrity": "sha1-3D4I7B/Q3dtn5ghC8CwM0c7G1/A=",
+ "requires": {
+ "babel-runtime": "6.x"
+ }
+ },
+ "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.nlark.com/atob/download/atob-2.1.2.tgz",
+ "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=",
+ "dev": true
+ },
+ "autoprefixer": {
+ "version": "9.8.8",
+ "resolved": "https://registry.npmmirror.com/autoprefixer/download/autoprefixer-9.8.8.tgz",
+ "integrity": "sha1-/UvUWVOF+m8GWZ3nSaTV96R0lXo=",
+ "dev": true,
+ "requires": {
+ "browserslist": "^4.12.0",
+ "caniuse-lite": "^1.0.30001109",
+ "normalize-range": "^0.1.2",
+ "num2fraction": "^1.2.2",
+ "picocolors": "^0.2.1",
+ "postcss": "^7.0.32",
+ "postcss-value-parser": "^4.1.0"
+ },
+ "dependencies": {
+ "picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmmirror.com/picocolors/download/picocolors-0.2.1.tgz?cache=0&sync_timestamp=1634093442271&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpicocolors%2Fdownload%2Fpicocolors-0.2.1.tgz",
+ "integrity": "sha1-VwZw95NkaFHRuhNZlpYqutWHhZ8=",
+ "dev": true
+ }
+ }
+ },
+ "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.11.0",
+ "resolved": "https://registry.nlark.com/aws4/download/aws4-1.11.0.tgz",
+ "integrity": "sha1-1h9G2DslGSUOJ4Ta9bCUeai0HFk=",
+ "dev": true
+ },
+ "axios": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz",
+ "integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==",
+ "requires": {
+ "follow-redirects": "^1.14.4"
+ }
+ },
+ "babel-helper-vue-jsx-merge-props": {
+ "version": "2.0.3",
+ "resolved": "https://registry.nlark.com/babel-helper-vue-jsx-merge-props/download/babel-helper-vue-jsx-merge-props-2.0.3.tgz",
+ "integrity": "sha1-Iq69OzOQIyjlEyk6jkmSs4T58bY="
+ },
+ "babel-loader": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmmirror.com/babel-loader/download/babel-loader-8.2.3.tgz",
+ "integrity": "sha1-iYa0Dxpkys/LS4QpMgCF72ixNC0=",
+ "dev": true,
+ "requires": {
+ "find-cache-dir": "^3.3.1",
+ "loader-utils": "^1.4.0",
+ "make-dir": "^3.1.0",
+ "schema-utils": "^2.6.5"
+ }
+ },
+ "babel-plugin-dynamic-import-node": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npm.taobao.org/babel-plugin-dynamic-import-node/download/babel-plugin-dynamic-import-node-2.3.3.tgz",
+ "integrity": "sha1-hP2hnJduxcbe/vV/lCez3vZuF6M=",
+ "dev": true,
+ "requires": {
+ "object.assign": "^4.1.0"
+ }
+ },
+ "babel-plugin-polyfill-corejs2": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-corejs2/download/babel-plugin-polyfill-corejs2-0.2.3.tgz?cache=0&sync_timestamp=1635566922153&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fbabel-plugin-polyfill-corejs2%2Fdownload%2Fbabel-plugin-polyfill-corejs2-0.2.3.tgz",
+ "integrity": "sha1-btjjCYGwYvj+asqIc6N+vMjMHA8=",
+ "dev": true,
+ "requires": {
+ "@babel/compat-data": "^7.13.11",
+ "@babel/helper-define-polyfill-provider": "^0.2.4",
+ "semver": "^6.1.1"
+ }
+ },
+ "babel-plugin-polyfill-corejs3": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-corejs3/download/babel-plugin-polyfill-corejs3-0.3.0.tgz?cache=0&sync_timestamp=1635566922706&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fbabel-plugin-polyfill-corejs3%2Fdownload%2Fbabel-plugin-polyfill-corejs3-0.3.0.tgz",
+ "integrity": "sha1-+nyj0e6d3GGTYA/7YyyXhdVJGK8=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-define-polyfill-provider": "^0.2.4",
+ "core-js-compat": "^3.18.0"
+ }
+ },
+ "babel-plugin-polyfill-regenerator": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-regenerator/download/babel-plugin-polyfill-regenerator-0.2.3.tgz",
+ "integrity": "sha1-LpgI9QJ8QzbJlJkrSKQmJYDLjW0=",
+ "dev": true,
+ "requires": {
+ "@babel/helper-define-polyfill-provider": "^0.2.4"
+ }
+ },
+ "babel-runtime": {
+ "version": "6.26.0",
+ "resolved": "https://registry.nlark.com/babel-runtime/download/babel-runtime-6.26.0.tgz",
+ "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
+ "requires": {
+ "core-js": "^2.4.0",
+ "regenerator-runtime": "^0.11.0"
+ },
+ "dependencies": {
+ "core-js": {
+ "version": "2.6.12",
+ "resolved": "https://registry.npmmirror.com/core-js/download/core-js-2.6.12.tgz?cache=0&sync_timestamp=1635142915013&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcore-js%2Fdownload%2Fcore-js-2.6.12.tgz",
+ "integrity": "sha1-2TM9+nsGXjR8xWgiGdb2kIWcwuw="
+ },
+ "regenerator-runtime": {
+ "version": "0.11.1",
+ "resolved": "https://registry.nlark.com/regenerator-runtime/download/regenerator-runtime-0.11.1.tgz?cache=0&sync_timestamp=1626993001371&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.11.1.tgz",
+ "integrity": "sha1-vgWtf5v30i4Fb5cmzuUBf78Z4uk="
+ }
+ }
+ },
+ "balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.2.tgz",
+ "integrity": "sha1-6D46fj8wCzTLnYf2FfoMvzV2kO4=",
+ "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.nlark.com/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.nlark.com/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-js": {
+ "version": "1.5.1",
+ "resolved": "https://registry.nlark.com/base64-js/download/base64-js-1.5.1.tgz",
+ "integrity": "sha1-GxtEAWClv3rUC2UPCVljSBkDkwo=",
+ "dev": true
+ },
+ "batch": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "bfj": {
+ "version": "6.1.2",
+ "resolved": "https://registry.npm.taobao.org/bfj/download/bfj-6.1.2.tgz",
+ "integrity": "sha1-MlyGGoIryzWKQceKM7jm4ght3n8=",
+ "dev": true,
+ "requires": {
+ "bluebird": "^3.5.5",
+ "check-types": "^8.0.3",
+ "hoopy": "^0.1.4",
+ "tryer": "^1.0.1"
+ }
+ },
+ "big.js": {
+ "version": "5.2.2",
+ "resolved": "https://registry.nlark.com/big.js/download/big.js-5.2.2.tgz",
+ "integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=",
+ "dev": true
+ },
+ "binary-extensions": {
+ "version": "2.2.0",
+ "resolved": "https://registry.nlark.com/binary-extensions/download/binary-extensions-2.2.0.tgz",
+ "integrity": "sha1-dfUC7q+f/eQvyYgpZFvk6na9ni0=",
+ "dev": true,
+ "optional": true
+ },
+ "bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.nlark.com/bindings/download/bindings-1.5.0.tgz",
+ "integrity": "sha1-EDU8npRTNLwFEabZCzj7x8nFBN8=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "file-uri-to-path": "1.0.0"
+ }
+ },
+ "block-stream": {
+ "version": "0.0.9",
+ "resolved": "https://registry.nlark.com/block-stream/download/block-stream-0.0.9.tgz",
+ "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
+ "dev": true,
+ "requires": {
+ "inherits": "~2.0.0"
+ }
+ },
+ "bluebird": {
+ "version": "3.7.2",
+ "resolved": "https://registry.npm.taobao.org/bluebird/download/bluebird-3.7.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbluebird%2Fdownload%2Fbluebird-3.7.2.tgz",
+ "integrity": "sha1-nyKcFb4nJFT/qXOs4NvueaGww28=",
+ "dev": true
+ },
+ "bn.js": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-5.2.0.tgz",
+ "integrity": "sha1-NYhgZ0OWxpl3canQUfzBtX1K4AI=",
+ "dev": true
+ },
+ "body-parser": {
+ "version": "1.19.0",
+ "resolved": "https://registry.nlark.com/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": {
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.nlark.com/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.npmmirror.com/ms/download/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ },
+ "qs": {
+ "version": "6.7.0",
+ "resolved": "https://registry.nlark.com/qs/download/qs-6.7.0.tgz",
+ "integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw=",
+ "dev": true
+ }
+ }
+ },
+ "bonjour": {
+ "version": "3.5.0",
+ "resolved": "https://registry.nlark.com/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"
+ },
+ "dependencies": {
+ "array-flatten": {
+ "version": "2.1.2",
+ "resolved": "https://registry.nlark.com/array-flatten/download/array-flatten-2.1.2.tgz",
+ "integrity": "sha1-JO+AoowaiTYX4hSbDG0NeIKTsJk=",
+ "dev": true
+ }
+ }
+ },
+ "boolbase": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/boolbase/download/boolbase-1.0.0.tgz",
+ "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=",
+ "dev": true
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.nlark.com/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": "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.nlark.com/extend-shallow/download/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "brorand": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/brorand/download/brorand-1.1.0.tgz",
+ "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
+ "dev": true
+ },
+ "browserify-aes": {
+ "version": "1.2.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.nlark.com/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.1.0",
+ "resolved": "https://registry.nlark.com/browserify-rsa/download/browserify-rsa-4.1.0.tgz",
+ "integrity": "sha1-sv0Gtbda4pf3zi3GUfkY9b4VjI0=",
+ "dev": true,
+ "requires": {
+ "bn.js": "^5.0.0",
+ "randombytes": "^2.0.1"
+ }
+ },
+ "browserify-sign": {
+ "version": "4.2.1",
+ "resolved": "https://registry.nlark.com/browserify-sign/download/browserify-sign-4.2.1.tgz",
+ "integrity": "sha1-6vSt1G3VS+O7OzbAzxWrvrp5VsM=",
+ "dev": true,
+ "requires": {
+ "bn.js": "^5.1.1",
+ "browserify-rsa": "^4.0.1",
+ "create-hash": "^1.2.0",
+ "create-hmac": "^1.1.7",
+ "elliptic": "^6.5.3",
+ "inherits": "^2.0.4",
+ "parse-asn1": "^5.1.5",
+ "readable-stream": "^3.6.0",
+ "safe-buffer": "^5.2.0"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "3.6.0",
+ "resolved": "https://registry.nlark.com/readable-stream/download/readable-stream-3.6.0.tgz",
+ "integrity": "sha1-M3u9o63AcGvT4CRCaihtS0sskZg=",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ }
+ },
+ "safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.nlark.com/safe-buffer/download/safe-buffer-5.2.1.tgz",
+ "integrity": "sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=",
+ "dev": true
+ }
+ }
+ },
+ "browserify-zlib": {
+ "version": "0.2.0",
+ "resolved": "https://registry.nlark.com/browserify-zlib/download/browserify-zlib-0.2.0.tgz",
+ "integrity": "sha1-KGlFnZqjviRf6P4sofRuLn9U1z8=",
+ "dev": true,
+ "requires": {
+ "pako": "~1.0.5"
+ }
+ },
+ "browserslist": {
+ "version": "4.17.5",
+ "resolved": "https://registry.npmmirror.com/browserslist/download/browserslist-4.17.5.tgz?cache=0&sync_timestamp=1635094525679&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fbrowserslist%2Fdownload%2Fbrowserslist-4.17.5.tgz",
+ "integrity": "sha1-yCe74XKkwisSP14zdTPO66391Vk=",
+ "dev": true,
+ "requires": {
+ "caniuse-lite": "^1.0.30001271",
+ "electron-to-chromium": "^1.3.878",
+ "escalade": "^3.1.1",
+ "node-releases": "^2.0.1",
+ "picocolors": "^1.0.0"
+ }
+ },
+ "buffer": {
+ "version": "4.9.2",
+ "resolved": "https://registry.nlark.com/buffer/download/buffer-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-from": {
+ "version": "1.1.2",
+ "resolved": "https://registry.nlark.com/buffer-from/download/buffer-from-1.1.2.tgz",
+ "integrity": "sha1-KxRqb9cugLT1XSVfNe1Zo6mkG9U=",
+ "dev": true
+ },
+ "buffer-indexof": {
+ "version": "1.1.1",
+ "resolved": "https://registry.nlark.com/buffer-indexof/download/buffer-indexof-1.1.1.tgz",
+ "integrity": "sha1-Uvq8xqYG0aADAoAmSO9o9jnaJow=",
+ "dev": true
+ },
+ "buffer-json": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/buffer-json/download/buffer-json-2.0.0.tgz",
+ "integrity": "sha1-9z4TseQvGW/i/WfQAcfXEH7dfCM=",
+ "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-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
+ },
+ "bytes": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npm.taobao.org/bytes/download/bytes-3.1.0.tgz",
+ "integrity": "sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY=",
+ "dev": true
+ },
+ "cacache": {
+ "version": "12.0.4",
+ "resolved": "https://registry.nlark.com/cacache/download/cacache-12.0.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcacache%2Fdownload%2Fcacache-12.0.4.tgz",
+ "integrity": "sha1-ZovL0QWutfHZL+JVcOyVJcj6pAw=",
+ "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"
+ }
+ },
+ "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"
+ }
+ },
+ "cache-loader": {
+ "version": "4.1.0",
+ "resolved": "https://registry.nlark.com/cache-loader/download/cache-loader-4.1.0.tgz",
+ "integrity": "sha1-mUjK41OuwKH8ser9ojAIFuyFOH4=",
+ "dev": true,
+ "requires": {
+ "buffer-json": "^2.0.0",
+ "find-cache-dir": "^3.0.0",
+ "loader-utils": "^1.2.3",
+ "mkdirp": "^0.5.1",
+ "neo-async": "^2.6.1",
+ "schema-utils": "^2.0.0"
+ }
+ },
+ "call-bind": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/call-bind/download/call-bind-1.0.2.tgz",
+ "integrity": "sha1-sdTonmiBGcPJqQOtMKuy9qkZvjw=",
+ "dev": true,
+ "requires": {
+ "function-bind": "^1.1.1",
+ "get-intrinsic": "^1.0.2"
+ }
+ },
+ "call-me-maybe": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npm.taobao.org/call-me-maybe/download/call-me-maybe-1.0.1.tgz",
+ "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=",
+ "dev": true
+ },
+ "caller-callsite": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/caller-callsite/download/caller-callsite-2.0.0.tgz?cache=0&sync_timestamp=1633617041481&other_urls=https%3A%2F%2Fregistry.npmmirror.com%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.npmmirror.com/caller-path/download/caller-path-2.0.0.tgz?cache=0&sync_timestamp=1633674209796&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcaller-path%2Fdownload%2Fcaller-path-2.0.0.tgz",
+ "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=",
+ "dev": true,
+ "requires": {
+ "caller-callsite": "^2.0.0"
+ }
+ },
+ "callsites": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/callsites/download/callsites-2.0.0.tgz?cache=0&sync_timestamp=1628464722297&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcallsites%2Fdownload%2Fcallsites-2.0.0.tgz",
+ "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=",
+ "dev": true
+ },
+ "camel-case": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/camel-case/download/camel-case-3.0.0.tgz",
+ "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=",
+ "dev": true,
+ "requires": {
+ "no-case": "^2.2.0",
+ "upper-case": "^1.1.1"
+ }
+ },
+ "camelcase": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-6.2.0.tgz",
+ "integrity": "sha1-kkr4gcnVJaydh/QNlk5c6pgqGAk=",
+ "dev": true
+ },
+ "camelcase-keys": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/camelcase-keys/download/camelcase-keys-2.1.0.tgz?cache=0&sync_timestamp=1633332959770&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcamelcase-keys%2Fdownload%2Fcamelcase-keys-2.1.0.tgz",
+ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^2.0.0",
+ "map-obj": "^1.0.0"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-2.1.1.tgz",
+ "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
+ "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.30001274",
+ "resolved": "https://registry.npmmirror.com/caniuse-lite/download/caniuse-lite-1.0.30001274.tgz",
+ "integrity": "sha1-Jso2IE0VsXYBum/DXb2tlQpkfMc=",
+ "dev": true
+ },
+ "case-sensitive-paths-webpack-plugin": {
+ "version": "2.4.0",
+ "resolved": "https://registry.nlark.com/case-sensitive-paths-webpack-plugin/download/case-sensitive-paths-webpack-plugin-2.4.0.tgz",
+ "integrity": "sha1-22QGbGQi7tLgjMFLmGykN5bbxtQ=",
+ "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
+ },
+ "chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.nlark.com/chalk/download/chalk-2.4.2.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%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"
+ }
+ },
+ "check-types": {
+ "version": "8.0.3",
+ "resolved": "https://registry.nlark.com/check-types/download/check-types-8.0.3.tgz",
+ "integrity": "sha1-M1bMoZyIlUTy16le1JzlCKDs9VI=",
+ "dev": true
+ },
+ "chokidar": {
+ "version": "3.5.2",
+ "resolved": "https://registry.nlark.com/chokidar/download/chokidar-3.5.2.tgz?cache=0&sync_timestamp=1623763535523&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchokidar%2Fdownload%2Fchokidar-3.5.2.tgz",
+ "integrity": "sha1-26OXb8rbAW9m/TZQIdkWANAcHnU=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.2",
+ "fsevents": "~2.3.2",
+ "glob-parent": "~5.1.2",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.6.0"
+ },
+ "dependencies": {
+ "braces": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npm.taobao.org/braces/download/braces-3.0.2.tgz",
+ "integrity": "sha1-NFThpGLujVmeI23zNs2epPiv4Qc=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "fill-range": "^7.0.1"
+ }
+ },
+ "fill-range": {
+ "version": "7.0.1",
+ "resolved": "https://registry.nlark.com/fill-range/download/fill-range-7.0.1.tgz",
+ "integrity": "sha1-GRmmp8df44ssfHflGYU12prN2kA=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "to-regex-range": "^5.0.1"
+ }
+ },
+ "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,
+ "optional": true
+ },
+ "to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.nlark.com/to-regex-range/download/to-regex-range-5.0.1.tgz",
+ "integrity": "sha1-FkjESq58jZiKMmAY7XL1tN0DkuQ=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "is-number": "^7.0.0"
+ }
+ }
+ }
+ },
+ "chownr": {
+ "version": "1.1.4",
+ "resolved": "https://registry.nlark.com/chownr/download/chownr-1.1.4.tgz",
+ "integrity": "sha1-b8nXtC0ypYNZYzdmbn0ICE2izGs=",
+ "dev": true
+ },
+ "chrome-trace-event": {
+ "version": "1.0.3",
+ "resolved": "https://registry.nlark.com/chrome-trace-event/download/chrome-trace-event-1.0.3.tgz",
+ "integrity": "sha1-EBXs7UdB4V0GZkqVfbv1DQQeJqw=",
+ "dev": true
+ },
+ "cipher-base": {
+ "version": "1.0.4",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "class-utils": {
+ "version": "0.3.6",
+ "resolved": "https://registry.nlark.com/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-css": {
+ "version": "4.2.4",
+ "resolved": "https://registry.npmmirror.com/clean-css/download/clean-css-4.2.4.tgz?cache=0&sync_timestamp=1634992314911&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fclean-css%2Fdownload%2Fclean-css-4.2.4.tgz",
+ "integrity": "sha1-czv0brpOYHxokepXwkqYk1aDEXg=",
+ "dev": true,
+ "requires": {
+ "source-map": "~0.6.0"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "cli-cursor": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/cli-cursor/download/cli-cursor-2.1.0.tgz?cache=0&sync_timestamp=1629747481175&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcli-cursor%2Fdownload%2Fcli-cursor-2.1.0.tgz",
+ "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
+ "dev": true,
+ "requires": {
+ "restore-cursor": "^2.0.0"
+ }
+ },
+ "cli-highlight": {
+ "version": "2.1.11",
+ "resolved": "https://registry.npm.taobao.org/cli-highlight/download/cli-highlight-2.1.11.tgz?cache=0&sync_timestamp=1616955054342&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcli-highlight%2Fdownload%2Fcli-highlight-2.1.11.tgz",
+ "integrity": "sha1-SXNvpFLwqvT65YDjCssmgo0twb8=",
+ "dev": true,
+ "requires": {
+ "chalk": "^4.0.0",
+ "highlight.js": "^10.7.1",
+ "mz": "^2.4.0",
+ "parse5": "^5.1.1",
+ "parse5-htmlparser2-tree-adapter": "^6.0.0",
+ "yargs": "^16.0.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz",
+ "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.2.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.2.tgz",
+ "integrity": "sha1-qsTit3NKdAhnrrFr8CqtVWoeegE=",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
+ "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
+ "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
+ "dev": true
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/has-flag/download/has-flag-4.0.0.tgz",
+ "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
+ "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
+ }
+ },
+ "cli-spinners": {
+ "version": "2.6.1",
+ "resolved": "https://registry.npmmirror.com/cli-spinners/download/cli-spinners-2.6.1.tgz?cache=0&sync_timestamp=1633109609172&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcli-spinners%2Fdownload%2Fcli-spinners-2.6.1.tgz",
+ "integrity": "sha1-rclU6+KBw3pjGb+kAebdJIj/tw0=",
+ "dev": true
+ },
+ "clipboardy": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmmirror.com/clipboardy/download/clipboardy-2.3.0.tgz?cache=0&sync_timestamp=1634141778549&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fclipboardy%2Fdownload%2Fclipboardy-2.3.0.tgz",
+ "integrity": "sha1-PCkDZQxo5GqRs4iYW8J3QofbopA=",
+ "dev": true,
+ "requires": {
+ "arch": "^2.1.1",
+ "execa": "^1.0.0",
+ "is-wsl": "^2.1.1"
+ },
+ "dependencies": {
+ "is-wsl": {
+ "version": "2.2.0",
+ "resolved": "https://registry.nlark.com/is-wsl/download/is-wsl-2.2.0.tgz",
+ "integrity": "sha1-dKTHbnfKn9P5MvKQwX6jJs0VcnE=",
+ "dev": true,
+ "requires": {
+ "is-docker": "^2.0.0"
+ }
+ }
+ }
+ },
+ "cliui": {
+ "version": "6.0.0",
+ "resolved": "https://registry.nlark.com/cliui/download/cliui-6.0.0.tgz",
+ "integrity": "sha1-UR1wLAxOQcoVbX0OlgIfI+EyJbE=",
+ "dev": true,
+ "requires": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^6.2.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz",
+ "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
+ "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
+ "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
+ "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.3",
+ "resolved": "https://registry.npmmirror.com/string-width/download/string-width-4.2.3.tgz?cache=0&sync_timestamp=1632421309919&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fstring-width%2Fdownload%2Fstring-width-4.2.3.tgz",
+ "integrity": "sha1-JpxxF9J7Ba0uU2gwqOyJXvnG0BA=",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ }
+ },
+ "wrap-ansi": {
+ "version": "6.2.0",
+ "resolved": "https://registry.nlark.com/wrap-ansi/download/wrap-ansi-6.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwrap-ansi%2Fdownload%2Fwrap-ansi-6.2.0.tgz",
+ "integrity": "sha1-6Tk7oHEC5skaOyIUePAlfNKFblM=",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ }
+ }
+ }
+ },
+ "clone": {
+ "version": "1.0.4",
+ "resolved": "https://registry.nlark.com/clone/download/clone-1.0.4.tgz",
+ "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=",
+ "dev": true
+ },
+ "clone-deep": {
+ "version": "4.0.1",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "code-point-at": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmmirror.com/code-point-at/download/code-point-at-1.1.0.tgz",
+ "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
+ "dev": true
+ },
+ "collection-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/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.2.1",
+ "resolved": "https://registry.nlark.com/color/download/color-3.2.1.tgz?cache=0&sync_timestamp=1628104117021&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcolor%2Fdownload%2Fcolor-3.2.1.tgz",
+ "integrity": "sha1-NUTcGYyvRJDD7MmnkLVP6f9F4WQ=",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.3",
+ "color-string": "^1.6.0"
+ }
+ },
+ "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.6.0",
+ "resolved": "https://registry.nlark.com/color-string/download/color-string-1.6.0.tgz",
+ "integrity": "sha1-w5FfYf4mdnLLfh4GTJ1pIhn2wxI=",
+ "dev": true,
+ "requires": {
+ "color-name": "^1.0.0",
+ "simple-swizzle": "^0.2.2"
+ }
+ },
+ "combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.nlark.com/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.npmmirror.com/commander/download/commander-2.20.3.tgz?cache=0&sync_timestamp=1634886396986&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcommander%2Fdownload%2Fcommander-2.20.3.tgz",
+ "integrity": "sha1-/UhehMA+tIgcIHIrpIA16FMa6zM=",
+ "dev": true
+ },
+ "commondir": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npm.taobao.org/commondir/download/commondir-1.0.1.tgz",
+ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
+ "dev": true
+ },
+ "component-emitter": {
+ "version": "1.3.0",
+ "resolved": "https://registry.nlark.com/component-emitter/download/component-emitter-1.3.0.tgz",
+ "integrity": "sha1-FuQHD7qK4ptnnyIVhT7hgasuq8A=",
+ "dev": true
+ },
+ "compressible": {
+ "version": "2.0.18",
+ "resolved": "https://registry.nlark.com/compressible/download/compressible-2.0.18.tgz",
+ "integrity": "sha1-r1PMprBw1MPAdQ+9dyhqbXzEb7o=",
+ "dev": true,
+ "requires": {
+ "mime-db": ">= 1.43.0 < 2"
+ }
+ },
+ "compression": {
+ "version": "1.7.4",
+ "resolved": "https://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcompression%2Fdownload%2Fcompression-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": {
+ "bytes": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npm.taobao.org/bytes/download/bytes-3.0.0.tgz",
+ "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
+ "dev": true
+ },
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.nlark.com/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.npmmirror.com/ms/download/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ }
+ }
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.nlark.com/concat-map/download/concat-map-0.0.1.tgz",
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
+ "dev": true
+ },
+ "concat-stream": {
+ "version": "1.6.2",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "connect-history-api-fallback": {
+ "version": "1.6.0",
+ "resolved": "https://registry.nlark.com/connect-history-api-fallback/download/connect-history-api-fallback-1.6.0.tgz?cache=0&sync_timestamp=1618847040596&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fconnect-history-api-fallback%2Fdownload%2Fconnect-history-api-fallback-1.6.0.tgz",
+ "integrity": "sha1-izIIk1kwjRERFdgcrT/Oq4iPl7w=",
+ "dev": true
+ },
+ "console-browserify": {
+ "version": "1.2.0",
+ "resolved": "https://registry.nlark.com/console-browserify/download/console-browserify-1.2.0.tgz",
+ "integrity": "sha1-ZwY871fOts9Jk6KrOlWECujEkzY=",
+ "dev": true
+ },
+ "console-control-strings": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npm.taobao.org/console-control-strings/download/console-control-strings-1.1.0.tgz",
+ "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
+ "dev": true
+ },
+ "consolidate": {
+ "version": "0.15.1",
+ "resolved": "https://registry.nlark.com/consolidate/download/consolidate-0.15.1.tgz",
+ "integrity": "sha1-IasEMjXHGgfUXZqtmFk7DbpWurc=",
+ "dev": true,
+ "requires": {
+ "bluebird": "^3.1.1"
+ }
+ },
+ "constants-browserify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/constants-browserify/download/constants-browserify-1.0.0.tgz",
+ "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
+ "dev": true
+ },
+ "content-disposition": {
+ "version": "0.5.3",
+ "resolved": "https://registry.nlark.com/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.nlark.com/content-type/download/content-type-1.0.4.tgz",
+ "integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js=",
+ "dev": true
+ },
+ "convert-source-map": {
+ "version": "1.8.0",
+ "resolved": "https://registry.nlark.com/convert-source-map/download/convert-source-map-1.8.0.tgz",
+ "integrity": "sha1-8zc8MtIbTXgN2ABFFGhPt5HKQ2k=",
+ "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.nlark.com/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.2",
+ "resolved": "https://registry.nlark.com/copy-webpack-plugin/download/copy-webpack-plugin-5.1.2.tgz?cache=0&sync_timestamp=1624628458516&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcopy-webpack-plugin%2Fdownload%2Fcopy-webpack-plugin-5.1.2.tgz",
+ "integrity": "sha1-ioieHcr6bJHGzUvhrRWPHTgjuuI=",
+ "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": "^4.0.0",
+ "webpack-log": "^2.0.0"
+ },
+ "dependencies": {
+ "find-cache-dir": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/find-cache-dir/download/find-cache-dir-2.1.0.tgz?cache=0&sync_timestamp=1630260009898&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ffind-cache-dir%2Fdownload%2Ffind-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"
+ }
+ },
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/find-up/download/find-up-3.0.0.tgz",
+ "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "glob-parent": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/glob-parent/download/glob-parent-3.1.0.tgz",
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
+ "dev": true,
+ "requires": {
+ "is-glob": "^3.1.0",
+ "path-dirname": "^1.0.0"
+ },
+ "dependencies": {
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/is-glob/download/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.0"
+ }
+ }
+ }
+ },
+ "globby": {
+ "version": "7.1.1",
+ "resolved": "https://registry.nlark.com/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
+ }
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/locate-path/download/locate-path-3.0.0.tgz?cache=0&sync_timestamp=1629895724478&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flocate-path%2Fdownload%2Flocate-path-3.0.0.tgz",
+ "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "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"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/p-locate/download/p-locate-3.0.0.tgz",
+ "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/path-exists/download/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true
+ },
+ "pkg-dir": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/pkg-dir/download/pkg-dir-3.0.0.tgz?cache=0&sync_timestamp=1633498133295&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpkg-dir%2Fdownload%2Fpkg-dir-3.0.0.tgz",
+ "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=",
+ "dev": true,
+ "requires": {
+ "find-up": "^3.0.0"
+ }
+ },
+ "schema-utils": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1626694740261&other_urls=https%3A%2F%2Fregistry.nlark.com%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"
+ }
+ },
+ "semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.nlark.com/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz",
+ "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
+ "dev": true
+ }
+ }
+ },
+ "core-js": {
+ "version": "3.19.0",
+ "resolved": "https://registry.npmmirror.com/core-js/download/core-js-3.19.0.tgz?cache=0&sync_timestamp=1635142915013&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcore-js%2Fdownload%2Fcore-js-3.19.0.tgz",
+ "integrity": "sha1-nkAJipvDJsfoG0hqu9XhK50nUXY="
+ },
+ "core-js-compat": {
+ "version": "3.19.0",
+ "resolved": "https://registry.npmmirror.com/core-js-compat/download/core-js-compat-3.19.0.tgz",
+ "integrity": "sha1-s7k/k8hyGz7VK5HxL5ZMxBCWf4s=",
+ "dev": true,
+ "requires": {
+ "browserslist": "^4.17.5",
+ "semver": "7.0.0"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "7.0.0",
+ "resolved": "https://registry.nlark.com/semver/download/semver-7.0.0.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-7.0.0.tgz",
+ "integrity": "sha1-XzyjV2HkfgWyBsba/yz4FPAxa44=",
+ "dev": true
+ }
+ }
+ },
+ "core-util-is": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/core-util-is/download/core-util-is-1.0.2.tgz",
+ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
+ "dev": true
+ },
+ "cosmiconfig": {
+ "version": "5.2.1",
+ "resolved": "https://registry.nlark.com/cosmiconfig/download/cosmiconfig-5.2.1.tgz?cache=0&sync_timestamp=1629585969900&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcosmiconfig%2Fdownload%2Fcosmiconfig-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"
+ },
+ "dependencies": {
+ "parse-json": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ }
+ }
+ },
+ "create-ecdh": {
+ "version": "4.0.4",
+ "resolved": "https://registry.nlark.com/create-ecdh/download/create-ecdh-4.0.4.tgz",
+ "integrity": "sha1-1uf0v/pmc2CFoHYv06YyaE2rzE4=",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.1.0",
+ "elliptic": "^6.5.3"
+ },
+ "dependencies": {
+ "bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.12.0.tgz",
+ "integrity": "sha1-d1s/J477uXGO7HNh9IP7Nvu/6og=",
+ "dev": true
+ }
+ }
+ },
+ "create-hash": {
+ "version": "1.2.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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"
+ }
+ },
+ "cross-spawn": {
+ "version": "6.0.5",
+ "resolved": "https://registry.nlark.com/cross-spawn/download/cross-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.nlark.com/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-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-color-names": {
+ "version": "0.0.4",
+ "resolved": "https://registry.nlark.com/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.nlark.com/css-declaration-sorter/download/css-declaration-sorter-4.0.1.tgz?cache=0&sync_timestamp=1630965563343&other_urls=https%3A%2F%2Fregistry.nlark.com%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-loader": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmmirror.com/css-loader/download/css-loader-3.6.0.tgz?cache=0&sync_timestamp=1635298595111&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcss-loader%2Fdownload%2Fcss-loader-3.6.0.tgz",
+ "integrity": "sha1-Lkssfm4tJ/jI8o9hv/zS5ske9kU=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^5.3.1",
+ "cssesc": "^3.0.0",
+ "icss-utils": "^4.1.1",
+ "loader-utils": "^1.2.3",
+ "normalize-path": "^3.0.0",
+ "postcss": "^7.0.32",
+ "postcss-modules-extract-imports": "^2.0.0",
+ "postcss-modules-local-by-default": "^3.0.2",
+ "postcss-modules-scope": "^2.2.0",
+ "postcss-modules-values": "^3.0.0",
+ "postcss-value-parser": "^4.1.0",
+ "schema-utils": "^2.7.0",
+ "semver": "^6.3.0"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz",
+ "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=",
+ "dev": true
+ }
+ }
+ },
+ "css-select": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/css-select/download/css-select-2.1.0.tgz?cache=0&sync_timestamp=1622994276976&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcss-select%2Fdownload%2Fcss-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-tree": {
+ "version": "1.0.0-alpha.37",
+ "resolved": "https://registry.nlark.com/css-tree/download/css-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.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "css-what": {
+ "version": "3.4.2",
+ "resolved": "https://registry.npmmirror.com/css-what/download/css-what-3.4.2.tgz",
+ "integrity": "sha1-6nAm/LAXd+295SEk4h8yfnrpUOQ=",
+ "dev": true
+ },
+ "cssesc": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npm.taobao.org/cssesc/download/cssesc-3.0.0.tgz",
+ "integrity": "sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4=",
+ "dev": true
+ },
+ "cssnano": {
+ "version": "4.1.11",
+ "resolved": "https://registry.nlark.com/cssnano/download/cssnano-4.1.11.tgz?cache=0&sync_timestamp=1629280582005&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcssnano%2Fdownload%2Fcssnano-4.1.11.tgz",
+ "integrity": "sha1-x7X1uB2iacsf2YLLlgwSAJEMmpk=",
+ "dev": true,
+ "requires": {
+ "cosmiconfig": "^5.0.0",
+ "cssnano-preset-default": "^4.0.8",
+ "is-resolvable": "^1.0.0",
+ "postcss": "^7.0.0"
+ }
+ },
+ "cssnano-preset-default": {
+ "version": "4.0.8",
+ "resolved": "https://registry.nlark.com/cssnano-preset-default/download/cssnano-preset-default-4.0.8.tgz",
+ "integrity": "sha1-kgYisfwelaNOiDggPxOXpQTy0/8=",
+ "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.3",
+ "postcss-unique-selectors": "^4.0.1"
+ }
+ },
+ "cssnano-util-get-arguments": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.nlark.com/cssnano-util-same-parent/download/cssnano-util-same-parent-4.0.1.tgz",
+ "integrity": "sha1-V0CC+yhZ0ttDOFWDXZqEVuoYu/M=",
+ "dev": true
+ },
+ "csso": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npm.taobao.org/csso/download/csso-4.2.0.tgz?cache=0&sync_timestamp=1606408777341&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcsso%2Fdownload%2Fcsso-4.2.0.tgz",
+ "integrity": "sha1-6jpWE0bo3J9UbW/r7dUBh884lSk=",
+ "dev": true,
+ "requires": {
+ "css-tree": "^1.1.2"
+ },
+ "dependencies": {
+ "css-tree": {
+ "version": "1.1.3",
+ "resolved": "https://registry.nlark.com/css-tree/download/css-tree-1.1.3.tgz",
+ "integrity": "sha1-60hw+2/XcHMn7JXC/yqwm16NuR0=",
+ "dev": true,
+ "requires": {
+ "mdn-data": "2.0.14",
+ "source-map": "^0.6.1"
+ }
+ },
+ "mdn-data": {
+ "version": "2.0.14",
+ "resolved": "https://registry.nlark.com/mdn-data/download/mdn-data-2.0.14.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fmdn-data%2Fdownload%2Fmdn-data-2.0.14.tgz",
+ "integrity": "sha1-cRP8QoGRfWPOKbQ0RvcB5owlulA=",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "currently-unhandled": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npm.taobao.org/currently-unhandled/download/currently-unhandled-0.4.1.tgz",
+ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
+ "dev": true,
+ "requires": {
+ "array-find-index": "^1.0.1"
+ }
+ },
+ "cyclist": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/cyclist/download/cyclist-1.0.1.tgz",
+ "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=",
+ "dev": true
+ },
+ "dashdash": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npm.taobao.org/dashdash/download/dashdash-1.14.1.tgz?cache=0&sync_timestamp=1601073454623&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdashdash%2Fdownload%2Fdashdash-1.14.1.tgz",
+ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
+ "dev": true,
+ "requires": {
+ "assert-plus": "^1.0.0"
+ }
+ },
+ "de-indent": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/de-indent/download/de-indent-1.0.2.tgz",
+ "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=",
+ "dev": true
+ },
+ "debug": {
+ "version": "4.3.2",
+ "resolved": "https://registry.nlark.com/debug/download/debug-4.3.2.tgz",
+ "integrity": "sha1-8KScGKyHeeMdSgxgKd+3aHPHQos=",
+ "dev": true,
+ "requires": {
+ "ms": "2.1.2"
+ }
+ },
+ "decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmmirror.com/decamelize/download/decamelize-1.2.0.tgz?cache=0&sync_timestamp=1633055728451&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fdecamelize%2Fdownload%2Fdecamelize-1.2.0.tgz",
+ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
+ "dev": true
+ },
+ "decode-uri-component": {
+ "version": "0.2.0",
+ "resolved": "https://registry.nlark.com/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&sync_timestamp=1606859714626&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdeep-equal%2Fdownload%2Fdeep-equal-1.1.1.tgz",
+ "integrity": "sha1-tcmMlCzv+vfLBR4k4UNKJaLmB2o=",
+ "dev": true,
+ "requires": {
+ "is-arguments": "^1.0.4",
+ "is-date-object": "^1.0.1",
+ "is-regex": "^1.0.4",
+ "object-is": "^1.0.1",
+ "object-keys": "^1.1.1",
+ "regexp.prototype.flags": "^1.2.0"
+ }
+ },
+ "deepmerge": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npm.taobao.org/deepmerge/download/deepmerge-1.5.2.tgz",
+ "integrity": "sha1-EEmdhohEza1P7ghC34x/bwyVp1M="
+ },
+ "default-gateway": {
+ "version": "5.0.5",
+ "resolved": "https://registry.nlark.com/default-gateway/download/default-gateway-5.0.5.tgz",
+ "integrity": "sha1-T9a9XShV05s0zFpZUFSG6ar8mxA=",
+ "dev": true,
+ "requires": {
+ "execa": "^3.3.0"
+ },
+ "dependencies": {
+ "cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.nlark.com/cross-spawn/download/cross-spawn-7.0.3.tgz",
+ "integrity": "sha1-9zqFudXUHQRVUcF34ogtSshXKKY=",
+ "dev": true,
+ "requires": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ }
+ },
+ "execa": {
+ "version": "3.4.0",
+ "resolved": "https://registry.nlark.com/execa/download/execa-3.4.0.tgz?cache=0&sync_timestamp=1622825396605&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fexeca%2Fdownload%2Fexeca-3.4.0.tgz",
+ "integrity": "sha1-wI7UVQ72XYWPrCaf/IVyRG8364k=",
+ "dev": true,
+ "requires": {
+ "cross-spawn": "^7.0.0",
+ "get-stream": "^5.0.0",
+ "human-signals": "^1.1.1",
+ "is-stream": "^2.0.0",
+ "merge-stream": "^2.0.0",
+ "npm-run-path": "^4.0.0",
+ "onetime": "^5.1.0",
+ "p-finally": "^2.0.0",
+ "signal-exit": "^3.0.2",
+ "strip-final-newline": "^2.0.0"
+ }
+ },
+ "get-stream": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npm.taobao.org/get-stream/download/get-stream-5.2.0.tgz",
+ "integrity": "sha1-SWaheV7lrOZecGxLe+txJX1uItM=",
+ "dev": true,
+ "requires": {
+ "pump": "^3.0.0"
+ }
+ },
+ "is-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.nlark.com/is-stream/download/is-stream-2.0.1.tgz",
+ "integrity": "sha1-+sHj1TuXrVqdCunO8jifWBClwHc=",
+ "dev": true
+ },
+ "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
+ },
+ "npm-run-path": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmmirror.com/npm-run-path/download/npm-run-path-4.0.1.tgz",
+ "integrity": "sha1-t+zR5e1T2o43pV4cImnguX7XSOo=",
+ "dev": true,
+ "requires": {
+ "path-key": "^3.0.0"
+ }
+ },
+ "onetime": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npm.taobao.org/onetime/download/onetime-5.1.2.tgz",
+ "integrity": "sha1-0Oluu1awdHbfHdnEgG5SN5hcpF4=",
+ "dev": true,
+ "requires": {
+ "mimic-fn": "^2.1.0"
+ }
+ },
+ "p-finally": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npm.taobao.org/p-finally/download/p-finally-2.0.1.tgz",
+ "integrity": "sha1-vW/KqcVZoJa2gIBvTWV7Pw8kBWE=",
+ "dev": true
+ },
+ "path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-3.1.1.tgz?cache=0&sync_timestamp=1617971695678&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-key%2Fdownload%2Fpath-key-3.1.1.tgz",
+ "integrity": "sha1-WB9q3mWMu6ZaDTOA3ndTKVBU83U=",
+ "dev": true
+ },
+ "shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/shebang-command/download/shebang-command-2.0.0.tgz",
+ "integrity": "sha1-zNCvT4g1+9wmW4JGGq8MNmY/NOo=",
+ "dev": true,
+ "requires": {
+ "shebang-regex": "^3.0.0"
+ }
+ },
+ "shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/shebang-regex/download/shebang-regex-3.0.0.tgz?cache=0&sync_timestamp=1628896299850&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fshebang-regex%2Fdownload%2Fshebang-regex-3.0.0.tgz",
+ "integrity": "sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI=",
+ "dev": true
+ },
+ "which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.nlark.com/which/download/which-2.0.2.tgz",
+ "integrity": "sha1-fGqN0KY2oDJ+ELWckobu6T8/UbE=",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.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"
+ }
+ },
+ "define-properties": {
+ "version": "1.1.3",
+ "resolved": "https://registry.nlark.com/define-properties/download/define-properties-1.1.3.tgz?cache=0&sync_timestamp=1618847174317&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdefine-properties%2Fdownload%2Fdefine-properties-1.1.3.tgz",
+ "integrity": "sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=",
+ "dev": true,
+ "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.nlark.com/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.nlark.com/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?cache=0&sync_timestamp=1601076882347&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdel%2Fdownload%2Fdel-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.nlark.com/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
+ }
+ }
+ }
+ }
+ },
+ "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
+ },
+ "delegates": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npm.taobao.org/delegates/download/delegates-1.0.0.tgz",
+ "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
+ "dev": true
+ },
+ "depd": {
+ "version": "1.1.2",
+ "resolved": "https://registry.nlark.com/depd/download/depd-1.1.2.tgz",
+ "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
+ "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.nlark.com/destroy/download/destroy-1.0.4.tgz",
+ "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=",
+ "dev": true
+ },
+ "detect-node": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/detect-node/download/detect-node-2.1.0.tgz?cache=0&sync_timestamp=1621146954463&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdetect-node%2Fdownload%2Fdetect-node-2.1.0.tgz",
+ "integrity": "sha1-yccHdaScPQO8LAbZpzvlUPl4+LE=",
+ "dev": true
+ },
+ "diffie-hellman": {
+ "version": "5.0.3",
+ "resolved": "https://registry.nlark.com/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"
+ },
+ "dependencies": {
+ "bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.12.0.tgz",
+ "integrity": "sha1-d1s/J477uXGO7HNh9IP7Nvu/6og=",
+ "dev": true
+ }
+ }
+ },
+ "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.nlark.com/dns-equal/download/dns-equal-1.0.0.tgz",
+ "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=",
+ "dev": true
+ },
+ "dns-packet": {
+ "version": "1.3.4",
+ "resolved": "https://registry.nlark.com/dns-packet/download/dns-packet-1.3.4.tgz",
+ "integrity": "sha1-40VQZYJKJQe6iGxVqJljuxB97G8=",
+ "dev": true,
+ "requires": {
+ "ip": "^1.1.0",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "dns-txt": {
+ "version": "2.0.2",
+ "resolved": "https://registry.nlark.com/dns-txt/download/dns-txt-2.0.2.tgz",
+ "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=",
+ "dev": true,
+ "requires": {
+ "buffer-indexof": "^1.0.0"
+ }
+ },
+ "dom-converter": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npm.taobao.org/dom-converter/download/dom-converter-0.2.0.tgz",
+ "integrity": "sha1-ZyGp2u4uKTaClVtq/kFncWJ7t2g=",
+ "dev": true,
+ "requires": {
+ "utila": "~0.4"
+ }
+ },
+ "dom-serializer": {
+ "version": "0.2.2",
+ "resolved": "https://registry.nlark.com/dom-serializer/download/dom-serializer-0.2.2.tgz?cache=0&sync_timestamp=1621256830355&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdom-serializer%2Fdownload%2Fdom-serializer-0.2.2.tgz",
+ "integrity": "sha1-GvuB9TNxcXXUeGVd68XjMtn5u1E=",
+ "dev": true,
+ "requires": {
+ "domelementtype": "^2.0.1",
+ "entities": "^2.0.0"
+ },
+ "dependencies": {
+ "domelementtype": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npm.taobao.org/domelementtype/download/domelementtype-2.2.0.tgz?cache=0&sync_timestamp=1617298545989&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomelementtype%2Fdownload%2Fdomelementtype-2.2.0.tgz",
+ "integrity": "sha1-mgtsJ4LtahxzI9QiZxg9+b2LHVc=",
+ "dev": true
+ }
+ }
+ },
+ "domain-browser": {
+ "version": "1.2.0",
+ "resolved": "https://registry.nlark.com/domain-browser/download/domain-browser-1.2.0.tgz?cache=0&sync_timestamp=1627591557212&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdomain-browser%2Fdownload%2Fdomain-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?cache=0&sync_timestamp=1617298545989&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomelementtype%2Fdownload%2Fdomelementtype-1.3.1.tgz",
+ "integrity": "sha1-0EjESzew0Qp/Kj1f7j9DM9eQSB8=",
+ "dev": true
+ },
+ "domhandler": {
+ "version": "4.2.2",
+ "resolved": "https://registry.nlark.com/domhandler/download/domhandler-4.2.2.tgz?cache=0&sync_timestamp=1630246778110&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdomhandler%2Fdownload%2Fdomhandler-4.2.2.tgz",
+ "integrity": "sha1-6CXXIdGahrjCAaNSZOImxnjudV8=",
+ "dev": true,
+ "requires": {
+ "domelementtype": "^2.2.0"
+ },
+ "dependencies": {
+ "domelementtype": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npm.taobao.org/domelementtype/download/domelementtype-2.2.0.tgz?cache=0&sync_timestamp=1617298545989&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomelementtype%2Fdownload%2Fdomelementtype-2.2.0.tgz",
+ "integrity": "sha1-mgtsJ4LtahxzI9QiZxg9+b2LHVc=",
+ "dev": true
+ }
+ }
+ },
+ "domutils": {
+ "version": "1.7.0",
+ "resolved": "https://registry.nlark.com/domutils/download/domutils-1.7.0.tgz?cache=0&sync_timestamp=1630106606599&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdomutils%2Fdownload%2Fdomutils-1.7.0.tgz",
+ "integrity": "sha1-Vuo0HoNOBuZ0ivehyyXaZ+qfjCo=",
+ "dev": true,
+ "requires": {
+ "dom-serializer": "0",
+ "domelementtype": "1"
+ }
+ },
+ "dot-prop": {
+ "version": "5.3.0",
+ "resolved": "https://registry.nlark.com/dot-prop/download/dot-prop-5.3.0.tgz",
+ "integrity": "sha1-kMzOcIzZzYLMTcjD3dmr3VWyDog=",
+ "dev": true,
+ "requires": {
+ "is-obj": "^2.0.0"
+ }
+ },
+ "dotenv": {
+ "version": "8.6.0",
+ "resolved": "https://registry.nlark.com/dotenv/download/dotenv-8.6.0.tgz",
+ "integrity": "sha1-Bhr2ZNGff02PxuT/m1hM4jety4s=",
+ "dev": true
+ },
+ "dotenv-expand": {
+ "version": "5.1.0",
+ "resolved": "https://registry.nlark.com/dotenv-expand/download/dotenv-expand-5.1.0.tgz",
+ "integrity": "sha1-P7rwIL/XlIhAcuomsel5HUWmKfA=",
+ "dev": true
+ },
+ "duplexer": {
+ "version": "0.1.2",
+ "resolved": "https://registry.nlark.com/duplexer/download/duplexer-0.1.2.tgz",
+ "integrity": "sha1-Or5DrvODX4rgd9E23c4PJ2sEAOY=",
+ "dev": true
+ },
+ "duplexify": {
+ "version": "3.7.1",
+ "resolved": "https://registry.nlark.com/duplexify/download/duplexify-3.7.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fduplexify%2Fdownload%2Fduplexify-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"
+ }
+ },
+ "easy-stack": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/easy-stack/download/easy-stack-1.0.1.tgz",
+ "integrity": "sha1-iv5CZGJpiMq7EfPHBMzQyDVBEGY=",
+ "dev": true
+ },
+ "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"
+ }
+ },
+ "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
+ },
+ "ejs": {
+ "version": "2.7.4",
+ "resolved": "https://registry.nlark.com/ejs/download/ejs-2.7.4.tgz",
+ "integrity": "sha1-SGYSh1c9zFPjZsehrlLDoSDuybo=",
+ "dev": true
+ },
+ "electron-to-chromium": {
+ "version": "1.3.885",
+ "resolved": "https://registry.npmmirror.com/electron-to-chromium/download/electron-to-chromium-1.3.885.tgz",
+ "integrity": "sha1-yM7DL7xhNkEnhJrgDyOVobrnxFQ=",
+ "dev": true
+ },
+ "element-ui": {
+ "version": "2.15.6",
+ "resolved": "https://registry.nlark.com/element-ui/download/element-ui-2.15.6.tgz",
+ "integrity": "sha1-yWCa3TWvWmhqS3aF3B11fHXgHfM=",
+ "requires": {
+ "async-validator": "~1.8.1",
+ "babel-helper-vue-jsx-merge-props": "^2.0.0",
+ "deepmerge": "^1.2.0",
+ "normalize-wheel": "^1.0.1",
+ "resize-observer-polyfill": "^1.5.0",
+ "throttle-debounce": "^1.0.1"
+ }
+ },
+ "elliptic": {
+ "version": "6.5.4",
+ "resolved": "https://registry.npm.taobao.org/elliptic/download/elliptic-6.5.4.tgz",
+ "integrity": "sha1-2jfOvTHnmhNn6UG1ku0fvr1Yq7s=",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.11.9",
+ "brorand": "^1.1.0",
+ "hash.js": "^1.0.0",
+ "hmac-drbg": "^1.0.1",
+ "inherits": "^2.0.4",
+ "minimalistic-assert": "^1.0.1",
+ "minimalistic-crypto-utils": "^1.0.1"
+ },
+ "dependencies": {
+ "bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.12.0.tgz",
+ "integrity": "sha1-d1s/J477uXGO7HNh9IP7Nvu/6og=",
+ "dev": true
+ }
+ }
+ },
+ "emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmmirror.com/emoji-regex/download/emoji-regex-8.0.0.tgz?cache=0&sync_timestamp=1632751333727&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Femoji-regex%2Fdownload%2Femoji-regex-8.0.0.tgz",
+ "integrity": "sha1-6Bj9ac5cz8tARZT4QpY79TFkzDc=",
+ "dev": true
+ },
+ "emojis-list": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npm.taobao.org/emojis-list/download/emojis-list-3.0.0.tgz",
+ "integrity": "sha1-VXBmIEatKeLpFucariYKvf9Pang=",
+ "dev": true
+ },
+ "encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/encodeurl/download/encodeurl-1.0.2.tgz",
+ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
+ "dev": true
+ },
+ "end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.nlark.com/end-of-stream/download/end-of-stream-1.4.4.tgz",
+ "integrity": "sha1-WuZKX0UFe682JuwU2gyl5LJDHrA=",
+ "dev": true,
+ "requires": {
+ "once": "^1.4.0"
+ }
+ },
+ "enhanced-resolve": {
+ "version": "4.5.0",
+ "resolved": "https://registry.nlark.com/enhanced-resolve/download/enhanced-resolve-4.5.0.tgz?cache=0&sync_timestamp=1632130769099&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.5.0.tgz",
+ "integrity": "sha1-Lzz9hNvjtIfxjy2y7x4GSlccpew=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "memory-fs": "^0.5.0",
+ "tapable": "^1.0.0"
+ },
+ "dependencies": {
+ "memory-fs": {
+ "version": "0.5.0",
+ "resolved": "https://registry.nlark.com/memory-fs/download/memory-fs-0.5.0.tgz",
+ "integrity": "sha1-MkwBKIuIZSlm0WHbd4OHIIRajjw=",
+ "dev": true,
+ "requires": {
+ "errno": "^0.1.3",
+ "readable-stream": "^2.0.1"
+ }
+ }
+ }
+ },
+ "entities": {
+ "version": "2.2.0",
+ "resolved": "https://registry.nlark.com/entities/download/entities-2.2.0.tgz?cache=0&sync_timestamp=1628508189267&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fentities%2Fdownload%2Fentities-2.2.0.tgz",
+ "integrity": "sha1-CY3JDruD2N/6CJ1VJWs1HTTE2lU=",
+ "dev": true
+ },
+ "errno": {
+ "version": "0.1.8",
+ "resolved": "https://registry.nlark.com/errno/download/errno-0.1.8.tgz",
+ "integrity": "sha1-i7Ppx9Rjvkl2/4iPdrSAnrwugR8=",
+ "dev": true,
+ "requires": {
+ "prr": "~1.0.1"
+ }
+ },
+ "error-ex": {
+ "version": "1.3.2",
+ "resolved": "https://registry.nlark.com/error-ex/download/error-ex-1.3.2.tgz",
+ "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=",
+ "dev": true,
+ "requires": {
+ "is-arrayish": "^0.2.1"
+ }
+ },
+ "error-stack-parser": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npm.taobao.org/error-stack-parser/download/error-stack-parser-2.0.6.tgz",
+ "integrity": "sha1-WpmnB716TFinl5AtSNgoA+3mqtg=",
+ "dev": true,
+ "requires": {
+ "stackframe": "^1.1.1"
+ }
+ },
+ "es-abstract": {
+ "version": "1.19.1",
+ "resolved": "https://registry.npmmirror.com/es-abstract/download/es-abstract-1.19.1.tgz?cache=0&sync_timestamp=1633234313248&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fes-abstract%2Fdownload%2Fes-abstract-1.19.1.tgz",
+ "integrity": "sha1-1IhXlodpFpWd547aoN9FZicRXsM=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "es-to-primitive": "^1.2.1",
+ "function-bind": "^1.1.1",
+ "get-intrinsic": "^1.1.1",
+ "get-symbol-description": "^1.0.0",
+ "has": "^1.0.3",
+ "has-symbols": "^1.0.2",
+ "internal-slot": "^1.0.3",
+ "is-callable": "^1.2.4",
+ "is-negative-zero": "^2.0.1",
+ "is-regex": "^1.1.4",
+ "is-shared-array-buffer": "^1.0.1",
+ "is-string": "^1.0.7",
+ "is-weakref": "^1.0.1",
+ "object-inspect": "^1.11.0",
+ "object-keys": "^1.1.1",
+ "object.assign": "^4.1.2",
+ "string.prototype.trimend": "^1.0.4",
+ "string.prototype.trimstart": "^1.0.4",
+ "unbox-primitive": "^1.0.1"
+ }
+ },
+ "es-to-primitive": {
+ "version": "1.2.1",
+ "resolved": "https://registry.nlark.com/es-to-primitive/download/es-to-primitive-1.2.1.tgz",
+ "integrity": "sha1-5VzUyc3BiLzvsDs2bHNjI/xciYo=",
+ "dev": true,
+ "requires": {
+ "is-callable": "^1.1.4",
+ "is-date-object": "^1.0.1",
+ "is-symbol": "^1.0.2"
+ }
+ },
+ "escalade": {
+ "version": "3.1.1",
+ "resolved": "https://registry.nlark.com/escalade/download/escalade-3.1.1.tgz",
+ "integrity": "sha1-2M/ccACWXFoBdLSoLqpcBVJ0LkA=",
+ "dev": true
+ },
+ "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.nlark.com/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.nlark.com/eslint-scope/download/eslint-scope-4.0.3.tgz",
+ "integrity": "sha1-ygODMxD2iJoyZHgaqC5j65z+eEg=",
+ "dev": true,
+ "requires": {
+ "esrecurse": "^4.1.0",
+ "estraverse": "^4.1.1"
+ }
+ },
+ "esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.nlark.com/esprima/download/esprima-4.0.1.tgz",
+ "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=",
+ "dev": true
+ },
+ "esrecurse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.nlark.com/esrecurse/download/esrecurse-4.3.0.tgz",
+ "integrity": "sha1-eteWTWeauyi+5yzsY3WLHF0smSE=",
+ "dev": true,
+ "requires": {
+ "estraverse": "^5.2.0"
+ },
+ "dependencies": {
+ "estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmmirror.com/estraverse/download/estraverse-5.3.0.tgz?cache=0&sync_timestamp=1635237706876&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Festraverse%2Fdownload%2Festraverse-5.3.0.tgz",
+ "integrity": "sha1-LupSkHAvJquP5TcDcP+GyWXSESM=",
+ "dev": true
+ }
+ }
+ },
+ "estraverse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmmirror.com/estraverse/download/estraverse-4.3.0.tgz?cache=0&sync_timestamp=1635237706876&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Festraverse%2Fdownload%2Festraverse-4.3.0.tgz",
+ "integrity": "sha1-OYrT88WiSUi+dyXoPRGn3ijNvR0=",
+ "dev": true
+ },
+ "esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.nlark.com/esutils/download/esutils-2.0.3.tgz",
+ "integrity": "sha1-dNLrTeC42hKTcRkQ1Qd1ubcQ72Q=",
+ "dev": true
+ },
+ "etag": {
+ "version": "1.8.1",
+ "resolved": "https://registry.nlark.com/etag/download/etag-1.8.1.tgz",
+ "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=",
+ "dev": true
+ },
+ "event-pubsub": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npm.taobao.org/event-pubsub/download/event-pubsub-4.3.0.tgz?cache=0&sync_timestamp=1606361507592&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fevent-pubsub%2Fdownload%2Fevent-pubsub-4.3.0.tgz",
+ "integrity": "sha1-9o2Ba8KfHsAsU53FjI3UDOcss24=",
+ "dev": true
+ },
+ "eventemitter3": {
+ "version": "4.0.7",
+ "resolved": "https://registry.nlark.com/eventemitter3/download/eventemitter3-4.0.7.tgz",
+ "integrity": "sha1-Lem2j2Uo1WRO9cWVJqG0oHMGFp8=",
+ "dev": true
+ },
+ "events": {
+ "version": "3.3.0",
+ "resolved": "https://registry.nlark.com/events/download/events-3.3.0.tgz",
+ "integrity": "sha1-Mala0Kkk4tLEGagTrrLE6HjqdAA=",
+ "dev": true
+ },
+ "eventsource": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npm.taobao.org/eventsource/download/eventsource-1.1.0.tgz?cache=0&sync_timestamp=1616041716084&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feventsource%2Fdownload%2Feventsource-1.1.0.tgz",
+ "integrity": "sha1-AOjKfJIQnpSw3fMtrGd9hBAoz68=",
+ "dev": true,
+ "requires": {
+ "original": "^1.0.0"
+ }
+ },
+ "evp_bytestokey": {
+ "version": "1.0.3",
+ "resolved": "https://registry.nlark.com/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.nlark.com/execa/download/execa-1.0.0.tgz?cache=0&sync_timestamp=1622825396605&other_urls=https%3A%2F%2Fregistry.nlark.com%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"
+ }
+ },
+ "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.nlark.com/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.nlark.com/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.npmmirror.com/ms/download/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ }
+ }
+ },
+ "express": {
+ "version": "4.17.1",
+ "resolved": "https://registry.nlark.com/express/download/express-4.17.1.tgz?cache=0&sync_timestamp=1618847120573&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fexpress%2Fdownload%2Fexpress-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": {
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.nlark.com/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.npmmirror.com/ms/download/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ },
+ "qs": {
+ "version": "6.7.0",
+ "resolved": "https://registry.nlark.com/qs/download/qs-6.7.0.tgz",
+ "integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw=",
+ "dev": true
+ }
+ }
+ },
+ "extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.nlark.com/extend/download/extend-3.0.2.tgz",
+ "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo=",
+ "dev": true
+ },
+ "extend-shallow": {
+ "version": "3.0.2",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ }
+ }
+ },
+ "extglob": {
+ "version": "2.0.4",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.nlark.com/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.nlark.com/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": "3.1.3",
+ "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha1-On1WtVnWy8PrUSMlJE5hmmXGxSU=",
+ "dev": true
+ },
+ "fast-glob": {
+ "version": "2.2.7",
+ "resolved": "https://registry.nlark.com/fast-glob/download/fast-glob-2.2.7.tgz",
+ "integrity": "sha1-aVOFfDr6R1//ku5gFdUtpwpM050=",
+ "dev": true,
+ "requires": {
+ "@mrmlnc/readdir-enhanced": "^2.2.1",
+ "@nodelib/fs.stat": "^1.1.2",
+ "glob-parent": "^3.1.0",
+ "is-glob": "^4.0.0",
+ "merge2": "^1.2.3",
+ "micromatch": "^3.1.10"
+ },
+ "dependencies": {
+ "glob-parent": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/glob-parent/download/glob-parent-3.1.0.tgz",
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
+ "dev": true,
+ "requires": {
+ "is-glob": "^3.1.0",
+ "path-dirname": "^1.0.0"
+ },
+ "dependencies": {
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/is-glob/download/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.0"
+ }
+ }
+ }
+ }
+ }
+ },
+ "fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM=",
+ "dev": true
+ },
+ "faye-websocket": {
+ "version": "0.11.4",
+ "resolved": "https://registry.nlark.com/faye-websocket/download/faye-websocket-0.11.4.tgz",
+ "integrity": "sha1-fw2Sdc/dhqHJY9yLZfzEUe3Lsdo=",
+ "dev": true,
+ "requires": {
+ "websocket-driver": ">=0.5.1"
+ }
+ },
+ "figgy-pudding": {
+ "version": "3.5.2",
+ "resolved": "https://registry.nlark.com/figgy-pudding/download/figgy-pudding-3.5.2.tgz",
+ "integrity": "sha1-tO7oFIq7Adzx0aw0Nn1Z4S+mHW4=",
+ "dev": true
+ },
+ "file-loader": {
+ "version": "4.3.0",
+ "resolved": "https://registry.nlark.com/file-loader/download/file-loader-4.3.0.tgz",
+ "integrity": "sha1-eA8ED3KbPRgBnyBgX3I+hEuKWK8=",
+ "dev": true,
+ "requires": {
+ "loader-utils": "^1.2.3",
+ "schema-utils": "^2.5.0"
+ }
+ },
+ "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
+ },
+ "filesize": {
+ "version": "3.6.1",
+ "resolved": "https://registry.npmmirror.com/filesize/download/filesize-3.6.1.tgz?cache=0&sync_timestamp=1635390854147&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Ffilesize%2Fdownload%2Ffilesize-3.6.1.tgz",
+ "integrity": "sha1-CQuz7gG2+AGoqL6Z0xcQs0Irsxc=",
+ "dev": true
+ },
+ "fill-range": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/extend-shallow/download/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "finalhandler": {
+ "version": "1.1.2",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.npmmirror.com/ms/download/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ }
+ }
+ },
+ "find-cache-dir": {
+ "version": "3.3.2",
+ "resolved": "https://registry.nlark.com/find-cache-dir/download/find-cache-dir-3.3.2.tgz?cache=0&sync_timestamp=1630260009898&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ffind-cache-dir%2Fdownload%2Ffind-cache-dir-3.3.2.tgz",
+ "integrity": "sha1-swxbbv8HMHMa6pu9nb7L2AJW1ks=",
+ "dev": true,
+ "requires": {
+ "commondir": "^1.0.1",
+ "make-dir": "^3.0.2",
+ "pkg-dir": "^4.1.0"
+ }
+ },
+ "find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/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"
+ }
+ },
+ "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.14.4",
+ "resolved": "https://registry.nlark.com/follow-redirects/download/follow-redirects-1.14.4.tgz?cache=0&sync_timestamp=1631622163078&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ffollow-redirects%2Fdownload%2Ffollow-redirects-1.14.4.tgz",
+ "integrity": "sha1-g4/fSKi73XnlLuUfsclOPtmLk3k="
+ },
+ "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.2.0",
+ "resolved": "https://registry.nlark.com/forwarded/download/forwarded-0.2.0.tgz?cache=0&sync_timestamp=1622503408398&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fforwarded%2Fdownload%2Fforwarded-0.2.0.tgz",
+ "integrity": "sha1-ImmTZCiq1MFcfr6XeahL8LKoGBE=",
+ "dev": true
+ },
+ "fragment-cache": {
+ "version": "0.2.1",
+ "resolved": "https://registry.nlark.com/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-extra": {
+ "version": "7.0.1",
+ "resolved": "https://registry.nlark.com/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-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.nlark.com/fs.realpath/download/fs.realpath-1.0.0.tgz",
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+ "dev": true
+ },
+ "fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.nlark.com/fsevents/download/fsevents-2.3.2.tgz",
+ "integrity": "sha1-ilJveLj99GI7cJ4Ll1xSwkwC/Ro=",
+ "dev": true,
+ "optional": true
+ },
+ "fstream": {
+ "version": "1.0.12",
+ "resolved": "https://registry.npm.taobao.org/fstream/download/fstream-1.0.12.tgz",
+ "integrity": "sha1-Touo7i1Ivk99DeUFRVVI6uWTIEU=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "inherits": "~2.0.0",
+ "mkdirp": ">=0.5 0",
+ "rimraf": "2"
+ }
+ },
+ "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=",
+ "dev": true
+ },
+ "gauge": {
+ "version": "2.7.4",
+ "resolved": "https://registry.nlark.com/gauge/download/gauge-2.7.4.tgz",
+ "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
+ "dev": 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"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-2.1.1.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-2.1.1.tgz",
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
+ "dev": true
+ },
+ "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=",
+ "dev": true,
+ "requires": {
+ "number-is-nan": "^1.0.0"
+ }
+ },
+ "string-width": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/string-width/download/string-width-1.0.2.tgz?cache=0&sync_timestamp=1632421309919&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fstring-width%2Fdownload%2Fstring-width-1.0.2.tgz",
+ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
+ "dev": true,
+ "requires": {
+ "code-point-at": "^1.0.0",
+ "is-fullwidth-code-point": "^1.0.0",
+ "strip-ansi": "^3.0.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-3.0.1.tgz",
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ }
+ }
+ },
+ "gaze": {
+ "version": "1.1.3",
+ "resolved": "https://registry.nlark.com/gaze/download/gaze-1.1.3.tgz",
+ "integrity": "sha1-xEFzPhO5J6yMD/C0w7Az8ogSkko=",
+ "dev": true,
+ "requires": {
+ "globule": "^1.0.0"
+ }
+ },
+ "gensync": {
+ "version": "1.0.0-beta.2",
+ "resolved": "https://registry.npm.taobao.org/gensync/download/gensync-1.0.0-beta.2.tgz",
+ "integrity": "sha1-MqbudsPX9S1GsrGuXZP+qFgKJeA=",
+ "dev": true
+ },
+ "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
+ },
+ "get-intrinsic": {
+ "version": "1.1.1",
+ "resolved": "https://registry.nlark.com/get-intrinsic/download/get-intrinsic-1.1.1.tgz",
+ "integrity": "sha1-FfWfN2+FXERpY5SPDSTNNje0q8Y=",
+ "dev": true,
+ "requires": {
+ "function-bind": "^1.1.1",
+ "has": "^1.0.3",
+ "has-symbols": "^1.0.1"
+ }
+ },
+ "get-stdin": {
+ "version": "4.0.1",
+ "resolved": "https://registry.nlark.com/get-stdin/download/get-stdin-4.0.1.tgz",
+ "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
+ "dev": true
+ },
+ "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-symbol-description": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/get-symbol-description/download/get-symbol-description-1.0.0.tgz",
+ "integrity": "sha1-f9uByQAQH71WTdXxowr1qtweWNY=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "get-intrinsic": "^1.1.1"
+ }
+ },
+ "get-value": {
+ "version": "2.0.6",
+ "resolved": "https://registry.nlark.com/get-value/download/get-value-2.0.6.tgz",
+ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
+ "dev": true
+ },
+ "getpass": {
+ "version": "0.1.7",
+ "resolved": "https://registry.nlark.com/getpass/download/getpass-0.1.7.tgz",
+ "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
+ "dev": true,
+ "requires": {
+ "assert-plus": "^1.0.0"
+ }
+ },
+ "glob": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmmirror.com/glob/download/glob-7.2.0.tgz?cache=0&sync_timestamp=1632353796482&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fglob%2Fdownload%2Fglob-7.2.0.tgz",
+ "integrity": "sha1-0VU1r3cy4C6Uj0xBYovZECk/YCM=",
+ "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": "5.1.2",
+ "resolved": "https://registry.npmmirror.com/glob-parent/download/glob-parent-5.1.2.tgz",
+ "integrity": "sha1-hpgyxYA0/mikCTwX3BXoNA2EAcQ=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "is-glob": "^4.0.1"
+ }
+ },
+ "glob-to-regexp": {
+ "version": "0.3.0",
+ "resolved": "https://registry.nlark.com/glob-to-regexp/download/glob-to-regexp-0.3.0.tgz",
+ "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=",
+ "dev": true
+ },
+ "globals": {
+ "version": "11.12.0",
+ "resolved": "https://registry.npmmirror.com/globals/download/globals-11.12.0.tgz?cache=0&sync_timestamp=1635390798667&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fglobals%2Fdownload%2Fglobals-11.12.0.tgz",
+ "integrity": "sha1-q4eVM4hooLq9hSV1gBjCp+uVxC4=",
+ "dev": true
+ },
+ "globby": {
+ "version": "9.2.0",
+ "resolved": "https://registry.nlark.com/globby/download/globby-9.2.0.tgz",
+ "integrity": "sha1-/QKacGxwPSm90XD0tts6P3p8tj0=",
+ "dev": true,
+ "requires": {
+ "@types/glob": "^7.1.1",
+ "array-union": "^1.0.2",
+ "dir-glob": "^2.2.2",
+ "fast-glob": "^2.2.6",
+ "glob": "^7.1.3",
+ "ignore": "^4.0.3",
+ "pify": "^4.0.1",
+ "slash": "^2.0.0"
+ },
+ "dependencies": {
+ "ignore": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npm.taobao.org/ignore/download/ignore-4.0.6.tgz",
+ "integrity": "sha1-dQ49tYYgh7RzfrrIIH/9HvJ7Jfw=",
+ "dev": true
+ },
+ "slash": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/slash/download/slash-2.0.0.tgz",
+ "integrity": "sha1-3lUoUaF1nfOo8gZTVEL17E3eq0Q=",
+ "dev": true
+ }
+ }
+ },
+ "globule": {
+ "version": "1.3.3",
+ "resolved": "https://registry.nlark.com/globule/download/globule-1.3.3.tgz",
+ "integrity": "sha1-gRkZ7qwatzROkF8uO+gKE0R5c8I=",
+ "dev": true,
+ "requires": {
+ "glob": "~7.1.1",
+ "lodash": "~4.17.10",
+ "minimatch": "~3.0.2"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "7.1.7",
+ "resolved": "https://registry.npmmirror.com/glob/download/glob-7.1.7.tgz?cache=0&sync_timestamp=1632353796482&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fglob%2Fdownload%2Fglob-7.1.7.tgz",
+ "integrity": "sha1-Oxk+kjPwHULQs/eClLvutBj5SpA=",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ }
+ }
+ },
+ "graceful-fs": {
+ "version": "4.2.8",
+ "resolved": "https://registry.nlark.com/graceful-fs/download/graceful-fs-4.2.8.tgz?cache=0&sync_timestamp=1628194078324&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fgraceful-fs%2Fdownload%2Fgraceful-fs-4.2.8.tgz",
+ "integrity": "sha1-5BK40z9eAGWTy9PO5t+fLOu+gCo=",
+ "dev": true
+ },
+ "gzip-size": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npm.taobao.org/gzip-size/download/gzip-size-5.1.1.tgz",
+ "integrity": "sha1-y5vuaS+HwGErIyhAqHOQTkwTUnQ=",
+ "dev": true,
+ "requires": {
+ "duplexer": "^0.1.1",
+ "pify": "^4.0.1"
+ }
+ },
+ "handle-thing": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npm.taobao.org/handle-thing/download/handle-thing-2.0.1.tgz",
+ "integrity": "sha1-hX95zjWVgMNA1DCBzGSJcNC7I04=",
+ "dev": true
+ },
+ "har-schema": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/har-schema/download/har-schema-2.0.0.tgz",
+ "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
+ "dev": true
+ },
+ "har-validator": {
+ "version": "5.1.5",
+ "resolved": "https://registry.nlark.com/har-validator/download/har-validator-5.1.5.tgz",
+ "integrity": "sha1-HwgDufjLIMD6E4It8ezds2veHv0=",
+ "dev": true,
+ "requires": {
+ "ajv": "^6.12.3",
+ "har-schema": "^2.0.0"
+ }
+ },
+ "has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.nlark.com/has/download/has-1.0.3.tgz",
+ "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=",
+ "dev": true,
+ "requires": {
+ "function-bind": "^1.1.1"
+ }
+ },
+ "has-ansi": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/has-ansi/download/has-ansi-2.0.0.tgz?cache=0&sync_timestamp=1631556755105&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhas-ansi%2Fdownload%2Fhas-ansi-2.0.0.tgz",
+ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-2.1.1.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-2.1.1.tgz",
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
+ "dev": true
+ }
+ }
+ },
+ "has-bigints": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npm.taobao.org/has-bigints/download/has-bigints-1.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-bigints%2Fdownload%2Fhas-bigints-1.0.1.tgz",
+ "integrity": "sha1-ZP5qywIGc+O3jbA1pa9pqp0HsRM=",
+ "dev": true
+ },
+ "has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/has-flag/download/has-flag-3.0.0.tgz",
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+ "dev": true
+ },
+ "has-symbols": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/has-symbols/download/has-symbols-1.0.2.tgz",
+ "integrity": "sha1-Fl0wcMADCXUqEjakeTMeOsVvFCM=",
+ "dev": true
+ },
+ "has-tostringtag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/has-tostringtag/download/has-tostringtag-1.0.0.tgz?cache=0&sync_timestamp=1628196402801&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhas-tostringtag%2Fdownload%2Fhas-tostringtag-1.0.0.tgz",
+ "integrity": "sha1-fhM4GKfTlHNPlB5zw9P5KR5liyU=",
+ "dev": true,
+ "requires": {
+ "has-symbols": "^1.0.2"
+ }
+ },
+ "has-unicode": {
+ "version": "2.0.1",
+ "resolved": "https://registry.nlark.com/has-unicode/download/has-unicode-2.0.1.tgz",
+ "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
+ "dev": true
+ },
+ "has-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/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": {
+ "kind-of": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/kind-of/download/kind-of-4.0.0.tgz",
+ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "hash-base": {
+ "version": "3.1.0",
+ "resolved": "https://registry.nlark.com/hash-base/download/hash-base-3.1.0.tgz",
+ "integrity": "sha1-VcOB2eBuHSmXqIO0o/3f5/DTrzM=",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.4",
+ "readable-stream": "^3.6.0",
+ "safe-buffer": "^5.2.0"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "3.6.0",
+ "resolved": "https://registry.nlark.com/readable-stream/download/readable-stream-3.6.0.tgz",
+ "integrity": "sha1-M3u9o63AcGvT4CRCaihtS0sskZg=",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ }
+ },
+ "safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.nlark.com/safe-buffer/download/safe-buffer-5.2.1.tgz",
+ "integrity": "sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=",
+ "dev": true
+ }
+ }
+ },
+ "hash-sum": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npm.taobao.org/hash-sum/download/hash-sum-2.0.0.tgz",
+ "integrity": "sha1-gdAbtd6OpKIUrV1urRtSNGCwtFo=",
+ "dev": true
+ },
+ "hash.js": {
+ "version": "1.1.7",
+ "resolved": "https://registry.nlark.com/hash.js/download/hash.js-1.1.7.tgz?cache=0&sync_timestamp=1622643346539&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhash.js%2Fdownload%2Fhash.js-1.1.7.tgz",
+ "integrity": "sha1-C6vKU46NTuSg+JiNaIZlN6ADz0I=",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.3",
+ "minimalistic-assert": "^1.0.1"
+ }
+ },
+ "he": {
+ "version": "1.2.0",
+ "resolved": "https://registry.nlark.com/he/download/he-1.2.0.tgz",
+ "integrity": "sha1-hK5l+n6vsWX922FWauFLrwVmTw8=",
+ "dev": true
+ },
+ "hex-color-regex": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/hex-color-regex/download/hex-color-regex-1.1.0.tgz",
+ "integrity": "sha1-TAb8y0YC/iYCs8k9+C1+fb8aio4=",
+ "dev": true
+ },
+ "highlight.js": {
+ "version": "10.7.3",
+ "resolved": "https://registry.npmmirror.com/highlight.js/download/highlight.js-10.7.3.tgz",
+ "integrity": "sha1-aXJy45kTVuQMPKxWanTu9oF1ZTE=",
+ "dev": true
+ },
+ "hmac-drbg": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "hoopy": {
+ "version": "0.1.4",
+ "resolved": "https://registry.nlark.com/hoopy/download/hoopy-0.1.4.tgz",
+ "integrity": "sha1-YJIH1mEQADOpqUAq096mdzgcGx0=",
+ "dev": true
+ },
+ "hosted-git-info": {
+ "version": "2.8.9",
+ "resolved": "https://registry.nlark.com/hosted-git-info/download/hosted-git-info-2.8.9.tgz",
+ "integrity": "sha1-3/wL+aIcAiCQkPKqaUKeFBTa8/k=",
+ "dev": true
+ },
+ "hpack.js": {
+ "version": "2.1.6",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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-entities": {
+ "version": "1.4.0",
+ "resolved": "https://registry.nlark.com/html-entities/download/html-entities-1.4.0.tgz",
+ "integrity": "sha1-z70bAdKvr5rcobEK59/6uYxx0tw=",
+ "dev": true
+ },
+ "html-minifier": {
+ "version": "3.5.21",
+ "resolved": "https://registry.nlark.com/html-minifier/download/html-minifier-3.5.21.tgz",
+ "integrity": "sha1-0AQOBUcw41TbAIRjWTGUAVIS0gw=",
+ "dev": true,
+ "requires": {
+ "camel-case": "3.0.x",
+ "clean-css": "4.2.x",
+ "commander": "2.17.x",
+ "he": "1.2.x",
+ "param-case": "2.1.x",
+ "relateurl": "0.2.x",
+ "uglify-js": "3.4.x"
+ },
+ "dependencies": {
+ "commander": {
+ "version": "2.17.1",
+ "resolved": "https://registry.npmmirror.com/commander/download/commander-2.17.1.tgz?cache=0&sync_timestamp=1634886396986&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcommander%2Fdownload%2Fcommander-2.17.1.tgz",
+ "integrity": "sha1-vXerfebelCBc6sxy8XFtKfIKd78=",
+ "dev": true
+ }
+ }
+ },
+ "html-tags": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npm.taobao.org/html-tags/download/html-tags-3.1.0.tgz",
+ "integrity": "sha1-e15vfmZen7QfMAB+2eDUHpf7IUA=",
+ "dev": true
+ },
+ "html-webpack-plugin": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmmirror.com/html-webpack-plugin/download/html-webpack-plugin-3.2.0.tgz",
+ "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=",
+ "dev": true,
+ "requires": {
+ "html-minifier": "^3.2.3",
+ "loader-utils": "^0.2.16",
+ "lodash": "^4.17.3",
+ "pretty-error": "^2.0.2",
+ "tapable": "^1.0.0",
+ "toposort": "^1.0.0",
+ "util.promisify": "1.0.0"
+ },
+ "dependencies": {
+ "big.js": {
+ "version": "3.2.0",
+ "resolved": "https://registry.nlark.com/big.js/download/big.js-3.2.0.tgz",
+ "integrity": "sha1-pfwpi4G54Nyi5FiCR4S2XFK6WI4=",
+ "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
+ },
+ "json5": {
+ "version": "0.5.1",
+ "resolved": "https://registry.nlark.com/json5/download/json5-0.5.1.tgz",
+ "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
+ "dev": true
+ },
+ "loader-utils": {
+ "version": "0.2.17",
+ "resolved": "https://registry.npmmirror.com/loader-utils/download/loader-utils-0.2.17.tgz?cache=0&sync_timestamp=1635579199157&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Floader-utils%2Fdownload%2Floader-utils-0.2.17.tgz",
+ "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=",
+ "dev": true,
+ "requires": {
+ "big.js": "^3.1.3",
+ "emojis-list": "^2.0.0",
+ "json5": "^0.5.0",
+ "object-assign": "^4.0.1"
+ }
+ },
+ "util.promisify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npm.taobao.org/util.promisify/download/util.promisify-1.0.0.tgz?cache=0&sync_timestamp=1610159895694&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Futil.promisify%2Fdownload%2Futil.promisify-1.0.0.tgz",
+ "integrity": "sha1-RA9xZaRZyaFtwUXrjnLzVocJcDA=",
+ "dev": true,
+ "requires": {
+ "define-properties": "^1.1.2",
+ "object.getownpropertydescriptors": "^2.0.3"
+ }
+ }
+ }
+ },
+ "htmlparser2": {
+ "version": "6.1.0",
+ "resolved": "https://registry.nlark.com/htmlparser2/download/htmlparser2-6.1.0.tgz",
+ "integrity": "sha1-xNditsM3GgXb5l6UrkOp+EX7j7c=",
+ "dev": true,
+ "requires": {
+ "domelementtype": "^2.0.1",
+ "domhandler": "^4.0.0",
+ "domutils": "^2.5.2",
+ "entities": "^2.0.0"
+ },
+ "dependencies": {
+ "dom-serializer": {
+ "version": "1.3.2",
+ "resolved": "https://registry.nlark.com/dom-serializer/download/dom-serializer-1.3.2.tgz?cache=0&sync_timestamp=1621256830355&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdom-serializer%2Fdownload%2Fdom-serializer-1.3.2.tgz",
+ "integrity": "sha1-YgZDfTLO767HFhgDIwx6ILwbTZE=",
+ "dev": true,
+ "requires": {
+ "domelementtype": "^2.0.1",
+ "domhandler": "^4.2.0",
+ "entities": "^2.0.0"
+ }
+ },
+ "domelementtype": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npm.taobao.org/domelementtype/download/domelementtype-2.2.0.tgz?cache=0&sync_timestamp=1617298545989&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomelementtype%2Fdownload%2Fdomelementtype-2.2.0.tgz",
+ "integrity": "sha1-mgtsJ4LtahxzI9QiZxg9+b2LHVc=",
+ "dev": true
+ },
+ "domutils": {
+ "version": "2.8.0",
+ "resolved": "https://registry.nlark.com/domutils/download/domutils-2.8.0.tgz?cache=0&sync_timestamp=1630106606599&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdomutils%2Fdownload%2Fdomutils-2.8.0.tgz",
+ "integrity": "sha1-RDfe9dtuLR9dbuhZvZXKfQIEgTU=",
+ "dev": true,
+ "requires": {
+ "dom-serializer": "^1.0.1",
+ "domelementtype": "^2.2.0",
+ "domhandler": "^4.2.0"
+ }
+ }
+ }
+ },
+ "http-deceiver": {
+ "version": "1.2.7",
+ "resolved": "https://registry.nlark.com/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.nlark.com/inherits/download/inherits-2.0.3.tgz",
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
+ "dev": true
+ }
+ }
+ },
+ "http-parser-js": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npm.taobao.org/http-parser-js/download/http-parser-js-0.5.3.tgz",
+ "integrity": "sha1-AdJwnHnUFpi7AdTezF6dpOSgM9k=",
+ "dev": true
+ },
+ "http-proxy": {
+ "version": "1.18.1",
+ "resolved": "https://registry.nlark.com/http-proxy/download/http-proxy-1.18.1.tgz",
+ "integrity": "sha1-QBVB8FNIhLv5UmAzTnL4juOXZUk=",
+ "dev": true,
+ "requires": {
+ "eventemitter3": "^4.0.0",
+ "follow-redirects": "^1.0.0",
+ "requires-port": "^1.0.0"
+ }
+ },
+ "http-proxy-middleware": {
+ "version": "1.3.1",
+ "resolved": "https://registry.nlark.com/http-proxy-middleware/download/http-proxy-middleware-1.3.1.tgz",
+ "integrity": "sha1-Q3ANbZ7st0Gb8IahKND3IF2etmU=",
+ "dev": true,
+ "requires": {
+ "@types/http-proxy": "^1.17.5",
+ "http-proxy": "^1.18.1",
+ "is-glob": "^4.0.1",
+ "is-plain-obj": "^3.0.0",
+ "micromatch": "^4.0.2"
+ },
+ "dependencies": {
+ "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"
+ }
+ },
+ "fill-range": {
+ "version": "7.0.1",
+ "resolved": "https://registry.nlark.com/fill-range/download/fill-range-7.0.1.tgz",
+ "integrity": "sha1-GRmmp8df44ssfHflGYU12prN2kA=",
+ "dev": true,
+ "requires": {
+ "to-regex-range": "^5.0.1"
+ }
+ },
+ "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
+ },
+ "micromatch": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npm.taobao.org/micromatch/download/micromatch-4.0.4.tgz?cache=0&sync_timestamp=1618054740956&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmicromatch%2Fdownload%2Fmicromatch-4.0.4.tgz",
+ "integrity": "sha1-iW1Rnf6dsl/OlM63pQCRm/iB6/k=",
+ "dev": true,
+ "requires": {
+ "braces": "^3.0.1",
+ "picomatch": "^2.2.3"
+ }
+ },
+ "to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.nlark.com/to-regex-range/download/to-regex-range-5.0.1.tgz",
+ "integrity": "sha1-FkjESq58jZiKMmAY7XL1tN0DkuQ=",
+ "dev": true,
+ "requires": {
+ "is-number": "^7.0.0"
+ }
+ }
+ }
+ },
+ "http-signature": {
+ "version": "1.2.0",
+ "resolved": "https://registry.nlark.com/http-signature/download/http-signature-1.2.0.tgz",
+ "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
+ "dev": true,
+ "requires": {
+ "assert-plus": "^1.0.0",
+ "jsprim": "^1.2.2",
+ "sshpk": "^1.7.0"
+ }
+ },
+ "https-browserify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/https-browserify/download/https-browserify-1.0.0.tgz",
+ "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
+ "dev": true
+ },
+ "human-signals": {
+ "version": "1.1.1",
+ "resolved": "https://registry.nlark.com/human-signals/download/human-signals-1.1.1.tgz?cache=0&sync_timestamp=1624364695595&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhuman-signals%2Fdownload%2Fhuman-signals-1.1.1.tgz",
+ "integrity": "sha1-xbHNFPUK6uCatsWf5jujOV/k36M=",
+ "dev": true
+ },
+ "iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.nlark.com/iconv-lite/download/iconv-lite-0.4.24.tgz",
+ "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=",
+ "dev": true,
+ "requires": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ }
+ },
+ "icss-utils": {
+ "version": "4.1.1",
+ "resolved": "https://registry.nlark.com/icss-utils/download/icss-utils-4.1.1.tgz",
+ "integrity": "sha1-IRcLU3ie4nRHwvR91oMIFAP5pGc=",
+ "dev": true,
+ "requires": {
+ "postcss": "^7.0.14"
+ }
+ },
+ "ieee754": {
+ "version": "1.2.1",
+ "resolved": "https://registry.nlark.com/ieee754/download/ieee754-1.2.1.tgz",
+ "integrity": "sha1-jrehCmP/8l0VpXsAFYbRd9Gw01I=",
+ "dev": true
+ },
+ "iferr": {
+ "version": "0.1.5",
+ "resolved": "https://registry.nlark.com/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
+ },
+ "import-cwd": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/import-cwd/download/import-cwd-2.1.0.tgz?cache=0&sync_timestamp=1618846826220&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fimport-cwd%2Fdownload%2Fimport-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.nlark.com/import-fresh/download/import-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.nlark.com/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.npmmirror.com/import-local/download/import-local-2.0.0.tgz?cache=0&sync_timestamp=1633327317807&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fimport-local%2Fdownload%2Fimport-local-2.0.0.tgz",
+ "integrity": "sha1-VQcL44pZk88Y72236WH1vuXFoJ0=",
+ "dev": true,
+ "requires": {
+ "pkg-dir": "^3.0.0",
+ "resolve-cwd": "^2.0.0"
+ },
+ "dependencies": {
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/find-up/download/find-up-3.0.0.tgz",
+ "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/locate-path/download/locate-path-3.0.0.tgz?cache=0&sync_timestamp=1629895724478&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flocate-path%2Fdownload%2Flocate-path-3.0.0.tgz",
+ "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/p-locate/download/p-locate-3.0.0.tgz",
+ "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/path-exists/download/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true
+ },
+ "pkg-dir": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/pkg-dir/download/pkg-dir-3.0.0.tgz?cache=0&sync_timestamp=1633498133295&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpkg-dir%2Fdownload%2Fpkg-dir-3.0.0.tgz",
+ "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=",
+ "dev": true,
+ "requires": {
+ "find-up": "^3.0.0"
+ }
+ }
+ }
+ },
+ "imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.nlark.com/imurmurhash/download/imurmurhash-0.1.4.tgz",
+ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
+ "dev": true
+ },
+ "in-publish": {
+ "version": "2.0.1",
+ "resolved": "https://registry.nlark.com/in-publish/download/in-publish-2.0.1.tgz",
+ "integrity": "sha1-lIsaU1yAMFYc6lIvc/ePS+NX4Aw=",
+ "dev": true
+ },
+ "indent-string": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npm.taobao.org/indent-string/download/indent-string-2.1.0.tgz?cache=0&sync_timestamp=1618679442183&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Findent-string%2Fdownload%2Findent-string-2.1.0.tgz",
+ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
+ "dev": true,
+ "requires": {
+ "repeating": "^2.0.0"
+ }
+ },
+ "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
+ },
+ "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.nlark.com/inherits/download/inherits-2.0.4.tgz",
+ "integrity": "sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w=",
+ "dev": true
+ },
+ "internal-ip": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmmirror.com/internal-ip/download/internal-ip-4.3.0.tgz?cache=0&sync_timestamp=1634404775654&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Finternal-ip%2Fdownload%2Finternal-ip-4.3.0.tgz",
+ "integrity": "sha1-hFRSuq2dLKO2nGNaE3rLmg2tCQc=",
+ "dev": true,
+ "requires": {
+ "default-gateway": "^4.2.0",
+ "ipaddr.js": "^1.9.0"
+ },
+ "dependencies": {
+ "default-gateway": {
+ "version": "4.2.0",
+ "resolved": "https://registry.nlark.com/default-gateway/download/default-gateway-4.2.0.tgz",
+ "integrity": "sha1-FnEEx1AMIRX23WmwpTa7jtcgVSs=",
+ "dev": true,
+ "requires": {
+ "execa": "^1.0.0",
+ "ip-regex": "^2.1.0"
+ }
+ }
+ }
+ },
+ "internal-slot": {
+ "version": "1.0.3",
+ "resolved": "https://registry.nlark.com/internal-slot/download/internal-slot-1.0.3.tgz",
+ "integrity": "sha1-c0fjB97uovqsKsYgXUvH00ln9Zw=",
+ "dev": true,
+ "requires": {
+ "get-intrinsic": "^1.1.0",
+ "has": "^1.0.3",
+ "side-channel": "^1.0.4"
+ }
+ },
+ "ip": {
+ "version": "1.1.5",
+ "resolved": "https://registry.nlark.com/ip/download/ip-1.1.5.tgz",
+ "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=",
+ "dev": true
+ },
+ "ip-regex": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/ip-regex/download/ip-regex-2.1.0.tgz",
+ "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=",
+ "dev": true
+ },
+ "ipaddr.js": {
+ "version": "1.9.1",
+ "resolved": "https://registry.nlark.com/ipaddr.js/download/ipaddr.js-1.9.1.tgz",
+ "integrity": "sha1-v/OFQ+64mEglB5/zoqjmy9RngbM=",
+ "dev": true
+ },
+ "is-absolute-url": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/is-absolute-url/download/is-absolute-url-2.1.0.tgz?cache=0&sync_timestamp=1628691761253&other_urls=https%3A%2F%2Fregistry.nlark.com%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.nlark.com/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.nlark.com/kind-of/download/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "is-arguments": {
+ "version": "1.1.1",
+ "resolved": "https://registry.nlark.com/is-arguments/download/is-arguments-1.1.1.tgz?cache=0&sync_timestamp=1628201919104&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-arguments%2Fdownload%2Fis-arguments-1.1.1.tgz",
+ "integrity": "sha1-FbP4j9oB8ql/7ITKdhpWDxI++ps=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
+ }
+ },
+ "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-bigint": {
+ "version": "1.0.4",
+ "resolved": "https://registry.nlark.com/is-bigint/download/is-bigint-1.0.4.tgz?cache=0&sync_timestamp=1628747504782&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-bigint%2Fdownload%2Fis-bigint-1.0.4.tgz",
+ "integrity": "sha1-CBR6GHW8KzIAXUHM2Ckd/8ZpHfM=",
+ "dev": true,
+ "requires": {
+ "has-bigints": "^1.0.1"
+ }
+ },
+ "is-binary-path": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/is-binary-path/download/is-binary-path-2.1.0.tgz",
+ "integrity": "sha1-6h9/O4DwZCNug0cPhsCcJU+0Wwk=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "binary-extensions": "^2.0.0"
+ }
+ },
+ "is-boolean-object": {
+ "version": "1.1.2",
+ "resolved": "https://registry.nlark.com/is-boolean-object/download/is-boolean-object-1.1.2.tgz",
+ "integrity": "sha1-XG3CACRt2TIa5LiFoRS7H3X2Nxk=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
+ }
+ },
+ "is-buffer": {
+ "version": "1.1.6",
+ "resolved": "https://registry.nlark.com/is-buffer/download/is-buffer-1.1.6.tgz",
+ "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=",
+ "dev": true
+ },
+ "is-callable": {
+ "version": "1.2.4",
+ "resolved": "https://registry.nlark.com/is-callable/download/is-callable-1.2.4.tgz",
+ "integrity": "sha1-RzAdWN0CWUB4ZVR4U99tYf5HGUU=",
+ "dev": true
+ },
+ "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-core-module": {
+ "version": "2.8.0",
+ "resolved": "https://registry.npmmirror.com/is-core-module/download/is-core-module-2.8.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fis-core-module%2Fdownload%2Fis-core-module-2.8.0.tgz",
+ "integrity": "sha1-AyEzbD0JJeSX/Zf12VyxFKXM1Ug=",
+ "dev": true,
+ "requires": {
+ "has": "^1.0.3"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.5",
+ "resolved": "https://registry.nlark.com/is-date-object/download/is-date-object-1.0.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-date-object%2Fdownload%2Fis-date-object-1.0.5.tgz",
+ "integrity": "sha1-CEHVU25yTCVZe/bqYuG9OCmN8x8=",
+ "dev": true,
+ "requires": {
+ "has-tostringtag": "^1.0.0"
+ }
+ },
+ "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.nlark.com/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-docker": {
+ "version": "2.2.1",
+ "resolved": "https://registry.nlark.com/is-docker/download/is-docker-2.2.1.tgz?cache=0&sync_timestamp=1630451108035&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-docker%2Fdownload%2Fis-docker-2.2.1.tgz",
+ "integrity": "sha1-M+6r4jz+hvFL3kQIoCwM+4U6zao=",
+ "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-finite": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/is-finite/download/is-finite-1.1.0.tgz",
+ "integrity": "sha1-kEE1x3+0LAZB1qobzbxNqo2ggvM=",
+ "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.3",
+ "resolved": "https://registry.npmmirror.com/is-glob/download/is-glob-4.0.3.tgz",
+ "integrity": "sha1-ZPYeQsu7LuwgcanawLKLoeZdUIQ=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.1"
+ }
+ },
+ "is-negative-zero": {
+ "version": "2.0.1",
+ "resolved": "https://registry.nlark.com/is-negative-zero/download/is-negative-zero-2.0.1.tgz",
+ "integrity": "sha1-PedGwY3aIxkkGlNnWQjY92bxHCQ=",
+ "dev": true
+ },
+ "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.nlark.com/kind-of/download/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "is-number-object": {
+ "version": "1.0.6",
+ "resolved": "https://registry.nlark.com/is-number-object/download/is-number-object-1.0.6.tgz",
+ "integrity": "sha1-anqvg4x/BoalC0VT9+VKlklOifA=",
+ "dev": true,
+ "requires": {
+ "has-tostringtag": "^1.0.0"
+ }
+ },
+ "is-obj": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npm.taobao.org/is-obj/download/is-obj-2.0.0.tgz",
+ "integrity": "sha1-Rz+wXZc3BeP9liBUUBjKjiLvSYI=",
+ "dev": true
+ },
+ "is-path-cwd": {
+ "version": "2.2.0",
+ "resolved": "https://registry.nlark.com/is-path-cwd/download/is-path-cwd-2.2.0.tgz?cache=0&sync_timestamp=1628686555851&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-path-cwd%2Fdownload%2Fis-path-cwd-2.2.0.tgz",
+ "integrity": "sha1-Z9Q7gmZKe1GR/ZEZEn6zAASKn9s=",
+ "dev": true
+ },
+ "is-path-in-cwd": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/is-path-in-cwd/download/is-path-in-cwd-2.1.0.tgz?cache=0&sync_timestamp=1620047110449&other_urls=https%3A%2F%2Fregistry.nlark.com%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.nlark.com/is-path-inside/download/is-path-inside-2.1.0.tgz?cache=0&sync_timestamp=1620046845369&other_urls=https%3A%2F%2Fregistry.nlark.com%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": "3.0.0",
+ "resolved": "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-3.0.0.tgz?cache=0&sync_timestamp=1618600489644&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-plain-obj%2Fdownload%2Fis-plain-obj-3.0.0.tgz",
+ "integrity": "sha1-r28uoUrFpkYYOlu9tbqrvBVq2dc=",
+ "dev": true
+ },
+ "is-plain-object": {
+ "version": "2.0.4",
+ "resolved": "https://registry.nlark.com/is-plain-object/download/is-plain-object-2.0.4.tgz",
+ "integrity": "sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc=",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.1"
+ }
+ },
+ "is-regex": {
+ "version": "1.1.4",
+ "resolved": "https://registry.nlark.com/is-regex/download/is-regex-1.1.4.tgz?cache=0&sync_timestamp=1628221905423&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-regex%2Fdownload%2Fis-regex-1.1.4.tgz",
+ "integrity": "sha1-7vVmPNWfpMCuM5UFMj32hUuxWVg=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
+ }
+ },
+ "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-shared-array-buffer": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmmirror.com/is-shared-array-buffer/download/is-shared-array-buffer-1.0.1.tgz",
+ "integrity": "sha1-l7DIX72stZycRG/mU7gs8rW3z+Y=",
+ "dev": true
+ },
+ "is-stream": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/is-stream/download/is-stream-1.1.0.tgz",
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
+ "dev": true
+ },
+ "is-string": {
+ "version": "1.0.7",
+ "resolved": "https://registry.nlark.com/is-string/download/is-string-1.0.7.tgz",
+ "integrity": "sha1-DdEr8gBvJVu1j2lREO/3SR7rwP0=",
+ "dev": true,
+ "requires": {
+ "has-tostringtag": "^1.0.0"
+ }
+ },
+ "is-symbol": {
+ "version": "1.0.4",
+ "resolved": "https://registry.nlark.com/is-symbol/download/is-symbol-1.0.4.tgz?cache=0&sync_timestamp=1620501174327&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-symbol%2Fdownload%2Fis-symbol-1.0.4.tgz",
+ "integrity": "sha1-ptrJO2NbBjymhyI23oiRClevE5w=",
+ "dev": true,
+ "requires": {
+ "has-symbols": "^1.0.2"
+ }
+ },
+ "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-utf8": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npm.taobao.org/is-utf8/download/is-utf8-0.2.1.tgz",
+ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
+ "dev": true
+ },
+ "is-weakref": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/is-weakref/download/is-weakref-1.0.1.tgz",
+ "integrity": "sha1-hC26TsF/qayYUN8tbvvBc3J08qI=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.0"
+ }
+ },
+ "is-windows": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/is-windows/download/is-windows-1.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-windows%2Fdownload%2Fis-windows-1.0.2.tgz",
+ "integrity": "sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0=",
+ "dev": true
+ },
+ "is-wsl": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/is-wsl/download/is-wsl-1.1.0.tgz",
+ "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=",
+ "dev": true
+ },
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
+ },
+ "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
+ },
+ "isstream": {
+ "version": "0.1.2",
+ "resolved": "https://registry.nlark.com/isstream/download/isstream-0.1.2.tgz",
+ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
+ "dev": true
+ },
+ "javascript-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npm.taobao.org/javascript-stringify/download/javascript-stringify-2.1.0.tgz",
+ "integrity": "sha1-J8dlOb4U2L0Sghmi1zGwkzeQTnk=",
+ "dev": true
+ },
+ "js-base64": {
+ "version": "2.6.4",
+ "resolved": "https://registry.npmmirror.com/js-base64/download/js-base64-2.6.4.tgz",
+ "integrity": "sha1-9OaGxd4eofhn28rT1G2WlCjfmMQ=",
+ "dev": true
+ },
+ "js-message": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npm.taobao.org/js-message/download/js-message-1.0.7.tgz",
+ "integrity": "sha1-+93QU8ekcCGHG7iyyVOXzBfCDkc=",
+ "dev": true
+ },
+ "js-queue": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npm.taobao.org/js-queue/download/js-queue-2.0.2.tgz",
+ "integrity": "sha1-C+WQM4+QOzbHPTPDGIOoIUEs1II=",
+ "dev": true,
+ "requires": {
+ "easy-stack": "^1.0.1"
+ }
+ },
+ "js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/js-tokens/download/js-tokens-4.0.0.tgz?cache=0&sync_timestamp=1619345098261&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fjs-tokens%2Fdownload%2Fjs-tokens-4.0.0.tgz",
+ "integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk=",
+ "dev": true
+ },
+ "js-yaml": {
+ "version": "3.14.1",
+ "resolved": "https://registry.npm.taobao.org/js-yaml/download/js-yaml-3.14.1.tgz?cache=0&sync_timestamp=1618435004368&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjs-yaml%2Fdownload%2Fjs-yaml-3.14.1.tgz",
+ "integrity": "sha1-2ugS/bOCX6MGYJqHFzg8UMNqBTc=",
+ "dev": true,
+ "requires": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ }
+ },
+ "jsbn": {
+ "version": "0.1.1",
+ "resolved": "https://registry.nlark.com/jsbn/download/jsbn-0.1.1.tgz",
+ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
+ "dev": true
+ },
+ "jsesc": {
+ "version": "2.5.2",
+ "resolved": "https://registry.nlark.com/jsesc/download/jsesc-2.5.2.tgz",
+ "integrity": "sha1-gFZNLkg9rPbo7yCWUKZ98/DCg6Q=",
+ "dev": true
+ },
+ "json-parse-better-errors": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/json-parse-better-errors/download/json-parse-better-errors-1.0.2.tgz",
+ "integrity": "sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk=",
+ "dev": true
+ },
+ "json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.nlark.com/json-parse-even-better-errors/download/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha1-fEeAWpQxmSjgV3dAXcEuH3pO4C0=",
+ "dev": true
+ },
+ "json-schema": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npm.taobao.org/json-schema/download/json-schema-0.2.3.tgz?cache=0&sync_timestamp=1609553637722&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjson-schema%2Fdownload%2Fjson-schema-0.2.3.tgz",
+ "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
+ "dev": true
+ },
+ "json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.nlark.com/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": "2.2.0",
+ "resolved": "https://registry.nlark.com/json5/download/json5-2.2.0.tgz",
+ "integrity": "sha1-Lf7+cgxrpSXZ69kJlQ8FFTFsiaM=",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.5"
+ }
+ },
+ "jsonfile": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/jsonfile/download/jsonfile-4.0.0.tgz",
+ "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
+ "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"
+ }
+ },
+ "killable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/killable/download/killable-1.0.1.tgz",
+ "integrity": "sha1-TIzkQRh6Bhx0dPuHygjipjgZSJI=",
+ "dev": true
+ },
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.nlark.com/kind-of/download/kind-of-6.0.3.tgz",
+ "integrity": "sha1-B8BQNKbDSfoG4k+jWqdttFgM5N0=",
+ "dev": true
+ },
+ "launch-editor": {
+ "version": "2.2.1",
+ "resolved": "https://registry.nlark.com/launch-editor/download/launch-editor-2.2.1.tgz",
+ "integrity": "sha1-hxtaPuOdZoD8wm03kwtu7aidsMo=",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.3.0",
+ "shell-quote": "^1.6.1"
+ }
+ },
+ "launch-editor-middleware": {
+ "version": "2.2.1",
+ "resolved": "https://registry.nlark.com/launch-editor-middleware/download/launch-editor-middleware-2.2.1.tgz",
+ "integrity": "sha1-4UsH5scVSwpLhqD9NFeE5FgEwVc=",
+ "dev": true,
+ "requires": {
+ "launch-editor": "^2.2.1"
+ }
+ },
+ "lines-and-columns": {
+ "version": "1.1.6",
+ "resolved": "https://registry.nlark.com/lines-and-columns/download/lines-and-columns-1.1.6.tgz",
+ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
+ "dev": true
+ },
+ "load-json-file": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/load-json-file/download/load-json-file-1.1.0.tgz",
+ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "parse-json": "^2.2.0",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0",
+ "strip-bom": "^2.0.0"
+ },
+ "dependencies": {
+ "parse-json": {
+ "version": "2.2.0",
+ "resolved": "https://registry.nlark.com/parse-json/download/parse-json-2.2.0.tgz",
+ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
+ "dev": true,
+ "requires": {
+ "error-ex": "^1.2.0"
+ }
+ },
+ "pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz",
+ "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
+ "dev": true
+ }
+ }
+ },
+ "loader-runner": {
+ "version": "2.4.0",
+ "resolved": "https://registry.nlark.com/loader-runner/download/loader-runner-2.4.0.tgz",
+ "integrity": "sha1-7UcGa/5TTX6ExMe5mYwqdWB9k1c=",
+ "dev": true
+ },
+ "loader-utils": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmmirror.com/loader-utils/download/loader-utils-1.4.0.tgz?cache=0&sync_timestamp=1635579199157&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Floader-utils%2Fdownload%2Floader-utils-1.4.0.tgz",
+ "integrity": "sha1-xXm140yzSxp07cbB+za/o3HVphM=",
+ "dev": true,
+ "requires": {
+ "big.js": "^5.2.2",
+ "emojis-list": "^3.0.0",
+ "json5": "^1.0.1"
+ },
+ "dependencies": {
+ "json5": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/json5/download/json5-1.0.1.tgz",
+ "integrity": "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.0"
+ }
+ }
+ }
+ },
+ "locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.nlark.com/locate-path/download/locate-path-5.0.0.tgz?cache=0&sync_timestamp=1629895724478&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flocate-path%2Fdownload%2Flocate-path-5.0.0.tgz",
+ "integrity": "sha1-Gvujlq/WdqbUJQTQpno6frn2KqA=",
+ "dev": true,
+ "requires": {
+ "p-locate": "^4.1.0"
+ }
+ },
+ "lodash": {
+ "version": "4.17.21",
+ "resolved": "https://registry.nlark.com/lodash/download/lodash-4.17.21.tgz?cache=0&sync_timestamp=1624543041613&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flodash%2Fdownload%2Flodash-4.17.21.tgz",
+ "integrity": "sha1-Z5WRxWTDv/quhFTPCz3zcMPWkRw=",
+ "dev": true
+ },
+ "lodash.debounce": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npm.taobao.org/lodash.debounce/download/lodash.debounce-4.0.8.tgz",
+ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=",
+ "dev": true
+ },
+ "lodash.defaultsdeep": {
+ "version": "4.6.1",
+ "resolved": "https://registry.nlark.com/lodash.defaultsdeep/download/lodash.defaultsdeep-4.6.1.tgz",
+ "integrity": "sha1-US6b1yHSctlOPTpjZT+hdRZ0HKY=",
+ "dev": true
+ },
+ "lodash.kebabcase": {
+ "version": "4.1.1",
+ "resolved": "https://registry.nlark.com/lodash.kebabcase/download/lodash.kebabcase-4.1.1.tgz",
+ "integrity": "sha1-hImxyw0p/4gZXM7KRI/21swpXDY=",
+ "dev": true
+ },
+ "lodash.mapvalues": {
+ "version": "4.6.0",
+ "resolved": "https://registry.npm.taobao.org/lodash.mapvalues/download/lodash.mapvalues-4.6.0.tgz",
+ "integrity": "sha1-G6+lAF3p3W9PJmaMMMo3IwzJaJw=",
+ "dev": true
+ },
+ "lodash.memoize": {
+ "version": "4.1.2",
+ "resolved": "https://registry.nlark.com/lodash.memoize/download/lodash.memoize-4.1.2.tgz",
+ "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=",
+ "dev": true
+ },
+ "lodash.transform": {
+ "version": "4.6.0",
+ "resolved": "https://registry.nlark.com/lodash.transform/download/lodash.transform-4.6.0.tgz",
+ "integrity": "sha1-EjBkIvYzJK7YSD0/ODMrX2cFR6A=",
+ "dev": true
+ },
+ "lodash.uniq": {
+ "version": "4.5.0",
+ "resolved": "https://registry.nlark.com/lodash.uniq/download/lodash.uniq-4.5.0.tgz",
+ "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=",
+ "dev": true
+ },
+ "log-symbols": {
+ "version": "2.2.0",
+ "resolved": "https://registry.nlark.com/log-symbols/download/log-symbols-2.2.0.tgz?cache=0&sync_timestamp=1618847128438&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flog-symbols%2Fdownload%2Flog-symbols-2.2.0.tgz",
+ "integrity": "sha1-V0Dhxdbw39pK2TI7UzIQfva0xAo=",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.0.1"
+ }
+ },
+ "loglevel": {
+ "version": "1.7.1",
+ "resolved": "https://registry.nlark.com/loglevel/download/loglevel-1.7.1.tgz",
+ "integrity": "sha1-AF/eL15uRwaPk1/yhXPhJe9y8Zc=",
+ "dev": true
+ },
+ "loud-rejection": {
+ "version": "1.6.0",
+ "resolved": "https://registry.nlark.com/loud-rejection/download/loud-rejection-1.6.0.tgz",
+ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
+ "dev": true,
+ "requires": {
+ "currently-unhandled": "^0.4.1",
+ "signal-exit": "^3.0.0"
+ }
+ },
+ "lower-case": {
+ "version": "1.1.4",
+ "resolved": "https://registry.nlark.com/lower-case/download/lower-case-1.1.4.tgz",
+ "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=",
+ "dev": true
+ },
+ "lru-cache": {
+ "version": "5.1.1",
+ "resolved": "https://registry.nlark.com/lru-cache/download/lru-cache-5.1.1.tgz",
+ "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=",
+ "dev": true,
+ "requires": {
+ "yallist": "^3.0.2"
+ }
+ },
+ "make-dir": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-3.1.0.tgz",
+ "integrity": "sha1-QV6WcEazp/HRhSd9hKpYIDcmoT8=",
+ "dev": true,
+ "requires": {
+ "semver": "^6.0.0"
+ }
+ },
+ "map-cache": {
+ "version": "0.2.2",
+ "resolved": "https://registry.nlark.com/map-cache/download/map-cache-0.2.2.tgz",
+ "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
+ "dev": true
+ },
+ "map-obj": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmmirror.com/map-obj/download/map-obj-1.0.1.tgz?cache=0&sync_timestamp=1634552719803&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fmap-obj%2Fdownload%2Fmap-obj-1.0.1.tgz",
+ "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
+ "dev": true
+ },
+ "map-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/mdn-data/download/mdn-data-2.0.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fmdn-data%2Fdownload%2Fmdn-data-2.0.4.tgz",
+ "integrity": "sha1-aZs8OKxvHXKAkaZGULZdOIUC/Vs=",
+ "dev": true
+ },
+ "media-typer": {
+ "version": "0.3.0",
+ "resolved": "https://registry.nlark.com/media-typer/download/media-typer-0.3.0.tgz",
+ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
+ "dev": true
+ },
+ "memory-fs": {
+ "version": "0.4.1",
+ "resolved": "https://registry.nlark.com/memory-fs/download/memory-fs-0.4.1.tgz",
+ "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=",
+ "dev": true,
+ "requires": {
+ "errno": "^0.1.3",
+ "readable-stream": "^2.0.1"
+ }
+ },
+ "meow": {
+ "version": "3.7.0",
+ "resolved": "https://registry.nlark.com/meow/download/meow-3.7.0.tgz",
+ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
+ "dev": true,
+ "requires": {
+ "camelcase-keys": "^2.0.0",
+ "decamelize": "^1.1.2",
+ "loud-rejection": "^1.0.0",
+ "map-obj": "^1.0.1",
+ "minimist": "^1.1.3",
+ "normalize-package-data": "^2.3.4",
+ "object-assign": "^4.0.1",
+ "read-pkg-up": "^1.0.1",
+ "redent": "^1.0.0",
+ "trim-newlines": "^1.0.0"
+ }
+ },
+ "merge-descriptors": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.nlark.com/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
+ },
+ "merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npm.taobao.org/merge2/download/merge2-1.4.1.tgz",
+ "integrity": "sha1-Q2iJL4hekHRVpv19xVwMnUBJkK4=",
+ "dev": true
+ },
+ "methods": {
+ "version": "1.1.2",
+ "resolved": "https://registry.nlark.com/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?cache=0&sync_timestamp=1618054740956&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmicromatch%2Fdownload%2Fmicromatch-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"
+ }
+ },
+ "miller-rabin": {
+ "version": "4.0.1",
+ "resolved": "https://registry.nlark.com/miller-rabin/download/miller-rabin-4.0.1.tgz",
+ "integrity": "sha1-8IA1HIZbDcViqEYpZtqlNUPHik0=",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.0.0",
+ "brorand": "^1.0.1"
+ },
+ "dependencies": {
+ "bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.12.0.tgz",
+ "integrity": "sha1-d1s/J477uXGO7HNh9IP7Nvu/6og=",
+ "dev": true
+ }
+ }
+ },
+ "mime": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npm.taobao.org/mime/download/mime-2.5.2.tgz?cache=0&sync_timestamp=1615984369368&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-2.5.2.tgz",
+ "integrity": "sha1-bj3GzCuVEGQ4MOXxnVy3U9pe6r4=",
+ "dev": true
+ },
+ "mime-db": {
+ "version": "1.50.0",
+ "resolved": "https://registry.nlark.com/mime-db/download/mime-db-1.50.0.tgz",
+ "integrity": "sha1-q9SslOmNPA4YUBbGerRdX95AwR8=",
+ "dev": true
+ },
+ "mime-types": {
+ "version": "2.1.33",
+ "resolved": "https://registry.npmmirror.com/mime-types/download/mime-types-2.1.33.tgz",
+ "integrity": "sha1-H6EqkERy+v0GjkjZ6EAfdNP3Dts=",
+ "dev": true,
+ "requires": {
+ "mime-db": "1.50.0"
+ }
+ },
+ "mimic-fn": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-1.2.0.tgz",
+ "integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI=",
+ "dev": true
+ },
+ "mini-css-extract-plugin": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmmirror.com/mini-css-extract-plugin/download/mini-css-extract-plugin-0.9.0.tgz?cache=0&sync_timestamp=1634872340046&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fmini-css-extract-plugin%2Fdownload%2Fmini-css-extract-plugin-0.9.0.tgz",
+ "integrity": "sha1-R/LPB6oWWrNXM7H8l9TEbAVkM54=",
+ "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.nlark.com/normalize-url/download/normalize-url-1.9.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fnormalize-url%2Fdownload%2Fnormalize-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"
+ }
+ },
+ "schema-utils": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1626694740261&other_urls=https%3A%2F%2Fregistry.nlark.com%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"
+ }
+ }
+ }
+ },
+ "minimalistic-assert": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.nlark.com/minimatch/download/minimatch-3.0.4.tgz",
+ "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.nlark.com/minimist/download/minimist-1.2.5.tgz",
+ "integrity": "sha1-Z9ZgFLZqaoqqDAg8X9WN9OTpdgI=",
+ "dev": true
+ },
+ "minipass": {
+ "version": "3.1.5",
+ "resolved": "https://registry.nlark.com/minipass/download/minipass-3.1.5.tgz?cache=0&sync_timestamp=1631656314228&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fminipass%2Fdownload%2Fminipass-3.1.5.tgz",
+ "integrity": "sha1-cfYlGwozpJwBs8+X/3ftoDDf9zI=",
+ "dev": true,
+ "requires": {
+ "yallist": "^4.0.0"
+ },
+ "dependencies": {
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-4.0.0.tgz",
+ "integrity": "sha1-m7knkNnA7/7GO+c1GeEaNQGaOnI=",
+ "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.nlark.com/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.5",
+ "resolved": "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.5.tgz",
+ "integrity": "sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8=",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.5"
+ }
+ },
+ "move-concurrently": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/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.npmmirror.com/ms/download/ms-2.1.2.tgz",
+ "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
+ "dev": true
+ },
+ "multicast-dns": {
+ "version": "6.2.3",
+ "resolved": "https://registry.npmmirror.com/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.nlark.com/multicast-dns-service-types/download/multicast-dns-service-types-1.1.0.tgz",
+ "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=",
+ "dev": true
+ },
+ "mz": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npm.taobao.org/mz/download/mz-2.7.0.tgz",
+ "integrity": "sha1-lQCAV6Vsr63CvGPd5/n/aVWUjjI=",
+ "dev": true,
+ "requires": {
+ "any-promise": "^1.0.0",
+ "object-assign": "^4.0.1",
+ "thenify-all": "^1.0.0"
+ }
+ },
+ "nan": {
+ "version": "2.15.0",
+ "resolved": "https://registry.nlark.com/nan/download/nan-2.15.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fnan%2Fdownload%2Fnan-2.15.0.tgz",
+ "integrity": "sha1-PzSkc/8Y4VwbVia2KQO1rW5mX+4=",
+ "dev": true
+ },
+ "nanomatch": {
+ "version": "1.2.13",
+ "resolved": "https://registry.nlark.com/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.2",
+ "resolved": "https://registry.nlark.com/neo-async/download/neo-async-2.6.2.tgz",
+ "integrity": "sha1-tKr7k+OustgXTKU88WOrfXMIMF8=",
+ "dev": true
+ },
+ "nice-try": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npm.taobao.org/nice-try/download/nice-try-1.0.5.tgz?cache=0&sync_timestamp=1614510016909&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnice-try%2Fdownload%2Fnice-try-1.0.5.tgz",
+ "integrity": "sha1-ozeKdpbOfSI+iPybdkvX7xCJ42Y=",
+ "dev": true
+ },
+ "no-case": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npm.taobao.org/no-case/download/no-case-2.3.2.tgz",
+ "integrity": "sha1-YLgTOWvjmz8SiKTB7V0efSi0ZKw=",
+ "dev": true,
+ "requires": {
+ "lower-case": "^1.1.1"
+ }
+ },
+ "node-forge": {
+ "version": "0.10.0",
+ "resolved": "https://registry.nlark.com/node-forge/download/node-forge-0.10.0.tgz",
+ "integrity": "sha1-Mt6ir7Ppkm8C7lzoeUkCaRpna/M=",
+ "dev": true
+ },
+ "node-gyp": {
+ "version": "3.8.0",
+ "resolved": "https://registry.npmmirror.com/node-gyp/download/node-gyp-3.8.0.tgz",
+ "integrity": "sha1-VAMEJhwzDoDQ1e3OJTpoyzlkIYw=",
+ "dev": true,
+ "requires": {
+ "fstream": "^1.0.0",
+ "glob": "^7.0.3",
+ "graceful-fs": "^4.1.2",
+ "mkdirp": "^0.5.0",
+ "nopt": "2 || 3",
+ "npmlog": "0 || 1 || 2 || 3 || 4",
+ "osenv": "0",
+ "request": "^2.87.0",
+ "rimraf": "2",
+ "semver": "~5.3.0",
+ "tar": "^2.0.0",
+ "which": "1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "5.3.0",
+ "resolved": "https://registry.nlark.com/semver/download/semver-5.3.0.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-5.3.0.tgz",
+ "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
+ "dev": true
+ }
+ }
+ },
+ "node-ipc": {
+ "version": "9.2.1",
+ "resolved": "https://registry.nlark.com/node-ipc/download/node-ipc-9.2.1.tgz?cache=0&sync_timestamp=1631753661352&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fnode-ipc%2Fdownload%2Fnode-ipc-9.2.1.tgz",
+ "integrity": "sha1-sy9mEV+dbOhB3E7CAJ1qcz+Yu2s=",
+ "dev": true,
+ "requires": {
+ "event-pubsub": "4.3.0",
+ "js-message": "1.0.7",
+ "js-queue": "2.0.2"
+ }
+ },
+ "node-libs-browser": {
+ "version": "2.2.1",
+ "resolved": "https://registry.nlark.com/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.nlark.com/punycode/download/punycode-1.4.1.tgz?cache=0&sync_timestamp=1622604519710&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpunycode%2Fdownload%2Fpunycode-1.4.1.tgz",
+ "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
+ "dev": true
+ }
+ }
+ },
+ "node-releases": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmmirror.com/node-releases/download/node-releases-2.0.1.tgz?cache=0&sync_timestamp=1634806960337&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fnode-releases%2Fdownload%2Fnode-releases-2.0.1.tgz",
+ "integrity": "sha1-PR05XyBPHy8ppUNYuftnh2WtL8U=",
+ "dev": true
+ },
+ "node-sass": {
+ "version": "4.14.1",
+ "resolved": "https://registry.nlark.com/node-sass/download/node-sass-4.14.1.tgz",
+ "integrity": "sha1-mch+wu+3BH7WOPtMnbfzpC4iF7U=",
+ "dev": true,
+ "requires": {
+ "async-foreach": "^0.1.3",
+ "chalk": "^1.1.1",
+ "cross-spawn": "^3.0.0",
+ "gaze": "^1.0.0",
+ "get-stdin": "^4.0.1",
+ "glob": "^7.0.3",
+ "in-publish": "^2.0.0",
+ "lodash": "^4.17.15",
+ "meow": "^3.7.0",
+ "mkdirp": "^0.5.1",
+ "nan": "^2.13.2",
+ "node-gyp": "^3.8.0",
+ "npmlog": "^4.0.0",
+ "request": "^2.88.0",
+ "sass-graph": "2.2.5",
+ "stdout-stream": "^1.4.0",
+ "true-case-path": "^1.0.2"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-2.1.1.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-2.1.1.tgz",
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "2.2.1",
+ "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-2.2.1.tgz",
+ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
+ "dev": true
+ },
+ "chalk": {
+ "version": "1.1.3",
+ "resolved": "https://registry.nlark.com/chalk/download/chalk-1.1.3.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%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"
+ }
+ },
+ "cross-spawn": {
+ "version": "3.0.1",
+ "resolved": "https://registry.nlark.com/cross-spawn/download/cross-spawn-3.0.1.tgz",
+ "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
+ "dev": true,
+ "requires": {
+ "lru-cache": "^4.0.1",
+ "which": "^1.2.9"
+ }
+ },
+ "lru-cache": {
+ "version": "4.1.5",
+ "resolved": "https://registry.nlark.com/lru-cache/download/lru-cache-4.1.5.tgz",
+ "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=",
+ "dev": true,
+ "requires": {
+ "pseudomap": "^1.0.2",
+ "yallist": "^2.1.2"
+ }
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-3.0.1.tgz",
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ },
+ "supports-color": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/supports-color/download/supports-color-2.0.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-2.0.0.tgz",
+ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
+ "dev": true
+ },
+ "yallist": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz",
+ "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
+ "dev": true
+ }
+ }
+ },
+ "nopt": {
+ "version": "3.0.6",
+ "resolved": "https://registry.npm.taobao.org/nopt/download/nopt-3.0.6.tgz",
+ "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
+ "dev": true,
+ "requires": {
+ "abbrev": "1"
+ }
+ },
+ "normalize-package-data": {
+ "version": "2.5.0",
+ "resolved": "https://registry.nlark.com/normalize-package-data/download/normalize-package-data-2.5.0.tgz?cache=0&sync_timestamp=1629301872905&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fnormalize-package-data%2Fdownload%2Fnormalize-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": {
+ "semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.nlark.com/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-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.nlark.com/normalize-url/download/normalize-url-3.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fnormalize-url%2Fdownload%2Fnormalize-url-3.3.0.tgz",
+ "integrity": "sha1-suHE3E98bVd0PfczpPWXjRhlBVk=",
+ "dev": true
+ },
+ "normalize-wheel": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npm.taobao.org/normalize-wheel/download/normalize-wheel-1.0.1.tgz",
+ "integrity": "sha1-rsiGr/2wRQcNhWRH32Ls+GFG7EU="
+ },
+ "npm-run-path": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmmirror.com/npm-run-path/download/npm-run-path-2.0.2.tgz",
+ "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
+ "dev": true,
+ "requires": {
+ "path-key": "^2.0.0"
+ }
+ },
+ "npmlog": {
+ "version": "4.1.2",
+ "resolved": "https://registry.nlark.com/npmlog/download/npmlog-4.1.2.tgz",
+ "integrity": "sha1-CKfyqL9zRgR3mp76StXMcXq7lUs=",
+ "dev": true,
+ "requires": {
+ "are-we-there-yet": "~1.1.2",
+ "console-control-strings": "~1.1.0",
+ "gauge": "~2.7.3",
+ "set-blocking": "~2.0.0"
+ }
+ },
+ "nth-check": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/nth-check/download/nth-check-1.0.2.tgz",
+ "integrity": "sha1-sr0pXDfj3VijvwcAN2Zjuk2c8Fw=",
+ "dev": true,
+ "requires": {
+ "boolbase": "~1.0.0"
+ }
+ },
+ "num2fraction": {
+ "version": "1.2.2",
+ "resolved": "https://registry.nlark.com/num2fraction/download/num2fraction-1.2.2.tgz",
+ "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=",
+ "dev": true
+ },
+ "number-is-nan": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/number-is-nan/download/number-is-nan-1.0.1.tgz",
+ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
+ "dev": true
+ },
+ "oauth-sign": {
+ "version": "0.9.0",
+ "resolved": "https://registry.nlark.com/oauth-sign/download/oauth-sign-0.9.0.tgz",
+ "integrity": "sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU=",
+ "dev": true
+ },
+ "object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.nlark.com/object-assign/download/object-assign-4.1.1.tgz?cache=0&sync_timestamp=1618847043548&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fobject-assign%2Fdownload%2Fobject-assign-4.1.1.tgz",
+ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
+ "dev": true
+ },
+ "object-copy": {
+ "version": "0.1.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/kind-of/download/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "object-inspect": {
+ "version": "1.11.0",
+ "resolved": "https://registry.nlark.com/object-inspect/download/object-inspect-1.11.0.tgz?cache=0&sync_timestamp=1626120241132&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fobject-inspect%2Fdownload%2Fobject-inspect-1.11.0.tgz",
+ "integrity": "sha1-nc6xRs7dQUig2eUauI00z1CZIrE=",
+ "dev": true
+ },
+ "object-is": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npm.taobao.org/object-is/download/object-is-1.1.5.tgz?cache=0&sync_timestamp=1613857698573&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-is%2Fdownload%2Fobject-is-1.1.5.tgz",
+ "integrity": "sha1-ud7qpfx/GEag+uzc7sE45XePU6w=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.3"
+ }
+ },
+ "object-keys": {
+ "version": "1.1.1",
+ "resolved": "https://registry.nlark.com/object-keys/download/object-keys-1.1.1.tgz",
+ "integrity": "sha1-HEfyct8nfzsdrwYWd9nILiMixg4=",
+ "dev": true
+ },
+ "object-visit": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/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.2",
+ "resolved": "https://registry.nlark.com/object.assign/download/object.assign-4.1.2.tgz",
+ "integrity": "sha1-DtVKNC7Os3s4/3brgxoOeIy2OUA=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.0",
+ "define-properties": "^1.1.3",
+ "has-symbols": "^1.0.1",
+ "object-keys": "^1.1.1"
+ }
+ },
+ "object.getownpropertydescriptors": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmmirror.com/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.1.3.tgz?cache=0&sync_timestamp=1633321770416&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fobject.getownpropertydescriptors%2Fdownload%2Fobject.getownpropertydescriptors-2.1.3.tgz",
+ "integrity": "sha1-siPPOOF/77l6Y8EMkd9yzLOG354=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.3",
+ "es-abstract": "^1.19.1"
+ }
+ },
+ "object.pick": {
+ "version": "1.3.0",
+ "resolved": "https://registry.nlark.com/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.5",
+ "resolved": "https://registry.npmmirror.com/object.values/download/object.values-1.1.5.tgz",
+ "integrity": "sha1-lZ9j486e8QhyAzMIITHkpFm3Fqw=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.3",
+ "es-abstract": "^1.19.1"
+ }
+ },
+ "obuf": {
+ "version": "1.1.2",
+ "resolved": "https://registry.nlark.com/obuf/download/obuf-1.1.2.tgz",
+ "integrity": "sha1-Cb6jND1BhZ69RGKS0RydTbYZCE4=",
+ "dev": true
+ },
+ "on-finished": {
+ "version": "2.3.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/on-headers/download/on-headers-1.0.2.tgz",
+ "integrity": "sha1-dysK5qqlJcOZ5Imt+tkMQD6zwo8=",
+ "dev": true
+ },
+ "once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.nlark.com/once/download/once-1.4.0.tgz",
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "dev": true,
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "onetime": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npm.taobao.org/onetime/download/onetime-2.0.1.tgz",
+ "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
+ "dev": true,
+ "requires": {
+ "mimic-fn": "^1.0.0"
+ }
+ },
+ "open": {
+ "version": "6.4.0",
+ "resolved": "https://registry.npmmirror.com/open/download/open-6.4.0.tgz",
+ "integrity": "sha1-XBPpbQ3IlGhhZPGJZez+iJ7PyKk=",
+ "dev": true,
+ "requires": {
+ "is-wsl": "^1.1.0"
+ }
+ },
+ "opener": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npm.taobao.org/opener/download/opener-1.5.2.tgz",
+ "integrity": "sha1-XTfh81B3udysQwE3InGv3rKhNZg=",
+ "dev": true
+ },
+ "opn": {
+ "version": "5.5.0",
+ "resolved": "https://registry.nlark.com/opn/download/opn-5.5.0.tgz",
+ "integrity": "sha1-/HFk+rVtI1kExRw7J9pnWMo7m/w=",
+ "dev": true,
+ "requires": {
+ "is-wsl": "^1.1.0"
+ }
+ },
+ "ora": {
+ "version": "3.4.0",
+ "resolved": "https://registry.nlark.com/ora/download/ora-3.4.0.tgz?cache=0&sync_timestamp=1631556430183&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fora%2Fdownload%2Fora-3.4.0.tgz",
+ "integrity": "sha1-vwdSSRBZo+8+1MhQl1Md6f280xg=",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.4.2",
+ "cli-cursor": "^2.1.0",
+ "cli-spinners": "^2.0.0",
+ "log-symbols": "^2.2.0",
+ "strip-ansi": "^5.2.0",
+ "wcwidth": "^1.0.1"
+ },
+ "dependencies": {
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmmirror.com/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.nlark.com/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-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.nlark.com/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-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-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.nlark.com/p-limit/download/p-limit-2.3.0.tgz?cache=0&sync_timestamp=1628812766275&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fp-limit%2Fdownload%2Fp-limit-2.3.0.tgz",
+ "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE=",
+ "dev": true,
+ "requires": {
+ "p-try": "^2.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.nlark.com/p-locate/download/p-locate-4.1.0.tgz",
+ "integrity": "sha1-o0KLtwiLOmApL2aRkni3wpetTwc=",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.2.0"
+ }
+ },
+ "p-map": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/p-map/download/p-map-2.1.0.tgz?cache=0&sync_timestamp=1635321371446&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fp-map%2Fdownload%2Fp-map-2.1.0.tgz",
+ "integrity": "sha1-MQko/u+cnsxltosXaTAYpmXOoXU=",
+ "dev": true
+ },
+ "p-retry": {
+ "version": "3.0.1",
+ "resolved": "https://registry.nlark.com/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.npmmirror.com/p-try/download/p-try-2.2.0.tgz?cache=0&sync_timestamp=1633364462890&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fp-try%2Fdownload%2Fp-try-2.2.0.tgz",
+ "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=",
+ "dev": true
+ },
+ "pako": {
+ "version": "1.0.11",
+ "resolved": "https://registry.nlark.com/pako/download/pako-1.0.11.tgz",
+ "integrity": "sha1-bJWZ00DVTf05RjgCUqNXBaa5kr8=",
+ "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"
+ }
+ },
+ "param-case": {
+ "version": "2.1.1",
+ "resolved": "https://registry.nlark.com/param-case/download/param-case-2.1.1.tgz",
+ "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=",
+ "dev": true,
+ "requires": {
+ "no-case": "^2.2.0"
+ }
+ },
+ "parse-asn1": {
+ "version": "5.1.6",
+ "resolved": "https://registry.nlark.com/parse-asn1/download/parse-asn1-5.1.6.tgz",
+ "integrity": "sha1-OFCAo+wTy2KmLTlAnLPoiETNrtQ=",
+ "dev": true,
+ "requires": {
+ "asn1.js": "^5.2.0",
+ "browserify-aes": "^1.0.0",
+ "evp_bytestokey": "^1.0.0",
+ "pbkdf2": "^3.0.3",
+ "safe-buffer": "^5.1.1"
+ }
+ },
+ "parse-json": {
+ "version": "5.2.0",
+ "resolved": "https://registry.nlark.com/parse-json/download/parse-json-5.2.0.tgz",
+ "integrity": "sha1-x2/Gbe5UIxyWKyK8yKcs8vmXU80=",
+ "dev": true,
+ "requires": {
+ "@babel/code-frame": "^7.0.0",
+ "error-ex": "^1.3.1",
+ "json-parse-even-better-errors": "^2.3.0",
+ "lines-and-columns": "^1.1.6"
+ }
+ },
+ "parse5": {
+ "version": "5.1.1",
+ "resolved": "https://registry.nlark.com/parse5/download/parse5-5.1.1.tgz",
+ "integrity": "sha1-9o5OW6GFKsLK3AD0VV//bCq7YXg=",
+ "dev": true
+ },
+ "parse5-htmlparser2-tree-adapter": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npm.taobao.org/parse5-htmlparser2-tree-adapter/download/parse5-htmlparser2-tree-adapter-6.0.1.tgz",
+ "integrity": "sha1-LN+a2CMyEUA3DU2/XT6Sx8jdxuY=",
+ "dev": true,
+ "requires": {
+ "parse5": "^6.0.1"
+ },
+ "dependencies": {
+ "parse5": {
+ "version": "6.0.1",
+ "resolved": "https://registry.nlark.com/parse5/download/parse5-6.0.1.tgz",
+ "integrity": "sha1-4aHAhcVps9wIMhGE8Zo5zCf3wws=",
+ "dev": true
+ }
+ }
+ },
+ "parseurl": {
+ "version": "1.3.3",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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": "4.0.0",
+ "resolved": "https://registry.nlark.com/path-exists/download/path-exists-4.0.0.tgz",
+ "integrity": "sha1-UTvb4tO5XXdi6METfvoZXGxhtbM=",
+ "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.nlark.com/path-is-inside/download/path-is-inside-1.0.2.tgz?cache=0&sync_timestamp=1622604553837&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpath-is-inside%2Fdownload%2Fpath-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=1617971695678&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.7",
+ "resolved": "https://registry.nlark.com/path-parse/download/path-parse-1.0.7.tgz",
+ "integrity": "sha1-+8EUtgykKzDZ2vWFjkvWi77bZzU=",
+ "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",
+ "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=",
+ "dev": true
+ },
+ "path-type": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/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.1.2",
+ "resolved": "https://registry.nlark.com/pbkdf2/download/pbkdf2-3.1.2.tgz",
+ "integrity": "sha1-3YIqoIh1gOUvGgOdw+2hCO+uMHU=",
+ "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"
+ }
+ },
+ "performance-now": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/performance-now/download/performance-now-2.1.0.tgz",
+ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
+ "dev": true
+ },
+ "picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/picocolors/download/picocolors-1.0.0.tgz?cache=0&sync_timestamp=1634093442271&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpicocolors%2Fdownload%2Fpicocolors-1.0.0.tgz",
+ "integrity": "sha1-y1vcdP8/UYkiNur3nWi8RFZKuBw=",
+ "dev": true
+ },
+ "picomatch": {
+ "version": "2.3.0",
+ "resolved": "https://registry.nlark.com/picomatch/download/picomatch-2.3.0.tgz",
+ "integrity": "sha1-8fBh3o9qS/AiiS4tEoI0+5gwKXI=",
+ "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.nlark.com/pinkie-promise/download/pinkie-promise-2.0.1.tgz?cache=0&sync_timestamp=1618847023792&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpinkie-promise%2Fdownload%2Fpinkie-promise-2.0.1.tgz",
+ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
+ "dev": true,
+ "requires": {
+ "pinkie": "^2.0.0"
+ }
+ },
+ "pkg-dir": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmmirror.com/pkg-dir/download/pkg-dir-4.2.0.tgz?cache=0&sync_timestamp=1633498133295&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpkg-dir%2Fdownload%2Fpkg-dir-4.2.0.tgz",
+ "integrity": "sha1-8JkTPfft5CLoHR2ESCcO6z5CYfM=",
+ "dev": true,
+ "requires": {
+ "find-up": "^4.0.0"
+ }
+ },
+ "pnp-webpack-plugin": {
+ "version": "1.7.0",
+ "resolved": "https://registry.nlark.com/pnp-webpack-plugin/download/pnp-webpack-plugin-1.7.0.tgz?cache=0&sync_timestamp=1626888209947&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpnp-webpack-plugin%2Fdownload%2Fpnp-webpack-plugin-1.7.0.tgz",
+ "integrity": "sha1-ZXQThPbYBW824iVajWf/wghm9ck=",
+ "dev": true,
+ "requires": {
+ "ts-pnp": "^1.1.6"
+ }
+ },
+ "portfinder": {
+ "version": "1.0.28",
+ "resolved": "https://registry.nlark.com/portfinder/download/portfinder-1.0.28.tgz",
+ "integrity": "sha1-Z8RiKFK9U3TdHdkA93n1NGL6x3g=",
+ "dev": true,
+ "requires": {
+ "async": "^2.6.2",
+ "debug": "^3.1.1",
+ "mkdirp": "^0.5.5"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.nlark.com/debug/download/debug-3.2.7.tgz",
+ "integrity": "sha1-clgLfpFF+zm2Z2+cXl+xALk0F5o=",
+ "dev": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ }
+ }
+ },
+ "posix-character-classes": {
+ "version": "0.1.1",
+ "resolved": "https://registry.nlark.com/posix-character-classes/download/posix-character-classes-0.1.1.tgz",
+ "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
+ "dev": true
+ },
+ "postcss": {
+ "version": "7.0.39",
+ "resolved": "https://registry.npmmirror.com/postcss/download/postcss-7.0.39.tgz",
+ "integrity": "sha1-liQ3XZZWMOLh8sAqk1yCpZy0gwk=",
+ "dev": true,
+ "requires": {
+ "picocolors": "^0.2.1",
+ "source-map": "^0.6.1"
+ },
+ "dependencies": {
+ "picocolors": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmmirror.com/picocolors/download/picocolors-0.2.1.tgz?cache=0&sync_timestamp=1634093442271&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpicocolors%2Fdownload%2Fpicocolors-0.2.1.tgz",
+ "integrity": "sha1-VwZw95NkaFHRuhNZlpYqutWHhZ8=",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-calc": {
+ "version": "7.0.5",
+ "resolved": "https://registry.nlark.com/postcss-calc/download/postcss-calc-7.0.5.tgz",
+ "integrity": "sha1-+KbpnxLmGcLrwjz2xIb9wVhgkz4=",
+ "dev": true,
+ "requires": {
+ "postcss": "^7.0.27",
+ "postcss-selector-parser": "^6.0.2",
+ "postcss-value-parser": "^4.0.2"
+ }
+ },
+ "postcss-colormin": {
+ "version": "4.0.3",
+ "resolved": "https://registry.nlark.com/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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-convert-values": {
+ "version": "4.0.1",
+ "resolved": "https://registry.nlark.com/postcss-convert-values/download/postcss-convert-values-4.0.1.tgz?cache=0&sync_timestamp=1621449733448&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-convert-values%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-discard-comments": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/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.nlark.com/postcss-discard-duplicates/download/postcss-discard-duplicates-4.0.2.tgz?cache=0&sync_timestamp=1621449558296&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-discard-duplicates%2Fdownload%2Fpostcss-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.nlark.com/postcss-discard-empty/download/postcss-discard-empty-4.0.1.tgz?cache=0&sync_timestamp=1621449733074&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-discard-empty%2Fdownload%2Fpostcss-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.nlark.com/postcss-discard-overridden/download/postcss-discard-overridden-4.0.1.tgz?cache=0&sync_timestamp=1621449732464&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-discard-overridden%2Fdownload%2Fpostcss-discard-overridden-4.0.1.tgz",
+ "integrity": "sha1-ZSrvipZybwKfXj4AFG7npOdV/1c=",
+ "dev": true,
+ "requires": {
+ "postcss": "^7.0.0"
+ }
+ },
+ "postcss-load-config": {
+ "version": "2.1.2",
+ "resolved": "https://registry.nlark.com/postcss-load-config/download/postcss-load-config-2.1.2.tgz",
+ "integrity": "sha1-xepQTyxK7zPHNZo03jVzdyrXUCo=",
+ "dev": true,
+ "requires": {
+ "cosmiconfig": "^5.0.0",
+ "import-cwd": "^2.0.0"
+ }
+ },
+ "postcss-loader": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/postcss-loader/download/postcss-loader-3.0.0.tgz?cache=0&sync_timestamp=1634140473743&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpostcss-loader%2Fdownload%2Fpostcss-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"
+ },
+ "dependencies": {
+ "schema-utils": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1626694740261&other_urls=https%3A%2F%2Fregistry.nlark.com%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"
+ }
+ }
+ }
+ },
+ "postcss-merge-longhand": {
+ "version": "4.0.11",
+ "resolved": "https://registry.nlark.com/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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-merge-rules": {
+ "version": "4.0.3",
+ "resolved": "https://registry.nlark.com/postcss-merge-rules/download/postcss-merge-rules-4.0.3.tgz?cache=0&sync_timestamp=1622234641993&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-merge-rules%2Fdownload%2Fpostcss-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.2",
+ "resolved": "https://registry.nlark.com/postcss-selector-parser/download/postcss-selector-parser-3.1.2.tgz?cache=0&sync_timestamp=1620752939806&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-selector-parser%2Fdownload%2Fpostcss-selector-parser-3.1.2.tgz",
+ "integrity": "sha1-sxD1xMD9r3b5SQK7qjDbaqhPUnA=",
+ "dev": true,
+ "requires": {
+ "dot-prop": "^5.2.0",
+ "indexes-of": "^1.0.1",
+ "uniq": "^1.0.1"
+ }
+ }
+ }
+ },
+ "postcss-minify-font-values": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/postcss-minify-font-values/download/postcss-minify-font-values-4.0.2.tgz?cache=0&sync_timestamp=1621449734134&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-minify-font-values%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-minify-gradients": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/postcss-minify-gradients/download/postcss-minify-gradients-4.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-minify-gradients%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-minify-params": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/postcss-minify-params/download/postcss-minify-params-4.0.2.tgz?cache=0&sync_timestamp=1621449735393&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-minify-params%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-minify-selectors": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/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.2",
+ "resolved": "https://registry.nlark.com/postcss-selector-parser/download/postcss-selector-parser-3.1.2.tgz?cache=0&sync_timestamp=1620752939806&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-selector-parser%2Fdownload%2Fpostcss-selector-parser-3.1.2.tgz",
+ "integrity": "sha1-sxD1xMD9r3b5SQK7qjDbaqhPUnA=",
+ "dev": true,
+ "requires": {
+ "dot-prop": "^5.2.0",
+ "indexes-of": "^1.0.1",
+ "uniq": "^1.0.1"
+ }
+ }
+ }
+ },
+ "postcss-modules-extract-imports": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/postcss-modules-extract-imports/download/postcss-modules-extract-imports-2.0.0.tgz",
+ "integrity": "sha1-gYcZoa4doyX5gyRGsBE27rSTzX4=",
+ "dev": true,
+ "requires": {
+ "postcss": "^7.0.5"
+ }
+ },
+ "postcss-modules-local-by-default": {
+ "version": "3.0.3",
+ "resolved": "https://registry.nlark.com/postcss-modules-local-by-default/download/postcss-modules-local-by-default-3.0.3.tgz",
+ "integrity": "sha1-uxTgzHgnnVBNvcv9fgyiiZP/u7A=",
+ "dev": true,
+ "requires": {
+ "icss-utils": "^4.1.1",
+ "postcss": "^7.0.32",
+ "postcss-selector-parser": "^6.0.2",
+ "postcss-value-parser": "^4.1.0"
+ }
+ },
+ "postcss-modules-scope": {
+ "version": "2.2.0",
+ "resolved": "https://registry.nlark.com/postcss-modules-scope/download/postcss-modules-scope-2.2.0.tgz",
+ "integrity": "sha1-OFyuATzHdD9afXYC0Qc6iequYu4=",
+ "dev": true,
+ "requires": {
+ "postcss": "^7.0.6",
+ "postcss-selector-parser": "^6.0.0"
+ }
+ },
+ "postcss-modules-values": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/postcss-modules-values/download/postcss-modules-values-3.0.0.tgz",
+ "integrity": "sha1-W1AA1uuuKbQlUwG0o6VFdEI+fxA=",
+ "dev": true,
+ "requires": {
+ "icss-utils": "^4.0.0",
+ "postcss": "^7.0.6"
+ }
+ },
+ "postcss-normalize-charset": {
+ "version": "4.0.1",
+ "resolved": "https://registry.nlark.com/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.nlark.com/postcss-normalize-display-values/download/postcss-normalize-display-values-4.0.2.tgz?cache=0&sync_timestamp=1621449652268&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-normalize-display-values%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-normalize-positions": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/postcss-normalize-positions/download/postcss-normalize-positions-4.0.2.tgz?cache=0&sync_timestamp=1621449826472&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-normalize-positions%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-normalize-repeat-style": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/postcss-normalize-repeat-style/download/postcss-normalize-repeat-style-4.0.2.tgz?cache=0&sync_timestamp=1621449651580&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-normalize-repeat-style%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-normalize-string": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/postcss-normalize-string/download/postcss-normalize-string-4.0.2.tgz?cache=0&sync_timestamp=1621449646930&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-normalize-string%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-normalize-timing-functions": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-normalize-unicode": {
+ "version": "4.0.1",
+ "resolved": "https://registry.nlark.com/postcss-normalize-unicode/download/postcss-normalize-unicode-4.0.1.tgz?cache=0&sync_timestamp=1621449825612&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-normalize-unicode%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-normalize-url": {
+ "version": "4.0.1",
+ "resolved": "https://registry.nlark.com/postcss-normalize-url/download/postcss-normalize-url-4.0.1.tgz?cache=0&sync_timestamp=1623330505231&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-normalize-url%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-normalize-whitespace": {
+ "version": "4.0.2",
+ "resolved": "https://registry.nlark.com/postcss-normalize-whitespace/download/postcss-normalize-whitespace-4.0.2.tgz?cache=0&sync_timestamp=1621449646853&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-normalize-whitespace%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-ordered-values": {
+ "version": "4.1.2",
+ "resolved": "https://registry.nlark.com/postcss-ordered-values/download/postcss-ordered-values-4.1.2.tgz?cache=0&sync_timestamp=1623330460500&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-ordered-values%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-reduce-initial": {
+ "version": "4.0.3",
+ "resolved": "https://registry.nlark.com/postcss-reduce-initial/download/postcss-reduce-initial-4.0.3.tgz?cache=0&sync_timestamp=1621449728984&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-reduce-initial%2Fdownload%2Fpostcss-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.nlark.com/postcss-reduce-transforms/download/postcss-reduce-transforms-4.0.2.tgz?cache=0&sync_timestamp=1621449730895&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-reduce-transforms%2Fdownload%2Fpostcss-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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-selector-parser": {
+ "version": "6.0.6",
+ "resolved": "https://registry.nlark.com/postcss-selector-parser/download/postcss-selector-parser-6.0.6.tgz?cache=0&sync_timestamp=1620752939806&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-selector-parser%2Fdownload%2Fpostcss-selector-parser-6.0.6.tgz",
+ "integrity": "sha1-LFu6gXSsL2mBq2MaQqsO5UrzMuo=",
+ "dev": true,
+ "requires": {
+ "cssesc": "^3.0.0",
+ "util-deprecate": "^1.0.2"
+ }
+ },
+ "postcss-svgo": {
+ "version": "4.0.3",
+ "resolved": "https://registry.nlark.com/postcss-svgo/download/postcss-svgo-4.0.3.tgz",
+ "integrity": "sha1-NDos26yVBdQWJD1Jb3JPOIlMlB4=",
+ "dev": true,
+ "requires": {
+ "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.nlark.com/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz",
+ "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=",
+ "dev": true
+ }
+ }
+ },
+ "postcss-unique-selectors": {
+ "version": "4.0.1",
+ "resolved": "https://registry.nlark.com/postcss-unique-selectors/download/postcss-unique-selectors-4.0.1.tgz?cache=0&sync_timestamp=1621449730035&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-unique-selectors%2Fdownload%2Fpostcss-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.1.0",
+ "resolved": "https://registry.nlark.com/postcss-value-parser/download/postcss-value-parser-4.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-4.1.0.tgz",
+ "integrity": "sha1-RD9qIM7WSBor2k+oUypuVdeJoss=",
+ "dev": true
+ },
+ "prepend-http": {
+ "version": "1.0.4",
+ "resolved": "https://registry.nlark.com/prepend-http/download/prepend-http-1.0.4.tgz?cache=0&sync_timestamp=1628547439455&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprepend-http%2Fdownload%2Fprepend-http-1.0.4.tgz",
+ "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=",
+ "dev": true
+ },
+ "prettier": {
+ "version": "2.4.1",
+ "resolved": "https://registry.nlark.com/prettier/download/prettier-2.4.1.tgz?cache=0&sync_timestamp=1631777138030&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprettier%2Fdownload%2Fprettier-2.4.1.tgz",
+ "integrity": "sha1-Zx4RyJwUpM/Ids5WQQbEpnJsn1w=",
+ "dev": true,
+ "optional": true
+ },
+ "pretty-error": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmmirror.com/pretty-error/download/pretty-error-2.1.2.tgz",
+ "integrity": "sha1-von4LYGxyG7I/fvDhQRYgnJ/k7Y=",
+ "dev": true,
+ "requires": {
+ "lodash": "^4.17.20",
+ "renderkid": "^2.0.4"
+ }
+ },
+ "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-inflight": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/promise-inflight/download/promise-inflight-1.0.1.tgz",
+ "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=",
+ "dev": true
+ },
+ "proxy-addr": {
+ "version": "2.0.7",
+ "resolved": "https://registry.nlark.com/proxy-addr/download/proxy-addr-2.0.7.tgz",
+ "integrity": "sha1-8Z/mnOqzEe65S0LnDowgcPm6ECU=",
+ "dev": true,
+ "requires": {
+ "forwarded": "0.2.0",
+ "ipaddr.js": "1.9.1"
+ }
+ },
+ "prr": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/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.8.0",
+ "resolved": "https://registry.npm.taobao.org/psl/download/psl-1.8.0.tgz",
+ "integrity": "sha1-kyb4vPsBOtzABf3/BWrM4CDlHCQ=",
+ "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"
+ },
+ "dependencies": {
+ "bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.12.0.tgz",
+ "integrity": "sha1-d1s/J477uXGO7HNh9IP7Nvu/6og=",
+ "dev": true
+ }
+ }
+ },
+ "pump": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/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",
+ "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.nlark.com/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.nlark.com/punycode/download/punycode-2.1.1.tgz?cache=0&sync_timestamp=1622604519710&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpunycode%2Fdownload%2Fpunycode-2.1.1.tgz",
+ "integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew=",
+ "dev": true
+ },
+ "q": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npm.taobao.org/q/download/q-1.5.1.tgz?cache=0&sync_timestamp=1599054212574&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fq%2Fdownload%2Fq-1.5.1.tgz",
+ "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=",
+ "dev": true
+ },
+ "qs": {
+ "version": "6.5.2",
+ "resolved": "https://registry.nlark.com/qs/download/qs-6.5.2.tgz",
+ "integrity": "sha1-yzroBuh0BERYTvFUzo7pjUA/PjY=",
+ "dev": true
+ },
+ "query-string": {
+ "version": "4.3.4",
+ "resolved": "https://registry.nlark.com/query-string/download/query-string-4.3.4.tgz?cache=0&sync_timestamp=1624297034221&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fquery-string%2Fdownload%2Fquery-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.nlark.com/querystring/download/querystring-0.2.0.tgz?cache=0&sync_timestamp=1626179435543&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fquerystring%2Fdownload%2Fquerystring-0.2.0.tgz",
+ "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
+ "dev": true
+ },
+ "querystring-es3": {
+ "version": "0.2.1",
+ "resolved": "https://registry.nlark.com/querystring-es3/download/querystring-es3-0.2.1.tgz",
+ "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
+ "dev": true
+ },
+ "querystringify": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npm.taobao.org/querystringify/download/querystringify-2.2.0.tgz",
+ "integrity": "sha1-M0WUG0FTy50ILY7uTNogFqmu9/Y=",
+ "dev": true
+ },
+ "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.nlark.com/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.nlark.com/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"
+ }
+ },
+ "read-pkg": {
+ "version": "5.2.0",
+ "resolved": "https://registry.nlark.com/read-pkg/download/read-pkg-5.2.0.tgz",
+ "integrity": "sha1-e/KVQ4yloz5WzTDgU7NO5yUMk8w=",
+ "dev": true,
+ "requires": {
+ "@types/normalize-package-data": "^2.4.0",
+ "normalize-package-data": "^2.5.0",
+ "parse-json": "^5.0.0",
+ "type-fest": "^0.6.0"
+ }
+ },
+ "read-pkg-up": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmmirror.com/read-pkg-up/download/read-pkg-up-1.0.1.tgz",
+ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
+ "dev": true,
+ "requires": {
+ "find-up": "^1.0.0",
+ "read-pkg": "^1.0.0"
+ },
+ "dependencies": {
+ "find-up": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmmirror.com/find-up/download/find-up-1.1.2.tgz",
+ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
+ "dev": true,
+ "requires": {
+ "path-exists": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "path-exists": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/path-exists/download/path-exists-2.1.0.tgz",
+ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
+ "dev": true,
+ "requires": {
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "path-type": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/path-type/download/path-type-1.1.0.tgz",
+ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz",
+ "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
+ "dev": true
+ },
+ "read-pkg": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/read-pkg/download/read-pkg-1.1.0.tgz",
+ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
+ "dev": true,
+ "requires": {
+ "load-json-file": "^1.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^1.0.0"
+ }
+ }
+ }
+ },
+ "readable-stream": {
+ "version": "2.3.7",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "readdirp": {
+ "version": "3.6.0",
+ "resolved": "https://registry.nlark.com/readdirp/download/readdirp-3.6.0.tgz",
+ "integrity": "sha1-dKNwvYVxFuJFspzJc0DNQxoCpsc=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "picomatch": "^2.2.1"
+ }
+ },
+ "redent": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/redent/download/redent-1.0.0.tgz",
+ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
+ "dev": true,
+ "requires": {
+ "indent-string": "^2.1.0",
+ "strip-indent": "^1.0.1"
+ }
+ },
+ "regenerate": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npm.taobao.org/regenerate/download/regenerate-1.4.2.tgz?cache=0&sync_timestamp=1604218353677&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerate%2Fdownload%2Fregenerate-1.4.2.tgz",
+ "integrity": "sha1-uTRtiCfo9aMve6KWN9OYtpAUhIo=",
+ "dev": true
+ },
+ "regenerate-unicode-properties": {
+ "version": "9.0.0",
+ "resolved": "https://registry.nlark.com/regenerate-unicode-properties/download/regenerate-unicode-properties-9.0.0.tgz?cache=0&sync_timestamp=1631617161322&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fregenerate-unicode-properties%2Fdownload%2Fregenerate-unicode-properties-9.0.0.tgz",
+ "integrity": "sha1-VNCccRXh9T3CMUqXSzLBw0Tv4yY=",
+ "dev": true,
+ "requires": {
+ "regenerate": "^1.4.2"
+ }
+ },
+ "regenerator-runtime": {
+ "version": "0.13.9",
+ "resolved": "https://registry.nlark.com/regenerator-runtime/download/regenerator-runtime-0.13.9.tgz?cache=0&sync_timestamp=1626993001371&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.13.9.tgz",
+ "integrity": "sha1-iSV0Kpj/2QgUmI11Zq0wyjsmO1I=",
+ "dev": true
+ },
+ "regenerator-transform": {
+ "version": "0.14.5",
+ "resolved": "https://registry.nlark.com/regenerator-transform/download/regenerator-transform-0.14.5.tgz?cache=0&sync_timestamp=1627057533376&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fregenerator-transform%2Fdownload%2Fregenerator-transform-0.14.5.tgz",
+ "integrity": "sha1-yY2hVGg2ccnE3LFuznNlF+G3/rQ=",
+ "dev": true,
+ "requires": {
+ "@babel/runtime": "^7.8.4"
+ }
+ },
+ "regex-not": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/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.1",
+ "resolved": "https://registry.nlark.com/regexp.prototype.flags/download/regexp.prototype.flags-1.3.1.tgz",
+ "integrity": "sha1-fvNSro0VnnWMDq3Kb4/LTu8HviY=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.3"
+ }
+ },
+ "regexpu-core": {
+ "version": "4.8.0",
+ "resolved": "https://registry.nlark.com/regexpu-core/download/regexpu-core-4.8.0.tgz?cache=0&sync_timestamp=1631619113277&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fregexpu-core%2Fdownload%2Fregexpu-core-4.8.0.tgz",
+ "integrity": "sha1-5WBbo2G2excYR4UBMnUC9EeamPA=",
+ "dev": true,
+ "requires": {
+ "regenerate": "^1.4.2",
+ "regenerate-unicode-properties": "^9.0.0",
+ "regjsgen": "^0.5.2",
+ "regjsparser": "^0.7.0",
+ "unicode-match-property-ecmascript": "^2.0.0",
+ "unicode-match-property-value-ecmascript": "^2.0.0"
+ }
+ },
+ "regjsgen": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmmirror.com/regjsgen/download/regjsgen-0.5.2.tgz",
+ "integrity": "sha1-kv8pX7He7L9uzaslQ9IH6RqjNzM=",
+ "dev": true
+ },
+ "regjsparser": {
+ "version": "0.7.0",
+ "resolved": "https://registry.nlark.com/regjsparser/download/regjsparser-0.7.0.tgz?cache=0&sync_timestamp=1630946816794&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fregjsparser%2Fdownload%2Fregjsparser-0.7.0.tgz",
+ "integrity": "sha1-prZntUyIXhi1JVTLSWDvcRh+mWg=",
+ "dev": true,
+ "requires": {
+ "jsesc": "~0.5.0"
+ },
+ "dependencies": {
+ "jsesc": {
+ "version": "0.5.0",
+ "resolved": "https://registry.nlark.com/jsesc/download/jsesc-0.5.0.tgz",
+ "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
+ "dev": true
+ }
+ }
+ },
+ "relateurl": {
+ "version": "0.2.7",
+ "resolved": "https://registry.nlark.com/relateurl/download/relateurl-0.2.7.tgz",
+ "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=",
+ "dev": true
+ },
+ "remove-trailing-separator": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/remove-trailing-separator/download/remove-trailing-separator-1.1.0.tgz",
+ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
+ "dev": true
+ },
+ "renderkid": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmmirror.com/renderkid/download/renderkid-2.0.7.tgz",
+ "integrity": "sha1-Rk8namvc7mBvShWZP5sp/HTKhgk=",
+ "dev": true,
+ "requires": {
+ "css-select": "^4.1.3",
+ "dom-converter": "^0.2.0",
+ "htmlparser2": "^6.1.0",
+ "lodash": "^4.17.21",
+ "strip-ansi": "^3.0.1"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-2.1.1.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-2.1.1.tgz",
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
+ "dev": true
+ },
+ "css-select": {
+ "version": "4.1.3",
+ "resolved": "https://registry.nlark.com/css-select/download/css-select-4.1.3.tgz?cache=0&sync_timestamp=1622994276976&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcss-select%2Fdownload%2Fcss-select-4.1.3.tgz",
+ "integrity": "sha1-pwRA9wMX8maRGK10/xBeZYSccGc=",
+ "dev": true,
+ "requires": {
+ "boolbase": "^1.0.0",
+ "css-what": "^5.0.0",
+ "domhandler": "^4.2.0",
+ "domutils": "^2.6.0",
+ "nth-check": "^2.0.0"
+ }
+ },
+ "css-what": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmmirror.com/css-what/download/css-what-5.1.0.tgz",
+ "integrity": "sha1-P3tweq32M7r2LCzrhXm1RbtA9/4=",
+ "dev": true
+ },
+ "dom-serializer": {
+ "version": "1.3.2",
+ "resolved": "https://registry.nlark.com/dom-serializer/download/dom-serializer-1.3.2.tgz?cache=0&sync_timestamp=1621256830355&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdom-serializer%2Fdownload%2Fdom-serializer-1.3.2.tgz",
+ "integrity": "sha1-YgZDfTLO767HFhgDIwx6ILwbTZE=",
+ "dev": true,
+ "requires": {
+ "domelementtype": "^2.0.1",
+ "domhandler": "^4.2.0",
+ "entities": "^2.0.0"
+ }
+ },
+ "domelementtype": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npm.taobao.org/domelementtype/download/domelementtype-2.2.0.tgz?cache=0&sync_timestamp=1617298545989&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomelementtype%2Fdownload%2Fdomelementtype-2.2.0.tgz",
+ "integrity": "sha1-mgtsJ4LtahxzI9QiZxg9+b2LHVc=",
+ "dev": true
+ },
+ "domutils": {
+ "version": "2.8.0",
+ "resolved": "https://registry.nlark.com/domutils/download/domutils-2.8.0.tgz?cache=0&sync_timestamp=1630106606599&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdomutils%2Fdownload%2Fdomutils-2.8.0.tgz",
+ "integrity": "sha1-RDfe9dtuLR9dbuhZvZXKfQIEgTU=",
+ "dev": true,
+ "requires": {
+ "dom-serializer": "^1.0.1",
+ "domelementtype": "^2.2.0",
+ "domhandler": "^4.2.0"
+ }
+ },
+ "nth-check": {
+ "version": "2.0.1",
+ "resolved": "https://registry.nlark.com/nth-check/download/nth-check-2.0.1.tgz",
+ "integrity": "sha1-Lv4WL1w9oGoolZ+9PbddvuqfD8I=",
+ "dev": true,
+ "requires": {
+ "boolbase": "^1.0.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-3.0.1.tgz",
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ }
+ }
+ },
+ "repeat-element": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npm.taobao.org/repeat-element/download/repeat-element-1.1.4.tgz",
+ "integrity": "sha1-vmgVIIR6tYx1aKx1+/rSjtQtOek=",
+ "dev": true
+ },
+ "repeat-string": {
+ "version": "1.6.1",
+ "resolved": "https://registry.nlark.com/repeat-string/download/repeat-string-1.6.1.tgz",
+ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
+ "dev": true
+ },
+ "repeating": {
+ "version": "2.0.1",
+ "resolved": "https://registry.nlark.com/repeating/download/repeating-2.0.1.tgz?cache=0&sync_timestamp=1622605325095&other_urls=https%3A%2F%2Fregistry.nlark.com%2Frepeating%2Fdownload%2Frepeating-2.0.1.tgz",
+ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
+ "dev": true,
+ "requires": {
+ "is-finite": "^1.0.0"
+ }
+ },
+ "request": {
+ "version": "2.88.2",
+ "resolved": "https://registry.nlark.com/request/download/request-2.88.2.tgz",
+ "integrity": "sha1-1zyRhzHLWofaBH4gcjQUb2ZNErM=",
+ "dev": true,
+ "requires": {
+ "aws-sign2": "~0.7.0",
+ "aws4": "^1.8.0",
+ "caseless": "~0.12.0",
+ "combined-stream": "~1.0.6",
+ "extend": "~3.0.2",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.3.2",
+ "har-validator": "~5.1.3",
+ "http-signature": "~1.2.0",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.19",
+ "oauth-sign": "~0.9.0",
+ "performance-now": "^2.1.0",
+ "qs": "~6.5.2",
+ "safe-buffer": "^5.1.2",
+ "tough-cookie": "~2.5.0",
+ "tunnel-agent": "^0.6.0",
+ "uuid": "^3.3.2"
+ }
+ },
+ "require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.nlark.com/require-directory/download/require-directory-2.1.1.tgz",
+ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
+ "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
+ },
+ "requires-port": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/requires-port/download/requires-port-1.0.0.tgz",
+ "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
+ "dev": true
+ },
+ "resize-observer-polyfill": {
+ "version": "1.5.1",
+ "resolved": "https://registry.nlark.com/resize-observer-polyfill/download/resize-observer-polyfill-1.5.1.tgz",
+ "integrity": "sha1-DpAg3T0hAkRY1OvSfiPkAmmBBGQ="
+ },
+ "resolve": {
+ "version": "1.20.0",
+ "resolved": "https://registry.npm.taobao.org/resolve/download/resolve-1.20.0.tgz",
+ "integrity": "sha1-YpoBP7P3B1XW8LeTXMHCxTeLGXU=",
+ "dev": true,
+ "requires": {
+ "is-core-module": "^2.2.0",
+ "path-parse": "^1.0.6"
+ }
+ },
+ "resolve-cwd": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/resolve-from/download/resolve-from-3.0.0.tgz",
+ "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
+ "dev": true
+ },
+ "resolve-url": {
+ "version": "0.2.1",
+ "resolved": "https://registry.nlark.com/resolve-url/download/resolve-url-0.2.1.tgz",
+ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
+ "dev": true
+ },
+ "restore-cursor": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/restore-cursor/download/restore-cursor-2.0.0.tgz?cache=0&sync_timestamp=1629746923086&other_urls=https%3A%2F%2Fregistry.nlark.com%2Frestore-cursor%2Fdownload%2Frestore-cursor-2.0.0.tgz",
+ "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
+ "dev": true,
+ "requires": {
+ "onetime": "^2.0.0",
+ "signal-exit": "^3.0.2"
+ }
+ },
+ "ret": {
+ "version": "0.1.15",
+ "resolved": "https://registry.npm.taobao.org/ret/download/ret-0.1.15.tgz",
+ "integrity": "sha1-uKSCXVvbH8P29Twrwz+BOIaBx7w=",
+ "dev": true
+ },
+ "retry": {
+ "version": "0.12.0",
+ "resolved": "https://registry.nlark.com/retry/download/retry-0.12.0.tgz",
+ "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=",
+ "dev": true
+ },
+ "rgb-regex": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/rgb-regex/download/rgb-regex-1.0.1.tgz",
+ "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=",
+ "dev": true
+ },
+ "rgba-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/ripemd160/download/ripemd160-2.0.2.tgz",
+ "integrity": "sha1-ocGm9iR1FXe6XQeRTLyShQWFiQw=",
+ "dev": true,
+ "requires": {
+ "hash-base": "^3.0.0",
+ "inherits": "^2.0.1"
+ }
+ },
+ "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"
+ }
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.nlark.com/safe-buffer/download/safe-buffer-5.1.2.tgz",
+ "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=",
+ "dev": true
+ },
+ "safe-regex": {
+ "version": "1.1.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/safer-buffer/download/safer-buffer-2.1.2.tgz",
+ "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=",
+ "dev": true
+ },
+ "sass-graph": {
+ "version": "2.2.5",
+ "resolved": "https://registry.nlark.com/sass-graph/download/sass-graph-2.2.5.tgz",
+ "integrity": "sha1-qYHIdEa4MZ2W3OBnHkh4eb0kwug=",
+ "dev": true,
+ "requires": {
+ "glob": "^7.0.0",
+ "lodash": "^4.0.0",
+ "scss-tokenizer": "^0.2.3",
+ "yargs": "^13.3.2"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz",
+ "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=",
+ "dev": true
+ },
+ "cliui": {
+ "version": "5.0.0",
+ "resolved": "https://registry.nlark.com/cliui/download/cliui-5.0.0.tgz",
+ "integrity": "sha1-3u/P2y6AB4SqNPRvoI4GhRx7u8U=",
+ "dev": true,
+ "requires": {
+ "string-width": "^3.1.0",
+ "strip-ansi": "^5.2.0",
+ "wrap-ansi": "^5.1.0"
+ }
+ },
+ "emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmmirror.com/emoji-regex/download/emoji-regex-7.0.3.tgz?cache=0&sync_timestamp=1632751333727&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Femoji-regex%2Fdownload%2Femoji-regex-7.0.3.tgz",
+ "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=",
+ "dev": true
+ },
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/find-up/download/find-up-3.0.0.tgz",
+ "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/locate-path/download/locate-path-3.0.0.tgz?cache=0&sync_timestamp=1629895724478&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flocate-path%2Fdownload%2Flocate-path-3.0.0.tgz",
+ "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/p-locate/download/p-locate-3.0.0.tgz",
+ "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/path-exists/download/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true
+ },
+ "string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/string-width/download/string-width-3.1.0.tgz?cache=0&sync_timestamp=1632421309919&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fstring-width%2Fdownload%2Fstring-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.npmmirror.com/strip-ansi/download/strip-ansi-5.2.0.tgz",
+ "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.1.0"
+ }
+ },
+ "wrap-ansi": {
+ "version": "5.1.0",
+ "resolved": "https://registry.nlark.com/wrap-ansi/download/wrap-ansi-5.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwrap-ansi%2Fdownload%2Fwrap-ansi-5.1.0.tgz",
+ "integrity": "sha1-H9H2cjXVttD+54EFYAG/tpTAOwk=",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.0",
+ "string-width": "^3.0.0",
+ "strip-ansi": "^5.0.0"
+ }
+ },
+ "yargs": {
+ "version": "13.3.2",
+ "resolved": "https://registry.npmmirror.com/yargs/download/yargs-13.3.2.tgz?cache=0&sync_timestamp=1632605487521&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fyargs%2Fdownload%2Fyargs-13.3.2.tgz",
+ "integrity": "sha1-rX/+/sGqWVZayRX4Lcyzipwxot0=",
+ "dev": true,
+ "requires": {
+ "cliui": "^5.0.0",
+ "find-up": "^3.0.0",
+ "get-caller-file": "^2.0.1",
+ "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.1.2"
+ }
+ },
+ "yargs-parser": {
+ "version": "13.1.2",
+ "resolved": "https://registry.nlark.com/yargs-parser/download/yargs-parser-13.1.2.tgz",
+ "integrity": "sha1-Ew8JcC667vJlDVTObj5XBvek+zg=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ }
+ }
+ }
+ },
+ "sass-loader": {
+ "version": "7.3.1",
+ "resolved": "https://registry.npmmirror.com/sass-loader/download/sass-loader-7.3.1.tgz",
+ "integrity": "sha1-pb9ooEvOocE/+ELXRxUPerfQ0j8=",
+ "dev": true,
+ "requires": {
+ "clone-deep": "^4.0.1",
+ "loader-utils": "^1.0.1",
+ "neo-async": "^2.5.0",
+ "pify": "^4.0.1",
+ "semver": "^6.3.0"
+ }
+ },
+ "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": "2.7.1",
+ "resolved": "https://registry.nlark.com/schema-utils/download/schema-utils-2.7.1.tgz?cache=0&sync_timestamp=1626694740261&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fschema-utils%2Fdownload%2Fschema-utils-2.7.1.tgz",
+ "integrity": "sha1-HKTzLRskxZDCA7jnpQvw6kzTlNc=",
+ "dev": true,
+ "requires": {
+ "@types/json-schema": "^7.0.5",
+ "ajv": "^6.12.4",
+ "ajv-keywords": "^3.5.2"
+ }
+ },
+ "scss-tokenizer": {
+ "version": "0.2.3",
+ "resolved": "https://registry.nlark.com/scss-tokenizer/download/scss-tokenizer-0.2.3.tgz",
+ "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
+ "dev": true,
+ "requires": {
+ "js-base64": "^2.1.8",
+ "source-map": "^0.4.2"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.4.4",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.4.4.tgz",
+ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
+ "dev": true,
+ "requires": {
+ "amdefine": ">=0.0.4"
+ }
+ }
+ }
+ },
+ "select-hose": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/select-hose/download/select-hose-2.0.0.tgz",
+ "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=",
+ "dev": true
+ },
+ "selfsigned": {
+ "version": "1.10.11",
+ "resolved": "https://registry.nlark.com/selfsigned/download/selfsigned-1.10.11.tgz",
+ "integrity": "sha1-JJKc2Qb+D0S20B+yOZmnOVN6y+k=",
+ "dev": true,
+ "requires": {
+ "node-forge": "^0.10.0"
+ }
+ },
+ "semver": {
+ "version": "6.3.0",
+ "resolved": "https://registry.nlark.com/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz",
+ "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=",
+ "dev": true
+ },
+ "send": {
+ "version": "0.17.1",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.npmmirror.com/ms/download/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ }
+ }
+ },
+ "mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz?cache=0&sync_timestamp=1615984369368&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-1.6.0.tgz",
+ "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=",
+ "dev": true
+ },
+ "ms": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmmirror.com/ms/download/ms-2.1.1.tgz",
+ "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=",
+ "dev": true
+ }
+ }
+ },
+ "serialize-javascript": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/serialize-javascript/download/serialize-javascript-4.0.0.tgz",
+ "integrity": "sha1-tSXhI4SJpez8Qq+sw/6Z5mb0sao=",
+ "dev": true,
+ "requires": {
+ "randombytes": "^2.1.0"
+ }
+ },
+ "serve-index": {
+ "version": "1.9.1",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.nlark.com/inherits/download/inherits-2.0.3.tgz",
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
+ "dev": true
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/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",
+ "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?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fserve-static%2Fdownload%2Fserve-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.nlark.com/set-blocking/download/set-blocking-2.0.0.tgz",
+ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
+ "dev": true
+ },
+ "set-value": {
+ "version": "2.0.1",
+ "resolved": "https://registry.nlark.com/set-value/download/set-value-2.0.1.tgz?cache=0&sync_timestamp=1631437857327&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fset-value%2Fdownload%2Fset-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.nlark.com/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",
+ "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.nlark.com/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.nlark.com/shebang-regex/download/shebang-regex-1.0.0.tgz?cache=0&sync_timestamp=1628896299850&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fshebang-regex%2Fdownload%2Fshebang-regex-1.0.0.tgz",
+ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
+ "dev": true
+ },
+ "shell-quote": {
+ "version": "1.7.3",
+ "resolved": "https://registry.npmmirror.com/shell-quote/download/shell-quote-1.7.3.tgz",
+ "integrity": "sha1-qkDtrBcERbmkMeF7tiwLiBucQSM=",
+ "dev": true
+ },
+ "side-channel": {
+ "version": "1.0.4",
+ "resolved": "https://registry.nlark.com/side-channel/download/side-channel-1.0.4.tgz",
+ "integrity": "sha1-785cj9wQTudRslxY1CkAEfpeos8=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.0",
+ "get-intrinsic": "^1.0.2",
+ "object-inspect": "^1.9.0"
+ }
+ },
+ "signal-exit": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmmirror.com/signal-exit/download/signal-exit-3.0.5.tgz?cache=0&sync_timestamp=1632948374592&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fsignal-exit%2Fdownload%2Fsignal-exit-3.0.5.tgz",
+ "integrity": "sha1-nj6MwMdamUcrRDIQM6dwLnc4JS8=",
+ "dev": true
+ },
+ "simple-swizzle": {
+ "version": "0.2.2",
+ "resolved": "https://registry.nlark.com/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
+ }
+ }
+ },
+ "slash": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/slash/download/slash-1.0.0.tgz",
+ "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=",
+ "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.nlark.com/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.nlark.com/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.npmmirror.com/ms/download/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "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.nlark.com/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.nlark.com/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.nlark.com/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.nlark.com/kind-of/download/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "sockjs": {
+ "version": "0.3.21",
+ "resolved": "https://registry.nlark.com/sockjs/download/sockjs-0.3.21.tgz",
+ "integrity": "sha1-s0/7mOeWkwtgoM+hGQTWozmn1Bc=",
+ "dev": true,
+ "requires": {
+ "faye-websocket": "^0.11.3",
+ "uuid": "^3.4.0",
+ "websocket-driver": "^0.7.4"
+ }
+ },
+ "sockjs-client": {
+ "version": "1.5.2",
+ "resolved": "https://registry.nlark.com/sockjs-client/download/sockjs-client-1.5.2.tgz?cache=0&sync_timestamp=1629825055862&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsockjs-client%2Fdownload%2Fsockjs-client-1.5.2.tgz",
+ "integrity": "sha1-S8SMLanOR2nxnccjOWtQ9cEjMKM=",
+ "dev": true,
+ "requires": {
+ "debug": "^3.2.6",
+ "eventsource": "^1.0.7",
+ "faye-websocket": "^0.11.3",
+ "inherits": "^2.0.4",
+ "json3": "^3.3.3",
+ "url-parse": "^1.5.3"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.nlark.com/debug/download/debug-3.2.7.tgz",
+ "integrity": "sha1-clgLfpFF+zm2Z2+cXl+xALk0F5o=",
+ "dev": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ }
+ }
+ },
+ "sort-keys": {
+ "version": "1.1.2",
+ "resolved": "https://registry.nlark.com/sort-keys/download/sort-keys-1.1.2.tgz",
+ "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=",
+ "dev": true,
+ "requires": {
+ "is-plain-obj": "^1.0.0"
+ },
+ "dependencies": {
+ "is-plain-obj": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz?cache=0&sync_timestamp=1618600489644&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-plain-obj%2Fdownload%2Fis-plain-obj-1.1.0.tgz",
+ "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=",
+ "dev": true
+ }
+ }
+ },
+ "source-list-map": {
+ "version": "2.0.1",
+ "resolved": "https://registry.nlark.com/source-list-map/download/source-list-map-2.0.1.tgz",
+ "integrity": "sha1-OZO9hzv8SEecyp6jpUeDXHwVSzQ=",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.5.7",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.5.7.tgz",
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
+ "dev": true
+ },
+ "source-map-resolve": {
+ "version": "0.5.3",
+ "resolved": "https://registry.nlark.com/source-map-resolve/download/source-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.20",
+ "resolved": "https://registry.nlark.com/source-map-support/download/source-map-support-0.5.20.tgz?cache=0&sync_timestamp=1631179636992&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsource-map-support%2Fdownload%2Fsource-map-support-0.5.20.tgz",
+ "integrity": "sha1-EhZgifj15ejFaSazd2Mzkt0stsk=",
+ "dev": true,
+ "requires": {
+ "buffer-from": "^1.0.0",
+ "source-map": "^0.6.0"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "source-map-url": {
+ "version": "0.4.1",
+ "resolved": "https://registry.nlark.com/source-map-url/download/source-map-url-0.4.1.tgz",
+ "integrity": "sha1-CvZmBadFpaL5HPG7+KevvCg97FY=",
+ "dev": true
+ },
+ "spdx-correct": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npm.taobao.org/spdx-correct/download/spdx-correct-3.1.1.tgz",
+ "integrity": "sha1-3s6BrJweZxPl99G28X1Gj6U9iak=",
+ "dev": true,
+ "requires": {
+ "spdx-expression-parse": "^3.0.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "spdx-exceptions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npm.taobao.org/spdx-exceptions/download/spdx-exceptions-2.3.0.tgz",
+ "integrity": "sha1-PyjOGnegA3JoPq3kpDMYNSeiFj0=",
+ "dev": true
+ },
+ "spdx-expression-parse": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npm.taobao.org/spdx-expression-parse/download/spdx-expression-parse-3.0.1.tgz",
+ "integrity": "sha1-z3D1BILu/cmOPOCmgz5KU87rpnk=",
+ "dev": true,
+ "requires": {
+ "spdx-exceptions": "^2.1.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "spdx-license-ids": {
+ "version": "3.0.10",
+ "resolved": "https://registry.nlark.com/spdx-license-ids/download/spdx-license-ids-3.0.10.tgz?cache=0&sync_timestamp=1628483278047&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fspdx-license-ids%2Fdownload%2Fspdx-license-ids-3.0.10.tgz",
+ "integrity": "sha1-DZvszN5wA9bGWNSH3UijLwvzAUs=",
+ "dev": true
+ },
+ "spdy": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npm.taobao.org/spdy/download/spdy-4.0.2.tgz",
+ "integrity": "sha1-t09GYgOj7aRSwCSSuR+56EonZ3s=",
+ "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.6.0",
+ "resolved": "https://registry.nlark.com/readable-stream/download/readable-stream-3.6.0.tgz",
+ "integrity": "sha1-M3u9o63AcGvT4CRCaihtS0sskZg=",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.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.nlark.com/sprintf-js/download/sprintf-js-1.0.3.tgz?cache=0&sync_timestamp=1618847174560&other_urls=https%3A%2F%2Fregistry.nlark.com%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": "6.0.2",
+ "resolved": "https://registry.nlark.com/ssri/download/ssri-6.0.2.tgz?cache=0&sync_timestamp=1621364626710&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fssri%2Fdownload%2Fssri-6.0.2.tgz",
+ "integrity": "sha1-FXk5E08gRk5zAd26PpD/qPdyisU=",
+ "dev": true,
+ "requires": {
+ "figgy-pudding": "^3.5.1"
+ }
+ },
+ "stable": {
+ "version": "0.1.8",
+ "resolved": "https://registry.npm.taobao.org/stable/download/stable-0.1.8.tgz",
+ "integrity": "sha1-g26zyDgv4pNv6vVEYxAXzn1Ho88=",
+ "dev": true
+ },
+ "stackframe": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npm.taobao.org/stackframe/download/stackframe-1.2.0.tgz",
+ "integrity": "sha1-UkKUktY8YuuYmATBFVLj0i53kwM=",
+ "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
+ },
+ "stdout-stream": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npm.taobao.org/stdout-stream/download/stdout-stream-1.4.1.tgz",
+ "integrity": "sha1-WsF0zdXNcmEEqgwLK9g4FdjVNd4=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^2.0.1"
+ }
+ },
+ "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.nlark.com/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",
+ "integrity": "sha1-1wiCgVWasneEJCebCHfaPDktWj0=",
+ "dev": true
+ },
+ "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.npmmirror.com/string-width/download/string-width-2.1.1.tgz?cache=0&sync_timestamp=1632421309919&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fstring-width%2Fdownload%2Fstring-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.nlark.com/ansi-regex/download/ansi-regex-3.0.0.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-3.0.0.tgz",
+ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
+ "dev": true
+ },
+ "strip-ansi": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-4.0.0.tgz",
+ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^3.0.0"
+ }
+ }
+ }
+ },
+ "string.prototype.trimend": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npm.taobao.org/string.prototype.trimend/download/string.prototype.trimend-1.0.4.tgz?cache=0&sync_timestamp=1614127461586&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.trimend%2Fdownload%2Fstring.prototype.trimend-1.0.4.tgz",
+ "integrity": "sha1-51rpDClCxjUEaGwYsoe0oLGkX4A=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.3"
+ }
+ },
+ "string.prototype.trimstart": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npm.taobao.org/string.prototype.trimstart/download/string.prototype.trimstart-1.0.4.tgz?cache=0&sync_timestamp=1614127357785&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.trimstart%2Fdownload%2Fstring.prototype.trimstart-1.0.4.tgz",
+ "integrity": "sha1-s2OZr0qymZtMnGSL16P7K7Jv7u0=",
+ "dev": true,
+ "requires": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.1.3"
+ }
+ },
+ "string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.nlark.com/string_decoder/download/string_decoder-1.1.1.tgz",
+ "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-6.0.1.tgz",
+ "integrity": "sha1-nibGPTD1NEPpSJSVshBdN7Z6hdk=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^5.0.1"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-5.0.1.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-5.0.1.tgz",
+ "integrity": "sha1-CCyyyJyf6GWaMRpTvWpNxTAdswQ=",
+ "dev": true
+ }
+ }
+ },
+ "strip-bom": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/strip-bom/download/strip-bom-2.0.0.tgz",
+ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
+ "dev": true,
+ "requires": {
+ "is-utf8": "^0.2.0"
+ }
+ },
+ "strip-eof": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/strip-eof/download/strip-eof-1.0.0.tgz",
+ "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
+ "dev": true
+ },
+ "strip-final-newline": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/strip-final-newline/download/strip-final-newline-2.0.0.tgz",
+ "integrity": "sha1-ibhS+y/L6Tb29LMYevsKEsGrWK0=",
+ "dev": true
+ },
+ "strip-indent": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/strip-indent/download/strip-indent-1.0.1.tgz?cache=0&sync_timestamp=1620053310624&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fstrip-indent%2Fdownload%2Fstrip-indent-1.0.1.tgz",
+ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
+ "dev": true,
+ "requires": {
+ "get-stdin": "^4.0.1"
+ }
+ },
+ "stylehacks": {
+ "version": "4.0.3",
+ "resolved": "https://registry.nlark.com/stylehacks/download/stylehacks-4.0.3.tgz?cache=0&sync_timestamp=1621449652268&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fstylehacks%2Fdownload%2Fstylehacks-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.2",
+ "resolved": "https://registry.nlark.com/postcss-selector-parser/download/postcss-selector-parser-3.1.2.tgz?cache=0&sync_timestamp=1620752939806&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-selector-parser%2Fdownload%2Fpostcss-selector-parser-3.1.2.tgz",
+ "integrity": "sha1-sxD1xMD9r3b5SQK7qjDbaqhPUnA=",
+ "dev": true,
+ "requires": {
+ "dot-prop": "^5.2.0",
+ "indexes-of": "^1.0.1",
+ "uniq": "^1.0.1"
+ }
+ }
+ }
+ },
+ "supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.nlark.com/supports-color/download/supports-color-5.5.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-5.5.0.tgz",
+ "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=",
+ "dev": true,
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ },
+ "svg-tags": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/svg-tags/download/svg-tags-1.0.0.tgz",
+ "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=",
+ "dev": true
+ },
+ "svgo": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmmirror.com/svgo/download/svgo-1.3.2.tgz?cache=0&sync_timestamp=1633354062790&other_urls=https%3A%2F%2Fregistry.npmmirror.com%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"
+ }
+ },
+ "tapable": {
+ "version": "1.1.3",
+ "resolved": "https://registry.nlark.com/tapable/download/tapable-1.1.3.tgz",
+ "integrity": "sha1-ofzMBrWNth/XpF2i2kT186Pme6I=",
+ "dev": true
+ },
+ "tar": {
+ "version": "2.2.2",
+ "resolved": "https://registry.nlark.com/tar/download/tar-2.2.2.tgz?cache=0&sync_timestamp=1629994598621&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftar%2Fdownload%2Ftar-2.2.2.tgz",
+ "integrity": "sha1-DKiEhWLHKZuLRG/2pNYM27I+3EA=",
+ "dev": true,
+ "requires": {
+ "block-stream": "*",
+ "fstream": "^1.0.12",
+ "inherits": "2"
+ }
+ },
+ "terser": {
+ "version": "4.8.0",
+ "resolved": "https://registry.nlark.com/terser/download/terser-4.8.0.tgz?cache=0&sync_timestamp=1632229839325&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fterser%2Fdownload%2Fterser-4.8.0.tgz",
+ "integrity": "sha1-YwVjQ9fHC7KfOvZlhlpG/gOg3xc=",
+ "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.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "terser-webpack-plugin": {
+ "version": "1.4.5",
+ "resolved": "https://registry.nlark.com/terser-webpack-plugin/download/terser-webpack-plugin-1.4.5.tgz",
+ "integrity": "sha1-oheu+uozDnNP+sthIOwfoxLWBAs=",
+ "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": "^4.0.0",
+ "source-map": "^0.6.1",
+ "terser": "^4.1.2",
+ "webpack-sources": "^1.4.0",
+ "worker-farm": "^1.7.0"
+ },
+ "dependencies": {
+ "find-cache-dir": {
+ "version": "2.1.0",
+ "resolved": "https://registry.nlark.com/find-cache-dir/download/find-cache-dir-2.1.0.tgz?cache=0&sync_timestamp=1630260009898&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ffind-cache-dir%2Fdownload%2Ffind-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"
+ }
+ },
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/find-up/download/find-up-3.0.0.tgz",
+ "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/locate-path/download/locate-path-3.0.0.tgz?cache=0&sync_timestamp=1629895724478&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flocate-path%2Fdownload%2Flocate-path-3.0.0.tgz",
+ "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "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"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/p-locate/download/p-locate-3.0.0.tgz",
+ "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/path-exists/download/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true
+ },
+ "pkg-dir": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/pkg-dir/download/pkg-dir-3.0.0.tgz?cache=0&sync_timestamp=1633498133295&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpkg-dir%2Fdownload%2Fpkg-dir-3.0.0.tgz",
+ "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=",
+ "dev": true,
+ "requires": {
+ "find-up": "^3.0.0"
+ }
+ },
+ "schema-utils": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1626694740261&other_urls=https%3A%2F%2Fregistry.nlark.com%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"
+ }
+ },
+ "semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.nlark.com/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz",
+ "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "thenify": {
+ "version": "3.3.1",
+ "resolved": "https://registry.nlark.com/thenify/download/thenify-3.3.1.tgz",
+ "integrity": "sha1-iTLmhqQGYDigFt2eLKRq3Zg4qV8=",
+ "dev": true,
+ "requires": {
+ "any-promise": "^1.0.0"
+ }
+ },
+ "thenify-all": {
+ "version": "1.6.0",
+ "resolved": "https://registry.nlark.com/thenify-all/download/thenify-all-1.6.0.tgz",
+ "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=",
+ "dev": true,
+ "requires": {
+ "thenify": ">= 3.1.0 < 4"
+ }
+ },
+ "thread-loader": {
+ "version": "2.1.3",
+ "resolved": "https://registry.nlark.com/thread-loader/download/thread-loader-2.1.3.tgz",
+ "integrity": "sha1-y9LBOfwrLebp0o9iKGq3cMGsvdo=",
+ "dev": true,
+ "requires": {
+ "loader-runner": "^2.3.1",
+ "loader-utils": "^1.1.0",
+ "neo-async": "^2.6.0"
+ }
+ },
+ "throttle-debounce": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npm.taobao.org/throttle-debounce/download/throttle-debounce-1.1.0.tgz?cache=0&sync_timestamp=1604313832516&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fthrottle-debounce%2Fdownload%2Fthrottle-debounce-1.1.0.tgz",
+ "integrity": "sha1-UYU9o3vmihVctugns1FKPEIuic0="
+ },
+ "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.nlark.com/thunky/download/thunky-1.1.0.tgz",
+ "integrity": "sha1-Wrr3FKlAXbBQRzK7zNLO3Z75U30=",
+ "dev": true
+ },
+ "timers-browserify": {
+ "version": "2.0.12",
+ "resolved": "https://registry.nlark.com/timers-browserify/download/timers-browserify-2.0.12.tgz",
+ "integrity": "sha1-RKRcEfv0B/NPl7zNFXfGUjYbAO4=",
+ "dev": true,
+ "requires": {
+ "setimmediate": "^1.0.4"
+ }
+ },
+ "timsort": {
+ "version": "0.3.0",
+ "resolved": "https://registry.nlark.com/timsort/download/timsort-0.3.0.tgz",
+ "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=",
+ "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.nlark.com/to-fast-properties/download/to-fast-properties-2.0.0.tgz?cache=0&sync_timestamp=1628418855671&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fto-fast-properties%2Fdownload%2Fto-fast-properties-2.0.0.tgz",
+ "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
+ "dev": true
+ },
+ "to-object-path": {
+ "version": "0.3.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.nlark.com/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": "2.1.1",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "toidentifier": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npm.taobao.org/toidentifier/download/toidentifier-1.0.0.tgz",
+ "integrity": "sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM=",
+ "dev": true
+ },
+ "toposort": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npm.taobao.org/toposort/download/toposort-1.0.7.tgz",
+ "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=",
+ "dev": true
+ },
+ "tough-cookie": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.5.0.tgz",
+ "integrity": "sha1-zZ+yoKodWhK0c72fuW+j3P9lreI=",
+ "dev": true,
+ "requires": {
+ "psl": "^1.1.28",
+ "punycode": "^2.1.1"
+ }
+ },
+ "trim-newlines": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/trim-newlines/download/trim-newlines-1.0.0.tgz?cache=0&sync_timestamp=1623341510447&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftrim-newlines%2Fdownload%2Ftrim-newlines-1.0.0.tgz",
+ "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
+ "dev": true
+ },
+ "true-case-path": {
+ "version": "1.0.3",
+ "resolved": "https://registry.nlark.com/true-case-path/download/true-case-path-1.0.3.tgz",
+ "integrity": "sha1-+BO1qMhrQNpZYGcisUTjIleZ9H0=",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.2"
+ }
+ },
+ "tryer": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/tryer/download/tryer-1.0.1.tgz",
+ "integrity": "sha1-8shUBoALmw90yfdGW4HqrSQSUvg=",
+ "dev": true
+ },
+ "ts-pnp": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npm.taobao.org/ts-pnp/download/ts-pnp-1.2.0.tgz",
+ "integrity": "sha1-pQCtCEsHmPHDBxrzkeZZEshrypI=",
+ "dev": true
+ },
+ "tty-browserify": {
+ "version": "0.0.0",
+ "resolved": "https://registry.nlark.com/tty-browserify/download/tty-browserify-0.0.0.tgz",
+ "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=",
+ "dev": true
+ },
+ "tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.nlark.com/tunnel-agent/download/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "tweetnacl": {
+ "version": "0.14.5",
+ "resolved": "https://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz",
+ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
+ "dev": true
+ },
+ "type-fest": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmmirror.com/type-fest/download/type-fest-0.6.0.tgz",
+ "integrity": "sha1-jSojcNPfiG61yQraHFv2GIrPg4s=",
+ "dev": true
+ },
+ "type-is": {
+ "version": "1.6.18",
+ "resolved": "https://registry.nlark.com/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.nlark.com/typedarray/download/typedarray-0.0.6.tgz",
+ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
+ "dev": true
+ },
+ "uglify-js": {
+ "version": "3.4.10",
+ "resolved": "https://registry.nlark.com/uglify-js/download/uglify-js-3.4.10.tgz?cache=0&sync_timestamp=1631026519465&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fuglify-js%2Fdownload%2Fuglify-js-3.4.10.tgz",
+ "integrity": "sha1-mtlWPY6zrN+404WX0q8dgV9qdV8=",
+ "dev": true,
+ "requires": {
+ "commander": "~2.19.0",
+ "source-map": "~0.6.1"
+ },
+ "dependencies": {
+ "commander": {
+ "version": "2.19.0",
+ "resolved": "https://registry.npmmirror.com/commander/download/commander-2.19.0.tgz?cache=0&sync_timestamp=1634886396986&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcommander%2Fdownload%2Fcommander-2.19.0.tgz",
+ "integrity": "sha1-9hmKqE5bg8RgVLlN3tv+1e6f8So=",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "unbox-primitive": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/unbox-primitive/download/unbox-primitive-1.0.1.tgz",
+ "integrity": "sha1-CF4hViXsMWJXTciFmr7nilmxRHE=",
+ "dev": true,
+ "requires": {
+ "function-bind": "^1.1.1",
+ "has-bigints": "^1.0.1",
+ "has-symbols": "^1.0.2",
+ "which-boxed-primitive": "^1.0.2"
+ }
+ },
+ "unicode-canonical-property-names-ecmascript": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/unicode-canonical-property-names-ecmascript/download/unicode-canonical-property-names-ecmascript-2.0.0.tgz",
+ "integrity": "sha1-MBrNxSVjFnDTn2FG4Od/9rvevdw=",
+ "dev": true
+ },
+ "unicode-match-property-ecmascript": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/unicode-match-property-ecmascript/download/unicode-match-property-ecmascript-2.0.0.tgz?cache=0&sync_timestamp=1631618696521&other_urls=https%3A%2F%2Fregistry.nlark.com%2Funicode-match-property-ecmascript%2Fdownload%2Funicode-match-property-ecmascript-2.0.0.tgz",
+ "integrity": "sha1-VP0W4OyxZ88Ezx91a9zJLrp5dsM=",
+ "dev": true,
+ "requires": {
+ "unicode-canonical-property-names-ecmascript": "^2.0.0",
+ "unicode-property-aliases-ecmascript": "^2.0.0"
+ }
+ },
+ "unicode-match-property-value-ecmascript": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/unicode-match-property-value-ecmascript/download/unicode-match-property-value-ecmascript-2.0.0.tgz",
+ "integrity": "sha1-GgGqVyR8FMVouJd1pUk4eIGJpxQ=",
+ "dev": true
+ },
+ "unicode-property-aliases-ecmascript": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/unicode-property-aliases-ecmascript/download/unicode-property-aliases-ecmascript-2.0.0.tgz?cache=0&sync_timestamp=1631609457921&other_urls=https%3A%2F%2Fregistry.nlark.com%2Funicode-property-aliases-ecmascript%2Fdownload%2Funicode-property-aliases-ecmascript-2.0.0.tgz",
+ "integrity": "sha1-CjbLmlhcT2q9Ua0d7dsoXBZSl8g=",
+ "dev": true
+ },
+ "union-value": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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.nlark.com/unique-slug/download/unique-slug-2.0.2.tgz",
+ "integrity": "sha1-uqvOkQg/xk6UWw861hPiZPfNTmw=",
+ "dev": true,
+ "requires": {
+ "imurmurhash": "^0.1.4"
+ }
+ },
+ "universalify": {
+ "version": "0.1.2",
+ "resolved": "https://registry.nlark.com/universalify/download/universalify-0.1.2.tgz",
+ "integrity": "sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY=",
+ "dev": true
+ },
+ "unpipe": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/unpipe/download/unpipe-1.0.0.tgz",
+ "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
+ "dev": true
+ },
+ "unquote": {
+ "version": "1.1.1",
+ "resolved": "https://registry.nlark.com/unquote/download/unquote-1.1.1.tgz",
+ "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=",
+ "dev": true
+ },
+ "unset-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/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",
+ "integrity": "sha1-j2bbzVWog6za5ECK+LA1pQRMGJQ=",
+ "dev": true
+ },
+ "upper-case": {
+ "version": "1.1.3",
+ "resolved": "https://registry.nlark.com/upper-case/download/upper-case-1.1.3.tgz",
+ "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=",
+ "dev": true
+ },
+ "uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npm.taobao.org/uri-js/download/uri-js-4.4.1.tgz?cache=0&sync_timestamp=1610237624359&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Furi-js%2Fdownload%2Furi-js-4.4.1.tgz",
+ "integrity": "sha1-mxpSWVIlhZ5V9mnZKPiMbFfyp34=",
+ "dev": true,
+ "requires": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "urix": {
+ "version": "0.1.0",
+ "resolved": "https://registry.nlark.com/urix/download/urix-0.1.0.tgz",
+ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
+ "dev": true
+ },
+ "url": {
+ "version": "0.11.0",
+ "resolved": "https://registry.nlark.com/url/download/url-0.11.0.tgz?cache=0&sync_timestamp=1618847135337&other_urls=https%3A%2F%2Fregistry.nlark.com%2Furl%2Fdownload%2Furl-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.nlark.com/punycode/download/punycode-1.3.2.tgz?cache=0&sync_timestamp=1622604519710&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpunycode%2Fdownload%2Fpunycode-1.3.2.tgz",
+ "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
+ "dev": true
+ }
+ }
+ },
+ "url-loader": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npm.taobao.org/url-loader/download/url-loader-2.3.0.tgz?cache=0&sync_timestamp=1602252626029&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Furl-loader%2Fdownload%2Furl-loader-2.3.0.tgz",
+ "integrity": "sha1-4OLvZY8APvuMpBsPP/v3a6uIZYs=",
+ "dev": true,
+ "requires": {
+ "loader-utils": "^1.2.3",
+ "mime": "^2.4.4",
+ "schema-utils": "^2.5.0"
+ }
+ },
+ "url-parse": {
+ "version": "1.5.3",
+ "resolved": "https://registry.nlark.com/url-parse/download/url-parse-1.5.3.tgz",
+ "integrity": "sha1-ccEwPTj7Zjmt4YPCmSyMwGht+GI=",
+ "dev": true,
+ "requires": {
+ "querystringify": "^2.1.1",
+ "requires-port": "^1.0.0"
+ }
+ },
+ "use": {
+ "version": "3.1.1",
+ "resolved": "https://registry.nlark.com/use/download/use-3.1.1.tgz",
+ "integrity": "sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8=",
+ "dev": true
+ },
+ "util": {
+ "version": "0.11.1",
+ "resolved": "https://registry.nlark.com/util/download/util-0.11.1.tgz?cache=0&sync_timestamp=1622212984161&other_urls=https%3A%2F%2Fregistry.nlark.com%2Futil%2Fdownload%2Futil-0.11.1.tgz",
+ "integrity": "sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE=",
+ "dev": true,
+ "requires": {
+ "inherits": "2.0.3"
+ },
+ "dependencies": {
+ "inherits": {
+ "version": "2.0.3",
+ "resolved": "https://registry.nlark.com/inherits/download/inherits-2.0.3.tgz",
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
+ "dev": true
+ }
+ }
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/util-deprecate/download/util-deprecate-1.0.2.tgz",
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
+ "dev": true
+ },
+ "util.promisify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npm.taobao.org/util.promisify/download/util.promisify-1.0.1.tgz?cache=0&sync_timestamp=1610159895694&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"
+ }
+ },
+ "utila": {
+ "version": "0.4.0",
+ "resolved": "https://registry.nlark.com/utila/download/utila-0.4.0.tgz",
+ "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=",
+ "dev": true
+ },
+ "utils-merge": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/utils-merge/download/utils-merge-1.0.1.tgz",
+ "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=",
+ "dev": true
+ },
+ "uuid": {
+ "version": "3.4.0",
+ "resolved": "https://registry.nlark.com/uuid/download/uuid-3.4.0.tgz?cache=0&sync_timestamp=1622213136953&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fuuid%2Fdownload%2Fuuid-3.4.0.tgz",
+ "integrity": "sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4=",
+ "dev": true
+ },
+ "validate-npm-package-license": {
+ "version": "3.0.4",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.nlark.com/vary/download/vary-1.1.2.tgz",
+ "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=",
+ "dev": true
+ },
+ "vendors": {
+ "version": "1.0.4",
+ "resolved": "https://registry.nlark.com/vendors/download/vendors-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.nlark.com/vm-browserify/download/vm-browserify-1.1.2.tgz",
+ "integrity": "sha1-eGQcSIuObKkadfUR56OzKobl3aA=",
+ "dev": true
+ },
+ "vue": {
+ "version": "2.6.14",
+ "resolved": "https://registry.npmmirror.com/vue/download/vue-2.6.14.tgz?cache=0&sync_timestamp=1633712555314&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fvue%2Fdownload%2Fvue-2.6.14.tgz",
+ "integrity": "sha1-5RqlJQJQ1Wmj+606ilpofWA24jU="
+ },
+ "vue-cli-plugin-element": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npm.taobao.org/vue-cli-plugin-element/download/vue-cli-plugin-element-1.0.1.tgz",
+ "integrity": "sha1-NOWPtls2z1mvrxT1AyiOXleLFVQ=",
+ "dev": true
+ },
+ "vue-hot-reload-api": {
+ "version": "2.3.4",
+ "resolved": "https://registry.nlark.com/vue-hot-reload-api/download/vue-hot-reload-api-2.3.4.tgz",
+ "integrity": "sha1-UylVzB6yCKPZkLOp+acFdGV+CPI=",
+ "dev": true
+ },
+ "vue-loader": {
+ "version": "15.9.8",
+ "resolved": "https://registry.npmmirror.com/vue-loader/download/vue-loader-15.9.8.tgz",
+ "integrity": "sha1-Sw9gKvr2aplr4eU0+5YJ3EqxDmE=",
+ "dev": true,
+ "requires": {
+ "@vue/component-compiler-utils": "^3.1.0",
+ "hash-sum": "^1.0.2",
+ "loader-utils": "^1.1.0",
+ "vue-hot-reload-api": "^2.3.0",
+ "vue-style-loader": "^4.1.0"
+ },
+ "dependencies": {
+ "hash-sum": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npm.taobao.org/hash-sum/download/hash-sum-1.0.2.tgz",
+ "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=",
+ "dev": true
+ }
+ }
+ },
+ "vue-loader-v16": {
+ "version": "npm:vue-loader@16.8.2",
+ "resolved": "https://registry.npmmirror.com/vue-loader/download/vue-loader-16.8.2.tgz",
+ "integrity": "sha1-eFUtZVggepPwnk+2iwaNRJZOt0A=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "chalk": "^4.1.0",
+ "hash-sum": "^2.0.0",
+ "loader-utils": "^2.0.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz",
+ "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.2.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.2.tgz",
+ "integrity": "sha1-qsTit3NKdAhnrrFr8CqtVWoeegE=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
+ "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
+ "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
+ "dev": true,
+ "optional": true
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.nlark.com/has-flag/download/has-flag-4.0.0.tgz",
+ "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
+ "dev": true,
+ "optional": true
+ },
+ "loader-utils": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmmirror.com/loader-utils/download/loader-utils-2.0.1.tgz?cache=0&sync_timestamp=1635579199157&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Floader-utils%2Fdownload%2Floader-utils-2.0.1.tgz",
+ "integrity": "sha1-O41DhvQjeNZDTTLXvAjnpS05V14=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "big.js": "^5.2.2",
+ "emojis-list": "^3.0.0",
+ "json5": "^2.1.2"
+ }
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
+ "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
+ }
+ },
+ "vue-router": {
+ "version": "3.5.3",
+ "resolved": "https://registry.npmmirror.com/vue-router/download/vue-router-3.5.3.tgz",
+ "integrity": "sha1-BBBIBT4zaCnQXa+s9qj7ZpoueZk="
+ },
+ "vue-style-loader": {
+ "version": "4.1.3",
+ "resolved": "https://registry.nlark.com/vue-style-loader/download/vue-style-loader-4.1.3.tgz",
+ "integrity": "sha1-bVWGOlH6dXqyTonZNxRlByqnvDU=",
+ "dev": true,
+ "requires": {
+ "hash-sum": "^1.0.2",
+ "loader-utils": "^1.0.2"
+ },
+ "dependencies": {
+ "hash-sum": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npm.taobao.org/hash-sum/download/hash-sum-1.0.2.tgz",
+ "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=",
+ "dev": true
+ }
+ }
+ },
+ "vue-template-compiler": {
+ "version": "2.6.14",
+ "resolved": "https://registry.nlark.com/vue-template-compiler/download/vue-template-compiler-2.6.14.tgz?cache=0&sync_timestamp=1623059734748&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fvue-template-compiler%2Fdownload%2Fvue-template-compiler-2.6.14.tgz",
+ "integrity": "sha1-ovDn2YVnDULJye4NBE/tdpD092M=",
+ "dev": true,
+ "requires": {
+ "de-indent": "^1.0.2",
+ "he": "^1.1.0"
+ }
+ },
+ "vue-template-es2015-compiler": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npm.taobao.org/vue-template-es2015-compiler/download/vue-template-es2015-compiler-1.9.1.tgz",
+ "integrity": "sha1-HuO8mhbsv1EYvjNLsV+cRvgvWCU=",
+ "dev": true
+ },
+ "vuex": {
+ "version": "3.6.2",
+ "resolved": "https://registry.nlark.com/vuex/download/vuex-3.6.2.tgz",
+ "integrity": "sha1-I2vAhqhww655lG8QfxbeWdWJXnE="
+ },
+ "watchpack": {
+ "version": "1.7.5",
+ "resolved": "https://registry.nlark.com/watchpack/download/watchpack-1.7.5.tgz",
+ "integrity": "sha1-EmfmxV4Lm1vkTCAjrtVDeiwmxFM=",
+ "dev": true,
+ "requires": {
+ "chokidar": "^3.4.1",
+ "graceful-fs": "^4.1.2",
+ "neo-async": "^2.5.0",
+ "watchpack-chokidar2": "^2.0.1"
+ }
+ },
+ "watchpack-chokidar2": {
+ "version": "2.0.1",
+ "resolved": "https://registry.nlark.com/watchpack-chokidar2/download/watchpack-chokidar2-2.0.1.tgz",
+ "integrity": "sha1-OFAAcu5uzmbzdpk2lQ6hdxvhyVc=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "chokidar": "^2.1.8"
+ },
+ "dependencies": {
+ "anymatch": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/anymatch/download/anymatch-2.0.0.tgz",
+ "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=",
+ "dev": true,
+ "optional": 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,
+ "optional": true,
+ "requires": {
+ "remove-trailing-separator": "^1.0.1"
+ }
+ }
+ }
+ },
+ "binary-extensions": {
+ "version": "1.13.1",
+ "resolved": "https://registry.nlark.com/binary-extensions/download/binary-extensions-1.13.1.tgz",
+ "integrity": "sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U=",
+ "dev": true,
+ "optional": true
+ },
+ "chokidar": {
+ "version": "2.1.8",
+ "resolved": "https://registry.nlark.com/chokidar/download/chokidar-2.1.8.tgz?cache=0&sync_timestamp=1623763535523&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchokidar%2Fdownload%2Fchokidar-2.1.8.tgz",
+ "integrity": "sha1-gEs6e2qZNYw8XGHnHYco8EHP+Rc=",
+ "dev": true,
+ "optional": 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"
+ }
+ },
+ "fsevents": {
+ "version": "1.2.13",
+ "resolved": "https://registry.nlark.com/fsevents/download/fsevents-1.2.13.tgz",
+ "integrity": "sha1-8yXLBFVZJCi88Rs4M3DvcOO/zDg=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "bindings": "^1.5.0",
+ "nan": "^2.12.1"
+ }
+ },
+ "glob-parent": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/glob-parent/download/glob-parent-3.1.0.tgz",
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "is-glob": "^3.1.0",
+ "path-dirname": "^1.0.0"
+ },
+ "dependencies": {
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/is-glob/download/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "is-extglob": "^2.1.0"
+ }
+ }
+ }
+ },
+ "is-binary-path": {
+ "version": "1.0.1",
+ "resolved": "https://registry.nlark.com/is-binary-path/download/is-binary-path-1.0.1.tgz",
+ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "binary-extensions": "^1.0.0"
+ }
+ },
+ "readdirp": {
+ "version": "2.2.1",
+ "resolved": "https://registry.nlark.com/readdirp/download/readdirp-2.2.1.tgz",
+ "integrity": "sha1-DodiKjMlqjPokihcr4tOhGUppSU=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "graceful-fs": "^4.1.11",
+ "micromatch": "^3.1.10",
+ "readable-stream": "^2.0.2"
+ }
+ }
+ }
+ },
+ "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.nlark.com/wcwidth/download/wcwidth-1.0.1.tgz",
+ "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=",
+ "dev": true,
+ "requires": {
+ "defaults": "^1.0.3"
+ }
+ },
+ "webpack": {
+ "version": "4.46.0",
+ "resolved": "https://registry.npmmirror.com/webpack/download/webpack-4.46.0.tgz?cache=0&sync_timestamp=1635520705717&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fwebpack%2Fdownload%2Fwebpack-4.46.0.tgz",
+ "integrity": "sha1-v5tEBOogoHNgXgoBHRiNd8tq1UI=",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.9.0",
+ "@webassemblyjs/helper-module-context": "1.9.0",
+ "@webassemblyjs/wasm-edit": "1.9.0",
+ "@webassemblyjs/wasm-parser": "1.9.0",
+ "acorn": "^6.4.1",
+ "ajv": "^6.10.2",
+ "ajv-keywords": "^3.4.1",
+ "chrome-trace-event": "^1.0.2",
+ "enhanced-resolve": "^4.5.0",
+ "eslint-scope": "^4.0.3",
+ "json-parse-better-errors": "^1.0.2",
+ "loader-runner": "^2.4.0",
+ "loader-utils": "^1.2.3",
+ "memory-fs": "^0.4.1",
+ "micromatch": "^3.1.10",
+ "mkdirp": "^0.5.3",
+ "neo-async": "^2.6.1",
+ "node-libs-browser": "^2.2.1",
+ "schema-utils": "^1.0.0",
+ "tapable": "^1.1.3",
+ "terser-webpack-plugin": "^1.4.3",
+ "watchpack": "^1.7.4",
+ "webpack-sources": "^1.4.1"
+ },
+ "dependencies": {
+ "schema-utils": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1626694740261&other_urls=https%3A%2F%2Fregistry.nlark.com%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"
+ }
+ }
+ }
+ },
+ "webpack-bundle-analyzer": {
+ "version": "3.9.0",
+ "resolved": "https://registry.npmmirror.com/webpack-bundle-analyzer/download/webpack-bundle-analyzer-3.9.0.tgz?cache=0&sync_timestamp=1634019921368&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fwebpack-bundle-analyzer%2Fdownload%2Fwebpack-bundle-analyzer-3.9.0.tgz",
+ "integrity": "sha1-9vlNsQj7V05BWtMT3kGicH0z7zw=",
+ "dev": true,
+ "requires": {
+ "acorn": "^7.1.1",
+ "acorn-walk": "^7.1.1",
+ "bfj": "^6.1.1",
+ "chalk": "^2.4.1",
+ "commander": "^2.18.0",
+ "ejs": "^2.6.1",
+ "express": "^4.16.3",
+ "filesize": "^3.6.1",
+ "gzip-size": "^5.0.0",
+ "lodash": "^4.17.19",
+ "mkdirp": "^0.5.1",
+ "opener": "^1.5.1",
+ "ws": "^6.0.0"
+ },
+ "dependencies": {
+ "acorn": {
+ "version": "7.4.1",
+ "resolved": "https://registry.nlark.com/acorn/download/acorn-7.4.1.tgz",
+ "integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
+ "dev": true
+ }
+ }
+ },
+ "webpack-chain": {
+ "version": "6.5.1",
+ "resolved": "https://registry.npm.taobao.org/webpack-chain/download/webpack-chain-6.5.1.tgz",
+ "integrity": "sha1-TycoTLu2N+PI+970Pu9YjU2GEgY=",
+ "dev": true,
+ "requires": {
+ "deepmerge": "^1.5.2",
+ "javascript-stringify": "^2.0.1"
+ }
+ },
+ "webpack-dev-middleware": {
+ "version": "3.7.3",
+ "resolved": "https://registry.npmmirror.com/webpack-dev-middleware/download/webpack-dev-middleware-3.7.3.tgz",
+ "integrity": "sha1-Bjk3KxQyYuK4SrldO5GnWXBhwsU=",
+ "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"
+ }
+ },
+ "webpack-dev-server": {
+ "version": "3.11.2",
+ "resolved": "https://registry.npmmirror.com/webpack-dev-server/download/webpack-dev-server-3.11.2.tgz",
+ "integrity": "sha1-aV687Xakkp8NXef9c/r+GF/jNwg=",
+ "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.3.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.8",
+ "opn": "^5.5.0",
+ "p-retry": "^3.0.1",
+ "portfinder": "^1.0.26",
+ "schema-utils": "^1.0.0",
+ "selfsigned": "^1.10.8",
+ "semver": "^6.3.0",
+ "serve-index": "^1.9.1",
+ "sockjs": "^0.3.21",
+ "sockjs-client": "^1.5.0",
+ "spdy": "^4.0.2",
+ "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": "^13.3.2"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-2.1.1.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-2.1.1.tgz",
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
+ "dev": true
+ },
+ "anymatch": {
+ "version": "2.0.0",
+ "resolved": "https://registry.nlark.com/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.nlark.com/binary-extensions/download/binary-extensions-1.13.1.tgz",
+ "integrity": "sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U=",
+ "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
+ },
+ "chokidar": {
+ "version": "2.1.8",
+ "resolved": "https://registry.nlark.com/chokidar/download/chokidar-2.1.8.tgz?cache=0&sync_timestamp=1623763535523&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchokidar%2Fdownload%2Fchokidar-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"
+ }
+ },
+ "cliui": {
+ "version": "5.0.0",
+ "resolved": "https://registry.nlark.com/cliui/download/cliui-5.0.0.tgz",
+ "integrity": "sha1-3u/P2y6AB4SqNPRvoI4GhRx7u8U=",
+ "dev": true,
+ "requires": {
+ "string-width": "^3.1.0",
+ "strip-ansi": "^5.2.0",
+ "wrap-ansi": "^5.1.0"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-4.1.0.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-4.1.0.tgz",
+ "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=",
+ "dev": true
+ },
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-5.2.0.tgz",
+ "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.1.0"
+ }
+ }
+ }
+ },
+ "emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmmirror.com/emoji-regex/download/emoji-regex-7.0.3.tgz?cache=0&sync_timestamp=1632751333727&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Femoji-regex%2Fdownload%2Femoji-regex-7.0.3.tgz",
+ "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=",
+ "dev": true
+ },
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/find-up/download/find-up-3.0.0.tgz",
+ "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "fsevents": {
+ "version": "1.2.13",
+ "resolved": "https://registry.nlark.com/fsevents/download/fsevents-1.2.13.tgz",
+ "integrity": "sha1-8yXLBFVZJCi88Rs4M3DvcOO/zDg=",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "bindings": "^1.5.0",
+ "nan": "^2.12.1"
+ }
+ },
+ "glob-parent": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/glob-parent/download/glob-parent-3.1.0.tgz",
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
+ "dev": true,
+ "requires": {
+ "is-glob": "^3.1.0",
+ "path-dirname": "^1.0.0"
+ },
+ "dependencies": {
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/is-glob/download/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.0"
+ }
+ }
+ }
+ },
+ "http-proxy-middleware": {
+ "version": "0.19.1",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "is-absolute-url": {
+ "version": "3.0.3",
+ "resolved": "https://registry.nlark.com/is-absolute-url/download/is-absolute-url-3.0.3.tgz?cache=0&sync_timestamp=1628691761253&other_urls=https%3A%2F%2Fregistry.nlark.com%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.nlark.com/is-binary-path/download/is-binary-path-1.0.1.tgz",
+ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
+ "dev": true,
+ "requires": {
+ "binary-extensions": "^1.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/locate-path/download/locate-path-3.0.0.tgz?cache=0&sync_timestamp=1629895724478&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flocate-path%2Fdownload%2Flocate-path-3.0.0.tgz",
+ "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/p-locate/download/p-locate-3.0.0.tgz",
+ "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.nlark.com/path-exists/download/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true
+ },
+ "readdirp": {
+ "version": "2.2.1",
+ "resolved": "https://registry.nlark.com/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"
+ }
+ },
+ "schema-utils": {
+ "version": "1.0.0",
+ "resolved": "https://registry.nlark.com/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1626694740261&other_urls=https%3A%2F%2Fregistry.nlark.com%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"
+ }
+ },
+ "string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/string-width/download/string-width-3.1.0.tgz?cache=0&sync_timestamp=1632421309919&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fstring-width%2Fdownload%2Fstring-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"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-4.1.0.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-4.1.0.tgz",
+ "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=",
+ "dev": true
+ },
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-5.2.0.tgz",
+ "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.1.0"
+ }
+ }
+ }
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-3.0.1.tgz",
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ },
+ "supports-color": {
+ "version": "6.1.0",
+ "resolved": "https://registry.nlark.com/supports-color/download/supports-color-6.1.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz",
+ "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=",
+ "dev": true,
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ },
+ "wrap-ansi": {
+ "version": "5.1.0",
+ "resolved": "https://registry.nlark.com/wrap-ansi/download/wrap-ansi-5.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwrap-ansi%2Fdownload%2Fwrap-ansi-5.1.0.tgz",
+ "integrity": "sha1-H9H2cjXVttD+54EFYAG/tpTAOwk=",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.0",
+ "string-width": "^3.0.0",
+ "strip-ansi": "^5.0.0"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-4.1.0.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-4.1.0.tgz",
+ "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=",
+ "dev": true
+ },
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmmirror.com/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.3.2",
+ "resolved": "https://registry.npmmirror.com/yargs/download/yargs-13.3.2.tgz?cache=0&sync_timestamp=1632605487521&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fyargs%2Fdownload%2Fyargs-13.3.2.tgz",
+ "integrity": "sha1-rX/+/sGqWVZayRX4Lcyzipwxot0=",
+ "dev": true,
+ "requires": {
+ "cliui": "^5.0.0",
+ "find-up": "^3.0.0",
+ "get-caller-file": "^2.0.1",
+ "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.1.2"
+ }
+ },
+ "yargs-parser": {
+ "version": "13.1.2",
+ "resolved": "https://registry.nlark.com/yargs-parser/download/yargs-parser-13.1.2.tgz",
+ "integrity": "sha1-Ew8JcC667vJlDVTObj5XBvek+zg=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ }
+ }
+ }
+ },
+ "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=1615477439589&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.nlark.com/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.nlark.com/webpack-sources/download/webpack-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.nlark.com/source-map/download/source-map-0.6.1.tgz",
+ "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
+ "dev": true
+ }
+ }
+ },
+ "websocket-driver": {
+ "version": "0.7.4",
+ "resolved": "https://registry.nlark.com/websocket-driver/download/websocket-driver-0.7.4.tgz",
+ "integrity": "sha1-ia1Slbv2S0gKvLox5JU6ynBvV2A=",
+ "dev": true,
+ "requires": {
+ "http-parser-js": ">=0.5.1",
+ "safe-buffer": ">=5.1.0",
+ "websocket-extensions": ">=0.1.1"
+ }
+ },
+ "websocket-extensions": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npm.taobao.org/websocket-extensions/download/websocket-extensions-0.1.4.tgz",
+ "integrity": "sha1-f4RzvIOd/YdgituV1+sHUhFXikI=",
+ "dev": true
+ },
+ "which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.nlark.com/which/download/which-1.3.1.tgz",
+ "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
+ },
+ "which-boxed-primitive": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/which-boxed-primitive/download/which-boxed-primitive-1.0.2.tgz",
+ "integrity": "sha1-E3V7yJsgmwSf5dhkMOIc9AqJqOY=",
+ "dev": true,
+ "requires": {
+ "is-bigint": "^1.0.1",
+ "is-boolean-object": "^1.1.0",
+ "is-number-object": "^1.0.4",
+ "is-string": "^1.0.5",
+ "is-symbol": "^1.0.3"
+ }
+ },
+ "which-module": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npm.taobao.org/which-module/download/which-module-2.0.0.tgz",
+ "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
+ "dev": true
+ },
+ "wide-align": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmmirror.com/wide-align/download/wide-align-1.1.5.tgz",
+ "integrity": "sha1-3x1MIGhUNp7PPJpImPGyP72dFdM=",
+ "dev": true,
+ "requires": {
+ "string-width": "^1.0.2 || 2 || 3 || 4"
+ }
+ },
+ "worker-farm": {
+ "version": "1.7.0",
+ "resolved": "https://registry.nlark.com/worker-farm/download/worker-farm-1.7.0.tgz",
+ "integrity": "sha1-JqlMU5G7ypJhUgAvabhKS/dy5ag=",
+ "dev": true,
+ "requires": {
+ "errno": "~0.1.7"
+ }
+ },
+ "wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.nlark.com/wrap-ansi/download/wrap-ansi-7.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwrap-ansi%2Fdownload%2Fwrap-ansi-7.0.0.tgz",
+ "integrity": "sha1-Z+FFz/UQpqaYS98RUpEdadLrnkM=",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz",
+ "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
+ "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
+ "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
+ "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.3",
+ "resolved": "https://registry.npmmirror.com/string-width/download/string-width-4.2.3.tgz?cache=0&sync_timestamp=1632421309919&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fstring-width%2Fdownload%2Fstring-width-4.2.3.tgz",
+ "integrity": "sha1-JpxxF9J7Ba0uU2gwqOyJXvnG0BA=",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ }
+ }
+ }
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.nlark.com/wrappy/download/wrappy-1.0.2.tgz?cache=0&sync_timestamp=1619133505879&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwrappy%2Fdownload%2Fwrappy-1.0.2.tgz",
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
+ "dev": true
+ },
+ "ws": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmmirror.com/ws/download/ws-6.2.2.tgz?cache=0&sync_timestamp=1633200113162&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fws%2Fdownload%2Fws-6.2.2.tgz",
+ "integrity": "sha1-3Vzb1XqZeZFgl2UtePHMX66gwy4=",
+ "dev": true,
+ "requires": {
+ "async-limiter": "~1.0.0"
+ }
+ },
+ "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.3",
+ "resolved": "https://registry.npm.taobao.org/y18n/download/y18n-4.0.3.tgz?cache=0&sync_timestamp=1617822684820&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fy18n%2Fdownload%2Fy18n-4.0.3.tgz",
+ "integrity": "sha1-tfJZyCzW4zaSHv17/Yv1YN6e7t8=",
+ "dev": true
+ },
+ "yallist": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-3.1.1.tgz",
+ "integrity": "sha1-27fa+b/YusmrRev2ArjLrQ1dCP0=",
+ "dev": true
+ },
+ "yargs": {
+ "version": "16.2.0",
+ "resolved": "https://registry.npmmirror.com/yargs/download/yargs-16.2.0.tgz?cache=0&sync_timestamp=1632605487521&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fyargs%2Fdownload%2Fyargs-16.2.0.tgz",
+ "integrity": "sha1-HIK/D2tqZur85+8w43b0mhJHf2Y=",
+ "dev": true,
+ "requires": {
+ "cliui": "^7.0.2",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.0",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^20.2.2"
+ },
+ "dependencies": {
+ "cliui": {
+ "version": "7.0.4",
+ "resolved": "https://registry.nlark.com/cliui/download/cliui-7.0.4.tgz",
+ "integrity": "sha1-oCZe5lVHb8gHrqnfPfjfd4OAi08=",
+ "dev": true,
+ "requires": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^7.0.0"
+ }
+ },
+ "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.3",
+ "resolved": "https://registry.npmmirror.com/string-width/download/string-width-4.2.3.tgz?cache=0&sync_timestamp=1632421309919&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fstring-width%2Fdownload%2Fstring-width-4.2.3.tgz",
+ "integrity": "sha1-JpxxF9J7Ba0uU2gwqOyJXvnG0BA=",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ }
+ },
+ "y18n": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npm.taobao.org/y18n/download/y18n-5.0.8.tgz?cache=0&sync_timestamp=1617822684820&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fy18n%2Fdownload%2Fy18n-5.0.8.tgz",
+ "integrity": "sha1-f0k00PfKjFb5UxSTndzS3ZHOHVU=",
+ "dev": true
+ }
+ }
+ },
+ "yargs-parser": {
+ "version": "20.2.9",
+ "resolved": "https://registry.nlark.com/yargs-parser/download/yargs-parser-20.2.9.tgz",
+ "integrity": "sha1-LrfcOwKJcY/ClfNidThFxBoMlO4=",
+ "dev": true
+ }
+ }
+}
diff --git a/blog-applet-master/azhou-code-plugins/package.json b/blog-applet-master/azhou-code-plugins/package.json
new file mode 100644
index 0000000..eac0157
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/package.json
@@ -0,0 +1,32 @@
+{
+ "name": "azhou-code-plugins",
+ "version": "0.1.0",
+ "private": true,
+ "scripts": {
+ "serve": "vue-cli-service serve",
+ "build": "vue-cli-service build"
+ },
+ "dependencies": {
+ "axios": "^0.24.0",
+ "core-js": "^3.6.5",
+ "element-ui": "^2.4.5",
+ "vue": "^2.6.11",
+ "vue-router": "^3.2.0",
+ "vuex": "^3.4.0"
+ },
+ "devDependencies": {
+ "@vue/cli-plugin-babel": "~4.5.0",
+ "@vue/cli-plugin-router": "~4.5.0",
+ "@vue/cli-plugin-vuex": "~4.5.0",
+ "@vue/cli-service": "~4.5.0",
+ "node-sass": "^4.9.2",
+ "sass-loader": "^7.0.3",
+ "vue-cli-plugin-element": "~1.0.1",
+ "vue-template-compiler": "^2.6.11"
+ },
+ "browserslist": [
+ "> 1%",
+ "last 2 versions",
+ "not dead"
+ ]
+}
diff --git a/blog-applet-master/azhou-code-plugins/public/favicon.ico b/blog-applet-master/azhou-code-plugins/public/favicon.ico
new file mode 100644
index 0000000..df36fcf
Binary files /dev/null and b/blog-applet-master/azhou-code-plugins/public/favicon.ico differ
diff --git a/blog-applet-master/azhou-code-plugins/public/index.html b/blog-applet-master/azhou-code-plugins/public/index.html
new file mode 100644
index 0000000..3e5a139
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/public/index.html
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+ <%= htmlWebpackPlugin.options.title %>
+
+
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code-plugins/src/App.vue b/blog-applet-master/azhou-code-plugins/src/App.vue
new file mode 100644
index 0000000..64023ca
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/App.vue
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code-plugins/src/assets/logo.png b/blog-applet-master/azhou-code-plugins/src/assets/logo.png
new file mode 100644
index 0000000..f3d2503
Binary files /dev/null and b/blog-applet-master/azhou-code-plugins/src/assets/logo.png differ
diff --git a/blog-applet-master/azhou-code-plugins/src/components/AddSonTable.vue b/blog-applet-master/azhou-code-plugins/src/components/AddSonTable.vue
new file mode 100644
index 0000000..c1406b1
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/components/AddSonTable.vue
@@ -0,0 +1,194 @@
+
+
+
+
+
+ {{ tableName + " " + toHump(tableName)}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 取 消
+ 确 定
+
+
+
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code-plugins/src/components/HelloWorld.vue b/blog-applet-master/azhou-code-plugins/src/components/HelloWorld.vue
new file mode 100644
index 0000000..b9f3c7d
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/components/HelloWorld.vue
@@ -0,0 +1,59 @@
+
+
+
{{ msg }}
+
+ For a guide and recipes on how to configure / customize this project,
+ check out the
+ vue-cli documentation.
+
+
Installed CLI Plugins
+
+
Essential Links
+
+
Ecosystem
+
+
+
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code-plugins/src/components/TableFromHeader.vue b/blog-applet-master/azhou-code-plugins/src/components/TableFromHeader.vue
new file mode 100644
index 0000000..9e88ede
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/components/TableFromHeader.vue
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+ {{ item.value }}
+ {{ item.label }}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code-plugins/src/element-variables.scss b/blog-applet-master/azhou-code-plugins/src/element-variables.scss
new file mode 100644
index 0000000..65a3949
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/element-variables.scss
@@ -0,0 +1,11 @@
+/*
+Write your variables here. All available variables can be
+found in element-ui/packages/theme-chalk/src/common/var.scss.
+For example, to overwrite the theme color:
+*/
+$--color-primary: teal;
+
+/* icon font path, required */
+$--font-path: '~element-ui/lib/theme-chalk/fonts';
+
+@import "~element-ui/packages/theme-chalk/src/index";
diff --git a/blog-applet-master/azhou-code-plugins/src/main.js b/blog-applet-master/azhou-code-plugins/src/main.js
new file mode 100644
index 0000000..a4213e8
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/main.js
@@ -0,0 +1,13 @@
+import Vue from 'vue'
+import App from './App.vue'
+import router from './router'
+import store from './store'
+import './plugins/element.js'
+
+Vue.config.productionTip = false
+
+new Vue({
+ router,
+ store,
+ render: h => h(App)
+}).$mount('#app')
diff --git a/blog-applet-master/azhou-code-plugins/src/plugins/element.js b/blog-applet-master/azhou-code-plugins/src/plugins/element.js
new file mode 100644
index 0000000..b763a7b
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/plugins/element.js
@@ -0,0 +1,5 @@
+import Vue from 'vue'
+import Element from 'element-ui'
+import '../element-variables.scss'
+
+Vue.use(Element)
diff --git a/blog-applet-master/azhou-code-plugins/src/router/index.js b/blog-applet-master/azhou-code-plugins/src/router/index.js
new file mode 100644
index 0000000..05dd3a6
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/router/index.js
@@ -0,0 +1,29 @@
+import Vue from 'vue'
+import VueRouter from 'vue-router'
+import Home from '../views/Home.vue'
+
+Vue.use(VueRouter)
+
+const routes = [
+ {
+ path: '/',
+ name: 'Home',
+ component: Home
+ },
+ {
+ path: '/about',
+ name: 'About',
+ component: () => import('../views/About.vue')
+ },
+ {
+ path: '/table',
+ name: 'Table',
+ component: () => import( '../views/Table.vue')
+ }
+]
+
+const router = new VueRouter({
+ routes
+})
+
+export default router
diff --git a/blog-applet-master/azhou-code-plugins/src/store/index.js b/blog-applet-master/azhou-code-plugins/src/store/index.js
new file mode 100644
index 0000000..332b916
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/store/index.js
@@ -0,0 +1,15 @@
+import Vue from 'vue'
+import Vuex from 'vuex'
+
+Vue.use(Vuex)
+
+export default new Vuex.Store({
+ state: {
+ },
+ mutations: {
+ },
+ actions: {
+ },
+ modules: {
+ }
+})
diff --git a/blog-applet-master/azhou-code-plugins/src/util/http.js b/blog-applet-master/azhou-code-plugins/src/util/http.js
new file mode 100644
index 0000000..ee57950
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/util/http.js
@@ -0,0 +1,72 @@
+import axios from 'axios';
+import router from '../router';
+axios.defaults.timeout = 5000; //超市时间是5秒
+axios.defaults.withCredentials = true; //允许跨域
+//Content-Type 响应头
+axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
+//基础url
+axios.defaults.baseURL = "http://localhost:8888/";
+
+axios.interceptors.request.use(config => {
+ return config;
+});
+
+//响应拦截器
+axios.interceptors.response.use(
+ response => {
+ console.log(response.data)
+ //如果reponse里面的status是200,说明访问到接口了,否则错误
+ if(response.data.code == 200){
+ return Promise.resolve(response.data);
+ }else{
+ return Promise.reject(response.data);
+ }
+ },
+ error => {
+ if(error.response.data.code){
+ switch(error.response.data.code){
+ case 401: //未登录
+ router.replace({
+ path:'/',
+ query:{
+ redirect: router.currentRoute.fullPath
+ }
+ });
+ break;
+ case 404: //没找到
+ break;
+ }
+ return Promise.reject(error.response);
+ }
+ }
+);
+
+/**
+ * 封装get方法
+ */
+export function get(url,params={}){
+ return new Promise((resolve,reject) => {
+ axios.get(url,{params:params})
+ .then(response =>{
+ resolve(response.data);
+ })
+ .catch(err =>{
+ reject(err);
+ })
+ });
+}
+
+/**
+ * 封装post方法
+ */
+export function post(url,data={}){
+ return new Promise((resolve,reject) => {
+ axios.post(url,data)
+ .then(response =>{
+ resolve(response.data);
+ })
+ .catch(err =>{
+ reject(err);
+ })
+ });
+}
diff --git a/blog-applet-master/azhou-code-plugins/src/util/notice.js b/blog-applet-master/azhou-code-plugins/src/util/notice.js
new file mode 100644
index 0000000..3e29eb5
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/util/notice.js
@@ -0,0 +1,16 @@
+import {Message } from 'element-ui'
+import { Notification } from 'element-ui';
+
+export function message(title, type) {
+ Message ({
+ message: title,
+ type: type ? type : 'success',
+ })
+}
+
+// export function notice(title, type) {
+// Message ({
+// message: title,
+// type: type ? type : 'success',
+// })
+// }
diff --git a/blog-applet-master/azhou-code-plugins/src/views/About.vue b/blog-applet-master/azhou-code-plugins/src/views/About.vue
new file mode 100644
index 0000000..3fa2807
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/views/About.vue
@@ -0,0 +1,5 @@
+
+
+
This is an about page
+
+
diff --git a/blog-applet-master/azhou-code-plugins/src/views/Home.vue b/blog-applet-master/azhou-code-plugins/src/views/Home.vue
new file mode 100644
index 0000000..ca93972
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/views/Home.vue
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 下一步
+ 重置
+
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code-plugins/src/views/Table.vue b/blog-applet-master/azhou-code-plugins/src/views/Table.vue
new file mode 100644
index 0000000..36dcfda
--- /dev/null
+++ b/blog-applet-master/azhou-code-plugins/src/views/Table.vue
@@ -0,0 +1,500 @@
+
+
+
数据库表配置
+
+
关联表
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 上一步
+ 确认
+
+
+
+
+
+
+
+
+ 生成代码
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 删除
+
+
+ 新增枚举
+ 重置
+
+
+
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code/pom.xml b/blog-applet-master/azhou-code/pom.xml
new file mode 100644
index 0000000..be451b5
--- /dev/null
+++ b/blog-applet-master/azhou-code/pom.xml
@@ -0,0 +1,122 @@
+
+
+ 4.0.0
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.0.7.RELEASE
+
+
+ com.example
+ azhou-code
+ 0.0.1-SNAPSHOT
+ azhou-code
+ Demo project for Spring Boot
+
+ 1.8
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.projectlombok
+ lombok
+ 1.18.4
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+
+ io.lettuce
+ lettuce-core
+
+
+
+
+ com.alibaba
+ fastjson
+ 1.2.62
+
+
+ redis.clients
+ jedis
+
+
+ cn.hutool
+ hutool-all
+ 5.7.7
+
+
+ org.springframework.boot
+ spring-boot-starter-freemarker
+
+
+ mysql
+ mysql-connector-java
+ 8.0.18
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+ org.projectlombok
+ lombok
+
+
+
+
+
+
+
+
+ spring-milestones
+ Spring Milestones
+ https://repo.spring.io/milestone
+
+ false
+
+
+
+ spring-snapshots
+ Spring Snapshots
+ https://repo.spring.io/snapshot
+
+ false
+
+
+
+
+
+ spring-milestones
+ Spring Milestones
+ https://repo.spring.io/milestone
+
+ false
+
+
+
+ spring-snapshots
+ Spring Snapshots
+ https://repo.spring.io/snapshot
+
+ false
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/AzhouCodeApplication.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/AzhouCodeApplication.java
new file mode 100644
index 0000000..4eac951
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/AzhouCodeApplication.java
@@ -0,0 +1,14 @@
+package com.azhoucode;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class AzhouCodeApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(AzhouCodeApplication.class, args);
+ System.out.println("http://localhost:8888/index.html");
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/common/BaseError.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/common/BaseError.java
new file mode 100644
index 0000000..f69517b
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/common/BaseError.java
@@ -0,0 +1,38 @@
+package com.azhoucode.common;
+
+
+import com.azhoucode.enums.BaseErrorEnum;
+
+public class BaseError {
+
+ private Integer code;
+
+ private String message;
+
+
+ public BaseError(Integer code, String message) {
+ this.code = code;
+ this.message = message;
+ }
+
+ public BaseError(BaseErrorEnum baseErrorEnum) {
+ this.code = baseErrorEnum.getCode();
+ this.message = baseErrorEnum.getMessage();
+ }
+
+ public Integer getCode() {
+ return code;
+ }
+
+ public void setCode(Integer code) {
+ this.code = code;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/common/RedisProperties.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/common/RedisProperties.java
new file mode 100644
index 0000000..dcc414f
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/common/RedisProperties.java
@@ -0,0 +1,98 @@
+package com.azhoucode.common;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+@ConfigurationProperties(prefix = "spring.redis")
+public class RedisProperties {
+
+ private String host;
+
+ private Integer port;
+
+ private int timeout;
+
+ private String password;
+
+ private int database;
+
+ private int maxActive;
+
+ private int maxIdle;
+
+ private int maxWait;
+
+ private int minIdle;
+
+
+ public String getHost() {
+ return host;
+ }
+
+ public void setHost(String host) {
+ this.host = host;
+ }
+
+ public Integer getPort() {
+ return port;
+ }
+
+ public void setPort(Integer port) {
+ this.port = port;
+ }
+
+ public int getTimeout() {
+ return timeout;
+ }
+
+ public void setTimeout(int timeout) {
+ this.timeout = timeout;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ public int getDatabase() {
+ return database;
+ }
+
+ public void setDatabase(int database) {
+ this.database = database;
+ }
+
+ public int getMaxActive() {
+ return maxActive;
+ }
+
+ public void setMaxActive(int maxActive) {
+ this.maxActive = maxActive;
+ }
+
+ public int getMaxIdle() {
+ return maxIdle;
+ }
+
+ public void setMaxIdle(int maxIdle) {
+ this.maxIdle = maxIdle;
+ }
+
+ public int getMaxWait() {
+ return maxWait;
+ }
+
+ public void setMaxWait(int maxWait) {
+ this.maxWait = maxWait;
+ }
+
+ public int getMinIdle() {
+ return minIdle;
+ }
+
+ public void setMinIdle(int minIdle) {
+ this.minIdle = minIdle;
+ }
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/common/SimpleResponse.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/common/SimpleResponse.java
new file mode 100644
index 0000000..e11317e
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/common/SimpleResponse.java
@@ -0,0 +1,85 @@
+package com.azhoucode.common;
+
+
+import com.azhoucode.enums.BaseErrorEnum;
+
+/**
+ * 数据json数据统一返回
+ *
+ * @param 返回数据data的泛型
+ */
+public class SimpleResponse {
+
+ private int code;
+ // 服务端是否正确响应
+ private boolean success;
+ // 错误响应时的消息提示
+ private String message;
+ // 正确响应时的数据对象
+ private E data;
+
+ private SimpleResponse() {
+ this.code = BaseErrorEnum.SUCCESS.getCode();
+ this.success = true;
+ this.message = BaseErrorEnum.SUCCESS.getMessage();
+ }
+
+ private SimpleResponse(int code, String message, boolean success) {
+ this.code = code;
+ this.success = success;
+ this.message = message;
+ }
+
+ private SimpleResponse(E data) {
+ this();
+ this.data = data;
+ }
+
+ public static SimpleResponse success() {
+ return new SimpleResponse<>();
+ }
+
+ public static SimpleResponse success(E data) {
+ return new SimpleResponse<>(data);
+ }
+
+ public static SimpleResponse error(int code, String message, boolean success) {
+ return new SimpleResponse<>(code, message, success);
+ }
+
+ public static SimpleResponse error(BaseErrorEnum baseErrorEnum) {
+ return error((int) baseErrorEnum.getCode(), baseErrorEnum.getMessage(), false);
+ }
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public E getData() {
+ return data;
+ }
+
+ public void setData(E data) {
+ this.data = data;
+ }
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/config/GlobalCorsConfig.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/config/GlobalCorsConfig.java
new file mode 100644
index 0000000..db3693b
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/config/GlobalCorsConfig.java
@@ -0,0 +1,30 @@
+package com.azhoucode.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.cors.CorsConfiguration;
+import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
+import org.springframework.web.filter.CorsFilter;
+
+/**
+ * @Description: 跨域过滤器
+ * @Author: azhou
+ * @Create: 2021-05-24 23:13
+ */
+@Configuration
+public class GlobalCorsConfig {
+
+ @Bean
+ public CorsFilter corsFilter() {
+ CorsConfiguration config = new CorsConfiguration();
+ config.addAllowedOrigin("*");
+ config.setAllowCredentials(true);
+ config.addAllowedMethod("*");
+ config.addAllowedHeader("*");
+ config.addExposedHeader("token");
+ UrlBasedCorsConfigurationSource configSource = new UrlBasedCorsConfigurationSource();
+ configSource.registerCorsConfiguration("/**", config);
+ return new CorsFilter(configSource);
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/config/GlobalExceptionHandler.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/config/GlobalExceptionHandler.java
new file mode 100644
index 0000000..ddeab22
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/config/GlobalExceptionHandler.java
@@ -0,0 +1,45 @@
+package com.azhoucode.config;
+
+import com.azhoucode.common.SimpleResponse;
+
+import com.azhoucode.enums.BaseErrorEnum;
+import org.hibernate.validator.internal.engine.path.PathImpl;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.validation.BindException;
+import org.springframework.validation.FieldError;
+import org.springframework.web.HttpRequestMethodNotSupportedException;
+import org.springframework.web.bind.MissingServletRequestParameterException;
+import org.springframework.web.bind.annotation.ControllerAdvice;
+import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MaxUploadSizeExceededException;
+import org.springframework.web.servlet.NoHandlerFoundException;
+
+import javax.validation.ConstraintViolation;
+import javax.validation.ConstraintViolationException;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * 统一异常处理器
+ */
+@ControllerAdvice
+@SuppressWarnings("all")
+public class GlobalExceptionHandler {
+
+ private final Logger logger = LoggerFactory.getLogger(getClass());
+
+ /**
+ * 处理{@link Exception}异常
+ *
+ * @return 返回统一json数据对象
+ */
+ @ExceptionHandler(Exception.class)
+ @ResponseBody
+ public SimpleResponse errorProceed(Exception e) {
+ logger.error("请求发生错误。", e);
+ return SimpleResponse.error(BaseErrorEnum.SERVER_ERROR);
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/config/RedisConfiguration.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/config/RedisConfiguration.java
new file mode 100644
index 0000000..0dcdeb6
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/config/RedisConfiguration.java
@@ -0,0 +1,51 @@
+package com.azhoucode.config;
+
+import com.azhoucode.common.RedisProperties;
+import com.azhoucode.util.RedisCacheUtils;
+import freemarker.template.utility.StringUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import redis.clients.jedis.JedisPool;
+import redis.clients.jedis.JedisPoolConfig;
+
+@Configuration
+@EnableConfigurationProperties(RedisProperties.class)
+public class RedisConfiguration {
+
+ private final Logger logger = LoggerFactory.getLogger(getClass());
+
+ @Autowired
+ private RedisProperties redisProperties;
+
+ /**
+ * jedisPool bean注册
+ *
+ * @return {@link JedisPool}
+ */
+ @Bean
+ public JedisPool jedisPool() {
+ JedisPoolConfig config = getRedisConfig();
+ JedisPool jedisPool = new JedisPool(config, redisProperties.getHost(),
+ redisProperties.getPort(), redisProperties.getTimeout(),
+ StringUtil.emptyToNull(redisProperties.getPassword()));
+ RedisCacheUtils.setPool(jedisPool);
+ logger.info("jedisPool初始化,节点:" + redisProperties.getHost() + ":" + redisProperties.getPort());
+ return jedisPool;
+
+ }
+
+ @Bean
+ public JedisPoolConfig getRedisConfig() {
+ JedisPoolConfig config = new JedisPoolConfig();
+ config.setMaxTotal(redisProperties.getMaxActive());
+ config.setMaxIdle(redisProperties.getMaxIdle());
+ config.setMaxWaitMillis(redisProperties.getMaxWait());
+ config.setMinIdle(redisProperties.getMinIdle());
+ return config;
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/Constant.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/Constant.java
new file mode 100644
index 0000000..1547c03
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/Constant.java
@@ -0,0 +1,134 @@
+package com.azhoucode.constant;
+
+import javax.swing.*;
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileReader;
+
+public class Constant {
+
+ public static JFrame frmv;
+
+ public static final String projectName = "freeOut";
+
+ public static final String modelFiles = "C:\\codeManConfig\\modelFiles\\";
+
+ public static final String modelFilesZip = "C:\\codeManConfig\\modelFiles\\model.zip";
+
+ public static final String staticZip = "C:\\codeManConfig\\modelFiles\\static.zip";
+
+ public static final String webClientZip = "C:\\codeManConfig\\modelFiles\\webClient.zip";
+
+ public static final String mvcSettingsZip = "C:\\codeManConfig\\modelFiles\\mvcSettings.zip";
+
+ public static final String settingsZip = "C:\\codeManConfig\\modelFiles\\settings.zip";
+
+ public static final String libZip = "C:\\codeManConfig\\modelFiles\\lib.zip";
+
+ public static final String zipPwd = "beautiful123,,#@";
+
+ // 获取激活文件
+ public static final String lifePropertiesPath = "C:\\codeManConfig\\codeManSdk\\bin\\server\\life.properties";
+
+ // 项目根目录
+ public static final String freeOutPath = "\\freeOut\\";
+
+ public static final String freeOutPath_lib_MVC = "\\freeOut\\src\\main\\webapp\\WEB-INF\\lib\\";
+
+ public static final String freeOutPath_lib = "\\freeOut\\lib\\";
+
+ public static final String freeOutPath_METAINF_MVC = "\\freeOut\\src\\main\\webapp\\META-INF\\";
+
+ public static final String mainApplicationPath = "\\freeOut\\src\\main\\java\\freeOut\\";
+
+ public static final String testPath = "\\freeOut\\src\\test\\java\\freeOut\\";
+
+ public static final String freeOutPath_controller = "\\freeOut\\src\\main\\java\\freeOut\\controller\\";
+
+ public static final String freeOutPath_core = "\\freeOut\\src\\main\\java\\freeOut\\core\\";
+
+ public static final String freeOutPath_core_annotation = "\\freeOut\\src\\main\\java\\freeOut\\core\\annotation\\";
+
+ public static final String freeOutPath_core_exception = "\\freeOut\\src\\main\\java\\freeOut\\core\\exception\\";
+
+ public static final String freeOutPath_service = "\\freeOut\\src\\main\\java\\freeOut\\service\\";
+
+ public static final String freeOutPath_serviceImpl = "\\freeOut\\src\\main\\java\\freeOut\\service\\impl\\";
+
+ public static final String freeOutPath_dao = "\\freeOut\\src\\main\\java\\freeOut\\dao\\";
+
+ public static final String freeOutPath_entity = "\\freeOut\\src\\main\\java\\freeOut\\entity\\";
+
+ public static final String freeOutPath_constant = "\\freeOut\\src\\main\\java\\freeOut\\constant\\";
+
+ public static final String freeOutPath_resources = "\\freeOut\\src\\main\\resources\\";
+
+ public static final String freeOutPath_sqlMapper = "\\freeOut\\src\\main\\resources\\sqlmapper\\";
+
+ public static final String freeOutPath_sqlMapper_MVC = "\\freeOut\\src\\main\\java\\freeOut\\sqlmapper\\";
+
+ public static final String freeOutPath_static = "\\freeOut\\src\\main\\resources\\static\\mystatic\\";
+
+ public static final String freeOutPath_static_MVC = "\\freeOut\\src\\main\\webapp\\mystatic\\";
+
+ public static final String freeOutPath_templates = "\\freeOut\\src\\main\\resources\\templates\\";
+
+ public static final String freeOutPath_WEBINF_MVC = "\\freeOut\\src\\main\\webapp\\WEB-INF\\";
+
+ public static String downSettingsZipNet = "/zip/settings.zip";
+
+ public static String downMvcSettingsZipNet = "/zip/mvcSettings.zip";
+
+ public static final String freeOutPath_settings = "\\freeOut\\.settings\\";
+
+ public static String downStaticZipNet = "/zip/static.zip";
+
+ public static String downWebClientZipNet = "/zip/webClient.zip";
+
+ public static String downLibZipNet = "/zip/lib.zip";
+
+ public static final String utilPath = "\\freeOut\\src\\main\\java\\freeOut\\utils\\";
+
+ public static final String mvcConfig = "\\freeOut\\src\\main\\java\\freeOut\\config\\";
+
+ public static String everythingZip = "/zip/everything.zip";
+
+ public static final String everythingDownLoadDir = "C:\\codeManConfig\\everything\\";
+
+ public static final String everythingExeName = "C:\\codeManConfig\\everything\\Everything.exe";
+
+ public static String dubboModelZip = "/zip/dubboModel.zip";
+
+ public static String cloudModelZip = "/zip/cloudModel.zip";
+
+ public static final String gitIpAdressFilePath = "C:\\codeManConfig\\codeManIp\\ip.txt";
+
+ public static final String gitConfigFilePath = "C:\\codeManConfig\\.git";
+
+ public static final String webClientPath = "\\freeOut-webClient\\";
+
+ public static final String webClientHtmlPath = "\\freeOut-webClient\\views\\";
+
+ public static final String webClientJsConfigPath = "\\freeOut-webClient\\js\\config\\";
+
+
+ static {
+ File ipFile = new File(Constant.gitIpAdressFilePath);
+ try (BufferedReader reader = new BufferedReader(new FileReader(ipFile))){
+ String ipPath = reader.readLine();
+
+ Constant.downSettingsZipNet = ipPath + Constant.downSettingsZipNet;
+ Constant.downMvcSettingsZipNet = ipPath + Constant.downMvcSettingsZipNet;
+ Constant.downStaticZipNet = ipPath + Constant.downStaticZipNet;
+ Constant.downWebClientZipNet = ipPath + Constant.downWebClientZipNet;
+ Constant.downLibZipNet = ipPath + Constant.downLibZipNet;
+ Constant.everythingZip = ipPath + Constant.everythingZip;
+ Constant.dubboModelZip = ipPath + Constant.dubboModelZip;
+ Constant.cloudModelZip = ipPath + Constant.cloudModelZip;
+
+ } catch (Exception e) {
+ }
+ }
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/PathConstant.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/PathConstant.java
new file mode 100644
index 0000000..5904fa3
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/PathConstant.java
@@ -0,0 +1,27 @@
+package com.azhoucode.constant;
+
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+/**
+ * @description: 生成路径常量类
+ * @author: azhou
+ * @create: 2021-12-07 17:15
+ **/
+@Component
+public class PathConstant {
+
+ @Value("${file-path.project}")
+ public String projectPath;
+ @Value("${dao}")
+ public String daoPath;
+ @Value("${dao}")
+ public String servicePath;
+ @Value("${service-impl}")
+ public String serviceImplPath;
+ @Value("${entity}")
+ public String entityPath;
+ @Value("${controller}")
+ public String controllerPath;
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/RedisConstant.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/RedisConstant.java
new file mode 100644
index 0000000..df938ee
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/RedisConstant.java
@@ -0,0 +1,15 @@
+package com.azhoucode.constant;
+
+/**
+ * @description: Redis常量
+ * @author: azhou
+ * @create: 2021-11-01 16:38
+ **/
+public class RedisConstant {
+
+ public static final String DB_PARAM = "db_param_%s";
+
+ public static final String TABLE_LIST = "table_list_%s";
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/TipTemplateConstant.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/TipTemplateConstant.java
new file mode 100644
index 0000000..bd18a10
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/constant/TipTemplateConstant.java
@@ -0,0 +1,15 @@
+package com.azhoucode.constant;
+
+/**
+ * @description: 错误提示模板常量类
+ * @author: azhou
+ * @create: 2021-12-14 15:49
+ **/
+public class TipTemplateConstant {
+
+ public static final String REDIS_KEY_NOT_FOUND = "当前Redis中不存在【%s】key";
+
+ public static final String TEMP_TYPE_NOT_FOUND = "当前模板类型枚举中不存在【%d】";
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/controller/DBController.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/controller/DBController.java
new file mode 100644
index 0000000..070da48
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/controller/DBController.java
@@ -0,0 +1,57 @@
+package com.azhoucode.controller;
+
+import com.azhoucode.common.SimpleResponse;
+import com.azhoucode.entity.ApplicationEntity;
+import com.azhoucode.entity.TableEntity;
+import com.azhoucode.service.DBService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * @description: db
+ * @author: azhou
+ * @create: 2021-11-01 14:50
+ **/
+@RestController
+@RequestMapping("/db")
+public class DBController {
+
+ @Autowired
+ private DBService dbService;
+
+ /**
+ * 校验数据库是否能够连接成功
+ * @return
+ */
+ @PostMapping("/checkDBParam")
+ public SimpleResponse checkDBParam(@RequestBody ApplicationEntity applicationEntity) throws Exception {
+ return SimpleResponse.success(dbService.checkDBParam(applicationEntity));
+ }
+
+ /**
+ * 根据表名称获得表中的列数据
+ * @param tableName
+ * @return
+ * @throws Exception
+ */
+ @GetMapping("/getTableColList/{tableName}/{random}")
+ public SimpleResponse getTableColList(@PathVariable("tableName") String tableName,@PathVariable("random") String random) throws Exception {
+ return SimpleResponse.success(dbService.getTableColList(tableName,random));
+ }
+
+ /**
+ * 获得所有的表数据
+ * @param random
+ * @return
+ * @throws Exception
+ */
+ @GetMapping("/getAllTable/{random}")
+ public SimpleResponse> getAllTable(@PathVariable("random") String random) throws Exception {
+ List list = dbService.getAllTable(random);
+ return SimpleResponse.success(list);
+ }
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/controller/GeneratorController.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/controller/GeneratorController.java
new file mode 100644
index 0000000..99cdea8
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/controller/GeneratorController.java
@@ -0,0 +1,29 @@
+package com.azhoucode.controller;
+
+import com.azhoucode.common.SimpleResponse;
+import com.azhoucode.service.GenerateService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @description: 代码生成器接口层
+ * @author: azhou
+ * @create: 2021-12-14 15:32
+ **/
+@RestController
+@RequestMapping("/generator")
+public class GeneratorController {
+
+ @Autowired
+ private GenerateService generateService;
+
+ /**
+ * 代码生成
+ */
+ @GetMapping("/{random}/{type}")
+ public SimpleResponse generator(@PathVariable("random") String random,@PathVariable("type") Integer type) throws Exception {
+ generateService.generateCode(random,type);
+ return SimpleResponse.success();
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/controller/TableController.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/controller/TableController.java
new file mode 100644
index 0000000..bb54328
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/controller/TableController.java
@@ -0,0 +1,34 @@
+package com.azhoucode.controller;
+
+import com.azhoucode.common.SimpleResponse;
+import com.azhoucode.entity.TableEntity;
+import com.azhoucode.service.TableService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @description: 数据库表接口层
+ * @author: azhou
+ * @create: 2021-12-15 10:50
+ **/
+@RestController
+@RequestMapping("/table")
+public class TableController {
+
+ @Autowired
+ private TableService tableService;
+
+
+ /**
+ * 添加单表配置
+ * info#management#message#question#test_paper#type
+ * @param tableEntity
+ * @return
+ */
+ @PostMapping("/{random}")
+ public SimpleResponse addTableConfiguration(@RequestBody TableEntity tableEntity,@PathVariable("random") String random) throws Exception {
+ tableService.addTableConfiguration(tableEntity,random);
+ return SimpleResponse.success();
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/ApplicationEntity.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/ApplicationEntity.java
new file mode 100644
index 0000000..eed7350
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/ApplicationEntity.java
@@ -0,0 +1,67 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+/**
+ * @description: 配置文件帮助类
+ * @author: azhou
+ * @create: 2021-12-07 13:33
+ **/
+@Data
+public class ApplicationEntity extends BaseEntity {
+
+ /** 项目整体相关 start */
+ // 项目端口
+ private Integer port;
+
+ // 是否需要添加邮件发送组件
+ private Boolean hasEmail;
+
+ // 是否需要添加redis组件
+ private Boolean hasRedis;
+
+ // 是否需要添加图片文件上传组件
+ private Boolean hasUploadImg;
+
+ // 是否需要自定义登录
+ private Boolean hasLogin;
+
+ /** 项目整体相关 end */
+
+ /** 数据库相关 start */
+
+ private String ip;
+
+ private String dbPort;
+
+ private String username;
+
+ private String password;
+
+ private String dbName;
+
+ // 数据库表名称,用#隔开
+ private String tableName;
+
+ /** 数据库相关 end */
+
+ /** redis相关 start */
+
+ private String redisIp;
+
+ private String redisPort;
+
+ private String redisPassWord;
+
+ /** redis相关 end */
+
+ /** 图片上传相关 start */
+
+ // 本机图片地址服务器的webapp绝对路径
+ private String uploadUrl;
+
+ /** 图片上传相关 end */
+
+ /** 自定义登录 & 个人信息相关 start */
+ private LoginParam loginParam;
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/BaseEntity.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/BaseEntity.java
new file mode 100644
index 0000000..59d6974
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/BaseEntity.java
@@ -0,0 +1,24 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class BaseEntity implements Serializable {
+
+ /**表名称*/
+ private String tableName;
+
+ /**作者名称*/
+ private String authorName;
+
+ /**表注释*/
+ private String tableComment;
+
+ /**包名*/
+ private String packageName;
+
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/EnumsDTO.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/EnumsDTO.java
new file mode 100644
index 0000000..238dffb
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/EnumsDTO.java
@@ -0,0 +1,16 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+/**
+ * @description: 枚举传输
+ * @author: azhou
+ * @create: 2021-12-24 11:31
+ **/
+@Data
+public class EnumsDTO {
+
+ private String name;
+
+ private String value;
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/EnumsEntity.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/EnumsEntity.java
new file mode 100644
index 0000000..3b7558a
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/EnumsEntity.java
@@ -0,0 +1,19 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @description: 列枚举类
+ * @author: azhou
+ * @create: 2021-12-24 11:29
+ **/
+@Data
+public class EnumsEntity {
+
+ /**当前枚举属于那一列*/
+ private String colName;
+
+ private List enumsDTOS;
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/LoginParam.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/LoginParam.java
new file mode 100644
index 0000000..ec5572d
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/LoginParam.java
@@ -0,0 +1,23 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+/**
+ * @description: 登录参数 admin#beds#department#doctor#leave_hospital#rooms#sick_cost#sick_info
+ * @author: azhou
+ * @create: 2021-12-15 17:08
+ **/
+@Data
+public class LoginParam {
+
+ private String tableName;
+ private String className;
+ private String unClassName;
+ private String userNameCol;
+ private String passWordCol;
+ // 自定义用户信息相关
+ private Boolean hasUserInfo;
+ private String headImgCol;
+ private String nickNameCol;
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/Parameters.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/Parameters.java
new file mode 100644
index 0000000..ae0c6c5
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/Parameters.java
@@ -0,0 +1,41 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+@Data
+public class Parameters {
+
+ private String projectNameVal;
+
+ private String frameWorkVal;
+
+ private String clientFrameWorkVal;
+
+ private String dataBaseTypeVal;
+
+ private String dataBaseIpVal;
+
+ private String dataBasePortVal;
+
+ private String dataBasePwdVal;
+
+ private String dataBaseNameVal;
+
+ private String dataBaseUserNameVal;
+
+ private String dataBaseUrl;
+
+ private String dataBaseDriverClass;
+
+ private String outPathVal;
+
+ private String makeModelVal;
+
+ private String tableName;
+
+ private String jsFrameWork;
+
+ private String themeVal;
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/ProjectParam.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/ProjectParam.java
new file mode 100644
index 0000000..1e4f299
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/ProjectParam.java
@@ -0,0 +1,57 @@
+package com.azhoucode.entity;
+
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * 项目整体参数
+ */
+@Data
+public class ProjectParam extends BaseEntity{
+
+ /**项目名称*/
+ private String projectName;
+
+ /**项目访问端口*/
+ private Integer projectPort;
+
+ /**总包名*/
+ private String packageName;
+
+ /**数据库ip*/
+ private String dbIp;
+
+ /**数据库端口*/
+ private String dbPort;
+
+ /**数据库用户名*/
+ private String dbUserName;
+
+ /**数据库密码*/
+ private String dbPassWord;
+
+ /**数据库名称*/
+ private String dbName;
+
+ /**表名称(根据#拆分)*/
+ private List tableNames;
+
+ /**是否需要redis*/
+ private Integer isRedis;
+
+ /**是否需要tomcat文件服务器*/
+ private Integer isTomcatFile;
+
+ /**tomcat文件保存的地址*/
+ private String tomcatWebAppsPath;
+
+ /**
+ * 是否需要登录拦截
+ * 如果有redis则使用redis存储用户信息
+ * 否则使用session来存储用户信息
+ */
+ private Integer isLoginHandle;
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/RouterParam.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/RouterParam.java
new file mode 100644
index 0000000..45dc378
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/RouterParam.java
@@ -0,0 +1,17 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+/**
+ * @description: 路由参数
+ * @author: azhou
+ * @create: 2021-12-23 12:56
+ **/
+@Data
+public class RouterParam {
+
+ private String routerName;
+
+ private String chinaName;
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/SearchParam.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/SearchParam.java
new file mode 100644
index 0000000..cff25e0
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/SearchParam.java
@@ -0,0 +1,32 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+@Data
+public class SearchParam {
+
+ /**列名称*/
+ private String colName;
+
+ /**字段名称*/
+ private String propertyName;
+
+ /**属性类型*/
+ private String propertyType;
+
+ /**字段注释*/
+ private String propertyChinaName;
+
+ /**比较方式*/
+ private String compareWay;
+
+ /**属于那张表*/
+ private String fromTableName;
+
+ /**比较类型*/
+ private String compareType;
+
+ private Boolean isUploadCol;
+ private String showType;
+ private String updateType;
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/SelectEntity.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/SelectEntity.java
new file mode 100644
index 0000000..fa99ad4
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/SelectEntity.java
@@ -0,0 +1,34 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+/**
+ * @description: 下拉框对象
+ * @author: azhou
+ * @create: 2021-12-24 14:37
+ **/
+@Data
+public class SelectEntity {
+
+ /**来源那张表*/
+ private String fromTableName;
+
+ /**类名*/
+ private String className;
+
+ /**类名小写*/
+ private String unClassName;
+
+ /**名称列*/
+ private String nameCol;
+
+ /**value列*/
+ private String valueCol;
+
+ /**该选择框属于哪一列*/
+ private String colName;
+
+ /**列对应的属性名称*/
+ private String propertyName;
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableColEntity.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableColEntity.java
new file mode 100644
index 0000000..af28d8f
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableColEntity.java
@@ -0,0 +1,25 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+/**
+ * @description: 数据库表列数据实体
+ * @author: azhou
+ * @create: 2021-11-01 16:25
+ **/
+@Data
+public class TableColEntity {
+
+ private String colName;
+ private String chinaName;
+ private Boolean tableShow;
+ private Boolean updateShow;
+ private Boolean searchShow;
+ private String paramType;
+ private String compareType;
+ private String showType;
+ private String updateType;
+ private Boolean uploadImg;
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableEntity.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableEntity.java
new file mode 100644
index 0000000..ef8b04c
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableEntity.java
@@ -0,0 +1,42 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @description: 表格数据
+ * @author: azhou
+ * @create: 2021-11-01 16:29
+ **/
+@Data
+public class TableEntity {
+
+ private String tableName;
+
+ private String tableComment;
+
+ /**
+ * 表格中的列数据
+ */
+ private List tableColEntityList;
+
+ /**
+ * 子表数据
+ */
+ private List sonTableEntities;
+
+ /**
+ * 关联关系数组
+ */
+ private List correlationList;
+
+ /**修改展示的枚举*/
+ private List enumsEntities;
+
+ /**表格展示的枚举*/
+ private List tableEnumsEntities;
+
+ private List selectEntities;
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableNameAndType.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableNameAndType.java
new file mode 100644
index 0000000..d8c9f34
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableNameAndType.java
@@ -0,0 +1,28 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 表的字段和类型
+ * azhou
+ */
+@Data
+public class TableNameAndType implements Serializable {
+
+ /**列明*/
+ private String colName;
+
+ /**对应实体名称*/
+ private String entityName;
+
+ /**实体中参数类型*/
+ private String entityParamType;
+
+ private String className;
+ /**注释*/
+ private String comment;
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableParam.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableParam.java
new file mode 100644
index 0000000..3244406
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/entity/TableParam.java
@@ -0,0 +1,95 @@
+package com.azhoucode.entity;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @description: 单表参数
+ * @author: azhou
+ * @create: 2021-12-15 09:28
+ **/
+@Data
+public class TableParam {
+
+ /**
+ * 表格名称
+ */
+ private String tableName;
+
+ /**
+ * 类名称
+ */
+ private String className;
+
+ /**
+ * 小写类名称
+ */
+ private String unClassName;
+
+
+ /**
+ * 表格中文名称
+ */
+ private String tableComment;
+
+ /**
+ * 本表中需要展示的列 实体类中的属性
+ */
+ private List showColList;
+
+ /**
+ * 是否有子表
+ */
+ private Boolean hasSonTable;
+
+ /**
+ * 子表中需要展示的列 dto中的属性
+ */
+ private List showSonTableColList;
+
+ /**
+ * 搜索比较字段 xml中需要搜索的字段
+ */
+ private List searchColsList;
+
+ /**
+ * 与主表的关联关系
+ */
+ private String correlation;
+
+ /**
+ * 表中是否存在图片上传
+ */
+ private Boolean hasUpload;
+
+ /**
+ * 前端表格需要展示的列
+ */
+ private List vueShowColList;
+
+ /**
+ * 前端编辑添加时候需要修改的列
+ */
+ private List vueModifyColList;
+
+ /**
+ * 前端顶部搜索需要展示的列
+ */
+ private List vueSearchColList;
+
+ /**
+ * 该表中修改时候需要展示的枚举
+ */
+ private List updateEnumsLists;
+
+ /**
+ * 下拉选择框数据来源
+ */
+ private List selectEntities;
+
+ private List tableEnumsEntities;
+
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/BaseErrorEnum.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/BaseErrorEnum.java
new file mode 100644
index 0000000..cc9c212
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/BaseErrorEnum.java
@@ -0,0 +1,80 @@
+package com.azhoucode.enums;
+
+public enum BaseErrorEnum {
+
+ /**
+ * 成功
+ */
+ SUCCESS(200, "成功"),
+
+ /**
+ * 普通请求异常
+ */
+ OBJECT_NOT_FOUND(10001, "请求数据不存在"),
+ REQUEST_PARAMETER_EXCEPTION(10002, "请求参数错误"),
+ PARAMETER_NOT_FOUND(10003, "必传参数缺失"),
+
+ BAD_ACCOUNTS(10004, "手机号码有误,请重新输入"),
+ BAD_CREDENTIALS(10005, "密码有误,请重新输入"),
+ ACCOUNTS_DISABLED(10006, "账号不可用"),
+ LOGIN_EXPIRED(10007, "登录已失效"),
+ REQUIRED_AUTHENTICATION(10008, "权限不足,需要登录认证"),
+
+ REQUIRED_ROLE(10019, "角色权限不足"),
+
+ VALIDATE_CODE_REQUIRED(10009, "请发送短信验证码"),
+ VALIDATE_CODE_EXPIRED(10010, "短信验证码已过期"),
+ VALIDATE_CODE_ERROR(10011, "短信验证码不匹配"),
+ VALIDATE_CODE_SEND_ERROR(10012, "短信验证码发送失败"),
+
+ ACCESS_TOKEN_ERROR(10013, "令牌非法"),
+ SUBJECT_DELETE(10014, "用户已注销"),
+
+ MOBILE_LOGIN_ERROR(10015, "一键登录失败"),
+ MOBILE_LOGIN_DECRYPT_EXCEPTION(10016, "一键登录解密异常"),
+ FILE_TOO_LARGE_EXCEPTION(10017, "上传文件太大"),
+ TXT_TOO_LARGE_EXCEPTION(10018, "数据太长"),
+
+ STAFF_VALIDATE_CODE_ERROR(10019, "管家认证码不存在"),
+ STAFF_VALIDATE_CODE_USED(10020, "管家认证码已使用"),
+
+ // 4000开头客户端异常
+ REQUEST_NOT_SUPPORT(40001, "请求方式不支持"),
+ NO_HANDLER_EXCEPTION(40002, "没有找到请求处理器"),
+ CITY_NOT_FIND_ERROR(40003, "不合法的城市参数"),
+ CONDITION_NOT_MET(40004, "条件未满足"),
+ NO_PERMISSION_FOR_THIS_DATA(40005, "对该数据无权限"),
+
+ // 5000开头服务端异常
+ SERVER_ERROR(50001, "服务内部异常"),
+ BUSINESS_ERROR(50002, "业务错误"),
+
+
+ FILE_UPLOAD_ERROR(50003, "文件上传失败"),
+
+ LOCATION_ERROR(50004,"经纬度定位失败"),
+ HOUSE_NULL(50005,"房源数据为空"),
+ HOUSE_ERROR(50006,"房源数据有误"),
+ RESULT_ERROR(50007,"查询的结果为空"),
+
+ ;
+
+ private final int code;
+
+ private final String message;
+
+ BaseErrorEnum(int code, String message) {
+ this.code = code;
+ this.message = message;
+
+ }
+
+ public int getCode() {
+ return code;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/DBType.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/DBType.java
new file mode 100644
index 0000000..9f54e78
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/DBType.java
@@ -0,0 +1,21 @@
+package com.azhoucode.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+
+@AllArgsConstructor
+@Getter
+public enum DBType {
+
+ MYSQL(1, "mysql");
+
+
+
+ private Integer code;
+
+ private String value;
+
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/ServerName.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/ServerName.java
new file mode 100644
index 0000000..8c01a4a
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/ServerName.java
@@ -0,0 +1,26 @@
+package com.azhoucode.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+
+@AllArgsConstructor
+@Getter
+public enum ServerName {
+
+ SPRING_BOOT(1, "springboot"),
+
+ MYBATIS(101,"mybatis"),
+ MYBATIS_PLUS(102,"mybatis_plus"),
+ REDIS(103,"redis"),// redis
+
+
+ TOMCAT_FILE(301,"tomcat_file");// 文件服务器
+
+ private Integer code;
+
+ private String value;
+
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/TemplateTypeEnum.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/TemplateTypeEnum.java
new file mode 100644
index 0000000..bb8c905
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/TemplateTypeEnum.java
@@ -0,0 +1,61 @@
+package com.azhoucode.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @description: 模板类型
+ * @author: azhou
+ * @create: 2021-12-14 15:58
+ **/
+@Getter
+@AllArgsConstructor
+public enum TemplateTypeEnum {
+
+ APPLICATION(1, "application.ftl", "application.yml"),
+ ENTITY(2, "entity.ftl", "%s.java"),
+ CONTROLLER(3, "controller.ftl", "%sController.java"),
+ SERVICE(4, "service.ftl", "%sService.java"),
+ SERVICE_IMPL(5, "serviceImpl.ftl", "%sServiceImpl.java"),
+ DAO(6, "dao.ftl", "%sDao.java"),
+ DTO(7, "dto.ftl", "%sDTO.java"),
+ POM(8, "pom.ftl", "pom.xml"),
+ XML(9, "xml.ftl", "%sDao.xml"),
+ REDIS_CONFIG(10, "redisConfig.ftl", "RedisConfig.java"),
+ REDIS_UTIL(11, "redisUtil.ftl", "RedisUtil.java"),
+ MAIN_UTIL(12, "mailUtil.ftl", "MailUtil.java"),
+ LOGIN_CONTROLLER(13, "loginController.ftl", "LoginController.java"),
+ VUE_TABLE(14, "vueTable.ftl", "index.vue"),
+ VUE_API(15, "api.ftl", "index.js"),
+ VUE_ROUTER(16, "sysRouter.ftl", "index.js"),
+ VUE_TABLE2(17, "vueTable2.ftl", "%s.vue"),
+ VUE_ROUTER2(18, "sysRouter2.ftl", "index.js"),
+ VUE_SIDEBAR(19, "Sidebar.ftl", "Sidebar.vue"),
+ VUE_ROUTER3(20, "admin.ftl", "admin.json"),
+
+ ;
+
+ private Integer type;
+
+ /**
+ * 模板文件名称
+ */
+ private String ftlName;
+
+ /**
+ * 模板生成文件名称,使用占位符的形式
+ */
+ private String fileName;
+
+ public static TemplateTypeEnum getByCode(Integer code) {
+ for (TemplateTypeEnum templateTypeEnum : TemplateTypeEnum.values()) {
+ if(templateTypeEnum.getType().equals(code)) {
+ return templateTypeEnum;
+ }
+ }
+ return null;
+ }
+
+
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/WebName.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/WebName.java
new file mode 100644
index 0000000..606122b
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/enums/WebName.java
@@ -0,0 +1,18 @@
+package com.azhoucode.enums;
+
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+@Getter
+@AllArgsConstructor
+public enum WebName {
+
+ LAYUI(1,"layui"),
+
+ VUE(2,"vue");
+
+ private Integer code;
+
+ private String value;
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/DBService.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/DBService.java
new file mode 100644
index 0000000..ce6fd2d
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/DBService.java
@@ -0,0 +1,22 @@
+package com.azhoucode.service;
+
+import com.azhoucode.entity.ApplicationEntity;
+import com.azhoucode.entity.TableEntity;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @description: db
+ * @author: azhou
+ * @create: 2021-11-01 14:54
+ **/
+public interface DBService {
+
+
+ String checkDBParam(ApplicationEntity applicationEntity) throws Exception;
+
+ TableEntity getTableColList(String tableName,String random) throws Exception;
+
+ List getAllTable(String random) throws Exception;
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/GenerateService.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/GenerateService.java
new file mode 100644
index 0000000..d2c4b1c
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/GenerateService.java
@@ -0,0 +1,29 @@
+package com.azhoucode.service;
+
+import com.azhoucode.entity.TableNameAndType;
+
+import java.util.List;
+import java.util.Map;
+
+public interface GenerateService {
+
+ /**
+ * 生成全部代码
+ */
+ void generateCode(String random,Integer type) throws Exception;
+
+ /**
+ * 生成业务类模板代码
+ * @param tempData 模板数据
+ * @param type 生成模板的类型
+ * @param className 生成类名称
+ */
+ void generateClassCode(Map tempData, Integer type,String className,String saveUrl) throws Exception;
+
+ /**
+ * 生成公共模板代码
+ * @param tempData 模板数据
+ * @param type 生成模板的类型
+ */
+ void generatePublicCode(Map tempData, Integer type,String saveUrl) throws Exception;
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/TableService.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/TableService.java
new file mode 100644
index 0000000..959bbac
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/TableService.java
@@ -0,0 +1,14 @@
+package com.azhoucode.service;
+
+import com.azhoucode.entity.TableEntity;
+
+/**
+ * @description: 单表
+ * @author: azhou
+ * @create: 2021-12-15 10:51
+ **/
+public interface TableService {
+
+ void addTableConfiguration(TableEntity tableEntity,String random) throws Exception;
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/impl/DBServiceImpl.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/impl/DBServiceImpl.java
new file mode 100644
index 0000000..b303a6b
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/impl/DBServiceImpl.java
@@ -0,0 +1,87 @@
+package com.azhoucode.service.impl;
+
+import com.azhoucode.constant.RedisConstant;
+import com.azhoucode.entity.*;
+import com.azhoucode.enums.DBType;
+import com.azhoucode.service.DBService;
+import com.azhoucode.util.*;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+import java.sql.Connection;
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+ * @description: db
+ * @author: azhou
+ * @create: 2021-11-01 14:54
+ **/
+@Service
+public class DBServiceImpl implements DBService {
+
+
+ private List paramList = Arrays.asList("id", "create_time", "update_time", "create_id", "update_id");
+
+ @Override
+ public String checkDBParam(ApplicationEntity applicationEntity) throws Exception {
+ Connection connection = DBUtils.getConnection(applicationEntity);
+ if (connection == null) throw new Exception("连接失败");
+ String random = RandomUtil.getRamdom();
+ RedisCacheUtils.set(String.format(RedisConstant.DB_PARAM, random), applicationEntity, 60 * 60 * 24);
+ return random;
+ }
+
+ @Override
+ public TableEntity getTableColList(String tableName, String random) throws Exception {
+ ApplicationEntity applicationEntity = RedisCacheUtils.get(String.format(RedisConstant.DB_PARAM, random), ApplicationEntity.class);
+ if (applicationEntity == null) throw new Exception("数据库连接异常");
+ Connection connection = DBUtils.getConnection(applicationEntity);
+ List columnNameAndTypes = DBUtils.getColumnNameAndTypes(DBType.MYSQL.getValue(), tableName, connection);
+ if (CollectionUtils.isEmpty(columnNameAndTypes)) return null;
+ TableEntity tableEntity = new TableEntity();
+ // 组装表的列数据
+ List collect = columnNameAndTypes.stream().map(item -> getTableColEntity(item)).collect(Collectors.toList());
+ tableEntity.setTableColEntityList(collect);
+ return tableEntity;
+ }
+
+ @Override
+ public List getAllTable(String random) throws Exception {
+ ApplicationEntity applicationEntity = RedisCacheUtils.get(String.format(RedisConstant.DB_PARAM, random), ApplicationEntity.class);
+ if (applicationEntity == null) throw new Exception("表格基本数据异常");
+ String tableName = applicationEntity.getTableName();
+ if (tableName.startsWith("#")) tableName = tableName.substring(1);
+ if (tableName.endsWith("#")) tableName = tableName.substring(0, tableName.length() - 1);
+ List list = null;
+ try {
+ list = Arrays.asList(tableName.split("#"));
+ } catch (Exception e) {
+ throw new Exception("表格基本数据异常");
+ }
+ return list;
+ }
+
+
+ public TableColEntity getTableColEntity(TableNameAndType tableNameAndType) {
+ TableColEntity tableColEntity = new TableColEntity();
+ tableColEntity.setColName(tableNameAndType.getColName());
+ tableColEntity.setChinaName(tableNameAndType.getComment());
+ // 如果是ID则默认不显示 不修改 不添加
+ String colName = tableColEntity.getColName();
+ boolean flag = checkParam(colName);
+ tableColEntity.setTableShow(flag ? false : true);
+ tableColEntity.setUpdateShow(flag ? false : true);
+ tableColEntity.setSearchShow(false);
+ tableColEntity.setCompareType("=");
+ tableColEntity.setShowType("text");
+ tableColEntity.setUpdateType("text");
+ tableColEntity.setUploadImg(false);
+ tableColEntity.setParamType(tableNameAndType.getEntityParamType());
+ return tableColEntity;
+ }
+
+ public boolean checkParam(String param) {
+ return paramList.contains(param);
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/impl/GenerateServiceImpl.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/impl/GenerateServiceImpl.java
new file mode 100644
index 0000000..9e8191e
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/impl/GenerateServiceImpl.java
@@ -0,0 +1,204 @@
+package com.azhoucode.service.impl;
+
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.lang.Assert;
+import cn.hutool.core.util.StrUtil;
+import com.alibaba.fastjson.JSON;
+import com.azhoucode.constant.RedisConstant;
+import com.azhoucode.constant.TipTemplateConstant;
+import com.azhoucode.entity.ApplicationEntity;
+import com.azhoucode.entity.LoginParam;
+import com.azhoucode.entity.RouterParam;
+import com.azhoucode.entity.TableParam;
+import com.azhoucode.enums.TemplateTypeEnum;
+import com.azhoucode.service.GenerateService;
+import com.azhoucode.util.FreeMarkerUtil;
+import com.azhoucode.util.JsonUtils;
+import com.azhoucode.util.RedisCacheUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.lang.Nullable;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+
+@Service
+public class GenerateServiceImpl implements GenerateService {
+
+ @Autowired
+ private FreeMarkerUtil freeMarkerUtil;
+
+
+ @Value("${file-path.project}")
+ private String pomFilePath;
+
+ @Value("${application}")
+ private String appFilePath;
+
+ @Value("${config}")
+ private String configFilePath;
+
+ @Value("${util}")
+ private String utilFilePath;
+
+ @Value("${controller}")
+ private String controllerFilePath;
+
+ @Value("${dao}")
+ private String daoFilePath;
+
+ @Value("${service}")
+ private String serviceFilePath;
+
+ @Value("${serviceImpl}")
+ private String serviceImplFilePath;
+
+ @Value("${entity}")
+ private String entityFilePath;
+
+ @Value("${dto}")
+ private String dtoFilePath;
+
+ @Value("${xml}")
+ private String xmlFilePath;
+
+ @Value("${vueTable}")
+ private String vueElementTablePath;
+
+ @Value("${vueTableApi}")
+ private String vueElementTableApiPath;
+
+ @Value("${vueRouter}")
+ private String vueElementRouterPath;
+
+ @Value("${vueCommonTable}")
+ private String vueCommonTablePath;
+ @Value("${vueCommonRouterPath}")
+ private String vueCommonRouterPath;
+ @Value("${vueCommonSidebarPath}")
+ private String vueCommonSidebarPath;
+
+ @Value("${vueTable2}")
+ private String vueTable2;
+ @Value("${vueTableApi2}")
+ private String vueTableApi2;
+ @Value("${vueRouter3}")
+ private String vueRouter3;
+ @Override
+ public void generateCode(String random, Integer type) throws Exception {
+ this.generateProjectCommonCode(random);
+ this.generateBusinessCode(random, type);
+ }
+
+ @Override
+ public void generateClassCode(Map tempData, Integer type, String className, String saveUrl) throws Exception {
+ TemplateTypeEnum templateTypeEnum = TemplateTypeEnum.getByCode(type);
+ Assert.notNull(templateTypeEnum, TipTemplateConstant.TEMP_TYPE_NOT_FOUND, type);
+ freeMarkerUtil.generate(tempData, templateTypeEnum.getFtlName(), saveUrl, String.format(templateTypeEnum.getFileName(), className));
+ }
+
+ @Override
+ public void generatePublicCode(Map tempData, Integer type, String saveUrl) throws Exception {
+ TemplateTypeEnum templateTypeEnum = TemplateTypeEnum.getByCode(type);
+ Assert.notNull(templateTypeEnum, TipTemplateConstant.TEMP_TYPE_NOT_FOUND, type);
+ freeMarkerUtil.generate(tempData, templateTypeEnum.getFtlName(), saveUrl, templateTypeEnum.getFileName());
+ }
+
+ /**
+ * 生成项目公共代码
+ *
+ * @throws Exception
+ */
+ public void generateProjectCommonCode(String random) throws Exception {
+ ApplicationEntity applicationEntity = RedisCacheUtils.get(String.format(RedisConstant.DB_PARAM, random), ApplicationEntity.class);
+ // 生成application代码
+ Map stringObjectMap = JsonUtils.jsonToMap(JsonUtils.objectToJson(applicationEntity));
+ this.generatePublicCode(stringObjectMap, TemplateTypeEnum.APPLICATION.getType(), appFilePath);
+ this.generatePublicCode(stringObjectMap, TemplateTypeEnum.POM.getType(), pomFilePath);
+ if (applicationEntity.getHasEmail())
+ this.generatePublicCode(stringObjectMap, TemplateTypeEnum.MAIN_UTIL.getType(), utilFilePath);
+ if (applicationEntity.getHasRedis()) {
+ this.generatePublicCode(stringObjectMap, TemplateTypeEnum.REDIS_UTIL.getType(), utilFilePath);
+ this.generatePublicCode(stringObjectMap, TemplateTypeEnum.REDIS_CONFIG.getType(), configFilePath);
+ }
+ // 需要自定义登录
+ if (applicationEntity.getHasLogin() && applicationEntity.getLoginParam() != null) {
+ LoginParam loginParam = applicationEntity.getLoginParam();
+ if (StrUtil.isNotEmpty(loginParam.getTableName()) &&
+ StrUtil.isNotEmpty(loginParam.getUserNameCol()) &&
+ StrUtil.isNotEmpty(loginParam.getPassWordCol())) {
+ loginParam.setClassName(freeMarkerUtil.getEntityName(loginParam.getTableName()));
+ loginParam.setUnClassName(freeMarkerUtil.getEntityNameLower(loginParam.getTableName()));
+ Map loginParamMap = JsonUtils.jsonToMap(JsonUtils.objectToJson(applicationEntity.getLoginParam()));
+ this.generatePublicCode(loginParamMap, TemplateTypeEnum.LOGIN_CONTROLLER.getType(), controllerFilePath);
+ }
+ }
+ }
+
+
+ /**
+ * 生成业务代码
+ *
+ * @param type 前端模板类型【1:vue-element 2:普通vue 3:html+ layui】
+ * @throws Exception
+ */
+ public void generateBusinessCode(String random, @Nullable Integer type) throws Exception {
+ List tableDataList = RedisCacheUtils.lrange(String.format(RedisConstant.TABLE_LIST, random), 0, -1);
+ if (CollectionUtil.isEmpty(tableDataList)) return;
+ List tableParamList = tableDataList.stream().map(item -> JSON.parseObject(item, TableParam.class)).collect(Collectors.toList());
+ // 倒叙生成 表重复时覆盖之前的设置
+ List reverse = CollectionUtil.reverse(tableParamList);
+ for (TableParam tableParam : reverse) {
+ Map stringObjectMap = JsonUtils.jsonToMap(JsonUtils.objectToJson(tableParam));
+ // 前端代码生成每个文件对应的文件夹名称,根据选择不同的模板来生成不同的前端
+// if (type == 1) generateVueElementCode(stringObjectMap, tableParam);
+// else if (type == 2) generateVueCode(stringObjectMap, tableParam);
+// else if (type == 3) generateVueElementCode2(stringObjectMap, tableParam);
+ // 后端代码生成,不变
+ this.generateClassCode(stringObjectMap, TemplateTypeEnum.ENTITY.getType(), tableParam.getClassName(), entityFilePath);
+ this.generateClassCode(stringObjectMap, TemplateTypeEnum.DAO.getType(), tableParam.getClassName(), daoFilePath);
+ this.generateClassCode(stringObjectMap, TemplateTypeEnum.SERVICE.getType(), tableParam.getClassName(), serviceFilePath);
+ this.generateClassCode(stringObjectMap, TemplateTypeEnum.SERVICE_IMPL.getType(), tableParam.getClassName(), serviceImplFilePath);
+ this.generateClassCode(stringObjectMap, TemplateTypeEnum.DTO.getType(), tableParam.getClassName(), dtoFilePath);
+ this.generateClassCode(stringObjectMap, TemplateTypeEnum.CONTROLLER.getType(), tableParam.getClassName(), controllerFilePath);
+ this.generateClassCode(stringObjectMap, TemplateTypeEnum.XML.getType(), tableParam.getClassName(), xmlFilePath);
+ }
+// Map map = new HashMap<>();
+// List routerParams = new ArrayList<>();
+// reverse.stream().collect(Collectors.toMap(item -> item.getTableName(), item -> item, (o1, o2) -> o2)).entrySet().forEach(item -> {
+// RouterParam routerParam = new RouterParam();
+// routerParam.setRouterName(item.getValue().getUnClassName());
+// routerParam.setChinaName(item.getValue().getTableComment());
+// routerParams.add(routerParam);
+// });
+// map.put("routerParams", routerParams);
+// if (type == 1) this.generatePublicCode(map, TemplateTypeEnum.VUE_ROUTER.getType(), vueElementRouterPath);
+// else if(type == 2) {
+// this.generatePublicCode(map, TemplateTypeEnum.VUE_ROUTER2.getType(), vueCommonRouterPath);
+// this.generatePublicCode(map, TemplateTypeEnum.VUE_SIDEBAR.getType(), vueCommonSidebarPath);
+// }else if(type == 3){
+// this.generatePublicCode(map, TemplateTypeEnum.VUE_ROUTER3.getType(), vueRouter3);
+// }
+ }
+
+ public void generateVueElementCode(Map stringObjectMap, TableParam tableParam) throws Exception {
+ String vueTable = String.format(vueElementTablePath, tableParam.getUnClassName());
+ String vueApi = String.format(vueElementTableApiPath, tableParam.getUnClassName());
+ this.generatePublicCode(stringObjectMap, TemplateTypeEnum.VUE_TABLE.getType(), vueTable);
+ this.generatePublicCode(stringObjectMap, TemplateTypeEnum.VUE_API.getType(), vueApi);
+ }
+
+ public void generateVueCode(Map stringObjectMap, TableParam tableParam) throws Exception {
+ String vueTable = String.format(vueCommonTablePath, tableParam.getUnClassName());
+ this.generateClassCode(stringObjectMap, TemplateTypeEnum.VUE_TABLE2.getType(), tableParam.getUnClassName(), vueTable);
+ }
+
+ public void generateVueElementCode2(Map stringObjectMap, TableParam tableParam) throws Exception {
+ String vueTable = String.format(vueTable2, tableParam.getUnClassName());
+ String vueApi = String.format(vueTableApi2, tableParam.getUnClassName());
+ this.generatePublicCode(stringObjectMap, TemplateTypeEnum.VUE_TABLE.getType(), vueTable);
+ this.generatePublicCode(stringObjectMap, TemplateTypeEnum.VUE_API.getType(), vueApi);
+ }
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/impl/TableServiceImpl.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/impl/TableServiceImpl.java
new file mode 100644
index 0000000..08faf86
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/service/impl/TableServiceImpl.java
@@ -0,0 +1,213 @@
+package com.azhoucode.service.impl;
+
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.StrUtil;
+import com.alibaba.fastjson.JSON;
+import com.azhoucode.constant.RedisConstant;
+import com.azhoucode.entity.*;
+import com.azhoucode.service.TableService;
+import com.azhoucode.util.FreeMarkerUtil;
+import com.azhoucode.util.RedisCacheUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+import static java.util.Comparator.comparing;
+import static java.util.stream.Collectors.collectingAndThen;
+import static java.util.stream.Collectors.toCollection;
+
+/**
+ * @description: 单表实现
+ * @author: azhou
+ * @create: 2021-12-15 10:51
+ **/
+@Service
+public class TableServiceImpl implements TableService {
+
+ private static final String MODIFY = "modify";
+ private static final String SHOW = "show";
+ private static final String SEARCH = "search";
+
+ @Autowired
+ private FreeMarkerUtil freeMarkerUtil;
+
+ @Override
+ public void addTableConfiguration(TableEntity tableEntity, String random) throws Exception {
+ TableParam tableParam = new TableParam();
+ tableParam.setTableName(tableEntity.getTableName());
+ tableParam.setClassName(freeMarkerUtil.getEntityName(tableEntity.getTableName()));
+ tableParam.setUnClassName(freeMarkerUtil.getEntityNameLower(tableEntity.getTableName()));
+ tableParam.setTableComment(StrUtil.isEmpty(tableEntity.getTableComment()) ? tableEntity.getTableName() : tableEntity.getTableComment());
+ tableParam.setShowColList(buildSearchParam(tableEntity, true));
+ List searchParamList = new ArrayList<>();
+ searchParamList.addAll(buildSearchParam(tableEntity, true));
+ Map> stringListMap = buildVueTableData(tableEntity, true);
+ List modifyList = stringListMap.get(MODIFY);
+ List showList = stringListMap.get(SHOW);
+ List searchList = stringListMap.get(SEARCH);
+ // 存在子表配置
+ List sonTableEntities = tableEntity.getSonTableEntities();
+ List correlationList = tableEntity.getCorrelationList();
+ if (CollectionUtil.isNotEmpty(sonTableEntities) && CollectionUtil.isNotEmpty(correlationList)) {
+ List sonTableColEntities = new ArrayList<>();
+ tableParam.setHasSonTable(true);
+ for (TableEntity sonTableEntity : sonTableEntities) {
+ Map> stringListMap1 = buildVueTableData(sonTableEntity, false);
+ List modifyList1 = stringListMap1.get(MODIFY);
+ modifyList.addAll(modifyList1);
+ List showList1 = stringListMap1.get(SHOW);
+ showList.addAll(showList1);
+ List searchList1 = stringListMap1.get(SEARCH);
+ searchList.addAll(searchList1);
+ sonTableColEntities.addAll(buildSearchParam(sonTableEntity, false));
+ searchParamList.addAll(buildSearchParam(sonTableEntity, false));
+ }
+ tableParam.setShowSonTableColList(sonTableColEntities);
+ if (CollectionUtil.isNotEmpty(correlationList)) {
+ tableParam.setCorrelation(correlationList.stream().collect(Collectors.joining("\n\r")));
+ }
+ }
+ tableParam.setHasUpload(checkHasUpload(tableEntity));
+ tableParam.setSearchColsList(searchParamList);
+ tableParam.setVueModifyColList(modifyList);
+ tableParam.setVueShowColList(showList);
+ tableParam.setVueSearchColList(searchList);
+ if (CollectionUtil.isNotEmpty(tableEntity.getEnumsEntities())) {
+ List enumsEntities = tableEntity.getEnumsEntities();
+ List list = enumsEntities.stream().collect(collectingAndThen(toCollection(() ->
+ new TreeSet<>(comparing(n -> n.getColName()))), ArrayList::new));
+ tableParam.setUpdateEnumsLists(list);
+ }
+ if (CollectionUtil.isNotEmpty(tableEntity.getTableEnumsEntities())) {
+ List enumsEntities = tableEntity.getTableEnumsEntities();
+ List list = enumsEntities.stream().collect(collectingAndThen(toCollection(() ->
+ new TreeSet<>(comparing(n -> n.getColName()))), ArrayList::new));
+ tableParam.setTableEnumsEntities(list);
+ }
+ if(CollectionUtil.isNotEmpty(tableEntity.getSelectEntities())) {
+ List selectEntities = tableEntity.getSelectEntities();
+ List list = selectEntities.stream().collect(collectingAndThen(toCollection(() ->
+ new TreeSet<>(comparing(n -> n.getFromTableName()))), ArrayList::new));
+ List collect = list.stream().map(item -> {
+ item.setClassName(freeMarkerUtil.getEntityName(item.getFromTableName()));
+ item.setUnClassName(freeMarkerUtil.getEntityNameLower(item.getFromTableName()));
+ item.setPropertyName(freeMarkerUtil.getEntityNameLower(item.getColName()));
+ item.setNameCol(freeMarkerUtil.getEntityName(item.getNameCol()));
+ item.setValueCol(freeMarkerUtil.getEntityName(item.getValueCol()));
+ return item;
+ }).collect(Collectors.toList());
+ tableParam.setSelectEntities(collect);
+ }
+ RedisCacheUtils.lpush(String.format(RedisConstant.TABLE_LIST, random), JSON.toJSONString(tableParam));
+ }
+
+ /**
+ * 检验是否需要文件上传
+ *
+ * @return
+ */
+ public Boolean checkHasUpload(TableEntity tableEntity) {
+ List tableColEntityList = tableEntity.getTableColEntityList();
+ boolean flag = false;
+ if (CollectionUtil.isEmpty(tableColEntityList)) return flag;
+ for (TableColEntity tableColEntity : tableColEntityList) {
+ if (tableColEntity.getUploadImg()) {
+ flag = true;
+ break;
+ }
+ }
+ return flag;
+ }
+
+ /**
+ * 构建主表的搜索列
+ *
+ * @param tableEntity
+ * @param isMain
+ * @return
+ */
+ public List buildSearchParam(TableEntity tableEntity, Boolean isMain) {
+ List searchParamList = new ArrayList<>();
+ List tableColEntityList = tableEntity.getTableColEntityList();
+ // 处理主表
+ for (TableColEntity tableColEntity : tableColEntityList) {
+ SearchParam searchParam = new SearchParam();
+ searchParam.setColName(tableColEntity.getColName());
+ searchParam.setPropertyType(tableColEntity.getParamType());
+ searchParam.setPropertyName(freeMarkerUtil.underlineToHump(tableColEntity.getColName()));
+ searchParam.setPropertyChinaName(tableColEntity.getChinaName());
+ searchParam.setCompareWay(tableColEntity.getCompareType());
+ // 下划线转驼峰
+ searchParam.setFromTableName(freeMarkerUtil.underlineToHump(tableEntity.getTableName()));
+ if (isMain) {
+ searchParamList.add(searchParam);
+ } else {
+ if (tableColEntity.getTableShow()) {
+ searchParamList.add(searchParam);
+ }
+ }
+ }
+ return searchParamList;
+ }
+
+ /**
+ * 构建前端vue表格中的各种参数
+ *
+ * @param tableEntity
+ * @return
+ */
+ private Map> buildVueTableData(TableEntity tableEntity, Boolean isMain) {
+ Map> map = new HashMap<>(6);
+ List vueShowColList = new ArrayList<>();
+ List vueModifyColList = new ArrayList<>();
+ List vueSearchColList = new ArrayList<>();
+ List tableColEntityList = tableEntity.getTableColEntityList();
+ for (TableColEntity tableColEntity : tableColEntityList) {
+ // 修改属性
+ if (tableColEntity.getUpdateShow() && isMain) {
+ SearchParam searchParam = new SearchParam();
+ searchParam.setPropertyChinaName(searchParam.getPropertyChinaName());
+ searchParam.setPropertyName(freeMarkerUtil.underlineToHump(tableColEntity.getColName()));
+ searchParam.setColName(tableColEntity.getColName());
+ searchParam.setPropertyType(tableColEntity.getParamType());
+ searchParam.setPropertyChinaName(tableColEntity.getChinaName());
+ searchParam.setCompareType(tableColEntity.getCompareType());
+ searchParam.setShowType(tableColEntity.getShowType());
+ searchParam.setUpdateType(tableColEntity.getUpdateType());
+ vueModifyColList.add(searchParam);
+ }
+ if (tableColEntity.getTableShow()) {
+ SearchParam searchParam = new SearchParam();
+ searchParam.setPropertyChinaName(searchParam.getPropertyChinaName());
+ searchParam.setPropertyName(freeMarkerUtil.underlineToHump(tableColEntity.getColName()));
+ searchParam.setColName(tableColEntity.getColName());
+ searchParam.setPropertyChinaName(tableColEntity.getChinaName());
+ searchParam.setCompareType(tableColEntity.getCompareType());
+ searchParam.setIsUploadCol(tableColEntity.getUploadImg());
+ searchParam.setPropertyType(tableColEntity.getParamType());
+ searchParam.setShowType(tableColEntity.getShowType());
+ searchParam.setUpdateType(tableColEntity.getUpdateType());
+ vueShowColList.add(searchParam);
+ }
+ if (tableColEntity.getSearchShow()) {
+ SearchParam searchParam = new SearchParam();
+ searchParam.setPropertyChinaName(searchParam.getPropertyChinaName());
+ searchParam.setPropertyName(freeMarkerUtil.underlineToHump(tableColEntity.getColName()));
+ searchParam.setColName(tableColEntity.getColName());
+ searchParam.setPropertyChinaName(tableColEntity.getChinaName());
+ searchParam.setPropertyType(tableColEntity.getParamType());
+ searchParam.setCompareType(tableColEntity.getCompareType());
+ searchParam.setShowType(tableColEntity.getShowType());
+ searchParam.setUpdateType(tableColEntity.getUpdateType());
+ vueSearchColList.add(searchParam);
+ }
+ }
+ map.put(SHOW, vueShowColList);
+ map.put(MODIFY, vueModifyColList);
+ map.put(SEARCH, vueSearchColList);
+ return map;
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/DBUtils.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/DBUtils.java
new file mode 100644
index 0000000..076aacb
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/DBUtils.java
@@ -0,0 +1,425 @@
+package com.azhoucode.util;
+
+import com.azhoucode.constant.Constant;
+import com.azhoucode.entity.ApplicationEntity;
+import com.azhoucode.entity.Parameters;
+import com.azhoucode.entity.TableNameAndType;
+
+import javax.swing.*;
+import java.sql.*;
+import java.util.*;
+
+public class DBUtils {
+
+ public static Connection getConnection(ApplicationEntity applicationEntity) {
+ Connection conn = null;
+ String url = "";
+ String driverClass = "";
+ try {
+ url = "jdbc:mysql://" + applicationEntity.getIp() + ":" + applicationEntity.getDbPort() + "/"
+ + applicationEntity.getDbName()
+ + "?connectTimeout=10000&socketTimeout=10000&serverTimezone=UTC&useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull";
+ driverClass = "com.mysql.cj.jdbc.Driver";
+ Class.forName(driverClass);
+ DriverManager.setLoginTimeout(10);
+ conn = DriverManager.getConnection(url, applicationEntity.getUsername(),
+ applicationEntity.getPassword());
+ } catch (Exception e) {
+ return null;
+ }
+ return conn;
+ }
+
+
+ /**
+ * 获取表的主键id
+ *
+ * @param parameters
+ * @param tableName
+ * @return
+ * @throws Exception
+ */
+ public static List getPrimarykey(Parameters parameters, String tableName) throws Exception {
+ List primaryKeyList = new ArrayList<>(3);
+ Connection connection = null;
+ if (connection == null) {
+ return null;
+ }
+ DatabaseMetaData metaData = connection.getMetaData();
+ String userName = connection.getMetaData().getUserName();
+ // 获取主键字段
+ ResultSet primaryKeys = metaData.getPrimaryKeys(null, userName, tableName);
+ //根据结果集元数据打印内容
+ ResultSetMetaData pkmd = primaryKeys.getMetaData();
+ while (primaryKeys.next()) {
+ for (int i = 1; i <= pkmd.getColumnCount(); i++) {
+ //获取主键的名称
+ if ("COLUMN_NAME".equalsIgnoreCase(pkmd.getColumnName(i))) {
+ primaryKeyList.add(primaryKeys.getString(i));
+ }
+ }
+ }
+ return primaryKeyList;
+ }
+
+ /**
+ * @param tableNameVal
+ * @param connection
+ * @return
+ */
+ private static Map getColumnComment(String databaseType, String tableNameVal, Connection connection) {
+
+ PreparedStatement columnListPst = null;
+ ResultSet columnListRs = null;
+
+ String sql = "";
+ if ("mysql".equals(databaseType)) {
+ sql = "show full columns from `" + tableNameVal + "`";
+ } else if ("postgresql".equals(databaseType)) {
+
+ String[] tableNameArr = tableNameVal.split("\\.");
+
+ if (tableNameArr.length == 1) {
+ tableNameVal = tableNameArr[0];
+ } else {
+ tableNameVal = tableNameArr[1];
+ }
+
+ sql = "SELECT" +
+ " A.attname AS \"Field\"," +
+ " col_description ( A.attrelid, A.attnum ) AS \"Comment\"" +
+ " FROM" +
+ " pg_class AS C," +
+ " pg_attribute AS A " +
+ " WHERE" +
+ " C.relname = '" + tableNameVal + "' " +
+ " AND A.attrelid = C.oid " +
+ " AND A.attnum > 0";
+ } else if ("oracle".equals(databaseType)) {
+ sql = "select column_name AS \"Field\",comments AS \"Comment\" from user_col_comments where lower(table_Name)='" + tableNameVal.toLowerCase() + "'";
+ }
+
+ // 列名集合
+ Map commentMqp = new HashMap<>();
+ try {
+ columnListPst = connection.prepareStatement(sql);
+ columnListRs = columnListPst.executeQuery();
+
+ while (columnListRs.next()) {
+
+ commentMqp.put(columnListRs.getString("Field").toUpperCase(), columnListRs.getString("Comment"));
+
+ }
+
+ } catch (SQLException e) {
+ return null;
+ } finally {
+ try {
+ if (connection != null) {
+ connection.close();
+ }
+ } catch (SQLException ignored) {
+ }
+ try {
+ if (columnListPst != null) {
+ columnListPst.close();
+ }
+ } catch (SQLException ignored) {
+ }
+ try {
+ if (columnListRs != null) {
+ columnListRs.close();
+ }
+ } catch (SQLException ignored) {
+
+ }
+ }
+ return commentMqp;
+ }
+
+ public static List getColumnNameList(String databaseType, String tableNameVal, Connection connection) {
+
+ PreparedStatement columnListPst = null;
+ ResultSet columnListRs = null;
+
+ String sql = "";
+ if ("mysql".equals(databaseType)) {
+ sql = "select * from `" + tableNameVal + "` where 1=0";
+ } else if ("oracle".equals(databaseType)) {
+ sql = "select * from \"" + tableNameVal + "\" where 1=0";
+ } else if ("postgresql".equals(databaseType)) {
+ sql = "select * from " + tableNameVal + " where 1=0";
+ }
+
+ // 列名集合
+ List columnList = new ArrayList<>();
+
+ try {
+ columnListPst = connection.prepareStatement(sql);
+ columnListRs = columnListPst.executeQuery();
+ ResultSetMetaData metaData = columnListRs.getMetaData();
+
+ int columnCount = metaData.getColumnCount();
+
+ for (int i = 0; i < columnCount; i++) {
+ columnList.add(metaData.getColumnName(i + 1));
+ }
+
+ } catch (SQLException e) {
+ return null;
+ } finally {
+ try {
+ if (connection != null) {
+ connection.close();
+ }
+ } catch (SQLException e) {
+ }
+ try {
+ if (columnListPst != null) {
+ columnListPst.close();
+ }
+ } catch (SQLException e) {
+ }
+ try {
+ if (columnListRs != null) {
+ columnListRs.close();
+ }
+ } catch (SQLException e) {
+
+ }
+ }
+ return columnList;
+ }
+
+
+ /**
+ * 获取表中所有字段名称和类型
+ *
+ * @return
+ */
+ public static List getColumnNameAndTypes(String databaseType, String tableNameVal,
+ Connection connection) {
+ PreparedStatement columnListPst = null;
+ ResultSet columnListRs = null;
+ String sql = "";
+ if ("mysql".equals(databaseType)) {
+ sql = "select * from `" + tableNameVal + "` where 1=0";
+ } else if ("oracle".equals(databaseType)) {
+ sql = "select * from \"" + tableNameVal + "\" where 1=0";
+ } else if ("postgresql".equals(databaseType)) {
+ sql = "select * from " + tableNameVal + " where 1=0";
+ }
+ // 列名集合
+ List nameAndTypes = new ArrayList<>();
+ try {
+ columnListPst = connection.prepareStatement(sql);
+ columnListRs = columnListPst.executeQuery();
+ ResultSetMetaData metaData = columnListRs.getMetaData();
+ int columnCount = metaData.getColumnCount();
+ for (int i = 0; i < columnCount; i++) {
+ TableNameAndType nameAndType = new TableNameAndType();
+ nameAndType.setColName(metaData.getColumnName(i + 1));
+ //设置sqlParamName
+ nameAndType.setEntityName(DataUtils.getSqlParam(metaData.getColumnName(i + 1)));
+ nameAndType.setComment((metaData.getColumnName(i + 1)));
+ String javaTypeName = "";
+ String javaClassName = "";
+ String columnTypeName = metaData.getColumnTypeName(i + 1).toUpperCase();
+ switch (databaseType) {
+ case "postgresql":
+ switch (columnTypeName) {
+ case "VARCHAR":
+ javaTypeName = "String";
+ break;
+ case "bigint":
+ javaTypeName = "Long";
+ break;
+ case "CHAR":
+ javaTypeName = "String";
+ break;
+ case "INT2":
+ javaTypeName = "Integer";
+ break;
+ case "INT4":
+ javaTypeName = "Integer";
+ break;
+ case "INT8":
+ javaTypeName = "Long";
+ break;
+ case "SERIAL2":
+ javaTypeName = "Integer";
+ break;
+ case "SERIAL4":
+ javaTypeName = "Integer";
+ break;
+ case "SERIAL8":
+ javaTypeName = "Long";
+ break;
+ case "TEXT":
+ javaTypeName = "String";
+ break;
+ case "DATE":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ case "TIME":
+ javaTypeName = "Time";
+ javaClassName = "java.util.Date";
+ break;
+ case "TIMETZ":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ case "TIMESTAMP":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ case "TIMESTAMPTZ":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ default:
+ javaTypeName = "String";
+ break;
+ }
+ break;
+ case "mysql":
+ switch (columnTypeName) {
+ case "VARCHAR":
+ javaTypeName = "String";
+ break;
+ case "BIGINT UNSIGNED":
+ javaTypeName = "Long";
+ break;
+ case "INT":
+ javaTypeName = "Integer";
+ break;
+ case "CHAR":
+ javaTypeName = "String";
+ break;
+ case "BLOB":
+ javaTypeName = "byte[]";
+ break;
+ case "TEXT":
+ javaTypeName = "String";
+ break;
+ case "INTEGER":
+ javaTypeName = "Long";
+ break;
+ case "TINYINT":
+ javaTypeName = "Integer";
+ break;
+ case "SMALLINT":
+ javaTypeName = "Integer";
+ break;
+ case "MEDIUMINT":
+ javaTypeName = "Integer";
+ break;
+ case "BIT":
+ javaTypeName = "Long";
+ break;
+ case "BIGINT":
+ javaTypeName = "Long";
+ break;
+ case "FLOAT":
+ javaTypeName = "Float";
+ break;
+ case "DOUBLE":
+ javaTypeName = "Double";
+ break;
+ case "DECIMAL":
+ javaTypeName = "BigDecimal";
+ javaClassName = "java.math.BigDecimal";
+ break;
+ case "BOOLEAN":
+ javaTypeName = "Integer";
+ break;
+ // 主键
+ case "ID":
+ javaTypeName = "Long";
+ break;
+ case "DATE":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ case "TIME":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ case "DATETIME":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ case "TIMESTAMP":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ case "YEAR":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ default:
+ javaTypeName = "String";
+ break;
+ }
+ break;
+ case "oracle":
+ switch (columnTypeName) {
+ case "NUMBER":
+ javaTypeName = "Integer";
+ break;
+ case "DATE":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ case "TIMESTAMP":
+ javaTypeName = "Date";
+ javaClassName = "java.util.Date";
+ break;
+ default:
+ javaTypeName = "String";
+ break;
+ }
+ default:
+ break;
+ }
+ nameAndType.setEntityParamType(javaTypeName);
+ nameAndType.setClassName(javaClassName);
+ nameAndTypes.add(nameAndType);
+ }
+ // 注释map
+ Map columnComment = getColumnComment(databaseType, tableNameVal, connection);
+ for (TableNameAndType tableNameAndType : nameAndTypes) {
+ String name = tableNameAndType.getColName().toUpperCase();
+ // 设置注释内容
+ assert columnComment != null;
+ tableNameAndType.setComment(
+ "".equals(columnComment.get(name)) || columnComment.get(name) == null ? tableNameAndType.getColName() : columnComment.get(name));
+ }
+ } catch (SQLException e) {
+ return null;
+ } finally {
+ try {
+ if (connection != null) {
+ connection.close();
+ }
+ } catch (SQLException ignored) {
+ }
+ try {
+ if (columnListPst != null) {
+ columnListPst.close();
+ }
+ } catch (SQLException ignored) {
+ }
+ try {
+ if (columnListRs != null) {
+ columnListRs.close();
+ }
+ } catch (SQLException ignored) {
+
+ }
+ }
+ return nameAndTypes;
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/DataUtils.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/DataUtils.java
new file mode 100644
index 0000000..221ff21
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/DataUtils.java
@@ -0,0 +1,60 @@
+package com.azhoucode.util;
+
+public class DataUtils {
+
+
+ /**
+ * @param columnsEng
+ */
+ public static String getSqlParam(String columnsEng) {
+
+ String sqlParamColumEng = "";
+
+ if (columnsEng.contains(".")) {
+ columnsEng = columnsEng.toLowerCase();
+ String[] nameArr = columnsEng.split("\\.");
+ sqlParamColumEng = makeSqlParam(nameArr);
+ } else if (columnsEng.contains("_")) {
+ columnsEng = columnsEng.toLowerCase();
+ String[] nameArr = columnsEng.split("_");
+ sqlParamColumEng = makeSqlParam(nameArr);
+ } else if (columnsEng.contains("-")) {
+ columnsEng = columnsEng.toLowerCase();
+ String[] nameArr = columnsEng.split("-");
+ sqlParamColumEng = makeSqlParam(nameArr);
+ } else {
+ if (columnsEng.matches("^[A-Z|0-9A-Z]+$")) {
+ sqlParamColumEng = columnsEng.toLowerCase();
+ } else {
+ if (columnsEng.length() > 2) {
+ sqlParamColumEng = columnsEng.substring(0, 2).toLowerCase() + columnsEng.substring(2);
+ } else {
+ sqlParamColumEng = columnsEng.toLowerCase();
+ }
+
+ }
+ }
+
+ return sqlParamColumEng;
+ }
+
+ private static String makeSqlParam(String[] nameArr) {
+
+ String sqlParamColumEng = "";
+ for (int j = 0; j < nameArr.length; j++) {
+ if (j == 0) {
+ sqlParamColumEng += nameArr[j];
+ } else if (nameArr[j].length() > 1) {
+ sqlParamColumEng += nameArr[j].substring(0, 1).toUpperCase() + nameArr[j].substring(1);
+ } else {
+ sqlParamColumEng += nameArr[j].toUpperCase();
+ }
+ }
+ if (sqlParamColumEng.length() > 2) {
+ sqlParamColumEng = sqlParamColumEng.substring(0, 2).toLowerCase() + sqlParamColumEng.substring(2);
+ } else {
+ sqlParamColumEng = sqlParamColumEng.toLowerCase();
+ }
+ return sqlParamColumEng;
+ }
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/FreeMarkerUtil.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/FreeMarkerUtil.java
new file mode 100644
index 0000000..44d4b44
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/FreeMarkerUtil.java
@@ -0,0 +1,103 @@
+package com.azhoucode.util;
+
+import com.azhoucode.entity.BaseEntity;
+import freemarker.template.Configuration;
+import freemarker.template.Template;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.io.*;
+import java.nio.charset.StandardCharsets;
+import java.util.Map;
+
+/**
+ * 1. 用来判断包路径是否存在,若不存在,即创建文件夹;
+ * 2. 将配好的模板文件写出到指定路径下的文件
+ * 3. 从数据库获取表信息
+ */
+@Component
+public class FreeMarkerUtil {
+
+ @Autowired
+ Configuration freeMarker;
+
+ /**
+ * 判断包路径是否存在
+ */
+ private void pathJudgeExist(String path) {
+ File file = new File(path);
+ if (!file.exists()) {
+ file.mkdirs();
+ }
+ }
+
+ /**
+ * 输出到文件
+ */
+ public void printFile(Map app, Template template, String filePath, String fileName) throws Exception {
+
+ pathJudgeExist(filePath);
+ File file = new File(filePath, fileName);
+ if (!file.exists()) {
+ file.createNewFile();
+ }
+ Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file), StandardCharsets.UTF_8));
+ template.process(app, out);
+ out.close();
+ }
+
+ /**
+ * 首字母大写
+ */
+ public String capFirst(String str) {
+ return str.substring(0, 1).toUpperCase() + str.substring(1).toLowerCase();
+ }
+
+ /**
+ * 下划线命名转为驼峰命名
+ */
+ public String underlineToHump(String para) {
+ StringBuilder result = new StringBuilder();
+ String a[] = para.split("_");
+ for (String s : a) {
+ if (result.length() == 0) {
+ result.append(s);
+ } else {
+ result.append(s.substring(0, 1).toUpperCase());
+ result.append(s.substring(1).toLowerCase());
+ }
+ }
+ return result.toString();
+ }
+
+ /**
+ * 获取类名
+ */
+ public String getEntityName(String tableName) {
+ return underlineToHump(capFirst(tableName.toLowerCase()));
+ }
+
+ /**
+ * 获取首字母小写类名
+ */
+ public String getEntityNameLower(String tableName) {
+ return underlineToHump(tableName.toLowerCase());
+ }
+
+ /**
+ * 生成代码
+ */
+ public void generate(Map tempData, String templateName, String saveUrl, String fileName) throws Exception {
+ //获取模板
+ Template template = freeMarker.getTemplate(templateName);
+ //输出文件
+ printFile(tempData, template, saveUrl, fileName);
+ }
+
+ public void generate(BaseEntity baseEntity, String templateName, String saveUrl, String entityName) throws Exception {
+ //获取模板
+ Template template = freeMarker.getTemplate(templateName);
+ //输出文件
+// printFile(root, template, saveUrl, entityName);
+ }
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/JsonUtils.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/JsonUtils.java
new file mode 100644
index 0000000..1537e49
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/JsonUtils.java
@@ -0,0 +1,204 @@
+package com.azhoucode.util;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.serializer.SerializeConfig;
+import com.alibaba.fastjson.serializer.SerializerFeature;
+import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.util.StringUtils;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+public class JsonUtils {
+
+ private final static Logger logger = LoggerFactory.getLogger(JsonUtils.class);
+
+ private static final SerializeConfig config;
+
+ private static final String EMPTY_STRING = "";
+
+ static {
+ config = new SerializeConfig();
+ config.put(Date.class, new SimpleDateFormatSerializer("yyyy-MM-dd HH:mm:ss"));
+ }
+
+ private static final SerializerFeature[] serializerFeatures = {
+ // 输出空置字段
+ SerializerFeature.WriteMapNullValue,
+ // list字段如果为null,输出为[],而不是null
+ SerializerFeature.WriteNullListAsEmpty,
+ // 数值字段如果为null,输出为0,而不是null
+// SerializerFeature.WriteNullNumberAsZero,
+ // Boolean字段如果为null,输出为false,而不是null
+// SerializerFeature.WriteNullBooleanAsFalse,
+ // 字符类型字段如果为null,输出为"",而不是null
+// SerializerFeature.WriteNullStringAsEmpty
+ };
+
+ private JsonUtils() {}
+
+ /**
+ * Object转json字符串输出
+ * @param object bean
+ * @return {@link String}
+ */
+ public static String objectToJson(Object object) {
+ if (object == null) {
+ return EMPTY_STRING;
+ }
+ try {
+ return JSON.toJSONString(object, config, serializerFeatures);
+ } catch (Exception e) {
+ logger.error("JsonUtil | method=objectToJson() | 对象转为Json字符串 Error!", e);
+ return EMPTY_STRING;
+ }
+ }
+
+
+ /**
+ * 转换为Object数组
+ * @param json json字符串
+ * @return {@link java.util.Arrays}
+ */
+ public static Object[] toArray(String json) {
+ if (StringUtils.isEmpty(json)) {
+ return new Object[0];
+ }
+ try {
+ return toArray(json, null);
+ } catch (Exception e) {
+ logger.error("JsonUtil | method=toArray() | 将json格式的数据转换为数组 Object Error!", e);
+ return new Object[0];
+ }
+ }
+
+ /**
+ * 转换为自定泛型的数组
+ * @param json json串
+ * @param clazz {@link Class}
+ * @param 数组泛型
+ * @return object数组
+ */
+ public static Object[] toArray(String json, Class clazz) {
+ if (StringUtils.isEmpty(json)) {
+ return new Object[0];
+ }
+ try {
+ return JSON.parseArray(json, clazz).toArray();
+ } catch (Exception e) {
+ logger.error("JsonUtil | method=toArray() | 将json格式的数据转换为数组 (可指定类型) Error!" + e.getMessage(), e);
+ return new Object[0];
+ }
+ }
+
+ /**
+ * json转为java bean
+ * @param json json串
+ * @param clazz {@link Class}
+ * @param bean泛型
+ * @return T
+ */
+ public static T jsonToObject(String json, Class clazz) {
+ if (StringUtils.isEmpty(json)) {
+ return null;
+ }
+ try {
+ return JSON.parseObject(json, clazz);
+ } catch (Exception e) {
+ logger.error("JsonUtil | method=jsonToObject() | Json 转为 Java Bean Error!" + e.getMessage(), e);
+ return null;
+ }
+ }
+
+
+ public static Map jsonToMap(String json) {
+ if (StringUtils.isEmpty(json)) {
+ return null;
+ }
+ try {
+ return JSON.parseObject(json);
+ } catch (Exception e) {
+ logger.error("JsonUtil | method=jsonToMap() | Json 转为 Map {},{}" + e.getMessage(), e);
+ }
+ return null;
+ }
+
+ public static T jsonToMap(String json, Class clazz) {
+ if (StringUtils.isEmpty(json)) {
+ return null;
+ }
+ try {
+ return JSON.parseObject(json, clazz);
+ } catch (Exception e) {
+ logger.error("JsonUtil | method=jsonToMap() | Json 转为 Map {},{}" + e.getMessage(), e);
+ return null;
+ }
+ }
+
+ /**
+ * json 转 List
+ * @param json json串
+ * @param clazz {@link Class}
+ * @param 集合泛型
+ * @return {@link List}
+ */
+ public static List toList(String json, Class clazz) {
+ if (StringUtils.isEmpty(json)) {
+ return new ArrayList<>();
+ }
+ try {
+ return JSON.parseArray(json, clazz);
+ } catch (Exception e) {
+ logger.error("JsonUtil | method=toList() | Json 转为List发生异常。", e);
+ return new ArrayList<>();
+ }
+ }
+
+ /**
+ * 从json字符串获取指定key的字符串
+ * @param json json串
+ * @param key key
+ * @return key对应的值
+ */
+ public static String getStringFromJson(final String json, final String key) {
+ if (StringUtils.isEmpty(json)) {
+ return EMPTY_STRING;
+ }
+ try {
+ if (StringUtils.isEmpty(json) || StringUtils.isEmpty(key)) {
+ return EMPTY_STRING;
+ }
+ return JSON.parseObject(json).getString(key);
+ } catch (Exception e) {
+ logger.error("JsonUtil | method=getStringFromJson() | 从json获取指定key的字符串 Error!" + e.getMessage(), e);
+ return EMPTY_STRING;
+ }
+ }
+
+ /**
+ * 从json字符串获取指定key的字符串,并转换为指定的类型
+ * @param json json串
+ * @param key 指定key
+ * @param clazz key值
+ * @param 值得泛型
+ * @return T
+ */
+ public static T getValueFromJson(final String json, final String key, Class clazz) {
+ if (StringUtils.isEmpty(json)) {
+ return null;
+ }
+ try {
+ if (StringUtils.isEmpty(json) || StringUtils.isEmpty(key)) {
+ return null;
+ }
+ return JSON.parseObject(json).getObject(key, clazz);
+ } catch (Exception e) {
+ logger.error("JsonUtil | method=getValueFromJson() | 从json获取指定key的字符串 Error!" + e.getMessage(), e);
+ }
+ return null;
+ }
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/RandomUtil.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/RandomUtil.java
new file mode 100644
index 0000000..5a65d44
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/RandomUtil.java
@@ -0,0 +1,12 @@
+package com.azhoucode.util;
+
+
+
+public class RandomUtil {
+
+ public static String getRamdom() {
+ String token = String.valueOf(System.currentTimeMillis()) ;
+ return token;
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/RedisCacheUtils.java b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/RedisCacheUtils.java
new file mode 100644
index 0000000..54fc6df
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/java/com/azhoucode/util/RedisCacheUtils.java
@@ -0,0 +1,645 @@
+package com.azhoucode.util;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import redis.clients.jedis.*;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+public class RedisCacheUtils {
+
+ private static final Logger logger = LoggerFactory.getLogger(RedisCacheUtils.class);
+
+ private static JedisPool jedisPool;
+
+ private RedisCacheUtils() {}
+
+ public static void setPool(JedisPool jedisPool) {
+ RedisCacheUtils.jedisPool = jedisPool;
+ }
+
+ /**
+ * 从redis中取值
+ *
+ * @param key 键
+ * @param clazz 值得类型
+ * @param 值的泛型
+ * @return 返回存入redis的,经过json反序列化后数据
+ */
+ public static T get(String key, Class clazz) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ String value = redis.get(key);
+ return stringToBean(value, clazz);
+ } catch (Exception e) {
+ logger.error("从redis读数据{get}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 从redis中取值
+ *
+ * @param key 键
+ * @return 返回存入redis的,经过json反序列化后数据
+ */
+ public static String get(String key) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ return redis.get(key);
+ } catch (Exception e) {
+ logger.error("从redis读数据{get}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 为key设置value,不过期
+ *
+ * @param key 键
+ * @param 值的泛型
+ * @return 设置成功返回true
+ */
+ public static Boolean set(String key, T value) {
+ return set(key, value, -1);
+ }
+
+ /**
+ * 为key设置value,并指定key的过期时间
+ *
+ * @param key 键
+ * @param 值的泛型
+ * @return 设置成功返回true
+ */
+ public static Boolean set(String key, T value, int expireTimeSeconds) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ String str = beanToString(value);
+ if (str == null) {
+ return false;
+ }
+ if (expireTimeSeconds <= 0) {
+ redis.set(key, str);
+ } else {
+ redis.setex(key, expireTimeSeconds, str);
+ }
+ return true;
+ } catch (Exception e) {
+ logger.error("从redis写数据{set}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 根据key删除value
+ *
+ * @param key 键
+ * @return 删除成功返回true
+ */
+ public static Boolean delete(String key) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ Long del = redis.del(key);
+ return del > 0L;
+ } catch (Exception e) {
+ logger.error("从redis写数据{delete}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 判断redis是否存在key
+ *
+ * @param key 键
+ * @return 存在key返回true
+ */
+ public static boolean exists(String key) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ Boolean exists = redis.exists(key);
+ return exists != null && exists;
+ } catch (Exception e) {
+ logger.error("从redis读数据{exists}操作发生异常", e);
+ return false;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * redis中key自增
+ *
+ * @param key 键
+ * @return 自增后的数据
+ */
+ public static Long incr(String key) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ return redis.incr(key);
+ } catch (Exception e) {
+ logger.error("从redis写数据{incr}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 指定key在多少秒后过期
+ *
+ * @param key 键
+ * @param expireTimeSeconds 过期时间,单位秒
+ */
+ public static void expireAfter(String key, int expireTimeSeconds) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ redis.expire(key, expireTimeSeconds);
+ } catch (Exception e) {
+ logger.error("从redis写数据{expire}操作发生异常", e);
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 获取hash结构中field的属性值
+ *
+ * @param key hash键名
+ * @param field hash字段名
+ * @return hash字段对应的值
+ */
+ public static String hget(String key, String field) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ return redis.hget(key, field);
+ } catch (Exception e) {
+ logger.error("从redis读数据{hget}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 获取hash结构中所有field的属性键值对
+ *
+ * @param key hash键名
+ * @return hash结构
+ */
+ public static void hmset(String key, Map map) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ redis.hmset(key, map);
+ } catch (Exception e) {
+ logger.error("从redis读数据{hgetAll}操作发生异常", e);
+ } finally {
+ release(redis);
+ }
+ }
+
+ public static void hmset(String key, Map map, int expireTimeSeconds) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ redis.hmset(key, map);
+ if (expireTimeSeconds > 0) {
+ expireAfter(key, expireTimeSeconds);
+ }
+ } catch (Exception e) {
+ logger.error("从redis读数据{hgetAll}操作发生异常", e);
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 获取hash结构中所有field的属性键值对
+ *
+ * @param key hash键名
+ * @return hash结构
+ */
+ public static Map hgetAll(String key) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ return redis.hgetAll(key);
+ } catch (Exception e) {
+ logger.error("从redis读数据{hgetAll}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 获取hash结构中field的属性值
+ *
+ * @param key hash键名
+ * @param field hash字段名
+ * @param fieldValue hash字段值
+ */
+ public static void hset(String key, String field, String fieldValue) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ redis.hset(key, field, fieldValue);
+ } catch (Exception e) {
+ logger.error("从redis写数据{hset}操作发生异常", e);
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 获取hash结构中field的属性值
+ *
+ * @param key hash键名
+ * @param field hash字段名
+ * @param fieldValue hash字段值
+ */
+ public static void hset(String key, String field, String fieldValue, int expireTimeSeconds) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ hset(key, field, fieldValue);
+ if (expireTimeSeconds > 0) {
+ expireAfter(key, expireTimeSeconds);
+ }
+ } catch (Exception e) {
+ logger.error("从redis写数据{hset}操作发生异常", e);
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 往redis sortedSet数据结构中存入数据
+ *
+ * @param key key值
+ * @param score key的打分
+ * @param member 值
+ */
+ public static void zadd(String key, double score, String member) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ redis.zadd(key, score, member);
+ } catch (Exception e) {
+ logger.error("从redis写数据{zadd}操作发生异常", e);
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 批量删除
+ *
+ * @param key 健
+ * @param member 指定数据
+ */
+ public static void zremove(String key, String... member) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ redis.zrem(key, member);
+ } catch (Exception e) {
+ logger.error("从redis写数据{zremove}操作发生异常", e);
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 批量删除
+ *
+ * @param key 健
+ * @param start 打分起始
+ * @param end 打分截止
+ * @return 返回被删除的数量
+ */
+ public static Long zremrangeByScore(String key, long start, long end) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ return redis.zremrangeByScore(key, start, end);
+ } catch (Exception e) {
+ logger.error("从redis写数据{zremrangeByScore}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 统计集合中元素的数量
+ *
+ * @param key 键
+ * @return 元素数量
+ */
+ public static Long zcard(String key) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ return redis.zcard(key);
+ } catch (Exception e) {
+ logger.error("从redis读数据{zcard}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 用下标的方式从redis取出数据,并按照打分数据从低到高升序排序
+ *
+ * @param key key
+ * @param start 下标起始
+ * @param end 下标截止
+ * @return 返回 {@link java.util.HashSet}
+ */
+ public static Set zrange(String key, long start, long end) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ return redis.zrange(key, start, end);
+
+ } catch (Exception e) {
+ logger.error("从redis读数据{zrange}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 用下标的方式从redis取出数据,并按照打分数据从高到低降序排序
+ *
+ * @param key key
+ * @param start 下标起始
+ * @param end 下标截止
+ * @return 返回 {@link java.util.HashSet}
+ */
+ public static Set zrevrange(String key, long start, long end) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ return redis.zrevrange(key, start, end);
+ } catch (Exception e) {
+ logger.error("从redis读数据{zrevrange}操作发生异常", e);
+ return null;
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * 往队列左边push数据
+ *
+ * @param key key值
+ * @param value value值
+ * @return 操作成功返回true,否则返回false
+ */
+ public static boolean lpush(String key, String value) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ jedis.lpush(key, value);
+ return true;
+ } catch (Exception e) {
+ logger.error("从redis写数据{lpush}操作发生异常", e);
+ return false;
+ } finally {
+ release(jedis);
+ }
+ }
+
+ /**
+ * 从redis队列右边移除并取出元素
+ *
+ * @param key key值
+ * @param clazz value值得class类型
+ * @param 泛型
+ * @return 返回元素值序列化后的bean
+ */
+ public static T rpop(String key, Class clazz) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ String pop = jedis.rpop(key);
+ return stringToBean(pop, clazz);
+ } catch (Exception e) {
+ logger.error("从redis写数据{rpop}操作发生异常", e);
+ return null;
+ } finally {
+ release(jedis);
+ }
+ }
+
+ /**
+ * 从redis队列中获取元素,并不移除元素
+ *
+ * @param key key值
+ * @param start 起始
+ * @param end 截止
+ * @return {@link ArrayList}
+ */
+ public static List lrange(String key, long start, long end) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ return jedis.lrange(key, start, end);
+ } catch (Exception e) {
+ logger.error("从redis读数据{lrange}操作发生异常", e);
+ return null;
+ } finally {
+ release(jedis);
+ }
+ }
+
+ /**
+ * 列表sorted set中的数据,返回打分数据
+ *
+ * @param key key值
+ * @param start 起始
+ * @param end 截止
+ * @return {@link ArrayList}
+ */
+ public static Set zrangeByScoreWithScores(String key, long start, long end) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ return jedis.zrangeByScoreWithScores(key, start, end);
+ } catch (Exception e) {
+ logger.error("从redis读数据{zrangeByScoreWithScores}操作发生异常", e);
+ return null;
+ } finally {
+ release(jedis);
+ }
+ }
+
+ /**
+ * 按照打分的数据升序排序,返回Tuple对象,包含元素和元素的得分
+ *
+ * @param key key值
+ * @param min 查询的最小打分数
+ * @param max 查询的最大打分数
+ * @param offset 偏移量
+ * @param count 查询总数
+ * @return {@link java.util.HashSet}
+ */
+ public static Set zrangeByScoreWithScores(String key, double min, double max, int offset, int count) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ return jedis.zrangeByScoreWithScores(key, min, max, offset, count);
+ } catch (Exception e) {
+ logger.error("从redis读数据{zrangeByScoreWithScores}操作发生异常", e);
+ return null;
+ } finally {
+ release(jedis);
+ }
+ }
+
+ /**
+ * 按照打分的数据降序排序,返回Tuple对象,包含元素和元素的得分
+ *
+ * @param key key值
+ * @param max 查询的最大打分数
+ * @param min 查询的最小打分数
+ * @param offset 偏移量
+ * @param count 查询总数
+ * @return {@link java.util.HashSet}
+ */
+ public static Set zrevrangeByScoreWithScores(String key, double max, double min, int offset, int count) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ return jedis.zrevrangeByScoreWithScores(key, max, min, offset, count);
+ } catch (Exception e) {
+ logger.error("从redis读数据{zrevrangeByScoreWithScores}操作发生异常", e);
+ return null;
+ } finally {
+ release(jedis);
+ }
+ }
+
+ /**
+ * 按照打分的数据降序排序,返回Tuple对象,包含元素和元素的得分
+ *
+ * @param key key值
+ * @param max 查询的最大打分数
+ * @param min 查询的最小打分数
+ * @return {@link java.util.HashSet}
+ */
+ public static Set zrevrangeByScoreWithScores(String key, double max, double min) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ return jedis.zrevrangeByScoreWithScores(key, max, min);
+ } catch (Exception e) {
+ logger.error("从redis读数据{zrevrangeByScoreWithScores}操作发生异常", e);
+ return null;
+ } finally {
+ release(jedis);
+ }
+ }
+
+ /**
+ * 查询返回符合某一表达式规则的key的列表集合,例如:user:*,返回以user:开头的key的列表
+ *
+ * @param keyPattern 表达式
+ * @return 列表集合
+ */
+ public static List scan(String keyPattern) {
+ Jedis redis = null;
+ try {
+ redis = jedisPool.getResource();
+ ScanParams scanParams = new ScanParams();
+ scanParams.match(keyPattern);
+ scanParams.count(Integer.MAX_VALUE);
+ ScanResult scanResult = redis.scan(ScanParams.SCAN_POINTER_START, scanParams);
+ return scanResult.getResult();
+ } catch (Exception e) {
+ logger.error("从redis读数据{scan}操作发生异常", e);
+ return new ArrayList<>();
+ } finally {
+ release(redis);
+ }
+ }
+
+ /**
+ * java bean转字符串
+ *
+ * @param value 值
+ * @param 泛型
+ * @return json工具序列化
+ */
+ private static String beanToString(T value) {
+ if (value == null) {
+ return null;
+ }
+ Class> clazz = value.getClass();
+ if ((clazz == Integer.TYPE) || (clazz == Integer.class) || (clazz == Long.TYPE) || (clazz == Long.class)) {
+ return String.valueOf(value);
+ } else if (clazz == String.class) {
+ return (String)value;
+ }
+ return JsonUtils.objectToJson(value);
+ }
+
+ /**
+ * 字符串转java bean
+ *
+ * @param value 值
+ * @param clazz 类型
+ * @param 泛型
+ * @return json工具反序列化
+ */
+ @SuppressWarnings("unchecked")
+ private static T stringToBean(String value, Class clazz) {
+ if (value == null || clazz == null) {
+ return null;
+ }
+ if ((clazz == Integer.TYPE) || (clazz == Integer.class)) {
+ return (T)Integer.valueOf(value);
+ }
+ if ((clazz == Long.TYPE) || (clazz == Long.class)) {
+ return (T)Long.valueOf(value);
+ }
+ if (clazz == String.class) {
+ return (T)value;
+ }
+ return JsonUtils.jsonToObject(value, clazz);
+ }
+
+ /**
+ * 释放链接
+ *
+ * @param jedis {@link Jedis}
+ */
+ private static void release(Jedis jedis) {
+ if (jedis != null) {
+ jedis.close();
+ }
+ }
+}
diff --git a/blog-applet-master/azhou-code/src/main/resources/application-dev.yml b/blog-applet-master/azhou-code/src/main/resources/application-dev.yml
new file mode 100644
index 0000000..1ca0372
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/application-dev.yml
@@ -0,0 +1,7 @@
+file-path:
+# project: D:\\shop\\linshou\\server
+# vue: D:\\shop\\linshou\\vue-element-admin
+ project: F:\\zt\\zt-workspace\\server
+ vue: F:\\zt\vue\\vue-admin\\vue-element-admin
+
+
diff --git a/blog-applet-master/azhou-code/src/main/resources/application-prd.yml b/blog-applet-master/azhou-code/src/main/resources/application-prd.yml
new file mode 100644
index 0000000..c18d8a5
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/application-prd.yml
@@ -0,0 +1,4 @@
+file-path:
+ project: F:\\zt\\zt-workspace\\server
+
+
diff --git a/blog-applet-master/azhou-code/src/main/resources/application.yml b/blog-applet-master/azhou-code/src/main/resources/application.yml
new file mode 100644
index 0000000..6c33384
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/application.yml
@@ -0,0 +1,38 @@
+server:
+ port: 8888
+spring:
+ redis:
+ port: 6379
+ host: 127.0.0.1
+ password:
+ maxActive: 300
+ database: 0
+ timeout: 2000
+ maxIdle: 200
+ maxWait: 3000
+ minIdle: 50
+ profiles:
+ active: dev
+ freemarker:
+ settings:
+ classic_compatible: true
+base-path: ${file-path.project}\\src\\main\\java\\com\\server\\api
+dao: ${base-path}\\dao
+dto: ${base-path}\\dto
+service: ${base-path}\\service
+serviceImpl: ${base-path}\\service\\impl
+controller: ${base-path}\\controller
+entity: ${base-path}\\entity
+application: ${file-path.project}\\src\\main\\resources
+xml: ${file-path.project}\\src\\main\\resources\\dao
+config: ${base-path}\\common\\config
+util: ${base-path}\\common\\util
+vueTable: ${file-path.vue}\\src\\views\\%s
+vueTableApi: ${file-path.vue}\\src\\api\\%s
+vueRouter: ${file-path.vue}\\src\\router
+vueCommonTable: F:\\zt\\temp\\exam\\src\\views
+vueCommonRouterPath: F:\\zt\\temp\\exam\\src\\router
+vueCommonSidebarPath: F:\\zt\\temp\\exam\\src\\components
+vueTable2: F:\\zt\\vue\\vue-admin\\vue-next-admin\src\\views\\%s
+vueTableApi2: F:\\zt\\vue\\vue-admin\\vue-next-admin\\src\\api\\%s
+vueRouter3: F:\\zt\\vue\\vue-admin\\vue-next-admin\\public
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/Sidebar.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/Sidebar.ftl
new file mode 100644
index 0000000..ea730ee
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/Sidebar.ftl
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/admin.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/admin.ftl
new file mode 100644
index 0000000..82eaf7b
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/admin.ftl
@@ -0,0 +1,45 @@
+{
+ "code": 0,
+ "data": [
+ {
+ "path": "/home",
+ "name": "home",
+ "component": "home",
+ "meta": {
+ "title": "message.router.home",
+ "isLink": "",
+ "isHide": false,
+ "isKeepAlive": true,
+ "isAffix": true,
+ "isIframe": false,
+ "roles": [
+ "admin",
+ "common"
+ ],
+ "icon": "iconfont icon-shouye"
+ }
+ },
+ <#if routerParams??>
+ <#list routerParams as col>
+ {
+ "path": "/${col["routerName"]}",
+ "name": "${col["chinaName"]}",
+ "component": "${col["routerName"]}",
+ "meta": {
+ "title": "${col["chinaName"]}",
+ "isLink": "",
+ "isHide": false,
+ "isKeepAlive": true,
+ "isAffix": false,
+ "isIframe": false,
+ "roles": [
+ "admin",
+ "common"
+ ],
+ "icon": "iconfont icon-gongju"
+ }
+ },
+ #list>
+ #if>
+ ]
+}
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/api.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/api.ftl
new file mode 100644
index 0000000..99aeaaf
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/api.ftl
@@ -0,0 +1,43 @@
+import request from '@/utils/request'
+const moduleUrl = "/${unClassName}"
+
+/** 分页 */
+export function page(data) {
+ return request({
+ url: moduleUrl + '/page',
+ method: 'post',
+ data
+ })
+}
+
+/** 添加或修改 */
+export function saveData(data) {
+ return request({
+ url: moduleUrl + "/save/update",
+ method: 'post',
+ data
+ })
+}
+
+/** 根据主键ID批量删除 */
+export function batchDelete(data){
+ return request({
+ url: moduleUrl + "/remove",
+ method: 'post',
+ data
+ })
+}
+
+<#if selectEntities??>
+ <#list selectEntities as col>
+export function get${col['className']}SelectData(){
+ return request({
+ url: moduleUrl + "/get${col['className']}Data",
+ method: 'get'
+ })
+}
+ #list>
+#if>
+
+
+
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/application.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/application.ftl
new file mode 100644
index 0000000..fb5bc98
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/application.ftl
@@ -0,0 +1,70 @@
+server:
+ port: ${port?c}
+spring:
+ <#if hasEmail>
+ mail:
+ host: smtp.qq.com #发送邮件服务器
+ username: 1192704429@qq.com #QQ邮箱
+ password: dbzczkrkwfblfjfe #客户端授权码
+ protocol: smtp #发送邮件协议
+ properties.mail.smtp.auth: true
+ properties.mail.smtp.port: 465 #端口号465或587
+ properties.mail.display.sendmail: Javen #可以任意
+ properties.mail.display.sendname: Spring Boot Guide Email #可以任意
+ properties.mail.smtp.starttls.enable: true
+ properties.mail.smtp.starttls.required: true
+ properties.mail.smtp.ssl.enable: true
+ default-encoding: utf-8
+ from: 1192704429@qq.com #与上面的username保持一致
+ #if>
+ datasource:
+ username: ${username?default("root")}
+ password: ${password?default("root")}
+ url: jdbc:mysql://${ip?default("127.0.0.1")}:${dbPort?default("3306")}/${dbName?default("example")}?characterEncoding=UTF-8&useUnicode=true&useOldAliasMetadataBehavior=true&useSSL=false&serverTimezone=GMT%2B8
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ type: com.alibaba.druid.pool.DruidDataSource
+ <#if hasRedis>
+ redis:
+ database: 0
+ password: ${redisPassWord?default("")}
+ port: ${redisPort?default("6379")}
+ host: ${redisIp?default("127.0.0.1")}
+ # 连接超时时间
+ timeout: 500000
+ lettuce:
+ pool:
+ # 连接池最大连接数(使用负值表示没有限制)
+ max-active: 8
+ # 连接池中的最小空闲连接
+ min-idle: 2
+ # 连接池中的最大空闲连接
+ max-idle: 8
+ # 连接池最大阻塞等待时间(使用负值表示没有限制)
+ max-wait: -1
+ #在关闭客户端连接之前等待任务处理完成的最长时间,在这之后,无论任务是否执行完成,都会被执行器关闭,默认100ms
+ shutdown-timeout: 100
+ #if>
+mybatis-plus:
+ #sql语句Xml扫描
+ mapper-locations: classpath:/dao/**/*.xml
+ #实体扫描,多个package用逗号或者分号分隔
+ typeAliasesPackage: com.server.api.entity
+ global-config:
+ #数据库相关配置
+ db-config:
+ #主键类型 AUTO:"数据库ID自增",INPUT:"用户输入ID",ID_WORKER:"全局唯一ID (数字类型唯一ID)",UUID:"全局唯一ID UUID";
+ id-type: AUTO
+ banner: false
+ #原生配置
+ configuration:
+ map-underscore-to-camel-case: true
+ cache-enabled: false
+ call-setters-on-nulls: true
+ jdbc-type-for-null: 'null'
+ log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+<#if hasUploadImg>
+#图片上传文件夹地址
+imgRealUrl: ${uploadUrl?if_exists}
+imgHost: http://localhost:8092
+#if>
+
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/controller.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/controller.ftl
new file mode 100644
index 0000000..96747b7
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/controller.ftl
@@ -0,0 +1,94 @@
+package com.server.api.controller;
+
+import com.server.api.common.BaseController;
+import com.server.api.common.ReturnMsg;
+import com.server.api.dto.${className}DTO;
+import com.server.api.service.${className}Service;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import java.io.IOException;
+import org.springframework.beans.factory.annotation.Autowired;
+import java.util.ArrayList;
+import java.util.List;
+<#if selectEntities??>
+import com.server.api.common.BaseSelectEntity;
+import cn.hutool.core.collection.CollectionUtil;
+ <#list selectEntities as selectCol>
+import com.server.api.dto.${selectCol['className']}DTO;
+import com.server.api.service.${selectCol['className']}Service;
+ #list>
+#if>
+
+/**
+* @Description: ${tableComment}对外接口层
+* @Author: wuming
+*/
+@RestController
+@RequestMapping("/${unClassName}")
+public class ${className}Controller extends BaseController<${className}Service, ${className}DTO> {
+
+ @Override
+ @Resource(name = "${unClassName}Service")
+ protected void setBaseService(${className}Service ${unClassName}Service) {
+ this.baseService = ${unClassName}Service;
+ }
+ <#if selectEntities??>
+ <#list selectEntities as selectCol>
+ @Autowired
+ private ${selectCol['className']}Service ${selectCol['unClassName']}Service;
+ #list>
+ #if>
+ <#if hasUpload>
+ /**
+ * 图片上传文件夹名称
+ */
+ private final String realPath = "/${unClassName}";
+
+ /**
+ * 图片上传
+ *
+ * @param filename
+ * @param id 需要修改的数据主键id
+ * @return
+ * @throws IOException
+ */
+ @PostMapping("/upload/{id}")
+ public ReturnMsg upload(@RequestParam("file") MultipartFile filename, @PathVariable("id") Long id) throws IOException {
+ return this.baseUpLoad(filename, id, realPath, ${className}DTO.class) ? ReturnMsg.ok() : ReturnMsg.error();
+ }
+ #if>
+
+ /**
+ * 默认分页查询
+ * @param ${unClassName}DTO
+ * @return
+ * @throws IOException
+ */
+ @PostMapping("/page")
+ public ReturnMsg page(@RequestBody ${className}DTO ${unClassName}DTO) {
+ return ReturnMsg.ok(baseService.basePage(${unClassName}DTO));
+ }
+
+
+<#if selectEntities??>
+ <#list selectEntities as selectCol>
+ @GetMapping("/get${selectCol['className']}Data")
+ public ReturnMsg get${selectCol['className']}Data(){
+ List<${selectCol['className']}DTO> dataList = ${selectCol['unClassName']}Service.list();
+ List selectEntities = new ArrayList<>();
+ if(CollectionUtil.isNotEmpty(dataList)){
+ dataList.forEach(item -> {
+ BaseSelectEntity baseSelectEntity = new BaseSelectEntity();
+ baseSelectEntity.setKey(item.get${selectCol['valueCol']}());
+ baseSelectEntity.setValue(item.get${selectCol['nameCol']}());
+ selectEntities.add(baseSelectEntity);
+ });
+ }
+ return ReturnMsg.ok(selectEntities);
+ }
+ #list>
+#if>
+}
+
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/dao.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/dao.ftl
new file mode 100644
index 0000000..8a564de
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/dao.ftl
@@ -0,0 +1,12 @@
+package com.server.api.dao;
+
+import com.server.api.common.BaseDao;
+import com.server.api.dto.${className}DTO;
+
+/**
+* @Description: ${tableComment}数据库访问持久层
+* @Author: wuming
+*/
+public interface ${className}Dao extends BaseDao<${className}DTO> {
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/dto.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/dto.ftl
new file mode 100644
index 0000000..69b227e
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/dto.ftl
@@ -0,0 +1,31 @@
+package com.server.api.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.server.api.entity.${className};
+import lombok.Data;
+import lombok.ToString;
+
+/**
+* @Description: ${tableComment}传输层
+* @Author: wuming
+*/
+@Data
+@ToString
+@TableName("${tableName}")
+public class ${className}DTO extends ${className} {
+<#--循环生成变量-->
+<#if showColList??>
+<#list showSonTableColList as col>
+ <#if col["propertyName"] != "id">
+
+ /**
+ * ${col["propertyChinaName"]}
+ */
+ @TableField(exist = false)
+ private ${col["propertyType"]} ${col["propertyName"]};
+
+ #if>
+#list>
+#if>
+}
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/entity.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/entity.ftl
new file mode 100644
index 0000000..43cdb0c
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/entity.ftl
@@ -0,0 +1,37 @@
+package com.server.api.entity;
+
+import com.server.api.common.BaseEntity;
+import java.util.Date;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+/**
+* @Description: ${tableComment} 实体类
+* @Author: wuming
+*/
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@ToString
+public class ${className} extends BaseEntity {
+
+<#if showColList??>
+ <#--循环生成变量-->
+ <#list showColList as col>
+ <#if col["propertyName"] != "id">
+ /**
+ * ${col["propertyChinaName"]}
+ */
+ <#if col["propertyType"]=="Date">
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ #if>
+ private ${col["propertyType"]} ${col["propertyName"]};
+
+#if>
+ #list>
+#if>
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/loginController.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/loginController.ftl
new file mode 100644
index 0000000..3451214
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/loginController.ftl
@@ -0,0 +1,65 @@
+package com.server.api.controller;
+
+import cn.hutool.core.lang.Assert;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.server.api.common.ReturnMsg;
+import com.server.api.common.constants.BaseConstant;
+import com.server.api.dto.${className}DTO;
+import com.server.api.service.${className}Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @description: 后台登录
+ * @author: wuming
+ **/
+@RestController
+@RequestMapping("/login")
+public class LoginController {
+
+ @Autowired
+ private ${className}Service ${unClassName}Service;
+
+ @PostMapping()
+ public ReturnMsg login(@RequestBody ${className}DTO ${unClassName}DTO) {
+ Assert.isTrue(StrUtil.isNotEmpty(${unClassName}DTO.get${userNameCol}())
+ && StrUtil.isNotEmpty(${unClassName}DTO.get${passWordCol}()), "账号或密码不能为空!");
+ LambdaQueryWrapper<${className}DTO> queryWrapper = Wrappers.lambdaQuery();
+ queryWrapper.eq(${className}DTO::get${userNameCol},${unClassName}DTO.get${userNameCol}()).
+ eq(${className}DTO::get${passWordCol},${unClassName}DTO.get${passWordCol}()).last(BaseConstant.LIMIT_ONE);
+ ${className}DTO loginUser = ${unClassName}Service.getOne(queryWrapper);
+ Assert.notNull(loginUser,"账号或密码错误!");
+ return ReturnMsg.ok(loginUser);
+ }
+
+ @GetMapping("/{id}")
+ public ReturnMsg getUserInfo(@PathVariable("id") Long id) {
+ List roles = new ArrayList<>();
+ Map map = new HashMap<>();
+ roles.add("admin");
+ map.put("roles", roles);
+ map.put("introduction", "打工人...");
+ <#if !hasUserInfo>
+ map.put("name", "admin");
+ map.put("avatar", "http://www.elitetest.cn/img/logo.png");
+ <#else>
+ ${className}DTO userInfo = ${unClassName}Service.getById(id);
+ map.put("name", userInfo.get${nickNameCol}());
+ map.put("avatar", StrUtil.isNotEmpty(userInfo.get${headImgCol}()) ? userInfo.get${headImgCol}() : "http://www.elitetest.cn/img/logo.png");
+ #if>
+ return ReturnMsg.ok(map);
+ }
+
+ @DeleteMapping()
+ public ReturnMsg logOut() {
+ return ReturnMsg.ok();
+ }
+
+}
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/mailUtil.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/mailUtil.ftl
new file mode 100644
index 0000000..ae284c2
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/mailUtil.ftl
@@ -0,0 +1,32 @@
+<#noparse>package com.server.api.common.util;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.mail.SimpleMailMessage;
+import org.springframework.mail.javamail.JavaMailSender;
+import org.springframework.stereotype.Component;
+
+/**
+* @Description: 简单邮件发送帮助类
+* @Author: wuming
+*/
+@Component
+public class MailUtil {
+
+ @Value("${spring.mail.from}")
+ private String from;
+
+ @Autowired
+ private JavaMailSender mailSender;
+
+ public void sendSimpleMail(String to, String subject, String content) {
+ SimpleMailMessage message = new SimpleMailMessage();
+ message.setFrom(from);
+ message.setTo(to);
+ message.setSubject(subject);
+ message.setText(content);
+ mailSender.send(message);
+ }
+
+}
+#noparse>
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/pom.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/pom.ftl
new file mode 100644
index 0000000..312713a
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/pom.ftl
@@ -0,0 +1,116 @@
+
+
+ 4.0.0
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.2.6.RELEASE
+
+
+ com.server
+ server
+ 1.0.0
+ server
+ JAVA服务端应用
+
+ 1.8
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+ com.alibaba
+ druid-spring-boot-starter
+ 1.1.24
+
+
+
+ mysql
+ mysql-connector-java
+ 8.0.11
+
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+ 3.4.3
+
+
+
+ org.apache.httpcomponents
+ httpclient
+
+
+
+ org.projectlombok
+ lombok
+ 1.18.12
+
+
+
+ commons-io
+ commons-io
+ 2.4
+
+
+
+ cn.hutool
+ hutool-all
+ 5.7.2
+
+
+
+ com.alibaba
+ fastjson
+ 1.2.47
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+ <#if hasEmail>
+
+
+ org.springframework.boot
+ spring-boot-starter-mail
+
+ #if>
+ <#if hasRedis>
+
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+
+
+ org.apache.commons
+ commons-pool2
+ 2.7.0
+
+ #if>
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
+
diff --git a/blog-applet-master/azhou-code/src/main/resources/templates/redisConfig.ftl b/blog-applet-master/azhou-code/src/main/resources/templates/redisConfig.ftl
new file mode 100644
index 0000000..6edecf4
--- /dev/null
+++ b/blog-applet-master/azhou-code/src/main/resources/templates/redisConfig.ftl
@@ -0,0 +1,112 @@
+<#noparse>package com.server.api.common.config;
+
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.PropertyAccessor;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.jsontype.impl.LaissezFaireSubTypeValidator;
+import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.cache.annotation.EnableCaching;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.connection.RedisPassword;
+import org.springframework.data.redis.connection.RedisStandaloneConfiguration;
+import org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration;
+import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
+import org.springframework.data.redis.connection.lettuce.LettucePoolingClientConfiguration;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
+import org.springframework.data.redis.serializer.StringRedisSerializer;
+
+import java.time.Duration;
+
+/**
+* @Description: redis配置类
+* @Author: wuming
+*/
+@Configuration
+@EnableCaching
+public class RedisConfig {
+
+ @Value("${spring.redis.database}")
+ private int database;
+
+ @Value("${spring.redis.host}")
+ private String host;
+
+ @Value("${spring.redis.password}")
+ private String password;
+
+ @Value("${spring.redis.port}")
+ private int port;
+
+ @Value("${spring.redis.timeout}")
+ private long timeout;
+
+ @Value("${spring.redis.lettuce.shutdown-timeout}")
+ private long shutDownTimeout;
+
+ @Value("${spring.redis.lettuce.pool.max-idle}")
+ private int maxIdle;
+
+ @Value("${spring.redis.lettuce.pool.min-idle}")
+ private int minIdle;
+
+ @Value("${spring.redis.lettuce.pool.max-active}")
+ private int maxActive;
+
+ @Value("${spring.redis.lettuce.pool.max-wait}")
+ private long maxWait;
+
+ Jackson2JsonRedisSerializer