diff --git a/README.adoc b/README.adoc index a272dcb..0d53183 100644 --- a/README.adoc +++ b/README.adoc @@ -56,6 +56,23 @@ link:src/main/asciidoc/_chapter/docker-manual.adoc[Docker 使用手册] image::show1.png[] image::show2.png[] + +=== 合作项目 + +==== iOS 前端Swift一键使用 + +image::https://raw.githubusercontent.com/birdmichael/app-version-swift/master/show.png[] + +* 一键配置 +* 全截面自定义 +* 自动版本比较 +* 自动限制最低版本 +* 自动维护每次弹出,弹出一次逻辑 +* 配置文本框最大高度(默认不可滚动,不显示滚动条) + +项目地址:https://github.com/birdmichael/app-version-swift + + === 答疑帮助 * 链接地址对的,但是请求返回 <没有权限访问该地址,请先登录> 提示信息? @@ -68,6 +85,10 @@ image::show2.png[] 3、数据库表没有成功初始化 +* OSS 跨域问题 + +https://help.aliyun.com/video_detail/39695.html?spm=5176.10695662.1996646101.searchclickresult.791c4a496p15UY + NOTE: 有时候邮件回复的不是那么及时,推荐微信。 微信: zoeminghong (备注:APP 管理系统) diff --git a/README.md b/README.md new file mode 100644 index 0000000..22517c1 --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# responsity +responsity diff --git a/modules/app-version-common/pom.xml b/modules/app-version-common/pom.xml index 8dbf9cc..9d80bd0 100644 --- a/modules/app-version-common/pom.xml +++ b/modules/app-version-common/pom.xml @@ -3,57 +3,266 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 + com.tairanchina.csp.avm + app-version-common + app-version-common + 1.0.0-RC-SNAPSHOT + jar + app-version-common - com.tairanchina.csp.avm - app-version - 1.1.0-RC - ../../pom.xml + com.tairanchina.csp.avm + app-version + 1.0.0-RC-SNAPSHOT + ../../pom.xml - app-version-common - jar - false - false + 2.6 + 2.8.0 + 2.0.2 + + 18.0 + 5.0.6 + + + + 1.0.2 + 0.10.5 + app + + + commons-lang + commons-lang + + + com.baomidou + mybatisplus-spring-boot-starter + ${mybatisplus.spring.boot.starter.version} + + + mysql + mysql-connector-java + 6.0.6 + + + org.apache.commons + commons-lang3 + 3.4 + + + com.alibaba + fastjson + 1.2.47 + + + io.jsonwebtoken + jjwt-api + ${jsonwebtoken.jjwt.version} + + + io.jsonwebtoken + jjwt-impl + ${jsonwebtoken.jjwt.version} + + + io.jsonwebtoken + jjwt-jackson + ${jsonwebtoken.jjwt.version} + + + org.apache.poi + poi + 3.12 + + + + eu.bitwalker + UserAgentUtils + 1.21 + + + + + + + + com.tairanchina.csp.dew + boot-starter + 1.5.0-RC + + + + org.springframework.boot + spring-boot-starter-tomcat + + + + + com.tairanchina.csp.dew + cluster-spi-redis + 1.5.0-RC + + + + io.springfox + springfox-swagger2 + ${swagger2.version} + + + io.springfox + springfox-swagger-ui + ${swagger2.version} + + + + + com.github.xiaoymin + knife4j-spring-ui + ${knife4j.version} + + + + + + + + + + + + com.google.guava + guava + ${guava.version} + + + cn.hutool + hutool-all + ${hutool.version} + + + + com.h2database + h2 + + + + org.hibernate + hibernate-validator + 6.1.0.Final + + + org.glassfish + javax.el + 3.0.1-b11 + + + org.hibernate + hibernate-validator-cdi + 6.1.0.Final + + + junit + junit + test + + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-tomcat + + + + + org.springframework.boot + spring-boot-starter-test + + + org.springframework + spring-webmvc + + + org.springframework.boot + spring-boot-starter-jdbc + + + + org.aspectj + aspectjrt + org.aspectj aspectjweaver - - com.tairanchina.csp.dew - boot-starter + cglib + cglib + 2.1 - com.tairanchina.csp.dew - cluster-spi-redis + org.springframework.boot + spring-boot-starter-aop - commons-lang - commons-lang + org.freemarker + freemarker - + org.springframework.boot - spring-boot-starter-jdbc + spring-boot-configuration-processor + true + + + + + + org.springframework.boot + spring-boot-starter-websocket + + + + + org.springframework.boot + spring-boot-starter-data-redis + + + - com.h2database - h2 + org.springframework.boot + spring-boot-starter-freemarker + + - com.baomidou - mybatisplus-spring-boot-starter + javax.servlet + javax.servlet-api + 4.0.1 + provided + + + junit junit - test + + + + + \ No newline at end of file diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/constants/ServiceResultConstants.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/constants/ServiceResultConstants.java index df59c5f..562b45e 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/constants/ServiceResultConstants.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/constants/ServiceResultConstants.java @@ -17,8 +17,12 @@ public class ServiceResultConstants { public static final ServiceResult RESOURCE_NOT_BELONG_APP = ServiceResult.failed(1005, "所操作的资源不属于该应用"); public static final ServiceResult USER_NOT_FOUND = ServiceResult.failed(1006, "找不到该用户"); public static final ServiceResult WRONG_PHONE_PASSWORD = ServiceResult.failed(1007, "手机号或者密码错误"); + public static final ServiceResult WRONG_USER_DISABLE = ServiceResult.failed(1007, "用户被禁用"); + public static final ServiceResult WRONG_USER_DEL = ServiceResult.failed(1007, "用户已删除"); + public static final ServiceResult JWT_ERROR = ServiceResult.failed(1008, "令牌不合法,请重新登录"); + /** * 注册错误 */ @@ -60,6 +64,7 @@ public class ServiceResultConstants { public static final ServiceResult CUSTOM_API_NOT_EXISTS = ServiceResult.failed(20019, "该自定义接口不存在"); public static final ServiceResult OPERATION_LOG_NOT_EXISTS = ServiceResult.failed(20020, "该操作记录不存在"); public static final ServiceResult APK_EXISTS = ServiceResult.failed(20021, "APK包已经存在"); + public static final ServiceResult APK_EXISTS_WITH_CHANNEL = ServiceResult.failed(20221, "APK包已经关联渠道码"); public static final ServiceResult WHITE_LIST_BATCH_EXISTS = ServiceResult.failed(20022, "该白名单组的名称已存在"); public static final ServiceResult WHITE_LIST_BATCH_ERROR = ServiceResult.failed(20023, "白名单组对应的名称存在多个"); public static final ServiceResult WHITE_LIST_NOT_EXISITS = ServiceResult.failed(20024, "白名单(组)不存在"); @@ -86,6 +91,7 @@ public class ServiceResultConstants { */ public static final ServiceResult PLATFORM_ERROR = ServiceResult.failed(30001, "请指定查询的版本iOS还是Andorid版本"); public static final ServiceResult NO_NEW_VERSION = ServiceResult.failed(30002, "查询不到新版本或者新版本未上架,没有更新的版本"); + public static final ServiceResult NO_EXISTS_VERSION = ServiceResult.failed(30009, "版本号不存在"); public static final ServiceResult CHANNEL_STATUS_2 = ServiceResult.failed(30003, "当前渠道已经被废弃,请联系管理员"); public static final ServiceResult CHANNEL_STATUS_3 = ServiceResult.failed(30004, "当前渠道已经被停用,请联系管理员"); public static final ServiceResult APK_NOT_EXISTS_EXT = ServiceResult.failed(30005, "该渠道还没有上传APK包,请联系管理员"); diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/JWTSubject.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/JWTSubject.java index ef0c39f..bfb3fa6 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/JWTSubject.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/JWTSubject.java @@ -1,6 +1,7 @@ package com.tairanchina.csp.avm.dto; -import com.ecfront.dew.common.$; + +import cn.hutool.json.JSONUtil; /** * Created by hzlizx on 2019/2/21 @@ -19,6 +20,6 @@ public void setUserId(String userId) { @Override public String toString() { - return $.json.toJsonString(this); + return JSONUtil.toJsonStr(this); } } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/ServiceResult.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/ServiceResult.java index 91b2501..f7d2079 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/ServiceResult.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/ServiceResult.java @@ -1,6 +1,8 @@ package com.tairanchina.csp.avm.dto; -import com.ecfront.dew.common.$; +//import com.ecfront.dew.common.$; + +import cn.hutool.json.JSONUtil; /** * Service返回 @@ -14,18 +16,18 @@ public class ServiceResult { * data 需要封装往前台传的对象 */ private int code; - private String message; - private Object data; + private String info; + private Object record; - public ServiceResult(int code, String message, Object data) { + public ServiceResult(int code, String info, Object record) { this.code = code; - this.message = message; - this.data = data; + this.info = info; + this.record = record; } - public ServiceResult(int code, String message) { + public ServiceResult(int code, String info) { this.code = code; - this.message = message; + this.info = info; } public int getCode() { @@ -37,27 +39,31 @@ public ServiceResult setCode(int code) { return this; } - public String getMessage() { - return message; + public String getInfo() { + return info; } - public ServiceResult setMessage(String message) { - this.message = message; + public ServiceResult setInfo(String info) { + this.info = info; return this; } - public Object getData() { - return data; + public Object getRecord() { + return record; } - public ServiceResult setData(Object data) { - this.data = data; + public ServiceResult setRecord(Object record) { + this.record = record; return this; } - public static ServiceResult ok(Object data) { + public static ServiceResult ok() { + ServiceResult serviceResult = new ServiceResult(200, "请求成功"); + return serviceResult; + } + public static ServiceResult ok(Object record) { ServiceResult serviceResult = new ServiceResult(200, "请求成功"); - serviceResult.setData(data); + serviceResult.setRecord(record); return serviceResult; } @@ -65,11 +71,15 @@ public static ServiceResult failed(int code, String message) { ServiceResult serviceResult = new ServiceResult(code, message); return serviceResult; } + public static ServiceResult failed() { + ServiceResult serviceResult = new ServiceResult(-1, "请求失败"); + return serviceResult; + } @Override public String toString() { - return $.json.toJsonString(this); + return JSONUtil.toJsonStr(this); } } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UploadFileEntity.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UploadFileEntity.java index 4ecc9f9..81e5936 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UploadFileEntity.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UploadFileEntity.java @@ -8,9 +8,23 @@ public class UploadFileEntity { private String fileName; private String channel; private Integer versionId; + + private String apkName; private String ossUrl; + private String downloadUrl; + private String downloadApkUrl; + private String downloadFileName; + private String md5; + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + public String getChannel() { return channel; } @@ -27,6 +41,14 @@ public void setVersionId(Integer versionId) { this.versionId = versionId; } + public String getApkName() { + return apkName; + } + + public void setApkName(String apkName) { + this.apkName = apkName; + } + public String getOssUrl() { return ossUrl; } @@ -35,19 +57,35 @@ public void setOssUrl(String ossUrl) { this.ossUrl = ossUrl; } - public String getMd5() { - return md5; + public String getDownloadUrl() { + return downloadUrl; } - public void setMd5(String md5) { - this.md5 = md5; + public void setDownloadUrl(String downloadUrl) { + this.downloadUrl = downloadUrl; } - public String getFileName() { - return fileName; + public String getDownloadApkUrl() { + return downloadApkUrl; } - public void setFileName(String fileName) { - this.fileName = fileName; + public void setDownloadApkUrl(String downloadApkUrl) { + this.downloadApkUrl = downloadApkUrl; + } + + public String getDownloadFileName() { + return downloadFileName; + } + + public void setDownloadFileName(String downloadFileName) { + this.downloadFileName = downloadFileName; + } + + public String getMd5() { + return md5; + } + + public void setMd5(String md5) { + this.md5 = md5; } } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UserDTO.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UserDTO.java new file mode 100644 index 0000000..64a8303 --- /dev/null +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UserDTO.java @@ -0,0 +1,85 @@ +package com.tairanchina.csp.avm.dto; + +import io.swagger.annotations.ApiModelProperty; + +import java.util.Date; + +/** + * Created by hzlizx on 2019/2/21 + */ +public class UserDTO { + + private String userId; + private String phone; + private String username; + private String password; + private String nickName; + private Date firstLoginTime; + private Integer isAdmin; + private Integer delFlag; //-1:删除, 0:启用,1:禁用 + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getNickName() { + return nickName; + } + + public void setNickName(String nickName) { + this.nickName = nickName; + } + + public Date getFirstLoginTime() { + return firstLoginTime; + } + + public void setFirstLoginTime(Date firstLoginTime) { + this.firstLoginTime = firstLoginTime; + } + + public Integer getIsAdmin() { + return isAdmin; + } + + public void setIsAdmin(Integer isAdmin) { + this.isAdmin = isAdmin; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public Integer getDelFlag() { + return delFlag; + } + + public void setDelFlag(Integer delFlag) { + this.delFlag = delFlag; + } + +} diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UserLoginStatus.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UserLoginStatus.java index 31d8a93..958e5b4 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UserLoginStatus.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/dto/UserLoginStatus.java @@ -1,6 +1,6 @@ package com.tairanchina.csp.avm.dto; -import com.ecfront.dew.common.$; +import cn.hutool.json.JSONUtil; /** * Created by hzlizx on 2019/2/21 @@ -46,6 +46,6 @@ public void setPhone(String phone) { @Override public String toString() { - return $.json.toJsonString(this); + return JSONUtil.toJsonStr(this); } } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/AndroidVersion.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/AndroidVersion.java index 0d127e1..1e9c84a 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/AndroidVersion.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/AndroidVersion.java @@ -104,4 +104,78 @@ public Integer getDelFlag() { public void setDelFlag(Integer delFlag) { this.delFlag = delFlag; } + + + /** + [ + { + label: '不更新', + value: -1 + }, + { + label: '强制更新', + value: 0 + }, + { + label: '一般更新', + value: 1 + }, + { + label: '静默更新', + value: 2 + }, + { + label: '可忽略更新', + value: 3 + }, + { + label: '静默可忽略更新', + value: 4 + } + **/ + public enum UpdateType { + UPDATETYPE_NO(-1, "不更新"), + UPDATETYPE_FORCE_UPDATE(0, "强制更新"), + UPDATETYPE_GENERAL_UPDATE(1, "一般更新"), + UPDATETYPE_SILENT_UPDATE(2, "静默更新"), + UPDATETYPE_NEGLIGIBLE_UPDATES(3, "可忽略更新"), + UPDATETYPE_SILENT_IGNORE_UPDATES(4, "静默可忽略更新"); + + + private Integer code; + private String info; + + private UpdateType(Integer code, String info) { + this.code = code; + this.info = info; + } + + public Integer code() { + return code; + } + + public String info() { + return info; + } + + public static UpdateType codeOf(Integer code) { + switch (code) { + case -1: + return UpdateType.UPDATETYPE_NO; + case 0: + return UpdateType.UPDATETYPE_FORCE_UPDATE; + case 1: + return UpdateType.UPDATETYPE_GENERAL_UPDATE; + case 2: + return UpdateType.UPDATETYPE_SILENT_UPDATE; + case 3: + return UpdateType.UPDATETYPE_NEGLIGIBLE_UPDATES; + case 4: + return UpdateType.UPDATETYPE_SILENT_IGNORE_UPDATES; + default: + return UpdateType.UPDATETYPE_NO; + } + } + } + } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/Apk.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/Apk.java index d32f3ec..ab95843 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/Apk.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/Apk.java @@ -9,7 +9,12 @@ public class Apk extends BasicEntity{ private Integer channelId; private Integer appId; private Integer versionId; + private String apkName; + private String ossUrl; + private String downloadUrl; + private String downloadApkUrl; + private String md5; private Integer deliveryStatus; private Integer delFlag; @@ -46,6 +51,14 @@ public void setVersionId(Integer versionId) { this.versionId = versionId; } + public String getApkName() { + return apkName; + } + + public void setApkName(String apkName) { + this.apkName = apkName; + } + public String getOssUrl() { return ossUrl; } @@ -54,21 +67,21 @@ public void setOssUrl(String ossUrl) { this.ossUrl = ossUrl; } - public Integer getDeliveryStatus() { - return deliveryStatus; + public String getDownloadUrl() { + return downloadUrl; } - public void setDeliveryStatus(Integer deliveryStatus) { - this.deliveryStatus = deliveryStatus; + public void setDownloadUrl(String downloadUrl) { + this.downloadUrl = downloadUrl; } - public Integer getDelFlag() { - return delFlag; + public String getDownloadApkUrl() { + return downloadApkUrl; } - public void setDelFlag(Integer delFlag) { - this.delFlag = delFlag; + public void setDownloadApkUrl(String downloadApkUrl) { + this.downloadApkUrl = downloadApkUrl; } public String getMd5() { @@ -78,4 +91,20 @@ public String getMd5() { public void setMd5(String md5) { this.md5 = md5; } + + public Integer getDeliveryStatus() { + return deliveryStatus; + } + + public void setDeliveryStatus(Integer deliveryStatus) { + this.deliveryStatus = deliveryStatus; + } + + public Integer getDelFlag() { + return delFlag; + } + + public void setDelFlag(Integer delFlag) { + this.delFlag = delFlag; + } } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/BasicEntity.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/BasicEntity.java index 0c608da..3b82f4c 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/BasicEntity.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/BasicEntity.java @@ -1,6 +1,6 @@ package com.tairanchina.csp.avm.entity; -import com.ecfront.dew.common.$; +import cn.hutool.json.JSONUtil; import java.io.Serializable; import java.util.Date; @@ -52,6 +52,6 @@ public void setCreatedTime(Date createdTime) { @Override public String toString() { - return $.json.toJsonString(this); + return JSONUtil.toJsonStr(this); } } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/Channel.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/Channel.java index bf022a8..def874a 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/Channel.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/Channel.java @@ -1,11 +1,12 @@ -package com.tairanchina.csp.avm.entity; +package com.tairanchina.csp.avm.entity; /** * 渠道 * Created by hzlizx on 2018/6/6 0006 */ public class Channel extends BasicEntity { + private Integer id; private Integer appId; private String channelName; @@ -13,6 +14,7 @@ public class Channel extends BasicEntity { private Integer channelType; private Integer delFlag; private Integer channelStatus; + private String uploadFolder; //上传文件夹 public Integer getChannelType() { return channelType; @@ -69,4 +71,13 @@ public Integer getChannelStatus() { public void setChannelStatus(Integer channelStatus) { this.channelStatus = channelStatus; } + + public String getUploadFolder() { + return uploadFolder; + } + + public void setUploadFolder(String uploadFolder) { + this.uploadFolder = uploadFolder; + } + } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/LoginInfo.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/LoginInfo.java index bb2afe8..0636921 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/LoginInfo.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/LoginInfo.java @@ -1,6 +1,7 @@ package com.tairanchina.csp.avm.entity; -import com.ecfront.dew.common.$; + +import cn.hutool.json.JSONUtil; /** * 当前登录用户的ID,APPID,以及是否为超级管理员 @@ -68,6 +69,6 @@ public void setPhone(String phone) { @Override public String toString() { - return $.json.toJsonString(this); + return JSONUtil.toJsonStr(this); } } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/User.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/User.java index 9a6ddd4..f0acec3 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/User.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/entity/User.java @@ -18,6 +18,7 @@ public class User { private String nickName; private Date firstLoginTime; private Integer isAdmin; + private Integer delFlag; //-1:删除, 0:启用,1:禁用 public String getUserId() { return userId; @@ -74,4 +75,12 @@ public String getPassword() { public void setPassword(String password) { this.password = password; } + + public Integer getDelFlag() { + return delFlag; + } + + public void setDelFlag(Integer delFlag) { + this.delFlag = delFlag; + } } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/enums/ChatBotEventType.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/enums/ChatBotEventType.java index 9559e07..274422a 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/enums/ChatBotEventType.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/enums/ChatBotEventType.java @@ -1,6 +1,6 @@ package com.tairanchina.csp.avm.enums; -import com.ecfront.dew.common.$; +import cn.hutool.json.JSONUtil; import java.util.HashMap; @@ -27,7 +27,7 @@ public String toString() { HashMap hashMap = new HashMap<>(); hashMap.put("event", this.name()); hashMap.put("message", this.message); - return $.json.toJsonString(hashMap); + return JSONUtil.toJsonStr(hashMap); } } diff --git a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/mapper/ApkMapper.java b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/mapper/ApkMapper.java index 2c0b19e..735595e 100644 --- a/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/mapper/ApkMapper.java +++ b/modules/app-version-common/src/main/java/com/tairanchina/csp/avm/mapper/ApkMapper.java @@ -17,4 +17,6 @@ public interface ApkMapper extends BaseMapper { List selectApkWithChannelCode(Pagination page , @Param("versionId") Integer versionId, @Param("channelCode") String channelCode, @Param("md5") String md5, @Param("deliveryStatus") Integer deliveryStatus); + List selectApkByChannelCode(@Param("channelCode") String channelCode); + } diff --git a/modules/app-version-common/src/main/resources/mapper/ApkMapper.xml b/modules/app-version-common/src/main/resources/mapper/ApkMapper.xml index 1cfc045..9c24130 100644 --- a/modules/app-version-common/src/main/resources/mapper/ApkMapper.xml +++ b/modules/app-version-common/src/main/resources/mapper/ApkMapper.xml @@ -26,4 +26,18 @@ ORDER BY created_time DESC + + + \ No newline at end of file diff --git a/modules/app-version-manager/pom.xml b/modules/app-version-manager/pom.xml index 9d9c0c8..20e3950 100644 --- a/modules/app-version-manager/pom.xml +++ b/modules/app-version-manager/pom.xml @@ -1,73 +1,106 @@ - + + + 4.0.0 + com.tairanchina.csp.avm + app-version-manager + app-version-manager + 1.0.0-RC-SNAPSHOT + war + APP版本管理服务 com.tairanchina.csp.avm app-version - 1.1.0-RC + 1.0.0-RC-SNAPSHOT ../../pom.xml - app-version-manager - app-version-manager - APP版本管理服务 - jar - - - true - true - - com.tairanchina.csp.avm app-version-common - mysql mysql-connector-java + 6.0.6 - org.apache.poi - poi + javax.servlet + javax.servlet-api + 4.0.1 - - org.apache.commons - commons-lang3 - + - - com.alibaba - fastjson - - - - io.jsonwebtoken - jjwt-api - - - io.jsonwebtoken - jjwt-impl - runtime - - - io.jsonwebtoken - jjwt-jackson - runtime - + + app_version_manager + - - - org.springframework.boot - spring-boot-starter-test - test - - + + org.apache.maven.plugins + maven-war-plugin + ${maven.war.plugin.version} + + + ${project.build.directory} + + + + + org.codehaus.mojo + tomcat-maven-plugin + ${tomcat-maven-plugin} + + http://192.168.1.173/manager/text + devTomcat + /dev + + + + + org.springframework.boot + spring-boot-maven-plugin + ${spring.boot.maven.plugin.version} + + true + + + + + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven.compiler.plugin.version} + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-surefire-plugin + ${maven.surefire.plugin.version} + + true + + + + + diff --git a/modules/app-version-manager/src/main/java/com/dingtalk/chatbot/FileResult.java b/modules/app-version-manager/src/main/java/com/dingtalk/chatbot/FileResult.java new file mode 100644 index 0000000..a080e51 --- /dev/null +++ b/modules/app-version-manager/src/main/java/com/dingtalk/chatbot/FileResult.java @@ -0,0 +1,54 @@ + +package com.dingtalk.chatbot; + +/** + * 文件结果集 + */ +public class FileResult { + + String fileName; + String filePath; + Long fileSize; + String requestUrl; //下载地址(适用于网页的文件流下载) + String requestApkUrl; //Apk文件直接下载地址 + + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + + public String getFilePath() { + return filePath; + } + + public void setFilePath(String filePath) { + this.filePath = filePath; + } + + public Long getFileSize() { + return fileSize; + } + + public void setFileSize(Long fileSize) { + this.fileSize = fileSize; + } + + public String getRequestUrl() { + return requestUrl; + } + + public void setRequestUrl(String requestUrl) { + this.requestUrl = requestUrl; + } + + public String getRequestApkUrl() { + return requestApkUrl; + } + + public void setRequestApkUrl(String requestApkUrl) { + this.requestApkUrl = requestApkUrl; + } +} diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/AppVersionManagerApplication.java b/modules/app-version-manager/src/main/java/com/tairanchina/AppVersionManagerApplication.java new file mode 100644 index 0000000..f3d0744 --- /dev/null +++ b/modules/app-version-manager/src/main/java/com/tairanchina/AppVersionManagerApplication.java @@ -0,0 +1,43 @@ +package com.tairanchina; + +import com.baomidou.mybatisplus.plugins.PaginationInterceptor; +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.boot.Banner; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; +import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.web.support.SpringBootServletInitializer; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; + +@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) +@EnableAutoConfiguration +@EnableScheduling +//@ComponentScan(basePackages = "com.tairanchina.csp") +//@Configuration +@MapperScan("com.tairanchina.csp.avm.mapper") +public class AppVersionManagerApplication extends SpringBootServletInitializer { + + /** + * 分页插件 + */ + @Bean + public PaginationInterceptor paginationInterceptor() { + return new PaginationInterceptor(); + } + + public static void main(String[] args) { + new SpringApplicationBuilder() + .bannerMode(Banner.Mode.OFF) + .sources(AppVersionManagerApplication.class).run(args); + //new SpringApplicationBuilder(AppVersionManagerApplication.class).run(args); + } + + @Override + protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { + return application.sources(AppVersionManagerApplication.class); + } +} diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/annotation/OperationRecord.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/annotation/OperationRecord.java index 0fc1015..78b6d33 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/annotation/OperationRecord.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/annotation/OperationRecord.java @@ -15,4 +15,6 @@ OperationRecordLog.OperationDescription description(); + String content(); + } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/aspect/OperationAspect.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/aspect/OperationAspect.java index eb4df86..314cbab 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/aspect/OperationAspect.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/aspect/OperationAspect.java @@ -7,6 +7,7 @@ import com.tairanchina.csp.avm.mapper.OperationRecordLogMapper; import com.tairanchina.csp.avm.annotation.OperationRecord; import com.tairanchina.csp.avm.utils.ThreadLocalUtils; +import org.apache.commons.lang3.StringUtils; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.annotation.*; import org.slf4j.Logger; @@ -30,9 +31,9 @@ public void recordOperationLog(JoinPoint joinPoint, OperationRecord operationRec logger.info("开始记录[{}]操作日志...", operationRecord.resource()); OperationRecordLog log = new OperationRecordLog(); if (200 == serviceResult.getCode()) { - if (null != serviceResult.getData()) { + if (null != serviceResult.getRecord()) { logger.info("记录操作成功内容..."); - String content = $.json.toJsonString(serviceResult.getData()); + String content = $.json.toJsonString(serviceResult.getRecord()); log.setOperationContent(content); } log.setOperationResult(OperationRecordLog.OperationResult.SUCCESS); @@ -41,7 +42,7 @@ public void recordOperationLog(JoinPoint joinPoint, OperationRecord operationRec log.setOperationContent($.json.toJsonString(joinPoint.getArgs())); log.setOperationResult(OperationRecordLog.OperationResult.FAILD); } - String resultMessage = serviceResult.getMessage(); + String resultMessage = serviceResult.getInfo(); String operator = ThreadLocalUtils.USER_THREAD_LOCAL.get().getUserId(); Integer appId = ThreadLocalUtils.USER_THREAD_LOCAL.get().getAppId(); if (null != appId) { @@ -52,6 +53,7 @@ public void recordOperationLog(JoinPoint joinPoint, OperationRecord operationRec .setOperationResource(operationRecord.resource()) .setOperationType(operationRecord.type()) .setOperationDescription(operationRecord.description().getDescription()) + .setOperationContent(StringUtils.isNotEmpty(operationRecord.content())?operationRecord.content():StringUtils.EMPTY) .setResultMessage(resultMessage) .setCreatedBy(operator); @@ -63,7 +65,7 @@ public void recordOperationLog(JoinPoint joinPoint, OperationRecord operationRec Integer id = (Integer) args[0]; log.setAppId(id); } else if (operationRecord.type().equals(OperationRecordLog.OperationType.CREATE)) { - App app = (App) serviceResult.getData(); + App app = (App) serviceResult.getRecord(); if(Objects.nonNull(app)){ log.setAppId(app.getId()); } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/config/AppVersionManagerWebConfig.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/config/AppVersionManagerWebConfig.java new file mode 100644 index 0000000..80a0c9d --- /dev/null +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/config/AppVersionManagerWebConfig.java @@ -0,0 +1,107 @@ +package com.tairanchina.csp.avm.config; + +import com.tairanchina.csp.avm.interceptor.AccessControlAllowInterception; +import com.tairanchina.csp.avm.interceptor.AdminInterceptor; +import com.tairanchina.csp.avm.interceptor.AppInterceptor; +import com.tairanchina.csp.avm.interceptor.UserInterceptor; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer; +import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer; +import org.springframework.boot.web.servlet.ErrorPage; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.HttpStatus; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; + +/** + * Created by hzlizx on 2018/5/10 0010 + */ +@Configuration +public class AppVersionManagerWebConfig extends WebMvcConfigurerAdapter{ + + @Autowired + private AccessControlAllowInterception accessControlAllowInterception; + + @Autowired + private UserInterceptor userInterceptor; + + @Autowired + private AdminInterceptor adminInterceptor; + + @Autowired + private AppInterceptor appInterceptor; + + @Override + public void addInterceptors(InterceptorRegistry registry) { + registry.addInterceptor(accessControlAllowInterception) + .addPathPatterns("/*") + .addPathPatterns("/*/**"); + registry.addInterceptor(userInterceptor).addPathPatterns().excludePathPatterns( + "/swagger-ui.html", + "/swagger-resources", + "/v2/api-docs", + "/swagger-resources/configuration/ui", + "/user/register", + "/user/login", + "/apk/downloadFile/**/**/**.**" + ); + registry.addInterceptor(adminInterceptor).addPathPatterns( + "/admin/*", + "/admin/*/**", + "/log/*", + "/log/*/**", + "/chatbot/*", + "/chatbot/*/**" + ).excludePathPatterns( + "/admin/isAdmin" + ); + registry.addInterceptor(appInterceptor).addPathPatterns( + "/ios", + "/ios/*", + "/ios/*/**", + "/android", + "/android/*", + "/android/*/**", + "/channel", + "/channel/*", + "/channel/*/**", + "/route", + "/route/*", + "/route/*/**", + "/package", + "/package/*", + "/package/*/**", + "/capi", + "/capi/*", + "/capi/*/**", + "/white", + "/white/*", + "/white/*/**" + ); + super.addInterceptors(registry); + } + + /**** + * Tomcat配置虚拟目录 + * @param registry + */ + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + registry.addResourceHandler("/app_version_apk/**").addResourceLocations("file:D:/uploadFile/"); + } + + @Bean + public EmbeddedServletContainerCustomizer containerCustomizer() { + return new EmbeddedServletContainerCustomizer() { + @Override + public void customize(ConfigurableEmbeddedServletContainer container) { + //ErrorPage error401Page = new ErrorPage(HttpStatus.UNAUTHORIZED, "/401.html"); + ErrorPage error404Page = new ErrorPage(HttpStatus.NOT_FOUND, "/404.html"); + // ErrorPage error500Page = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/500.html"); + container.addErrorPages( error404Page); + } + }; + } +} diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/AdminController.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/AdminController.java index fea5bca..2f2aba0 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/AdminController.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/AdminController.java @@ -73,12 +73,13 @@ public ServiceResult listUser(@RequestParam(required = false, defaultValue = "1" @RequestParam(required = false, defaultValue = "") String phone) { EntityWrapper wrapper = new EntityWrapper<>(); if (admin == 1) { - wrapper.and().eq("is_admin", 1); + wrapper.and().eq("is_admin", 0);//普通用户 } if (StringUtils.isNotBlank(phone)) { - wrapper.and().like("phone", "%" + phone + "%"); + wrapper.and().like("phone", "%" + phone + "%"); //按照手机号查询 } - wrapper.isNotNull("first_login_time"); + wrapper.isNotNull("first_login_time"); //查询登陆时间存在的用户 + wrapper.where("del_flag>-1"); //查询启用的用户 wrapper.orderBy("first_login_time", false); return adminService.listUser(page, pageSize, wrapper); } @@ -177,7 +178,7 @@ public ServiceResult listAppWithBindInfo(@RequestParam(required = false, default @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PostMapping("/app") - @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.APP, description = OperationRecordLog.OperationDescription.CREATE_APP) + @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.APP, description = OperationRecordLog.OperationDescription.CREATE_APP,content = "添加APP") public ServiceResult createApp(@RequestBody AppRequestDTO appRequestDTO) { if (appRequestDTO == null || StringUtils.isBlank(appRequestDTO.getAppName()) || StringUtils.isBlank(appRequestDTO.getTenantAppId())) { return ServiceResultConstants.NEED_PARAMS; @@ -210,7 +211,7 @@ public ServiceResult createApp(@RequestBody AppRequestDTO appRequestDTO) { @ApiImplicitParam(name = "id", value = "appId(int型)", required = true), }) @PutMapping("/app/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.APP, description = OperationRecordLog.OperationDescription.UPDATE_APP) + @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.APP, description = OperationRecordLog.OperationDescription.UPDATE_APP,content = "修改APP") public ServiceResult editApp(@PathVariable int id, @RequestBody AppRequestDTO appRequestDTO) { if (appRequestDTO == null || StringUtils.isBlank(appRequestDTO.getAppName()) || StringUtils.isBlank(appRequestDTO.getTenantAppId())) { return ServiceResultConstants.NEED_PARAMS; @@ -246,7 +247,7 @@ public ServiceResult editApp(@PathVariable int id, @RequestBody AppRequestDTO ap @ApiImplicitParam(name = "appId", value = "appid(int型)", required = true), }) @DeleteMapping("/app/{appId}") - @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.APP, description = OperationRecordLog.OperationDescription.DELETE_APP) + @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.APP, description = OperationRecordLog.OperationDescription.DELETE_APP,content = "删除APP") public ServiceResult deleteApp(@PathVariable int appId) { if (appId < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -271,7 +272,7 @@ public ServiceResult deleteApp(@PathVariable int appId) { @ApiImplicitParam(name = "appId", value = "appId,应用ID(int型)", required = true), }) @PutMapping("/{userId}/{appId}/bind") - @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.USER_APP_REL, description = OperationRecordLog.OperationDescription.CREATE_USER_APP_REL) + @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.USER_APP_REL, description = OperationRecordLog.OperationDescription.CREATE_USER_APP_REL,content = "绑定用户和APP") public ServiceResult bind(@PathVariable String userId, @PathVariable int appId) { if (StringUtils.isEmpty(userId) || appId < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -319,7 +320,7 @@ public ServiceResult listBindApp(@RequestParam String userId) { @ApiImplicitParam(name = "appId", value = "appId,应用ID(int型)", required = true), }) @PutMapping("/{userId}/{appId}/unBind") - @OperationRecord(type = OperationRecordLog.OperationType.DELETE_FOREVER, resource = OperationRecordLog.OperationResource.USER_APP_REL, description = OperationRecordLog.OperationDescription.DELETE_FOREVER_USER_APP_REL) + @OperationRecord(type = OperationRecordLog.OperationType.DELETE_FOREVER, resource = OperationRecordLog.OperationResource.USER_APP_REL, description = OperationRecordLog.OperationDescription.DELETE_FOREVER_USER_APP_REL,content = "删除用户和APP关联(解绑APP)") public ServiceResult unBind(@PathVariable String userId, @PathVariable int appId) { if (StringUtils.isEmpty(userId) || appId < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -341,7 +342,7 @@ public ServiceResult unBind(@PathVariable String userId, @PathVariable int appId @ApiImplicitParam(paramType = "header", dataType = "string", name = "Authorization", value = "用户凭证", required = true), }) @PutMapping("/user") - @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.USER, description = OperationRecordLog.OperationDescription.UPDATE_USER) + @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.USER, description = OperationRecordLog.OperationDescription.UPDATE_USER,content = "修改用户信息") public ServiceResult changeNickName(@RequestBody AdminUpdateNickNameRequestDTO user) { String userId = user.getUserId(); String nickName = user.getNickName(); diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/AndroidController.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/AndroidController.java index 42558d7..bb6fb45 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/AndroidController.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/AndroidController.java @@ -5,6 +5,7 @@ import com.tairanchina.csp.avm.dto.ServiceResult; import com.tairanchina.csp.avm.entity.AndroidVersion; import com.tairanchina.csp.avm.entity.OperationRecordLog; +import com.tairanchina.csp.avm.mapper.AndroidVersionMapper; import com.tairanchina.csp.avm.utils.StringUtilsExt; import com.tairanchina.csp.avm.wapper.ExtWrapper; import com.tairanchina.csp.avm.annotation.OperationRecord; @@ -31,6 +32,9 @@ public class AndroidController { @Autowired private AndroidVersionService androidVersionService; + @Autowired + private AndroidVersionMapper androidVersionMapper; + @Autowired private BasicService basicService; @@ -72,7 +76,7 @@ public ServiceResult list(@RequestParam(required = false, defaultValue = "1") in @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PostMapping - @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.CREATE_ANDROID_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.CREATE_ANDROID_VERSION,content = "添加安卓版本") public ServiceResult create(@RequestBody AndroidVersionRequestDTO androidVersionRequestDTO) { String appVersion = androidVersionRequestDTO.getAppVersion(); String allowLowestVersion = androidVersionRequestDTO.getAllowLowestVersion(); @@ -103,7 +107,7 @@ public ServiceResult create(@RequestBody AndroidVersionRequestDTO androidVersion @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.UPDATE_ANDROID_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.UPDATE_ANDROID_VERSION,content="修改安卓版本") public ServiceResult update(@RequestBody AndroidVersionRequestDTO androidVersionRequestDTO, @PathVariable int id) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -125,11 +129,12 @@ public ServiceResult update(@RequestBody AndroidVersionRequestDTO androidVersion @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @DeleteMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.DELETE_ANDROID_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.DELETE_ANDROID_VERSION,content="删除安卓版本") public ServiceResult delete(@PathVariable int id) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; } + AndroidVersion androidVersion=androidVersionMapper.selectById(id); return androidVersionService.deleteAndroidVersion(id); } @@ -157,7 +162,7 @@ public ServiceResult get(@PathVariable int id) { @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}/delivery") - @OperationRecord(type = OperationRecordLog.OperationType.DELIVERY, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.DELIVERY_ANDROID_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.DELIVERY, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.DELIVERY_ANDROID_VERSION,content="安卓版本上架") public ServiceResult delivery(@PathVariable int id) { return androidVersionService.delivery(id); } @@ -166,7 +171,7 @@ public ServiceResult delivery(@PathVariable int id) { @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}/undelivery") - @OperationRecord(type = OperationRecordLog.OperationType.UNDELIVERY, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.UNDELIVERY_ANDROID_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.UNDELIVERY, resource = OperationRecordLog.OperationResource.ANDROID_VERSION, description = OperationRecordLog.OperationDescription.UNDELIVERY_ANDROID_VERSION,content="安卓版本下架") public ServiceResult undelivery(@PathVariable int id) { return androidVersionService.undelivery(id); } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/ApkController.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/ApkController.java index e7acaf2..494e38a 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/ApkController.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/ApkController.java @@ -1,5 +1,7 @@ package com.tairanchina.csp.avm.controller; +import cn.hutool.core.io.FileUtil; +import com.dingtalk.chatbot.FileResult; import com.tairanchina.csp.avm.constants.ServiceResultConstants; import com.tairanchina.csp.avm.dto.ServiceResult; import com.tairanchina.csp.avm.dto.UploadFileEntity; @@ -7,6 +9,8 @@ import com.tairanchina.csp.avm.entity.Channel; import com.tairanchina.csp.avm.entity.OperationRecordLog; import com.tairanchina.csp.avm.annotation.OperationRecord; +import com.tairanchina.csp.avm.mapper.ApkMapper; +import com.tairanchina.csp.avm.mapper.ChannelMapper; import com.tairanchina.csp.avm.service.ApkService; import com.tairanchina.csp.avm.service.ChannelService; import io.swagger.annotations.ApiImplicitParam; @@ -14,15 +18,22 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.util.ResourceUtils; import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; - -/** - * Created by hzlizx on 2018/6/13 0013 - */ +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.*; +import java.net.URLEncoder; +/**** + * Created by hzlizx on 2018/6/13 0013 + ****/ @RestController @RequestMapping("/apk") public class ApkController { @@ -31,16 +42,140 @@ public class ApkController { @Autowired private ApkService apkService; + @Autowired + private ApkMapper apkMapper; + @Autowired private ChannelService channelService; + @Value("${is_use_project_path}") + private boolean is_use_project_path; + + @Value("${uploadFilePath}") + private String uploadFilePath; + + @Value("${downloadFileUrl}") + private String downloadFileUrl; + + @Value("${defaultUploadFilePath}") + private String defaultUploadFilePath; //默认的上传文件夹地址 + + @Value("${defaultDownloadFileContextPath}") + private String defaultDownloadFileContextPath; //默认的下载文件地址 @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) - @PostMapping("/upload") - public ServiceResult upload() { - return ServiceResult.ok(null); + @PostMapping(value = "/upload", headers = "content-type=multipart/form-data") + public ServiceResult upload(@RequestParam(value = "file", required = true) MultipartFile file,@RequestParam(required = true, value = "channelCode")String channelCode,HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { + System.out.print("file="+file); + try { + Channel channel=this.channelService.findChannelByChannelCode(channelCode); + String disk_uploadFilePath=channel.getUploadFolder(); + String destFilePath=""; + //String serverUrl=httpServletRequest.getScheme()+"://"+httpServletRequest.getServerName()+":"+httpServletRequest.getServerPort()+"/"; + String downloadApkUrl=""; + if(is_use_project_path){ //使用项目中编译目录文件夹 + destFilePath= ResourceUtils.getURL("classpath:").getPath()+uploadFilePath + "\\" + channel.getChannelCode()+ "\\"+file.getOriginalFilename(); + downloadApkUrl=httpServletRequest.getContextPath()+"/"+disk_uploadFilePath+"/"+file.getOriginalFilename(); + }else{ //使用外置项目文件夹中的目录 + destFilePath= defaultUploadFilePath+"\\"+ disk_uploadFilePath+"\\"+file.getOriginalFilename(); + downloadApkUrl=httpServletRequest.getContextPath()+"/"+defaultDownloadFileContextPath+"/"+disk_uploadFilePath+"/"+file.getOriginalFilename(); + } + File dest=new File(destFilePath); + File uploadFile = FileUtil.writeFromStream(file.getInputStream(),dest); + FileResult fileResult = new FileResult(); + fileResult.setFileName(uploadFile.getName()); + fileResult.setFilePath(uploadFile.getAbsolutePath()); + fileResult.setFileSize(uploadFile.getTotalSpace()); + fileResult.setRequestUrl(downloadFileUrl + "/" + channel.getAppId() + "/" + channel.getChannelCode() +"/" + file.getOriginalFilename()); + fileResult.setRequestApkUrl(downloadApkUrl); + return ServiceResult.ok(fileResult); + } catch (FileNotFoundException e){ + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + return ServiceResult.failed(); + } + + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), + @ApiImplicitParam(name="appId", value = "appId", paramType = "path", dataType = "string", required = true), + @ApiImplicitParam(name="channelCode",value = "渠道码", paramType = "path", dataType = "string", required = true), + @ApiImplicitParam(name="fileName",value = "文件名", paramType = "path", dataType = "string", required = true) + }) + @GetMapping(value = "/downloadFile/{appId}/{channelCode}/{fileName}") + public ServiceResult downloadFile(@PathVariable(required = true) Integer appId,@PathVariable(required = true) String channelCode,@PathVariable(required = true) String fileName,HttpServletRequest httpServletRequest,HttpServletResponse httpServletResponse) { + //如果文件名不为空,则进行下载 + if(!StringUtils.isEmpty(fileName)){ + Channel channel=this.channelService.findChannelByChannelCode(appId,channelCode); + String disk_uploadFilePath=channel.getUploadFolder(); + + System.out.print("fileName="+fileName); + String downloadFileName=fileName+".apk"; + String downloadFilePath= null; + try { + if(is_use_project_path){ //使用项目中编译目录文件夹 + downloadFilePath = ResourceUtils.getURL("classpath:").getPath() + uploadFilePath + "\\" + channel.getChannelCode()+ "\\" + downloadFileName; + }else{ + downloadFilePath= defaultUploadFilePath+"\\"+ disk_uploadFilePath+"\\"+downloadFileName; + } + } catch (FileNotFoundException e) { + e.printStackTrace(); + } + File downloadFile=new File(downloadFilePath); + //如果文件存在,则进行下载 + if(downloadFile.exists()){ + // 实现文件下载 + FileInputStream fis = null; + BufferedInputStream bis = null; + try { + fis = new FileInputStream(downloadFile); + bis = new BufferedInputStream(fis); + OutputStream os = httpServletResponse.getOutputStream(); + try{ + // 设置文件大小 + // 清空response + httpServletResponse.reset(); + // 配置文件下载 + httpServletResponse.setContentType("application/octet-stream"); + //写明要下载的文件的大小 + httpServletResponse.setContentLength((int)downloadFile.length()); + // 下载文件能正常显示中文 + httpServletResponse.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(downloadFileName,"UTF-8")); + } catch (UnsupportedEncodingException e){ + System.out.println("Download failed!"); + return ServiceResult.failed(); + } + + byte [] b=new byte[1024];//相当于我们的缓存 + long k=0;//该值用于计算当前实际下载了多少字节 + //开始循环下载 + while(k32){ - return ServiceResultConstants.CHANNEL_NAME_TOO_LONG; + return ServiceResultConstants.CHANNEL_NAME_TOO_LONG; } if(channel.getChannelCode().length()>32){ - return ServiceResultConstants.CHANNEL_CODE_TOO_LONG; + return ServiceResultConstants.CHANNEL_CODE_TOO_LONG; } - return channelService.createChannel(channel.getChannelName(), channel.getChannelCode(), channel.getChannelType()); + return channelService.createChannel(channel.getChannelName(), channel.getChannelCode(), channel.getChannelType(),channel.getUploadFolder()); } @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @DeleteMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.CHANNEL, description = OperationRecordLog.OperationDescription.DELETE_CHANNEL) + @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.CHANNEL, description = OperationRecordLog.OperationDescription.DELETE_CHANNEL,content = "删除渠道") public ServiceResult delete(@PathVariable int id) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -79,11 +79,12 @@ public ServiceResult delete(@PathVariable int id) { return channelService.deleteChannel(id); } + @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}/scrap") - @OperationRecord(type = OperationRecordLog.OperationType.SCRAP, resource = OperationRecordLog.OperationResource.CHANNEL, description = OperationRecordLog.OperationDescription.SCRAP_CHANNEL) + @OperationRecord(type = OperationRecordLog.OperationType.SCRAP, resource = OperationRecordLog.OperationResource.CHANNEL, description = OperationRecordLog.OperationDescription.SCRAP_CHANNEL,content = "废弃渠道") public ServiceResult scrap(@PathVariable int id) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -95,7 +96,7 @@ public ServiceResult scrap(@PathVariable int id) { @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}/open") - @OperationRecord(type = OperationRecordLog.OperationType.OPEN, resource = OperationRecordLog.OperationResource.CHANNEL, description = OperationRecordLog.OperationDescription.OPEN_CHANNEL) + @OperationRecord(type = OperationRecordLog.OperationType.OPEN, resource = OperationRecordLog.OperationResource.CHANNEL, description = OperationRecordLog.OperationDescription.OPEN_CHANNEL,content = "开启渠道") public ServiceResult open(@PathVariable int id) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -107,12 +108,13 @@ public ServiceResult open(@PathVariable int id) { @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}/edit") - @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.CHANNEL, description = OperationRecordLog.OperationDescription.UPDATE_CHANNEL) + @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.CHANNEL, description = OperationRecordLog.OperationDescription.UPDATE_CHANNEL,content = "编辑渠道") public ServiceResult edit(@PathVariable int id, @RequestBody Channel channel) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; } - return ServiceResultConstants.SERVICE_NOT_SUPPORT; + ServiceResult serviceResult=this.channelService.editChannel(channel.getId(),channel.getChannelName(),channel.getChannelCode(),channel.getChannelType(),channel.getUploadFolder()); + return serviceResult; } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/CustomApiController.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/CustomApiController.java index 2659d04..ef3c498 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/CustomApiController.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/CustomApiController.java @@ -86,7 +86,7 @@ public ServiceResult findCustomApi(@PathVariable Integer id) { @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PostMapping("/add") - @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.CUSTOM_API, description = OperationRecordLog.OperationDescription.CREATE_CUSTOM_API) + @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.CUSTOM_API, description = OperationRecordLog.OperationDescription.CREATE_CUSTOM_API,content="添加自定义接口") public ServiceResult addCustomApi(@Valid @RequestBody CustomApiRequestDTO customApiRequestDTO) { if (StringUtils.isBlank(customApiRequestDTO.getCustomKey())) { return ServiceResultConstants.NEED_PARAMS; @@ -111,7 +111,7 @@ public ServiceResult addCustomApi(@Valid @RequestBody CustomApiRequestDTO custom @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/update/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.CUSTOM_API, description = OperationRecordLog.OperationDescription.UPDATE_CUSTOM_API) + @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.CUSTOM_API, description = OperationRecordLog.OperationDescription.UPDATE_CUSTOM_API,content="修改自定义接口") public ServiceResult updateCustomApi(@PathVariable Integer id, @Valid @RequestBody CustomApiRequestDTO customApiRequestDTO) { if (1 > id) { return ServiceResult.failed(40001, "id不正确"); @@ -142,7 +142,7 @@ public ServiceResult updateCustomApi(@PathVariable Integer id, @Valid @RequestBo @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @DeleteMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.DELETE_FOREVER, resource = OperationRecordLog.OperationResource.CUSTOM_API, description = OperationRecordLog.OperationDescription.DELETE_FOREVER_CUSTOM_API) + @OperationRecord(type = OperationRecordLog.OperationType.DELETE_FOREVER, resource = OperationRecordLog.OperationResource.CUSTOM_API, description = OperationRecordLog.OperationDescription.DELETE_FOREVER_CUSTOM_API,content="永久删除自定义接口") public ServiceResult deleteCustomApiForver(@PathVariable Integer id) { return customApiService.deleteCustomApiForver(id); } @@ -162,7 +162,7 @@ public ServiceResult deleteCustomApiForver(@PathVariable Integer id) { @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.CUSTOM_API, description = OperationRecordLog.OperationDescription.DELETE_CUSTOM_API) + @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.CUSTOM_API, description = OperationRecordLog.OperationDescription.DELETE_CUSTOM_API,content="删除自定义接口") public ServiceResult deleteCustomApi(@PathVariable Integer id) { return customApiService.deleteCustomApi(id); } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/IosController.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/IosController.java index 2af4f0d..7d25dc7 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/IosController.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/IosController.java @@ -64,7 +64,7 @@ public ServiceResult list(@RequestParam(required = false, defaultValue = "1") in @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PostMapping - @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.CREATE_IOS_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.CREATE_IOS_VERSION,content="添加IOS版本") public ServiceResult create(@RequestBody IosVersionRequestDTO iosVersionRequestDTO) { String appVersion = iosVersionRequestDTO.getAppVersion(); @@ -98,7 +98,7 @@ public ServiceResult create(@RequestBody IosVersionRequestDTO iosVersionRequestD @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.UPDATE_IOS_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.UPDATE_IOS_VERSION,content="修改IOS版本") public ServiceResult update(@RequestBody IosVersionRequestDTO iosVersionRequestDTO, @PathVariable int id) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -121,7 +121,7 @@ public ServiceResult update(@RequestBody IosVersionRequestDTO iosVersionRequestD @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @DeleteMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.DELETE_IOS_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.DELETE_IOS_VERSION,content="删除IOS版本") public ServiceResult delete(@PathVariable int id) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -152,7 +152,7 @@ public ServiceResult get(@PathVariable int id) { @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}/delivery") - @OperationRecord(type = OperationRecordLog.OperationType.DELIVERY, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.DELIVERY_IOS_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.DELIVERY, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.DELIVERY_IOS_VERSION,content="IOS版本上架") public ServiceResult delivery(@PathVariable int id) { return iosVersionService.delivery(id); } @@ -161,7 +161,7 @@ public ServiceResult delivery(@PathVariable int id) { @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}/undelivery") - @OperationRecord(type = OperationRecordLog.OperationType.UNDELIVERY, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.UNDELIVERY_IOS_VERSION) + @OperationRecord(type = OperationRecordLog.OperationType.UNDELIVERY, resource = OperationRecordLog.OperationResource.IOS_VERSION, description = OperationRecordLog.OperationDescription.UNDELIVERY_IOS_VERSION,content="IOS版本下架") public ServiceResult undelivery(@PathVariable int id) { return iosVersionService.undelivery(id); } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/RnPackageController.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/RnPackageController.java index c308915..d8baa55 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/RnPackageController.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/RnPackageController.java @@ -70,7 +70,7 @@ public ServiceResult list(@RequestParam(required = false, defaultValue = "1") in @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PostMapping - @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.RN_PACKAGE, description = OperationRecordLog.OperationDescription.CREATE_RN_PACKAGE) + @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.RN_PACKAGE, description = OperationRecordLog.OperationDescription.CREATE_RN_PACKAGE,content="添加RN包") public ServiceResult create(@RequestBody RnPackageRequestDTO rnPackageRequestDTO) { if (StringUtilsExt.hasEmpty( rnPackageRequestDTO.getRnName(), @@ -97,7 +97,7 @@ public ServiceResult create(@RequestBody RnPackageRequestDTO rnPackageRequestDTO @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.RN_PACKAGE, description = OperationRecordLog.OperationDescription.UPDATE_RN_PACKAGE) + @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.RN_PACKAGE, description = OperationRecordLog.OperationDescription.UPDATE_RN_PACKAGE,content="修改RN包") public ServiceResult update(@PathVariable int id, @RequestBody RnPackageRequestDTO rnPackageRequestDTO) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -117,7 +117,7 @@ public ServiceResult update(@PathVariable int id, @RequestBody RnPackageRequestD @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @DeleteMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.RN_PACKAGE, description = OperationRecordLog.OperationDescription.DELETE_RN_PACKAGE) + @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.RN_PACKAGE, description = OperationRecordLog.OperationDescription.DELETE_RN_PACKAGE,content="删除RN包") public ServiceResult delete(@PathVariable int id) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/RnRouteController.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/RnRouteController.java index fa625bf..cd91266 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/RnRouteController.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/RnRouteController.java @@ -79,7 +79,7 @@ public ServiceResult list(@RequestParam(required = false, defaultValue = "1") in @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PostMapping - @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.RN_ROUTE, description = OperationRecordLog.OperationDescription.CREATE_RN_ROUTE) + @OperationRecord(type = OperationRecordLog.OperationType.CREATE, resource = OperationRecordLog.OperationResource.RN_ROUTE, description = OperationRecordLog.OperationDescription.CREATE_RN_ROUTE,content="添加RN路由") public ServiceResult create(@RequestBody RnRouteRequestDTO rnRouteRequestDTO) { if (StringUtilsExt.hasBlank( rnRouteRequestDTO.getRouteName(), @@ -102,7 +102,7 @@ public ServiceResult create(@RequestBody RnRouteRequestDTO rnRouteRequestDTO) { @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @PutMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.RN_ROUTE, description = OperationRecordLog.OperationDescription.UPDATE_RN_ROUTE) + @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.RN_ROUTE, description = OperationRecordLog.OperationDescription.UPDATE_RN_ROUTE,content="修改RN路由") public ServiceResult update(@PathVariable int id, @RequestBody RnRouteRequestDTO rnRouteRequestDTO) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; @@ -123,7 +123,7 @@ public ServiceResult update(@PathVariable int id, @RequestBody RnRouteRequestDTO @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), }) @DeleteMapping("/{id}") - @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.RN_ROUTE, description = OperationRecordLog.OperationDescription.DELETE_RN_ROUTE) + @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.RN_ROUTE, description = OperationRecordLog.OperationDescription.DELETE_RN_ROUTE,content="删除RN路由") public ServiceResult delete(@PathVariable int id) { if (id < 1) { return ServiceResultConstants.NEED_PARAMS; diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/UserController.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/UserController.java index 3540016..7385f28 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/UserController.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/controller/UserController.java @@ -1,10 +1,10 @@ package com.tairanchina.csp.avm.controller; +import cn.hutool.core.io.FileUtil; import com.tairanchina.csp.avm.constants.ServiceResultConstants; -import com.tairanchina.csp.avm.dto.ChangePasswordReq; -import com.tairanchina.csp.avm.dto.LoginReq; -import com.tairanchina.csp.avm.dto.RegisterReq; -import com.tairanchina.csp.avm.dto.ServiceResult; +import com.tairanchina.csp.avm.dto.*; +import com.tairanchina.csp.avm.entity.Apk; +import com.tairanchina.csp.avm.entity.Channel; import com.tairanchina.csp.avm.entity.OperationRecordLog; import com.tairanchina.csp.avm.annotation.OperationRecord; import com.tairanchina.csp.avm.service.UserService; @@ -13,11 +13,16 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.ResourceUtils; import org.springframework.web.bind.annotation.*; +import java.io.File; +import java.io.FileNotFoundException; + /** * Created by hzlizx on 2018/7/4 0004 @@ -37,6 +42,20 @@ public ServiceResult login(@RequestBody LoginReq loginReq) { } + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), + }) + @DeleteMapping("/delUser/{userId}") + @OperationRecord(type = OperationRecordLog.OperationType.DELETE, resource = OperationRecordLog.OperationResource.APK, description = OperationRecordLog.OperationDescription.DELETE_APK,content="删除APK包") + public ServiceResult delete(@PathVariable String userId) { + if (StringUtils.isEmpty(userId)) { + return ServiceResultConstants.NEED_PARAMS; + } + ServiceResult serviceResult=userService.delUser(userId); //先删除文件 + return serviceResult; + } + + @ApiOperation(value = "注册") @PostMapping("/register") public ServiceResult register(@RequestBody RegisterReq registerReq) { @@ -98,10 +117,59 @@ public ServiceResult change(@RequestParam(required = false, defaultValue = "") S @ApiImplicitParam(name = "nickName", value = "用户昵称", required = true), }) @PutMapping("/update/{nickName}") - @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.USER, description = OperationRecordLog.OperationDescription.UPDATE_USER) + @OperationRecord(type = OperationRecordLog.OperationType.UPDATE, resource = OperationRecordLog.OperationResource.USER, description = OperationRecordLog.OperationDescription.UPDATE_USER,content="修改用户信息") public ServiceResult changeNickName(@PathVariable String nickName) { String userId = ThreadLocalUtils.USER_THREAD_LOCAL.get().getUserId(); return userService.updateUserNickNameByUserId(userId, nickName); } + + @ApiOperation(value = "获取用户") + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "用户登录凭证", paramType = "header", dataType = "string", defaultValue = "Bearer ", required = true), + }) + @GetMapping("/getUser/{userId}") + public ServiceResult getUser(@PathVariable String userId) { + if (StringUtils.isEmpty(userId)) { + return ServiceResultConstants.NEED_PARAMS; + } + return userService.getUser(userId); + } + + + @ApiOperation(value = "添加用户") + @PostMapping("/addUser") + public ServiceResult addUser(@RequestBody UserDTO userDTO) { + + int length = userDTO.getPassword().trim().length(); + if (length < 6 || length > 32) { + return ServiceResultConstants.PASSWORD_ERROR; + } + return userService.addUser(userDTO.getPhone(),userDTO.getUsername(),userDTO.getPassword(),userDTO.getNickName()); + } + + @ApiOperation(value = "编辑用户") + @PutMapping("/editUser/{userId}") + public ServiceResult editUser(@PathVariable String userId,@RequestBody UserDTO userDTO) { + if(StringUtils.isNotEmpty(userDTO.getPassword())){ //输入密码,对密码做校验 + int length = userDTO.getPassword().trim().length(); + if (length < 6 || length > 32) { + return ServiceResultConstants.PASSWORD_ERROR; + } + } + return userService.editUser(userDTO.getPhone(),userDTO.getUsername(),userDTO.getNickName(),userId); + } + + @ApiOperation(value = "重置密码") + @PutMapping("/restPwd/{userId}") + public ServiceResult restPwd(@PathVariable String userId,@RequestBody UserDTO userDTO) { + if(StringUtils.isNotEmpty(userDTO.getPassword())){ //输入密码,对密码做校验 + int length = userDTO.getPassword().trim().length(); + if (length < 6 || length > 32) { + return ServiceResultConstants.PASSWORD_ERROR; + } + } + return userService.restPwd(userDTO.getPassword(),userId); + } + } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/interceptor/UserInterceptor.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/interceptor/UserInterceptor.java index 586d5c3..e41c53c 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/interceptor/UserInterceptor.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/interceptor/UserInterceptor.java @@ -12,6 +12,7 @@ import org.springframework.context.annotation.PropertySource; import org.springframework.stereotype.Component; import org.apache.commons.lang.StringUtils; +import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; import javax.servlet.http.HttpServletRequest; @@ -34,6 +35,7 @@ public class UserInterceptor extends HandlerInterceptorAdapter { public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) { response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Access-Control-Allow-Origin, Authorization, appId, serviceId"); response.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS"); + String authorization = request.getHeader("Authorization"); if (StringUtils.isEmpty(authorization)) { this.print(response, ServiceResult.failed(1003, "没有权限访问该地址,请先登录").toString()); @@ -53,7 +55,7 @@ public boolean preHandle(HttpServletRequest request, HttpServletResponse respons logger.error("AppID转换错误", e); } } - User userInDb = (User) validate.getData(); + User userInDb = (User) validate.getRecord(); String userId = userInDb.getUserId(); String nickName = userInDb.getNickName(); String phone = userInDb.getPhone(); @@ -80,6 +82,10 @@ public boolean preHandle(HttpServletRequest request, HttpServletResponse respons return false; } + @Override + public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { + super.postHandle(request, response, handler, modelAndView); + } @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/ChannelService.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/ChannelService.java index 69c380d..8fb6485 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/ChannelService.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/ChannelService.java @@ -10,13 +10,26 @@ */ public interface ChannelService { - /** + /**** * 创建渠道 * @param channelName 渠道名称 * @param channelCode 渠道号 + * @param channelType 渠道类型 + * @param uploadFolder 上传文件夹 * @return 是否成功 - */ - ServiceResult createChannel(String channelName, String channelCode, Integer channelType); + ****/ + ServiceResult createChannel(String channelName, String channelCode, Integer channelType,String uploadFolder); + + /**** + * 编辑渠道 + * @param channelId + * @param channelName + * @param channelCode + * @param channelType + * @param uploadFolder + * @return + ****/ + ServiceResult editChannel(Integer channelId,String channelName, String channelCode, Integer channelType,String uploadFolder); /** * 删除渠道(软删除) @@ -69,4 +82,27 @@ public interface ChannelService { * @return 渠道信息 */ ServiceResult findByChannelCode(String channelCode); + + /**** + * 根据channelId找到Channel + * @param channelId 渠道ID + * @return 渠道信息 + ****/ + Channel findChannelByChannelId(int channelId); + + /**** + * + * @param channelCode 渠道码 + * @return 渠道信息 + ****/ + Channel findChannelByChannelCode(String channelCode); + + /**** + * 根据appId和channelCode找到Channel + * @param appId:渠道ID + * @param channelCode: 渠道编码 + * @return + ****/ + Channel findChannelByChannelCode(Integer appId,String channelCode); + } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/UserService.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/UserService.java index 798098b..c717324 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/UserService.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/UserService.java @@ -4,6 +4,17 @@ public interface UserService { + + ServiceResult getUser(String userId); + + ServiceResult addUser(String phone,String userName,String password,String nickName); + + ServiceResult editUser(String phone,String userName,String nickName,String id); + + ServiceResult restPwd(String password, String userId); + + ServiceResult delUser(String userId); + ServiceResult register(String phone, String password); ServiceResult login(String phone, String password); diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/AdminServiceImpl.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/AdminServiceImpl.java index d5fd7d9..b9951f5 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/AdminServiceImpl.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/AdminServiceImpl.java @@ -1,8 +1,8 @@ package com.tairanchina.csp.avm.service.impl; +import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; -import com.ecfront.dew.common.$; import com.tairanchina.csp.avm.constants.RedisKey; import com.tairanchina.csp.avm.constants.ServiceResultConstants; import com.tairanchina.csp.avm.dto.ServiceResult; @@ -20,6 +20,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.data.redis.core.BoundHashOperations; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; @@ -27,6 +28,7 @@ import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.stream.Collectors; @@ -57,6 +59,9 @@ public class AdminServiceImpl implements AdminService { @Autowired private RedisTemplate redisTemplate; + @Value("${defaultUploadFilePath}") + private String defaultUploadFilePath; //创建默认渠道时指定的上传文件夹 + @Override public ServiceResult bindUserAndApp(String userId, int appId) { App app = appMapper.selectById(appId); @@ -109,6 +114,8 @@ public ServiceResult createApp(String appName, String tenantAppId) { if (!appMapper.selectList(wrapper).isEmpty()) { return ServiceResultConstants.TENANT_APP_ID_OR_APP_NAME_EXISTS; } + Date now=new Date(); + App app = new App(); app.setDelFlag(0); app.setTenantAppId(tenantAppId); @@ -125,6 +132,7 @@ public ServiceResult createApp(String appName, String tenantAppId) { channel.setChannelCode("official"); channel.setChannelName("官方渠道"); channel.setChannelStatus(1); + channel.setUploadFolder(defaultUploadFilePath+appName); //默认上传文件夹 Integer insert1 = channelMapper.insert(channel); if (insert1 > 0) { logger.info("创建官方渠道成功"); @@ -151,9 +159,7 @@ public ServiceResult editApp(int appId, String appName, String tenantAppId) { wrapper.and().ne("id", appId); List apps = appMapper.selectList(wrapper); if (!apps.isEmpty()) { - return new ServiceResult( - ServiceResultConstants.APP_EXISTS.getCode(), - "已经有其他应用取名为[" + appName + "],或AppId为[ " + tenantAppId + " ],请换一个名称或AppId"); + return new ServiceResult(ServiceResultConstants.APP_EXISTS.getCode(),"已经有其他应用取名为[" + appName + "],或AppId为[ " + tenantAppId + " ],请换一个名称或AppId"); } App app = new App(); app.setId(appId); @@ -253,14 +259,9 @@ public ServiceResult listAppWithBindInfo(int page, int pageSize, EntityWrapper> hashMapPage = new Page<>(); - try { - $.bean.copyProperties(hashMapPage, pageEntity); - hashMapPage.setRecords(collect); - return ServiceResult.ok(hashMapPage); - } catch (InvocationTargetException | IllegalAccessException e) { - logger.error("参数转换出错", e); - } - return ServiceResultConstants.ERROR_500; + BeanUtil.copyProperties(hashMapPage, pageEntity); + hashMapPage.setRecords(collect); + return ServiceResult.ok(hashMapPage); } @Override @@ -296,4 +297,5 @@ public ServiceResult isAdmin(String userId) { return ServiceResult.ok(false); } } + } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/ApkServiceImpl.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/ApkServiceImpl.java index 2b3166a..d55bbb4 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/ApkServiceImpl.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/ApkServiceImpl.java @@ -212,7 +212,7 @@ public ServiceResult exists(String channelCode, int versionId) { map.put("exists", true); } ServiceResult ok = ServiceResult.ok(map); - ok.setMessage(message); + ok.setInfo(message); return ok; } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/AppServiceImpl.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/AppServiceImpl.java index fac022e..1023e11 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/AppServiceImpl.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/AppServiceImpl.java @@ -1,8 +1,9 @@ package com.tairanchina.csp.avm.service.impl; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; -import com.ecfront.dew.common.$; import com.tairanchina.csp.avm.constants.ServiceResultConstants; import com.tairanchina.csp.avm.dto.ServiceResult; import com.tairanchina.csp.avm.entity.App; @@ -17,6 +18,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -44,6 +46,9 @@ public class AppServiceImpl implements AppService{ @Autowired private ChannelMapper channelMapper; + @Value("${defaultUploadFilePath}") + private String defaultUploadFilePath; //创建默认渠道时指定的上传文件夹 + @Override public ServiceResult getAppListWithUserId(int page, int pageSize, String userId) { EntityWrapper entityWrapper = new EntityWrapper<>(); @@ -62,14 +67,9 @@ public ServiceResult getAppListWithUserId(int page, int pageSize, String userId) collect.removeAll(Collections.singleton(null)); Page appPage = new Page<>(); - try { - $.bean.copyProperties(appPage, userAppRelPage); - appPage.setRecords(collect); - return ServiceResult.ok(appPage); - } catch (InvocationTargetException | IllegalAccessException e) { - logger.error("App参数转换出错", e); - } - return ServiceResultConstants.ERROR_500; + BeanUtil.copyProperties(appPage, userAppRelPage); + appPage.setRecords(collect); + return ServiceResult.ok(appPage); } @Override @@ -100,6 +100,7 @@ public ServiceResult createApp(String appName, String tenantAppId) { channel.setChannelCode("official"); channel.setChannelName("官方渠道"); channel.setChannelStatus(1); + channel.setUploadFolder(appName); //默认上传文件夹为渠道的应用名称 Integer insert1 = channelMapper.insert(channel); if (insert > 0 && insert2>0 && insert1>0) { return ServiceResult.ok(app); diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/ChannelServiceImpl.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/ChannelServiceImpl.java index 2512cb6..d9c7d5e 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/ChannelServiceImpl.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/ChannelServiceImpl.java @@ -3,12 +3,15 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.tairanchina.csp.avm.constants.ServiceResultConstants; +import com.tairanchina.csp.avm.dto.ApkExt; import com.tairanchina.csp.avm.dto.ServiceResult; import com.tairanchina.csp.avm.entity.Channel; +import com.tairanchina.csp.avm.mapper.ApkMapper; import com.tairanchina.csp.avm.mapper.ChannelMapper; import com.tairanchina.csp.avm.service.BasicService; import com.tairanchina.csp.avm.service.ChannelService; import com.tairanchina.csp.avm.utils.ThreadLocalUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -27,8 +30,11 @@ public class ChannelServiceImpl implements ChannelService { @Autowired private ChannelMapper channelMapper; + @Autowired + private ApkMapper apkMapper; + @Override - public ServiceResult createChannel(String channelName, String channelCode, Integer channelType) { + public ServiceResult createChannel(String channelName, String channelCode, Integer channelType,String uploadFolder) { EntityWrapper wrapper = new EntityWrapper<>(); wrapper.andNew().eq("app_id", ThreadLocalUtils.USER_THREAD_LOCAL.get().getAppId()); @@ -43,6 +49,7 @@ public ServiceResult createChannel(String channelName, String channelCode, Integ channel.setChannelName(channelName); channel.setChannelCode(channelCode); channel.setChannelType(channelType); + channel.setUploadFolder(uploadFolder); channel.setAppId(ThreadLocalUtils.USER_THREAD_LOCAL.get().getAppId()); channel.setCreatedBy(ThreadLocalUtils.USER_THREAD_LOCAL.get().getUserId()); Integer insert = channelMapper.insert(channel); @@ -53,14 +60,77 @@ public ServiceResult createChannel(String channelName, String channelCode, Integ } } + @Override + public ServiceResult editChannel(Integer channelId,String channelName, String channelCode, Integer channelType,String uploadFolder) { + EntityWrapper wrapper = new EntityWrapper<>(); + wrapper.andNew().eq("app_id", ThreadLocalUtils.USER_THREAD_LOCAL.get().getAppId()); + wrapper.andNew().eq("channel_code", channelCode).or().eq("channel_name", channelName); + wrapper.andNew().eq("del_flag", 0); + if(channelId!=null){ + wrapper.andNew().eq("id", channelId); + } + List channels = channelMapper.selectList(wrapper); + Integer updateChannel =null; + if (!channels.isEmpty()) { + Channel channel=channels.get(0); + +// private Integer id; +// private Integer appId; +// private String channelName; +// private String channelCode; +// private Integer channelType; +// private Integer delFlag; +// private Integer channelStatus; +// private String uploadFolder; //上传文件夹 + + channel.setAppId(ThreadLocalUtils.USER_THREAD_LOCAL.get().getAppId()); + channel.setCreatedBy(ThreadLocalUtils.USER_THREAD_LOCAL.get().getUserId()); + channel.setChannelName(channelName); + channel.setChannelCode(channelCode); + channel.setChannelType(channelType); + channel.setUploadFolder(uploadFolder); + + EntityWrapper channelWrapper = new EntityWrapper<>(); + channelWrapper.andNew().eq("id",channel.getId()); + + updateChannel = channelMapper.update(channel,channelWrapper); + if (updateChannel > 0) { + return ServiceResult.ok(channel); + } else { + return ServiceResultConstants.DB_ERROR; + } + } + return ServiceResultConstants.DB_ERROR; + } + @Override public ServiceResult deleteChannel(int channelId) { - return ServiceResultConstants.SERVICE_NOT_SUPPORT; + Channel channel=channelMapper.selectById(channelId); + if(channel==null){ + return ServiceResultConstants.CHANNEL_NOT_EXISTS; + } + List apkExtList=apkMapper.selectApkByChannelCode(channel.getChannelCode()); + if(apkExtList!=null && apkExtList.size()>0){ + return ServiceResultConstants.APK_EXISTS_WITH_CHANNEL; + } + channelMapper.deleteById(channelId); + return ServiceResult.ok(); + //return ServiceResultConstants.SERVICE_NOT_SUPPORT; } @Override public ServiceResult deleteChannelForever(int channelId) { - return ServiceResultConstants.SERVICE_NOT_SUPPORT; + Channel channel=channelMapper.selectById(channelId); + if(channel==null){ + return ServiceResultConstants.CHANNEL_NOT_EXISTS; + } + List apkExtList=apkMapper.selectApkByChannelCode(channel.getChannelCode()); + if(apkExtList!=null && apkExtList.size()>0){ + return ServiceResultConstants.APK_EXISTS_WITH_CHANNEL; + } + channelMapper.deleteById(channelId); + return ServiceResult.ok(); + //return ServiceResultConstants.SERVICE_NOT_SUPPORT; } @Override @@ -147,4 +217,41 @@ public ServiceResult findByChannelCode(String channelCode) { return ServiceResultConstants.CHANNEL_NOT_EXISTS; } } + + @Override + public Channel findChannelByChannelId(int channelId) { + Channel channel = channelMapper.selectById(channelId); + return channel; + } + + @Override + public Channel findChannelByChannelCode(String channelCode) { + Channel channel = new Channel(); + channel.setChannelCode(channelCode); + channel.setAppId(ThreadLocalUtils.USER_THREAD_LOCAL.get().getAppId()); + EntityWrapper wrapper = new EntityWrapper<>(channel); + wrapper.last("limit 0,1"); + List channels = channelMapper.selectList(wrapper); + Channel getChannel=null; + if (!channels.isEmpty()) { + getChannel = channels.get(0); + } + return getChannel; + } + + + @Override + public Channel findChannelByChannelCode(Integer appId,String channelCode) { + Channel channel = new Channel(); + channel.setAppId(appId); + channel.setChannelCode(channelCode); + EntityWrapper wrapper = new EntityWrapper<>(channel); + wrapper.last("limit 0,1"); + List channels = channelMapper.selectList(wrapper); + Channel getChannel=null; + if (!channels.isEmpty()) { + getChannel = channels.get(0); + } + return getChannel; + } } diff --git a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/UserServiceImpl.java b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/UserServiceImpl.java index dbee7bd..c0198a5 100644 --- a/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/UserServiceImpl.java +++ b/modules/app-version-manager/src/main/java/com/tairanchina/csp/avm/service/impl/UserServiceImpl.java @@ -38,6 +38,152 @@ public class UserServiceImpl implements UserService { @Autowired private TokenService tokenService; + @Override + public ServiceResult getUser(String userId) { + EntityWrapper userEntityWrapper = new EntityWrapper<>(); + userEntityWrapper.eq(true,"user_id", userId); + List userList = userMapper.selectList(userEntityWrapper); + if(userList==null || userList.size()==0){ + return ServiceResultConstants.USER_NOT_FOUND; + } + if (userList.size()>0) { + return ServiceResult.ok(userList.get(0)); + } else { + return ServiceResultConstants.DB_ERROR; + } + } + + @Override + public ServiceResult addUser(String phone, String userName, String password, String nickName) { + if (StringUtilsExt.hasEmpty(password, phone)) { + return ServiceResultConstants.NEED_PARAMS; + } + EntityWrapper userEntityWrapper = new EntityWrapper<>(); + userEntityWrapper.eq("phone", phone); + Integer integer = userMapper.selectCount(userEntityWrapper); + if (integer > 0) { + return ServiceResultConstants.USER_EXISTS; + } + User user = new User(); + user.setDelFlag(0); //启用用户 + user.setIsAdmin(0); //添加的用户为非管理员角色 + user.setUserId($.field.createUUID()); + user.setUsername(userName); + user.setFirstLoginTime(new Date()); + user.setPhone(phone); + if(StringUtils.isNotEmpty(nickName)){ + user.setNickName(nickName); + }else{ + user.setNickName(phone); + } + try { + String md5 = $.security.digest.digest(password + phone, ALGORITHM); // 加盐算法 + user.setPassword(md5); + Integer insert = userMapper.insert(user); + if (insert > 0) { + return ServiceResult.ok(user); + } else { + return ServiceResultConstants.DB_ERROR; + } + } catch (NoSuchAlgorithmException e) { + logger.error("密码加密出错", e); + return ServiceResultConstants.ERROR_500; + } + } + + @Override + public ServiceResult editUser(String phone, String userName, String nickName, String userId) { + EntityWrapper userEntityWrapper = new EntityWrapper<>(); + userEntityWrapper.where("phone={0}", phone); + userEntityWrapper.where("user_id!={0}", userId); + Integer integer = userMapper.selectCount(userEntityWrapper); + if (integer > 0) { + return ServiceResultConstants.USER_EXISTS; + } + + userEntityWrapper = new EntityWrapper<>(); + userEntityWrapper.eq("user_id", userId); + List userList = userMapper.selectList(userEntityWrapper); + if(userList==null || userList.size()==0){ + return ServiceResultConstants.USER_NOT_FOUND; + } + User user=userList.get(0); + if(StringUtils.isNotEmpty(userName)){ + user.setUsername(userName); + } + user.setFirstLoginTime(new Date()); + if(StringUtils.isNotEmpty(phone)){ + user.setPhone(phone); + } + if(StringUtils.isNotEmpty(nickName)){ + user.setNickName(nickName); + }else{ + user.setNickName(phone); + } + EntityWrapper userUpdateWrapper = new EntityWrapper<>(); + userUpdateWrapper.eq("user_id", userId); + Integer update = userMapper.update(user,userUpdateWrapper); + if (update > 0) { + return ServiceResult.ok(user); + } else { + return ServiceResultConstants.DB_ERROR; + } + } + + + + @Override + public ServiceResult restPwd(String password, String userId) { + EntityWrapper userEntityWrapper = new EntityWrapper<>(); + userEntityWrapper.eq("user_id", userId); + List userList = userMapper.selectList(userEntityWrapper); + if(userList==null || userList.size()==0){ + return ServiceResultConstants.USER_NOT_FOUND; + } + User user=userList.get(0); + if(StringUtils.isNotEmpty(password)){ + try { + String phone=user.getPhone(); + String md5 = $.security.digest.digest(password + phone, ALGORITHM); // 加盐算法 + user.setPassword(md5); + } catch (NoSuchAlgorithmException e) { + logger.error("密码加密出错", e); + return ServiceResultConstants.ERROR_500; + } + } + user.setFirstLoginTime(new Date()); + EntityWrapper userUpdateWrapper = new EntityWrapper<>(); + userUpdateWrapper.eq("user_id", userId); + Integer update = userMapper.update(user,userUpdateWrapper); + if (update > 0) { + return ServiceResult.ok(user); + } else { + return ServiceResultConstants.DB_ERROR; + } + } + + @Override + public ServiceResult delUser(String userId) { + + EntityWrapper userEntityWrapper = new EntityWrapper<>(); + userEntityWrapper.eq("user_id", userId); + List userList = userMapper.selectList(userEntityWrapper); + if(userList==null || userList.size()==0){ + return ServiceResultConstants.USER_NOT_FOUND; + } + User user=userList.get(0); + user.setFirstLoginTime(new Date()); + user.setDelFlag(-1); //软删除 + EntityWrapper userUpdateWrapper = new EntityWrapper<>(); + userUpdateWrapper.eq("user_id", userId); + Integer update = userMapper.update(user,userUpdateWrapper); + if (update > 0) { + return ServiceResult.ok(user); + } else { + return ServiceResultConstants.DB_ERROR; + } + } + @Override public ServiceResult register(String phone, String password) { if (StringUtilsExt.hasEmpty(password, phone)) { @@ -51,6 +197,7 @@ public ServiceResult register(String phone, String password) { } Integer count = userMapper.selectCount(new EntityWrapper<>()); User user = new User(); + user.setDelFlag(0); //注册用户为启用 if (count > 0) { user.setIsAdmin(0); } else { @@ -83,8 +230,14 @@ public ServiceResult login(String phone, String password) { User userQuery = new User(); userQuery.setPhone(phone); User user = userMapper.selectOne(userQuery); - if (Objects.isNull(user)) { - return ServiceResultConstants.WRONG_PHONE_PASSWORD; + if (Objects.isNull(user)) { // + return ServiceResultConstants.USER_NOT_FOUND; + } + else if(user.getDelFlag()==-1){ + return ServiceResultConstants.WRONG_USER_DEL; + } + else if(user.getDelFlag()==1){ + return ServiceResultConstants.WRONG_USER_DISABLE; } try { String md5 = $.security.digest.digest(password + phone, ALGORITHM); // 加盐算法 diff --git a/modules/app-version-manager/src/main/resources/application-dev.yml b/modules/app-version-manager/src/main/resources/application-dev.yml index f75f85d..de2f43a 100644 --- a/modules/app-version-manager/src/main/resources/application-dev.yml +++ b/modules/app-version-manager/src/main/resources/application-dev.yml @@ -1,18 +1,72 @@ + spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://mysql:3306/app_version_manager?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false + url: jdbc:mysql://127.0.0.1:3306/app_version_manager?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false username: root password: 123456 + redis: - host: redis + host: 47.104.184.31 port: 6379 - database: 0 + database: 4 pool: max-active: 10 max-wait: -1 max-idle: 1 min-idle: 0 + password: itcchian.ny.com + +# redis: +# host: 127.0.0.1 +# port: 6379 +# database: 4 +# pool: +# max-active: 10 +# max-wait: -1 +# max-idle: 1 +# min-idle: 0 +# password: 123456 + +##--------------------------------------------------------------------------- +## upload config +##--------------------------------------------------------------------------- + http: + multipart: + enabled: true + max-file-size: 1000Mb + max-request-size: 1500Mb server: - port: 8086 \ No newline at end of file + port: 9090 + context-path: /app_version_manager + +##--------------------------------------------------------------------------- +## Log config +##--------------------------------------------------------------------------- +logging: + level: + root: INFO + org: + springframework: + web: ERROR + data: ERROR + activiti: + engine: + impl: + persistence: + entity: trace + com: + tairanchina: INFO + springfox: + documentation: ERROR +config: + classpath: logback-dev.xml +log_dir: D:/logs/app_version_manager/dev + +is_use_project_path: false +uploadFilePath: apk +downloadFileUrl: app_version_manager/apk/downloadFile + +defaultUploadFilePath: D:\\uploadFile\\ +defaultDownloadFileContextPath: app_version_apk diff --git a/modules/app-version-manager/src/main/resources/application-pro.yml b/modules/app-version-manager/src/main/resources/application-pro.yml new file mode 100644 index 0000000..79208c6 --- /dev/null +++ b/modules/app-version-manager/src/main/resources/application-pro.yml @@ -0,0 +1,72 @@ + +spring: + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://127.0.0.1:3306/app_version_manager?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false + username: root + password: 123456 + +# redis: +# host: 47.104.184.31 +# port: 6379 +# database: 4 +# pool: +# max-active: 10 +# max-wait: -1 +# max-idle: 1 +# min-idle: 0 +# password: itcchian.ny.com + + redis: + host: 127.0.0.1 + port: 6379 + database: 4 + pool: + max-active: 10 + max-wait: -1 + max-idle: 1 + min-idle: 0 + password: 123456 + +##--------------------------------------------------------------------------- +## upload config +##--------------------------------------------------------------------------- + + http: + multipart: + enabled: true + max-file-size: 1000Mb + max-request-size: 1500Mb +server: + port: 9996 + context-path: /app_version_manager + +##--------------------------------------------------------------------------- +## Log config +##--------------------------------------------------------------------------- +logging: + level: + root: INFO + org: + springframework: + web: ERROR + data: ERROR + activiti: + engine: + impl: + persistence: + entity: trace + com: + tairanchina: INFO + springfox: + documentation: ERROR +config: + classpath: logback-dev.xml +log_dir: D:/logs/app_version_manager/dev + +is_use_project_path: false +uploadFilePath: apk +downloadFileUrl: app_version_manager/apk/downloadFile + +defaultUploadFilePath: D:\\uploadFile\\ +defaultDownloadFileContextPath: app_version_apk \ No newline at end of file diff --git a/modules/app-version-manager/src/main/resources/application.yml b/modules/app-version-manager/src/main/resources/application.yml index 35dbc02..9914449 100644 --- a/modules/app-version-manager/src/main/resources/application.yml +++ b/modules/app-version-manager/src/main/resources/application.yml @@ -1,6 +1,6 @@ spring: profiles: - active: dev + active: pro application: name: app-version-manager jackson: @@ -9,6 +9,7 @@ spring: time-zone: GMT+8 + #mybatis mybatis-plus: mapper-locations: classpath:/mapper/*Mapper.xml @@ -51,6 +52,6 @@ dew: mq: redis config: ha-enabled: false #使用到MQ的时候最好设为true,提高MQ消息收发的完整性 -logging: - path: ./logs - file: avm.log \ No newline at end of file +#logging: +# path: ./logs +# file: avm.log \ No newline at end of file diff --git a/modules/app-version-manager/src/main/resources/logback-dev.xml b/modules/app-version-manager/src/main/resources/logback-dev.xml new file mode 100644 index 0000000..6335048 --- /dev/null +++ b/modules/app-version-manager/src/main/resources/logback-dev.xml @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + %black(控制台-) %green([%thread]) %line %highlight(%-5level) %boldMagenta(%logger) - %cyan(%msg%n) + + + + + + true + ${log_dir}/app_version_manager_web.log + + + ${log_dir}/app_version_manager_web-%d{yyyy-MM-dd}.log.zip + ${maxHistory} + + + + + {"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss.SSS}","thread":"%t","line":"%line","log_level":"%p","class_name":"%C;","msg":"%m"}\n + + + + ERROR + ACCEPT + DENY + + + ${pattern} + UTF-8 + + + + + true + ${log_dir}/app_version_manager_error.log + + ${log_dir}/app_version_manager_error.%i + 1 + 20 + + + 50MB + + + + {"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss.SSS}","thread":"%t","line":"%line","log_level":"%p","class_name":"%C;","msg":"%m%n","caller":"%caller{1}"}\n + + UTF-8 + + + ERROR + + + + + true + ${log_dir}/app_version_manager_all.log + + ${log_dir}/app_version_manager_all.%i + 1 + 20 + + + 50MB + + + INFO + + + + {"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss.SSS}","thread":"%t","line":"%line","log_level":"%p","class_name":"%C;","msg":"%m%n","caller":"%caller{1}"}\n + + UTF-8 + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/app-version-manager/src/main/webapp/WEB-INF/web.xml b/modules/app-version-manager/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000..d80081d --- /dev/null +++ b/modules/app-version-manager/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,6 @@ + + + \ No newline at end of file diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avc/mapper/BaseTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avc/mapper/BaseTest.java index ee3aacc..7b14e56 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avc/mapper/BaseTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avc/mapper/BaseTest.java @@ -1,7 +1,7 @@ package com.tairanchina.csp.avc.mapper; import com.tairanchina.csp.avm.entity.LoginInfo; -import com.tairanchina.csp.avm.AppVersionManagerApplication; +import com.tairanchina.AppVersionManagerApplication; import com.tairanchina.csp.avm.utils.ThreadLocalUtils; import org.junit.Before; import org.junit.Test; diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/controller/BaseControllerTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/controller/BaseControllerTest.java index 5df2922..dd3f401 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/controller/BaseControllerTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/controller/BaseControllerTest.java @@ -2,7 +2,7 @@ import com.ecfront.dew.common.$; import com.tairanchina.csp.avm.entity.LoginInfo; -import com.tairanchina.csp.avm.AppVersionManagerApplication; +import com.tairanchina.AppVersionManagerApplication; import com.tairanchina.csp.avm.utils.ThreadLocalUtils; import org.junit.Before; import org.junit.Test; diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AdminServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AdminServiceTest.java index 99031d8..33e86dd 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AdminServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AdminServiceTest.java @@ -30,14 +30,14 @@ public void bindUserAndApp() throws Exception { String userId = "test"; int appId = 31; ServiceResult result = adminService.bindUserAndApp(userId, appId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } appId = 44444444; result = adminService.bindUserAndApp(userId, appId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -46,9 +46,9 @@ public void unbindUserAndApp() throws Exception { String userId = "test"; int appId = 31; ServiceResult result = adminService.unbindUserAndApp(userId, appId); - if (result.getData() != null) { + if (result.getRecord() != null) { - logger.info(result.getData().toString()); + logger.info(result.getRecord().toString()); }//todo ? 用户和APP未绑定,调用方法提示 {"code":10002,"message":"数据库插入错误","data":null} } @@ -60,8 +60,8 @@ public void createApp() throws Exception { app.setAppName("testAPP"); app.setTenantAppId("testTenantAppId"); ServiceResult result = adminService.createApp(app.getAppName(), app.getTenantAppId()); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -71,8 +71,8 @@ public void editApp() throws Exception { app.setAppName("testEditAPP"); app.setTenantAppId("testEditTenantAppId"); ServiceResult result = adminService.editApp(app.getId(), app.getAppName(), app.getTenantAppId()); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } //todo ? 如果要编辑的APP不存在,调用方法提示 {"code":10002,"message":"数据库插入错误","data":null} } @@ -80,8 +80,8 @@ public void editApp() throws Exception { public void deleteApp() throws Exception { Integer appId = 24; ServiceResult result = adminService.deleteApp(appId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -89,8 +89,8 @@ public void deleteApp() throws Exception { public void getApp() throws Exception { Integer id = 24; ServiceResult result = adminService.getApp(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -99,8 +99,8 @@ public void deleteAppForever() throws Exception { // Integer appId = 24; Integer appId = 20; ServiceResult result = adminService.deleteAppForever(appId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -113,8 +113,8 @@ public void listApp() throws Exception { wrapper.andNew().like("app_name", "%" + appName + "%"); } ServiceResult result = adminService.listApp(1, 10, wrapper); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -124,8 +124,8 @@ public void listAppWithBindInfo() throws Exception { String userId = "b9e980c1495e4d0582c257901d86b4ff"; wrapper.and().eq("del_flag", 0); ServiceResult result = adminService.listAppWithBindInfo(1, 10, wrapper, userId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -133,8 +133,8 @@ public void listAppWithBindInfo() throws Exception { public void listBindApp() throws Exception { String userId = "b9e980c1495e4d0582c257901d86b4ff"; ServiceResult result = adminService.listBindApp(userId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -150,8 +150,8 @@ public void listUser() throws Exception { wrapper.and().like("phone", "%" + phone + "%"); } ServiceResult result = adminService.listUser(1, 10, wrapper); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -159,8 +159,8 @@ public void listUser() throws Exception { public void isAdmin() throws Exception { LoginInfo loginInfo = ThreadLocalUtils.USER_THREAD_LOCAL.get(); ServiceResult result = adminService.isAdmin(loginInfo.getUserId()); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AndroidVersionServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AndroidVersionServiceTest.java index 4dd386f..3ad34fe 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AndroidVersionServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AndroidVersionServiceTest.java @@ -48,8 +48,8 @@ public void createAndroidVersion() throws Exception { logger.info("VERSION_TOO_LONG"); } ServiceResult result = androidVersionService.createAndroidVersion(androidVersion); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -58,8 +58,8 @@ public void createAndroidVersion() throws Exception { public void deleteAndroidVersion() throws Exception { Integer id = 14; ServiceResult result = androidVersionService.deleteAndroidVersion(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -67,8 +67,8 @@ public void deleteAndroidVersion() throws Exception { public void deleteAndroidVersionForever() throws Exception { Integer id = 14; ServiceResult result = androidVersionService.deleteAndroidVersionForever(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -86,8 +86,8 @@ public void updateAndroidVersion() throws Exception { logger.info("ALLOWLOWESTVERSION_BIG_THAN_APPVERSION"); } ServiceResult result = androidVersionService.updateAndroidVersion(androidVersion); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -110,8 +110,8 @@ public void list() throws Exception { wrapper.and().eq("version_status", versionStatus); } ServiceResult result = androidVersionService.list(1, 1, wrapper); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -119,16 +119,16 @@ public void list() throws Exception { public void findById() throws Exception { Integer id = 14; ServiceResult result = androidVersionService.findById(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @Test public void listAllVersion() throws Exception { ServiceResult result = androidVersionService.listAllVersion(); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -136,8 +136,8 @@ public void listAllVersion() throws Exception { public void delivery() throws Exception { Integer id = 14; ServiceResult result = androidVersionService.delivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -145,20 +145,20 @@ public void delivery() throws Exception { public void undelivery() throws Exception { Integer id = 14; ServiceResult result = androidVersionService.undelivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 44444; result = androidVersionService.undelivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 8; result = androidVersionService.undelivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/ApkServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/ApkServiceTest.java index aa43cd9..b6328c5 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/ApkServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/ApkServiceTest.java @@ -34,20 +34,20 @@ public void create() throws Exception { Apk apk = new Apk(); ServiceResult serviceResult = channelService.findByChannelCode(uploadFileEntity.getChannel()); if (serviceResult.getCode() == 200) { - Channel channel = (Channel) serviceResult.getData(); + Channel channel = (Channel) serviceResult.getRecord(); apk.setChannelId(channel.getId()); apk.setVersionId(uploadFileEntity.getVersionId()); apk.setOssUrl(uploadFileEntity.getOssUrl()); apk.setMd5(uploadFileEntity.getMd5()); ServiceResult result = apkService.create(apk); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } else { logger.info("找不到Channel"); ServiceResult.failed( ServiceResultConstants.APK_SAVE_ERROR.getCode(), - "文件[ " + uploadFileEntity.getFileName() + " ]录入失败,原因:" + serviceResult.getMessage() + "文件[ " + uploadFileEntity.getFileName() + " ]录入失败,原因:" + serviceResult.getInfo() ); } } @@ -72,21 +72,21 @@ public void list() throws Exception { } wrapper.and().eq("del_flag", 0); ServiceResult result = apkService.list(1, 2, wrapper, versionId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } md5 = "dsgfggggggggggg"; wrapper.and().like("md5", "%" + md5 + "%"); result = apkService.list(1, 2, wrapper, versionId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } versionId = 9999999; result = apkService.list(1, 2, wrapper, versionId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -94,20 +94,20 @@ public void list() throws Exception { public void delivery() throws Exception { Integer id = 32; ServiceResult result = apkService.delivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 45465454; result = apkService.delivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 27; result = apkService.delivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -115,20 +115,20 @@ public void delivery() throws Exception { public void undelivery() throws Exception { Integer id = 32; ServiceResult result = apkService.undelivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 45465454; result = apkService.undelivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 27; result = apkService.undelivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -136,20 +136,20 @@ public void undelivery() throws Exception { public void delete() throws Exception { Integer id = 32; ServiceResult result = apkService.delete(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 45465454; result = apkService.delete(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 27; result = apkService.delete(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -158,20 +158,20 @@ public void exists() throws Exception { String channelCode = "qudao"; Integer versionId = 14; ServiceResult result = apkService.exists(channelCode, versionId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } channelCode = "dsfdfdffds"; result = apkService.exists(channelCode, versionId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } channelCode = "aaaa2"; result = apkService.exists(channelCode, versionId); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -182,14 +182,14 @@ public void selectApkWithChannelCode() throws Exception { String md5 = ""; Integer deliveryStatus = null; ServiceResult result = apkService.getApkPageWithChannelCode(1, 10, versionId, channelCode, md5, deliveryStatus); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } versionId = 999999; result = apkService.getApkPageWithChannelCode(1, 10, versionId, channelCode, md5, deliveryStatus); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AppServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AppServiceTest.java index 8fd74c0..3f93c64 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AppServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/AppServiceTest.java @@ -18,9 +18,9 @@ public class AppServiceTest extends BaseTest { @Test public void getAppListWithUserId() throws Exception { ServiceResult result = appService.getAppListWithUserId(1, 10, ThreadLocalUtils.USER_THREAD_LOCAL.get().getUserId()); - if (result.getData() != null) { - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } } @@ -28,9 +28,9 @@ public void getAppListWithUserId() throws Exception { @Test public void getMyApp() throws Exception { ServiceResult result = appService.getMyApp(); - if (result.getData() != null) { - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/BaseTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/BaseTest.java index 2dee135..cbc989e 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/BaseTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/BaseTest.java @@ -1,7 +1,7 @@ package com.tairanchina.csp.avm.service; import com.tairanchina.csp.avm.entity.LoginInfo; -import com.tairanchina.csp.avm.AppVersionManagerApplication; +import com.tairanchina.AppVersionManagerApplication; import com.tairanchina.csp.avm.utils.ThreadLocalUtils; import org.junit.Before; import org.junit.Test; diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/BasicServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/BasicServiceTest.java index 8e3dc1b..8f4cc0a 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/BasicServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/BasicServiceTest.java @@ -66,8 +66,8 @@ public void checkVersion() throws Exception { customApi.setCustomContent("content"); customApi.setCustomKey("key"); ServiceResult result = basicService.checkVersion(customApi); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/ChannelServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/ChannelServiceTest.java index 2d65f05..a5e0fc0 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/ChannelServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/ChannelServiceTest.java @@ -24,15 +24,16 @@ public void createChannel() throws Exception { channel.setChannelName("name"); channel.setChannelCode("code"); channel.setChannelType(1); - ServiceResult result = channelService.createChannel(channel.getChannelName(), channel.getChannelCode(), channel.getChannelType()); - if (result.getData() != null) { - logger.info(result.getData().toString()); + channel.setUploadFolder("D:\\uploadFolder"); + ServiceResult result = channelService.createChannel(channel.getChannelName(), channel.getChannelCode(), channel.getChannelType(),channel.getUploadFolder()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } channel.setChannelCode("fghfsghfshgfs"); - result = channelService.createChannel(channel.getChannelName(), channel.getChannelCode(), channel.getChannelType()); - if (result.getData() != null) { - logger.info(result.getData().toString()); + result = channelService.createChannel(channel.getChannelName(), channel.getChannelCode(), channel.getChannelType(),channel.getUploadFolder()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -40,8 +41,8 @@ public void createChannel() throws Exception { public void deleteChannel() throws Exception { Integer id = 24; ServiceResult result = channelService.deleteChannel(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -49,8 +50,8 @@ public void deleteChannel() throws Exception { public void deleteChannelForever() throws Exception { Integer id = 24; ServiceResult result = channelService.deleteChannelForever(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -58,20 +59,20 @@ public void deleteChannelForever() throws Exception { public void scrapChannel() throws Exception { Integer id = 22; ServiceResult result = channelService.scrapChannel(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 44444; result = channelService.scrapChannel(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 34; result = channelService.scrapChannel(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -79,20 +80,20 @@ public void scrapChannel() throws Exception { public void openChannel() throws Exception { Integer id = 31; ServiceResult result = channelService.openChannel(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 444444; result = channelService.openChannel(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 28; result = channelService.openChannel(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -114,8 +115,8 @@ public void list() throws Exception { } wrapper.orderBy("created_time", false); ServiceResult result = channelService.list(1, 10, wrapper); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -123,14 +124,14 @@ public void list() throws Exception { public void findChannel() throws Exception { Integer id = 24; ServiceResult result = channelService.findChannel(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 44444; result = channelService.findChannel(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -138,14 +139,14 @@ public void findChannel() throws Exception { public void findByChannelCode() throws Exception { String channelCode = "tttt"; ServiceResult result = channelService.findByChannelCode(channelCode); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } channelCode = "xxxx"; result = channelService.findByChannelCode(channelCode); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/CustomApiServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/CustomApiServiceTest.java index a7d1c74..39fa505 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/CustomApiServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/CustomApiServiceTest.java @@ -37,8 +37,8 @@ public void createCustomApi() throws Exception { logger.info("code is not 200.............."); } else { ServiceResult result = customApiService.createCustomApi(customApi); - if (result.getData() != null) { - CustomApi a = (CustomApi) result.getData(); + if (result.getRecord() != null) { + CustomApi a = (CustomApi) result.getRecord(); logger.info("createCustomApi:" + a.getCustomKey()); assertTrue(a != null); } @@ -61,8 +61,8 @@ public void updateCustomApi() throws Exception { logger.info("code is not 200.............."); } else { ServiceResult result = customApiService.updateCustomApi(customApi); - if (result.getData() != null) { - CustomApi a = (CustomApi) result.getData(); + if (result.getRecord() != null) { + CustomApi a = (CustomApi) result.getRecord(); logger.info("updateCustomApi:" + a.getCustomName()); assertTrue(a != null); } @@ -72,14 +72,14 @@ public void updateCustomApi() throws Exception { @Test public void deleteCustomApi() throws Exception { ServiceResult result = customApiService.deleteCustomApi(2); - if (result.getData() != null) { - String a = (String) result.getData(); + if (result.getRecord() != null) { + String a = (String) result.getRecord(); logger.info("软删" + a); } result = customApiService.deleteCustomApi(47); - if (result.getData() != null) { - String a = (String) result.getData(); + if (result.getRecord() != null) { + String a = (String) result.getRecord(); logger.info("软删" + a); } } @@ -87,14 +87,14 @@ public void deleteCustomApi() throws Exception { @Test public void deleteCustomApiForver() throws Exception { ServiceResult result = customApiService.deleteCustomApiForver(2); - if (result.getData() != null) { - Integer a = (Integer) result.getData(); + if (result.getRecord() != null) { + Integer a = (Integer) result.getRecord(); logger.info("硬删" + a); } result = customApiService.deleteCustomApiForver(47); - if (result.getData() != null) { - Integer a = (Integer) result.getData(); + if (result.getRecord() != null) { + Integer a = (Integer) result.getRecord(); logger.info("硬删" + a); } } @@ -105,15 +105,15 @@ public void getCustomApiByOne() throws Exception { customApi.setId(16); customApi.setDelFlag(0); ServiceResult result = customApiService.getCustomApiByOne(customApi); - if (result.getData() != null) { - CustomApi a = (CustomApi) result.getData(); + if (result.getRecord() != null) { + CustomApi a = (CustomApi) result.getRecord(); logger.info("getCustomApiById:" + a.getCustomName()); } customApi.setId(47); result = customApiService.getCustomApiByOne(customApi); - if (result.getData() != null) { - CustomApi a = (CustomApi) result.getData(); + if (result.getRecord() != null) { + CustomApi a = (CustomApi) result.getRecord(); logger.info("getCustomApiById:" + a.getCustomName()); } } @@ -136,14 +136,14 @@ public void list() throws Exception { public void getCustomApiByKeyAndAppId() throws Exception { String customKey = "key"; ServiceResult result = customApiService.getCustomApiByKeyAndAppId(customKey); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } customKey = "test21"; result = customApiService.getCustomApiByKeyAndAppId(customKey); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/IosVersionServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/IosVersionServiceTest.java index 93894c8..8d8dcc2 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/IosVersionServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/IosVersionServiceTest.java @@ -10,7 +10,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.StringUtils; - public class IosVersionServiceTest extends BaseTest { private static final Logger logger = LoggerFactory.getLogger(IosVersionServiceTest.class); @@ -35,8 +34,8 @@ public void create() throws Exception { logger.info("ALLOWLOWESTVERSION_BIG_THAN_APPVERSION"); } else { ServiceResult result = iosVersionService.create(iosVersion); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } } @@ -58,8 +57,8 @@ public void update() throws Exception { logger.info("ALLOWLOWESTVERSION_BIG_THAN_APPVERSION"); } else { ServiceResult result = iosVersionService.update(iosVersion); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } } @@ -68,8 +67,8 @@ public void update() throws Exception { public void delete() throws Exception { Integer id = 20; ServiceResult result = iosVersionService.delete(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -92,16 +91,16 @@ public void list() throws Exception { wrapper.and().eq("version_status", versionStatus); } ServiceResult result = iosVersionService.list(1, 10, wrapper); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @Test public void listAllVersion() throws Exception { ServiceResult result = iosVersionService.listAllVersion(); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -109,8 +108,8 @@ public void listAllVersion() throws Exception { public void delivery() throws Exception { Integer id = 20; ServiceResult result = iosVersionService.delivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -118,8 +117,8 @@ public void delivery() throws Exception { public void undelivery() throws Exception { Integer id = 20; ServiceResult result = iosVersionService.undelivery(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -127,8 +126,8 @@ public void undelivery() throws Exception { public void get() throws Exception { Integer id = 20; ServiceResult result = iosVersionService.get(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/OperationRecordLogServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/OperationRecordLogServiceTest.java index e3b6ccd..f27c80d 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/OperationRecordLogServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/OperationRecordLogServiceTest.java @@ -29,8 +29,8 @@ public void createOperationRecordLog() throws Exception { .setResultMessage("test") .setCreatedBy("test"); ServiceResult result = operationRecordLogService.createOperationRecordLog(operationRecordLog); - if (result.getData() != null) { - System.out.println(result.getData()); + if (result.getRecord() != null) { + System.out.println(result.getRecord()); } } @@ -38,9 +38,9 @@ public void createOperationRecordLog() throws Exception { public void deleteOperationRecordLog() throws Exception { Integer id = 50; ServiceResult result = operationRecordLogService.deleteOperationRecordLogForever(id); - if (result.getData() != null) { - if (result.getData() != null) { - System.out.println(result.getData()); + if (result.getRecord() != null) { + if (result.getRecord() != null) { + System.out.println(result.getRecord()); } } } @@ -49,8 +49,8 @@ public void deleteOperationRecordLog() throws Exception { public void deleteOperationRecordLogForever() throws Exception { Integer id = 50; ServiceResult result = operationRecordLogService.deleteOperationRecordLogForever(id); - if (result.getData() != null) { - System.out.println(result.getData()); + if (result.getRecord() != null) { + System.out.println(result.getRecord()); } } @@ -58,7 +58,7 @@ public void deleteOperationRecordLogForever() throws Exception { public void getOperationRecordLogById() throws Exception { Integer id = 54; ServiceResult result = operationRecordLogService.getOperationRecordLogById(id); - OperationRecordLog operationRecordLog = (OperationRecordLog) result.getData(); + OperationRecordLog operationRecordLog = (OperationRecordLog) result.getRecord(); Object jsonObject = operationRecordLog.getOperationContent(); System.out.println(jsonObject); } @@ -87,16 +87,16 @@ public void list() throws Exception { wrapper.andNew().eq("del_flag", 0); wrapper.orderBy("created_time", false); ServiceResult result = operationRecordLogService.list(page, pageSize, wrapper); - if (result.getData() != null) { - System.out.println(result.getData()); + if (result.getRecord() != null) { + System.out.println(result.getRecord()); } } @Test public void getListByQuery() throws Exception { ServiceResult result = operationRecordLogService.getListByQuery(1, 10, null, null, null, null, null, null,null,null); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/RnPackageServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/RnPackageServiceTest.java index 9834fc0..b85a2ea 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/RnPackageServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/RnPackageServiceTest.java @@ -34,8 +34,8 @@ public void create() throws Exception { // ServiceResult serviceResult = basicService.checkVersion(rnPackage); ServiceResult result = rnPackageService.create(rnPackage); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -44,14 +44,14 @@ public void create() throws Exception { public void delete() throws Exception { Integer id = 17; ServiceResult result = rnPackageService.delete(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 3; result = rnPackageService.delete(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -67,32 +67,32 @@ public void update() throws Exception { rnPackage.setRnVersion("rnversion"); rnPackage.setRnUpdateLog("log"); ServiceResult result = rnPackageService.update(rnPackage); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } rnPackage.setId(null); result = rnPackageService.update(rnPackage); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } rnPackage.setId(0); result = rnPackageService.update(rnPackage); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } rnPackage.setId(17); result = rnPackageService.update(rnPackage); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } rnPackage.setAppId(333); result = rnPackageService.update(rnPackage); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -117,8 +117,8 @@ public void list() throws Exception { wrapper.orderBy("created_time", false); ServiceResult result = rnPackageService.list(1, 10, wrapper); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -126,14 +126,14 @@ public void list() throws Exception { public void find() throws Exception { Integer id = 17; ServiceResult result = rnPackageService.find(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 3333; result = rnPackageService.find(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/RnRouteServiceTest.java b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/RnRouteServiceTest.java index 8a8c33b..1065bf6 100644 --- a/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/RnRouteServiceTest.java +++ b/modules/app-version-manager/src/test/java/com/tairanchina/csp/avm/service/RnRouteServiceTest.java @@ -36,8 +36,8 @@ public void create() throws Exception { logger.info("code is not 200.............."); } else { ServiceResult result = rnRouteService.create(rnRoute); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } } @@ -46,20 +46,20 @@ public void create() throws Exception { public void delete() throws Exception { Integer id = 17; ServiceResult result = rnRouteService.delete(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 9; result = rnRouteService.delete(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 999999; result = rnRouteService.delete(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -80,40 +80,40 @@ public void update() throws Exception { logger.info("code is not 200.............."); } else { ServiceResult result = rnRouteService.update(rnRoute); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } rnRoute.setId(null); ServiceResult result = rnRouteService.update(rnRoute); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } rnRoute.setId(0); result = rnRouteService.update(rnRoute); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } rnRoute.setId(9); result = rnRouteService.update(rnRoute); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } rnRoute.setId(999999); result = rnRouteService.update(rnRoute); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } rnRoute.setId(17); rnRoute.setAppId(2222); result = rnRouteService.update(rnRoute); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -141,8 +141,8 @@ public void list() throws Exception { } wrapper.orderBy("created_time", false); ServiceResult result = rnRouteService.list(1, 10, wrapper); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -150,20 +150,20 @@ public void list() throws Exception { public void find() throws Exception { Integer id = 17; ServiceResult result = rnRouteService.find(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 999999; result = rnRouteService.find(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } id = 7; result = rnRouteService.find(id); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-rest/pom.xml b/modules/app-version-rest/pom.xml index a3c8df8..6e5fcf9 100644 --- a/modules/app-version-rest/pom.xml +++ b/modules/app-version-rest/pom.xml @@ -1,25 +1,22 @@ + 4.0.0 + com.tairanchina.csp.avm + app-version-rest + app-version-rest + 1.0.0-RC-SNAPSHOT + war + APP版本管理REST端 com.tairanchina.csp.avm app-version - 1.1.0-RC + 1.0.0-RC-SNAPSHOT ../../pom.xml - app-version-rest - app-version-rest - APP 版本管理 REST 端 - jar - - - true - true - - com.tairanchina.csp.avm @@ -28,20 +25,79 @@ mysql mysql-connector-java + 6.0.6 - - - eu.bitwalker - UserAgentUtils - - - org.springframework.boot - spring-boot-starter-test - test + javax.servlet + javax.servlet-api + 4.0.1 - + + app_version_rest + + + + org.apache.maven.plugins + maven-war-plugin + ${maven.war.plugin.version} + + + ${project.build.directory} + + + + + org.codehaus.mojo + tomcat-maven-plugin + ${tomcat-maven-plugin} + + http://192.168.1.173/manager/text + devTomcat + /dev + + + + + org.springframework.boot + spring-boot-maven-plugin + ${spring.boot.maven.plugin.version} + + true + + + + + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven.compiler.plugin.version} + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-surefire-plugin + ${maven.surefire.plugin.version} + + true + + + + + + + diff --git a/modules/app-version-rest/src/main/java/com/tairanchina/csp/AppVersionRestApplication.java b/modules/app-version-rest/src/main/java/com/tairanchina/csp/AppVersionRestApplication.java new file mode 100644 index 0000000..53ffa22 --- /dev/null +++ b/modules/app-version-rest/src/main/java/com/tairanchina/csp/AppVersionRestApplication.java @@ -0,0 +1,51 @@ +package com.tairanchina.csp; + +import com.baomidou.mybatisplus.plugins.PaginationInterceptor; +import org.mybatis.spring.annotation.MapperScan; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; +import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.web.support.SpringBootServletInitializer; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; +import javax.annotation.PostConstruct; + +@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) +@EnableAutoConfiguration +@EnableScheduling +@ComponentScan(basePackages = "com.tairanchina.csp") +@Configuration +@MapperScan("com.tairanchina.csp.avm.mapper") +public class AppVersionRestApplication extends SpringBootServletInitializer { + + private static final Logger logger = LoggerFactory.getLogger(AppVersionRestApplication.class); + + /** + * 分页插件 + */ + @Bean + public PaginationInterceptor paginationInterceptor() { + return new PaginationInterceptor(); + } + + @PostConstruct + void started() { + //设置时区为UTC格式 +// TimeZone.setDefault(TimeZone.getTimeZone("UTC")); + } + + public static void main(String[] args) { + new SpringApplicationBuilder(AppVersionRestApplication.class).run(args); + } + + + @Override + protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { + return application.sources(AppVersionRestApplication.class); + } +} diff --git a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/config/AppVersionRestAPIConfig.java b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/config/AppVersionRestAPIConfig.java new file mode 100644 index 0000000..5223c7b --- /dev/null +++ b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/config/AppVersionRestAPIConfig.java @@ -0,0 +1,34 @@ +package com.tairanchina.csp.avm.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.context.request.async.DeferredResult; +import springfox.documentation.builders.ApiInfoBuilder; +import springfox.documentation.service.ApiInfo; +import springfox.documentation.service.Contact; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.plugins.Docket; + +import static springfox.documentation.builders.PathSelectors.regex; + +@Configuration +public class AppVersionRestAPIConfig { + + + @Bean + public Docket appVersionApiDoc() { + return new Docket(DocumentationType.SWAGGER_2) + .groupName("APP版本控制相关接口") + .genericModelSubstitutes(DeferredResult.class) + .useDefaultResponseMessages(false) + .forCodeGeneration(true).pathMapping("/").select() + .paths(regex("/app/api/.*"))// 过滤的接口 + .build().apiInfo(apiInfo()); + } + + + private ApiInfo apiInfo() { + ApiInfo apiInfo = new ApiInfoBuilder().title("APP版本控制").description("服务端接口").version("1.0.0").termsOfServiceUrl("/doc.html").contact(new Contact("刘春","北京英孚泰克信息技术股份有限公司","itcchina.com")).license("北京英孚泰克信息技术股份有限公司").licenseUrl("http://www.itcchina.com/").build(); + return apiInfo; + } +} diff --git a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/config/AppVersionRestWebConfig.java b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/config/AppVersionRestWebConfig.java new file mode 100644 index 0000000..c0cec4f --- /dev/null +++ b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/config/AppVersionRestWebConfig.java @@ -0,0 +1,29 @@ +package com.tairanchina.csp.avm.config; + +import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer; +import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer; +import org.springframework.boot.web.servlet.ErrorPage; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.HttpStatus; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; + +/** + * Created by hzlizx on 2018/5/10 0010 + */ +@Configuration +public class AppVersionRestWebConfig extends WebMvcConfigurerAdapter{ + + @Bean + public EmbeddedServletContainerCustomizer containerCustomizer() { + return new EmbeddedServletContainerCustomizer() { + @Override + public void customize(ConfigurableEmbeddedServletContainer container) { + //ErrorPage error401Page = new ErrorPage(HttpStatus.UNAUTHORIZED, "/401.html"); + ErrorPage error404Page = new ErrorPage(HttpStatus.NOT_FOUND, "/404.html"); + // ErrorPage error500Page = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/500.html"); + container.addErrorPages( error404Page); + } + }; + } +} diff --git a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/CustomApiController.java b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/CustomApiController.java index 1c7e81e..cbfae63 100644 --- a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/CustomApiController.java +++ b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/CustomApiController.java @@ -17,9 +17,9 @@ /** * Created by hzlizx on 2018/6/14 0014 */ -@Api(value = "/c", description = "自定义接口相关") +@Api(tags= "自定义接口相关") @RestController -@RequestMapping("/c") +@RequestMapping("/app/api/appVersion/customApiController") public class CustomApiController { private static final Logger logger = LoggerFactory.getLogger(CustomApiController.class); diff --git a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/RnController.java b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/RnController.java index ef59ab3..4de4db4 100644 --- a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/RnController.java +++ b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/RnController.java @@ -9,18 +9,25 @@ import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.PropertySource; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * Created by hzlizx on 2018/6/22 0022 */ -@Api(value = "/", description = "RN相关接口") +/** + * Created by hzlizx on 2018/6/14 0014 + */ +@Api(tags= "RN相关接口") @RestController +@RequestMapping("/app/api/appVersion/rnController") public class RnController { + @Autowired private RnService rnService; diff --git a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/VersionController.java b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/VersionController.java index 076d877..ce95509 100644 --- a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/VersionController.java +++ b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/controller/VersionController.java @@ -3,7 +3,9 @@ import com.tairanchina.csp.avm.constants.ServiceResultConstants; import com.tairanchina.csp.avm.dto.ServiceResult; import com.tairanchina.csp.avm.entity.Apk; +import com.tairanchina.csp.avm.entity.Channel; import com.tairanchina.csp.avm.service.AndroidVersionService; +import com.tairanchina.csp.avm.service.ChannelService; import com.tairanchina.csp.avm.service.IosVersionService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -14,20 +16,24 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.PropertySource; +import org.springframework.util.ResourceUtils; +import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; +import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import java.io.IOException; +import java.io.*; +import java.net.URLEncoder; import java.util.HashMap; /** * Created by hzlizx on 2018/6/14 0014 */ -@Api(value = "/v", description = "版本相关接口") +@Api(tags= "版本相关接口") @RestController -@RequestMapping("/v") +@RequestMapping("/app/api/appVersion/versionController") @PropertySource("classpath:application.yml") public class VersionController { private static final Logger logger = LoggerFactory.getLogger(VersionController.class); @@ -69,21 +75,21 @@ public ServiceResult version(@PathVariable String tenantAppId, if ("android".equalsIgnoreCase(platform)) { ServiceResult serviceResult = androidVersionService.findNewestVersion(tenantAppId, version, channelCode); if (serviceResult.getCode() == 200) { - HashMap data = (HashMap) serviceResult.getData(); + HashMap data = (HashMap) serviceResult.getRecord(); String downloadUrl = (String) data.get("downloadUrl"); -// if("prod".equals(active)){ -// downloadUrl = baseUrl + downloadUrl; -// }else { -// -// String protocol = request.getScheme(); -// if(request.getServerPort()==80){ -// downloadUrl = protocol.toLowerCase()+"://"+request.getServerName()+downloadUrl; -// }else { -// downloadUrl = protocol.toLowerCase()+"://"+request.getServerName()+":"+request.getServerPort()+downloadUrl; -// } -// } - downloadUrl = baseUrl + downloadUrl; - data.put("downloadUrl", downloadUrl); + String downloadApkUrl = (String) data.get("downloadApkUrl"); +// if("prod".equals(active)){ +// downloadUrl = baseUrl + downloadUrl; +// }else { +// String protocol = request.getScheme(); +// if(request.getServerPort()==80){ +// downloadUrl = protocol.toLowerCase()+"://"+request.getServerName()+downloadUrl; +// }else { +// downloadUrl = protocol.toLowerCase()+"://"+request.getServerName()+":"+request.getServerPort()+downloadUrl; +// } +// } + data.put("downloadUrl", baseUrl + downloadUrl); + data.put("downloadApkUrl", baseUrl + downloadApkUrl); return ServiceResult.ok(data); } return androidVersionService.findNewestVersion(tenantAppId, version, channelCode); @@ -96,7 +102,6 @@ public ServiceResult version(@PathVariable String tenantAppId, /** * 下载某个版本 - * * @param apkId APK的ID * @return 跳转下载 */ @@ -105,9 +110,8 @@ public ServiceResult version(@PathVariable String tenantAppId, @ApiImplicitParam(name = "apkId", value = "APK包的ID", required = true), }) @GetMapping("/download/{apkId}") - public ServiceResult download(@PathVariable int apkId) throws IOException { + public ServiceResult download(@PathVariable int apkId,HttpServletRequest httpServletRequest,HttpServletResponse httpServletResponse) throws IOException { logger.info("下载了APK[{}]", apkId); - if (apkId < 1) { return ServiceResultConstants.NEED_PARAMS; } else { @@ -116,12 +120,92 @@ public ServiceResult download(@PathVariable int apkId) throws IOException { return serviceResult; } else { //跳转下载 - Apk apk = (Apk) serviceResult.getData(); - HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse(); - response.sendRedirect(apk.getOssUrl()); - return ServiceResultConstants.STARTED_DOWNLOAD; + Apk apk = (Apk) serviceResult.getRecord(); +// HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse(); +// String downloadUrl=baseUrl+apk.getOssUrl(); +// response.sendRedirect(downloadUrl); + ServiceResult serviceResult1=downloadFile(apk.getAppId(),apk.getChannelId(),apk.getApkName(),httpServletRequest,httpServletResponse); + return serviceResult1; + } + } + } + + @Autowired + private ChannelService channelService; + + @Value("${is_use_project_path}") + private boolean is_use_project_path; + @Value("${uploadFilePath}") + private String uploadFilePath; + @Value("${downloadFileUrl}") + private String downloadFileUrl; + + private ServiceResult downloadFile(Integer appId,Integer channelId,String fileName,HttpServletRequest httpServletRequest,HttpServletResponse httpServletResponse){ + //如果文件名不为空,则进行下载 + if(!StringUtils.isEmpty(fileName)){ + Channel channel=this.channelService.findChannelByChannelId(appId,channelId); + String disk_uploadFilePath=channel.getUploadFolder(); + System.out.print("fileName="+fileName); + String downloadFileName=fileName; + String downloadFilePath= null; + try { + if(is_use_project_path){ //使用项目中编译目录文件夹 + downloadFilePath = ResourceUtils.getURL("classpath:").getPath() + uploadFilePath + "\\" + channel.getChannelCode()+ "\\" + downloadFileName; + }else{ + downloadFilePath = disk_uploadFilePath + "\\" + downloadFileName; + } + } catch (FileNotFoundException e) { + e.printStackTrace(); + } + File downloadFile=new File(downloadFilePath); + //如果文件存在,则进行下载 + if(downloadFile.exists()){ + + // 实现文件下载 + FileInputStream fis = null; + BufferedInputStream bis = null; + try { + fis = new FileInputStream(downloadFile); + bis = new BufferedInputStream(fis); + byte[] buffer = new byte[bis.available()]; + bis.read(buffer); + + // 设置文件大小 + // 清空response + + + httpServletResponse.reset(); + + // 配置文件下载 + httpServletResponse.setContentType("application/octet-stream"); + httpServletResponse.addHeader("Content-Length",String.valueOf(downloadFile.length())); + try{ + // 下载文件能正常显示中文 + + httpServletResponse.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(downloadFileName,"UTF-8")); + } catch (UnsupportedEncodingException e){ + System.out.println("Download failed!"); + return ServiceResult.failed(); + } + OutputStream os = httpServletResponse.getOutputStream(); + os.write(buffer); + os.flush(); + os.close(); + if (bis != null) { + bis.close(); + } + if (fis != null) { + fis.close(); + } + System.out.println("Download successfully!"); + return ServiceResult.ok(); + } catch (IOException e) { + System.out.println("Download failed!"); + return ServiceResult.failed(); + } } } + return ServiceResult.failed(); } /** diff --git a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/ChannelService.java b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/ChannelService.java new file mode 100644 index 0000000..a8865f5 --- /dev/null +++ b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/ChannelService.java @@ -0,0 +1,21 @@ +package com.tairanchina.csp.avm.service; + +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.tairanchina.csp.avm.dto.ServiceResult; +import com.tairanchina.csp.avm.entity.Channel; + +/** + * 渠道管理 + * Created by hzlizx on 2018/6/6 0006 + */ +public interface ChannelService { + + /**** + * 根据appId和channelCode找到Channel + * @param appId:appId + * @param channelId: 渠道ID + * @return + ****/ + Channel findChannelByChannelId(Integer appId,Integer channelId); + +} diff --git a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/impl/AndroidVersionServiceImpl.java b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/impl/AndroidVersionServiceImpl.java index c10c6e3..35c7c9c 100644 --- a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/impl/AndroidVersionServiceImpl.java +++ b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/impl/AndroidVersionServiceImpl.java @@ -19,6 +19,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -49,6 +50,9 @@ public class AndroidVersionServiceImpl implements AndroidVersionService { @Autowired private ApkMapper apkMapper; + @Value("${rest.base.url}") + private String baseUrl; + @Override public ServiceResult findNewestVersion(String tenantAppId, String version, String channelCode) { logger.debug("查询tenantAppId为{}的应用...", tenantAppId); @@ -58,12 +62,25 @@ public ServiceResult findNewestVersion(String tenantAppId, String version, Strin } logger.debug("找到应用:{}", appSelected.getAppName()); + //检测传递的版本号是否真实存在 ExtWrapper androidVersionEntityWrapper = new ExtWrapper<>(); androidVersionEntityWrapper.and().eq("app_id", appSelected.getId()); androidVersionEntityWrapper.and().eq("del_flag", 0); androidVersionEntityWrapper.and().eq("version_status", 1); - androidVersionEntityWrapper.setVersionSort("app_version", false); + androidVersionEntityWrapper.and().eq("app_version", version); List androidVersions = androidVersionMapper.selectList(androidVersionEntityWrapper); + if (androidVersions.isEmpty()) { + logger.debug("版本号不存在"); + return ServiceResultConstants.NO_EXISTS_VERSION; + } + + //查询该APP所有的版本 + androidVersionEntityWrapper = new ExtWrapper<>(); + androidVersionEntityWrapper.and().eq("app_id", appSelected.getId()); + androidVersionEntityWrapper.and().eq("del_flag", 0); + androidVersionEntityWrapper.and().eq("version_status", 1); + androidVersionEntityWrapper.setVersionSort("app_version", false); + androidVersions = androidVersionMapper.selectList(androidVersionEntityWrapper); if (androidVersions.isEmpty()) { logger.debug("查询不到新版本或者新版本未上架,当前版本为最新"); return ServiceResultConstants.NO_NEW_VERSION; @@ -75,14 +92,17 @@ public ServiceResult findNewestVersion(String tenantAppId, String version, Strin Collections.reverse(androidVersions); for (AndroidVersion a : androidVersions) { String androidVersionMin = a.getAppVersion(); - if (VersionCompareUtils.compareVersion(version, androidVersionMin) >= 0) { - androidVersionsResult.remove(a); - } +// if(VersionCompareUtils.compareVersion(version, androidVersionMin) >= 0) { +// androidVersionsResult.remove(a); +// } + if(VersionCompareUtils.compareVersion(version, androidVersionMin) > 0) { + androidVersionsResult.remove(a); + } } } if (androidVersionsResult.isEmpty()) { - logger.debug("查询不到新版本或者新版本未上架,当前版本为最新"); - return ServiceResultConstants.NO_NEW_VERSION; + logger.debug("查询不到新版本或者新版本未上架,当前版本为最新"); + return ServiceResultConstants.NO_NEW_VERSION; } logger.debug("查询到的筛选过的版本:"); androidVersionsResult.forEach(androidVersion -> logger.debug(androidVersion.getAppVersion())); @@ -117,7 +137,7 @@ public ServiceResult findNewestVersion(String tenantAppId, String version, Strin for (AndroidVersion androidVersion : androidVersionsResult) { if (channelSelected != null) { if (channelSelected.getChannelStatus() == 1) { - HashMap apk = this.findApk(androidVersion, appSelected.getId(), channelSelected.getId()); + HashMap apk = this.findApk(version,androidVersion, appSelected.getId(), channelSelected.getId()); if (apk != null) { logger.debug("结果:{}", $.json.toJsonString(apk)); return ServiceResult.ok(apk); @@ -125,7 +145,7 @@ public ServiceResult findNewestVersion(String tenantAppId, String version, Strin } } if (officialChannel != null) { - HashMap apk = this.findApk(androidVersion, appSelected.getId(), officialChannel.getId()); + HashMap apk = this.findApk(version,androidVersion, appSelected.getId(), officialChannel.getId()); if (apk != null) { logger.debug("结果:{}", $.json.toJsonString(apk)); return ServiceResult.ok(apk); @@ -195,7 +215,8 @@ public ServiceResult findNewestApk(String tenantAppId, String channelCode) { if (!apks.isEmpty()) { try { HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse(); - response.sendRedirect(apks.get(0).getOssUrl()); + String downloadUrl= baseUrl + apks.get(0).getOssUrl(); + response.sendRedirect(downloadUrl); break; } catch (IOException e) { e.printStackTrace(); @@ -224,7 +245,8 @@ private ServiceResult loopSelectAndroidVersions(List list, int a logger.debug("找到APK,开始组装返回值..."); HashMap map = new HashMap<>(); map.put("allowLowestVersion", androidVersion.getAllowLowestVersion()); - map.put("downloadUrl", "/v/download/" + apkSelected.getId()); + //map.put("downloadUrl", "/v/download/" + apkSelected.getId()); + map.put("downloadUrl", apkSelected.getDownloadUrl()); map.put("description", androidVersion.getVersionDescription()); map.put("forceUpdate", androidVersion.getUpdateType()); map.put("version", androidVersion.getAppVersion()); @@ -234,6 +256,36 @@ private ServiceResult loopSelectAndroidVersions(List list, int a return null; } + private HashMap findApk(String currentVersion,AndroidVersion androidVersion, int appId, int channelId) { + int versionId = androidVersion.getId(); + Apk apk = new Apk(); + apk.setAppId(appId); + apk.setChannelId(channelId); + apk.setVersionId(versionId); + apk.setDelFlag(0); + apk.setDeliveryStatus(1); + List apks = apkMapper.selectList(new EntityWrapper<>(apk)); + if (!apks.isEmpty()) { + Apk apkSelected = apks.get(0); + logger.debug("找到APK,开始组装返回值..."); + HashMap map = new HashMap<>(); + map.put("allowLowestVersion", androidVersion.getAllowLowestVersion()); + map.put("apkName", apkSelected.getApkName()); +// map.put("downloadUrl", "/v/download/" + apkSelected.getId()); + map.put("downloadUrl", apkSelected.getDownloadUrl()); + map.put("downloadApkUrl", apkSelected.getDownloadApkUrl()); + map.put("description", androidVersion.getVersionDescription()); + if(currentVersion.equals(androidVersion.getAppVersion())){ //如果与最新版本号相同则不进行更新 + map.put("forceUpdate", AndroidVersion.UpdateType.UPDATETYPE_NO.code()); + }else{ + map.put("forceUpdate", androidVersion.getUpdateType()); + } + map.put("version", androidVersion.getAppVersion()); + return map; + } + return null; + } + private HashMap findApk(AndroidVersion androidVersion, int appId, int channelId) { int versionId = androidVersion.getId(); Apk apk = new Apk(); @@ -248,7 +300,10 @@ private HashMap findApk(AndroidVersion androidVersion, int appId logger.debug("找到APK,开始组装返回值..."); HashMap map = new HashMap<>(); map.put("allowLowestVersion", androidVersion.getAllowLowestVersion()); - map.put("downloadUrl", "/v/download/" + apkSelected.getId()); + map.put("apkName", apk.getApkName()); +// map.put("downloadUrl", "/v/download/" + apkSelected.getId()); + map.put("downloadUrl", apkSelected.getDownloadUrl()); + map.put("downloadApkUrl", apkSelected.getDownloadApkUrl()); map.put("description", androidVersion.getVersionDescription()); map.put("forceUpdate", androidVersion.getUpdateType()); map.put("version", androidVersion.getAppVersion()); diff --git a/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/impl/ChannelServiceImpl.java b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/impl/ChannelServiceImpl.java new file mode 100644 index 0000000..8f2838d --- /dev/null +++ b/modules/app-version-rest/src/main/java/com/tairanchina/csp/avm/service/impl/ChannelServiceImpl.java @@ -0,0 +1,35 @@ +package com.tairanchina.csp.avm.service.impl; + +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.tairanchina.csp.avm.entity.Channel; +import com.tairanchina.csp.avm.mapper.ChannelMapper; +import com.tairanchina.csp.avm.service.ChannelService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import java.util.List; + +/** + * 渠道管理实现 + * Created by hzlizx on 2018/6/6 0006 + */ +@Service +public class ChannelServiceImpl implements ChannelService { + + @Autowired + private ChannelMapper channelMapper; + + @Override + public Channel findChannelByChannelId(Integer appId,Integer channelId) { + Channel channel = new Channel(); + channel.setAppId(appId); + channel.setId(channelId); + EntityWrapper wrapper = new EntityWrapper<>(channel); + wrapper.last("limit 0,1"); + List channels = channelMapper.selectList(wrapper); + Channel getChannel=null; + if (!channels.isEmpty()) { + getChannel = channels.get(0); + } + return getChannel; + } +} diff --git a/modules/app-version-rest/src/main/resources/application-dev.yml b/modules/app-version-rest/src/main/resources/application-dev.yml index e2fb268..ede5290 100644 --- a/modules/app-version-rest/src/main/resources/application-dev.yml +++ b/modules/app-version-rest/src/main/resources/application-dev.yml @@ -1,22 +1,91 @@ + spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://mysql:3306/app_version_manager?characterEncoding=utf8&useSSL=false + url: jdbc:mysql://127.0.0.1:3306/app_version_manager?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false username: root password: 123456 + +# redis: +# host: 47.104.184.31 +# port: 6379 +# database: 4 +# pool: +# max-active: 10 +# max-wait: -1 +# max-idle: 1 +# min-idle: 0 +# password: itcchian.ny.com + redis: - host: redis + host: 127.0.0.1 port: 6379 - database: 0 + database: 4 pool: max-active: 10 max-wait: -1 max-idle: 1 min-idle: 0 + password: 123456 + +# redis: +# host: 127.0.0.1 +# port: 6379 +# database: 4 +# pool: +# max-active: 10 +# max-wait: -1 +# max-idle: 1 +# min-idle: 0 +# password: 123456 + +##--------------------------------------------------------------------------- +## upload config +##--------------------------------------------------------------------------- + + http: + multipart: + enabled: true + max-file-size: 1000Mb + max-request-size: 1500Mb server: - port: 8084 + port: 9092 + context-path: /app_version_rest rest: base: - url: http://localhost:8084 \ No newline at end of file + url: http://127.0.0.1:9090/ +##--------------------------------------------------------------------------- +## Log config +##--------------------------------------------------------------------------- +logging: + level: + root: INFO + org: + springframework: + web: ERROR + data: ERROR + activiti: + engine: + impl: + persistence: + entity: trace + com: + tairanchina: INFO + springfox: + documentation: ERROR +config: + classpath: logback-dev.xml +log_dir: D:/logs/app_version_rest/dev + + + +is_use_project_path: false +uploadFilePath: apk +downloadFileUrl: app_version_manager/apk/downloadFile + +defaultUploadFilePath: D:\\uploadFile\\ +defaultDownloadFileContextPath: app_version_apk + + diff --git a/modules/app-version-rest/src/main/resources/application-pro.yml b/modules/app-version-rest/src/main/resources/application-pro.yml new file mode 100644 index 0000000..6f87f09 --- /dev/null +++ b/modules/app-version-rest/src/main/resources/application-pro.yml @@ -0,0 +1,76 @@ + +spring: + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://127.0.0.1:3306/app_version_manager?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false + username: root + password: 123456 + +# redis: +# host: 47.104.184.31 +# port: 6379 +# database: 4 +# pool: +# max-active: 10 +# max-wait: -1 +# max-idle: 1 +# min-idle: 0 +# password: itcchian.ny.com + + redis: + host: 127.0.0.1 + port: 6379 + database: 4 + pool: + max-active: 10 + max-wait: -1 + max-idle: 1 + min-idle: 0 + password: 123456 + +##--------------------------------------------------------------------------- +## upload config +##--------------------------------------------------------------------------- + + http: + multipart: + enabled: true + max-file-size: 1000Mb + max-request-size: 1500Mb +server: + port: 9996 + context-path: /app_version_rest +rest: + base: + url: http://111.204.83.200:6868/ +##--------------------------------------------------------------------------- +## Log config +##--------------------------------------------------------------------------- +logging: + level: + root: INFO + org: + springframework: + web: ERROR + data: ERROR + activiti: + engine: + impl: + persistence: + entity: trace + com: + tairanchina: INFO + springfox: + documentation: ERROR +config: + classpath: logback-pro.xml +log_dir: D:/logs/app_version_rest/pro + + + +is_use_project_path: false +uploadFilePath: apk +downloadFileUrl: app_version_manager/apk/downloadFile + +defaultUploadFilePath: D:\\uploadFile\\ +defaultDownloadFileContextPath: app_version_apk \ No newline at end of file diff --git a/modules/app-version-rest/src/main/resources/application.yml b/modules/app-version-rest/src/main/resources/application.yml index 14e09cd..e4f1f4a 100644 --- a/modules/app-version-rest/src/main/resources/application.yml +++ b/modules/app-version-rest/src/main/resources/application.yml @@ -1,6 +1,6 @@ spring: profiles: - active: dev + active: pro application: name: app-version-rest jackson: @@ -8,7 +8,6 @@ spring: joda-date-time-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8 - #mybatis mybatis-plus: mapper-locations: classpath:/mapper/*Mapper.xml @@ -46,7 +45,6 @@ dew: desc: 负责公司APP的版本信息,RN路由等信息的管理 web-site: app.com - -logging: - file: avr.log - path: ./logs +#logging: +# file: avr.log +# path: ./logs diff --git a/modules/app-version-rest/src/main/resources/logback-dev.xml b/modules/app-version-rest/src/main/resources/logback-dev.xml new file mode 100644 index 0000000..948c15c --- /dev/null +++ b/modules/app-version-rest/src/main/resources/logback-dev.xml @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + %black(控制台-) %green([%thread]) %line %highlight(%-5level) %boldMagenta(%logger) - %cyan(%msg%n) + + + + + + true + ${log_dir}/app_version_rest_web.log + + + ${log_dir}/app_version_rest_web-%d{yyyy-MM-dd}.log.zip + ${maxHistory} + + + + + {"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss.SSS}","thread":"%t","line":"%line","log_level":"%p","class_name":"%C;","msg":"%m"}\n + + + + ERROR + ACCEPT + DENY + + + ${pattern} + UTF-8 + + + + + true + ${log_dir}/app_version_rest_error.log + + ${log_dir}/app_version_rest_error.%i + 1 + 20 + + + 50MB + + + + {"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss.SSS}","thread":"%t","line":"%line","log_level":"%p","class_name":"%C;","msg":"%m%n","caller":"%caller{1}"}\n + + UTF-8 + + + ERROR + + + + + true + ${log_dir}/app_version_rest_all.log + + ${log_dir}/app_version_rest_all.%i + 1 + 20 + + + 50MB + + + INFO + + + + {"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss.SSS}","thread":"%t","line":"%line","log_level":"%p","class_name":"%C;","msg":"%m%n","caller":"%caller{1}"}\n + + UTF-8 + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/app-version-rest/src/main/resources/logback-pro.xml b/modules/app-version-rest/src/main/resources/logback-pro.xml new file mode 100644 index 0000000..fa9c335 --- /dev/null +++ b/modules/app-version-rest/src/main/resources/logback-pro.xml @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + %black(控制台-) %green([%thread]) %line %highlight(%-5level) %boldMagenta(%logger) - %cyan(%msg%n) + + + + + + true + ${log_dir}/app_version_rest_web.log + + + ${log_dir}/app_version_rest_web-%d{yyyy-MM-dd}.log.zip + ${maxHistory} + + + + + {"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss.SSS}","thread":"%t","line":"%line","log_level":"%p","class_name":"%C;","msg":"%m"}\n + + + + ERROR + ACCEPT + DENY + + + ${pattern} + UTF-8 + + + + + true + ${log_dir}/app_version_rest_error.log + + ${log_dir}/app_version_rest_error.%i + 1 + 20 + + + 50MB + + + + {"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss.SSS}","thread":"%t","line":"%line","log_level":"%p","class_name":"%C;","msg":"%m%n","caller":"%caller{1}"}\n + + UTF-8 + + + ERROR + + + + + true + ${log_dir}/app_version_rest_all.log + + ${log_dir}/app_version_rest_all.%i + 1 + 20 + + + 50MB + + + INFO + + + + {"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss.SSS}","thread":"%t","line":"%line","log_level":"%p","class_name":"%C;","msg":"%m%n","caller":"%caller{1}"}\n + + UTF-8 + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/controller/BaseControllerTest.java b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/controller/BaseControllerTest.java index e568620..314caab 100644 --- a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/controller/BaseControllerTest.java +++ b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/controller/BaseControllerTest.java @@ -1,6 +1,6 @@ package com.tairanchina.csp.avm.controller; -import com.tairanchina.csp.avm.AppVersionRestApplication; +import com.tairanchina.csp.AppVersionRestApplication; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/AndroidVersionServiceTest.java b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/AndroidVersionServiceTest.java index 593648e..cc84e48 100644 --- a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/AndroidVersionServiceTest.java +++ b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/AndroidVersionServiceTest.java @@ -30,38 +30,38 @@ public void findNewestVersion() throws Exception { if ("android".equalsIgnoreCase(platform)) { ServiceResult serviceResult = androidVersionService.findNewestVersion(tenantAppId, version, channelCode); if (serviceResult.getCode() == 200) { - HashMap data = (HashMap) serviceResult.getData(); + HashMap data = (HashMap) serviceResult.getRecord(); String downloadUrl = (String) data.get("downloadUrl"); downloadUrl = baseUrl + downloadUrl; data.put("downloadUrl", downloadUrl); } - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } } channelCode = "aaaa2"; ServiceResult serviceResult = androidVersionService.findNewestVersion(tenantAppId, version, channelCode); - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } channelCode = "aaaa3"; serviceResult = androidVersionService.findNewestVersion(tenantAppId, version, channelCode); - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } channelCode = ""; serviceResult = androidVersionService.findNewestVersion(tenantAppId, version, channelCode); - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } channelCode = "qudaotest"; serviceResult = androidVersionService.findNewestVersion(tenantAppId, version, channelCode); - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } } @@ -69,14 +69,14 @@ public void findNewestVersion() throws Exception { public void getDownloadUrl() throws Exception { Integer apkId = 38; ServiceResult serviceResult = androidVersionService.getDownloadUrl(apkId); - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } apkId = 9999999; serviceResult = androidVersionService.getDownloadUrl(apkId); - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } } diff --git a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/BaseTest.java b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/BaseTest.java index c6ad11e..77cd8d1 100644 --- a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/BaseTest.java +++ b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/BaseTest.java @@ -1,6 +1,6 @@ package com.tairanchina.csp.avm.service; -import com.tairanchina.csp.avm.AppVersionRestApplication; +import com.tairanchina.csp.AppVersionRestApplication; import org.junit.Test; import org.junit.runner.RunWith; import org.slf4j.Logger; diff --git a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/CustomApiServiceTest.java b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/CustomApiServiceTest.java index 1480bbe..7b600b6 100644 --- a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/CustomApiServiceTest.java +++ b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/CustomApiServiceTest.java @@ -21,14 +21,14 @@ public void getCustomContent() throws Exception { String platfrom = "ios"; String version = "1.0.0.0.1"; ServiceResult result = customApiService.getCustomContent(tenantAppId, key, platfrom, version); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } platfrom = "android"; result = customApiService.getCustomContent(tenantAppId, key, platfrom, version); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/IosVersionServiceTest.java b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/IosVersionServiceTest.java index 8880950..85aabbb 100644 --- a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/IosVersionServiceTest.java +++ b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/IosVersionServiceTest.java @@ -21,21 +21,21 @@ public void findNewestVersion() throws Exception { String platform = "ios"; if ("ios".equalsIgnoreCase(platform)) { ServiceResult serviceResult = iosVersionService.findNewestVersion(tenantAppId, version); - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } } version = "0.0.0.1.1111"; ServiceResult serviceResult = iosVersionService.findNewestVersion(tenantAppId, version); - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } tenantAppId = "appdsfsddd"; serviceResult = iosVersionService.findNewestVersion(tenantAppId, version); - if (serviceResult.getData() != null) { - logger.info(serviceResult.getData().toString()); + if (serviceResult.getRecord() != null) { + logger.info(serviceResult.getRecord().toString()); } } diff --git a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/RnServiceTest.java b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/RnServiceTest.java index d7b03bb..8a21363 100644 --- a/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/RnServiceTest.java +++ b/modules/app-version-rest/src/test/java/com/tairanchina/csp/avm/service/RnServiceTest.java @@ -21,19 +21,19 @@ public void route() throws Exception { String platform = "ios"; Integer status = 1; ServiceResult result = rnService.route(version, tenantAppId, platform, status); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } platform = "android"; result = rnService.route(version, tenantAppId, platform, status); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } platform = "2323"; result = rnService.route(version, tenantAppId, platform, status); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } @@ -44,20 +44,20 @@ public void bundles() throws Exception { String platform = "ios"; Integer status = 1; ServiceResult result = rnService.bundles(version, tenantAppId, platform, status); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } tenantAppId = "ghgfhfgdhg"; result = rnService.bundles(version, tenantAppId, platform, status); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } platform = "android"; result = rnService.bundles(version, tenantAppId, platform, status); - if (result.getData() != null) { - logger.info(result.getData().toString()); + if (result.getRecord() != null) { + logger.info(result.getRecord().toString()); } } diff --git a/pom.xml b/pom.xml index 06dbeea..ec5f1d7 100644 --- a/pom.xml +++ b/pom.xml @@ -3,17 +3,17 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - - com.tairanchina.csp.dew - parent-starter - 1.5.0-RC - + + + + + com.tairanchina.csp.avm app-version - 1.1.0-RC - pom app-version + 1.0.0-RC-SNAPSHOT + pom App版本管理 @@ -23,15 +23,38 @@ 1.5.4.1 1.7.26 1.5.0-alpha.16 + + UTF-8 UTF-8 1.8 - 1.0.2 - true - 0.10.5 + + + Camden.SR7 + Brussels-SR10 + + app - false - false + + + + 3.7.0 + 3.0.1 + 3.0.2 + 3.2.2 + 1.6 + 1.5.13.RELEASE + 1.1 + 2.21.0 + 3.0.0 + false + false + 2.5 + 3.0.0 + 3.7.1 + 3.1.0 + + @@ -62,6 +85,20 @@ https://github.com/xtTech/app-version.git + + + + itc-nexus-releases + maven-releases + http://47.104.184.31:8081/repository/maven-releases/ + + + itc-nexus-snapshots + maven-snapshots + http://47.104.184.31:8081/repository/maven-snapshots/ + + + modules/app-version-common modules/app-version-manager @@ -70,67 +107,38 @@ + - com.tairanchina.csp.avm - app-version-common - ${project.version} - - - commons-lang - commons-lang - 2.6 - - - org.aspectj - aspectjweaver - 1.9.1 - - - com.baomidou - mybatisplus-spring-boot-starter - ${mybatisplus-spring-boot-starter.version} - - - mysql - mysql-connector-java - 6.0.6 - - - org.apache.commons - commons-lang3 - 3.4 - - - com.alibaba - fastjson - 1.2.47 + org.springframework.cloud + spring-cloud-dependencies + ${org.springframework.cloud.version} + pom + import - io.jsonwebtoken - jjwt-api - ${jsonwebtoken.jjwt.version} + io.spring.platform + platform-bom + ${io.spring.platform.version} + pom + import + - io.jsonwebtoken - jjwt-impl - ${jsonwebtoken.jjwt.version} - - - io.jsonwebtoken - jjwt-jackson - ${jsonwebtoken.jjwt.version} + com.tairanchina.csp.avm + app-version-common + 1.0.0-RC-SNAPSHOT - org.apache.poi - poi - 3.12 + com.tairanchina.csp.avm + app-version-manager + 1.0.0-RC-SNAPSHOT - - eu.bitwalker - UserAgentUtils - 1.21 + com.tairanchina.csp.avm + app-version-rest + 1.0.0-RC-SNAPSHOT + @@ -141,94 +149,193 @@ - - - org.asciidoctor - asciidoctor-maven-plugin - 1.5.5 - - - output-html - generate-resources - - process-asciidoc - - - html5 - prettify - - left - font - true - - - - - - - - - - - org.jruby - jruby-complete - ${jruby.version} - true - - - - org.asciidoctor - asciidoctorj - ${asciidoctorj.version} - true - - - org.asciidoctor - asciidoctorj-diagram - ${asciidoctorj.diagram.version} - true - - - - - - src/main/resources - - **/*.jpg - **/*.png - - - - ${project.basedir}/docs - ${project.basedir}/src/main/asciidoc - - - true - - asciidoctor-diagram - - - - - - com.spotify - docker-maven-plugin - 1.0.0 - - ${docker.image.prefix}/${project.artifactId} - ${project.version} - - ./ - - - / - ${project.build.directory} - ${project.artifactId}.jar - - - - - + + + + + org.asciidoctor + asciidoctor-maven-plugin + 1.5.5 + + + output-html + generate-resources + + process-asciidoc + + + html5 + prettify + + left + font + true + + + + + + + + + + + org.jruby + jruby-complete + ${jruby.version} + true + + + + org.asciidoctor + asciidoctorj + ${asciidoctorj.version} + true + + + org.asciidoctor + asciidoctorj-diagram + ${asciidoctorj.diagram.version} + true + + + + + + src/main/resources + + **/*.jpg + **/*.png + + + + ${project.basedir}/docs + ${project.basedir}/src/main/asciidoc + + + true + + asciidoctor-diagram + + + + + + + com.spotify + docker-maven-plugin + 1.0.0 + + ${docker.image.prefix}/${project.artifactId} + ${project.version} + + ./ + + + / + ${project.build.directory} + ${project.artifactId}.jar + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven.compiler.plugin.version} + + 1.8 + 1.8 + UTF-8 + + + + + org.apache.maven.plugins + maven-source-plugin + ${maven.source.plugin.version} + + + attach-sources + + jar + + + + + + + + org.apache.maven.plugins + maven-resources-plugin + ${maven.resources.plugin.version} + + UTF-8 + + + + + + org.apache.maven.plugins + maven-war-plugin + ${maven.war.plugin.version} + + + + + org.apache.maven.plugins + maven-gpg-plugin + ${maven.gpg.plugin.version} + + + sign-artifacts + verify + + sign + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + ${maven.javadoc.plugin.version} + + + target\javadoc + target\javadoc + + + + attach-javadocs + site + + aggregate + + + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.4.2 + + + true + + + + + + + + diff --git a/src/main/asciidoc/_chapter/get-started.adoc b/src/main/asciidoc/_chapter/get-started.adoc index fc5f883..4350cd6 100644 --- a/src/main/asciidoc/_chapter/get-started.adoc +++ b/src/main/asciidoc/_chapter/get-started.adoc @@ -85,7 +85,7 @@ cd web/dashboard npm install # 这里以生产为例,还存在 development、test、uat -npm build:production +npm run build:prod # 使用此命令,请修改.env.production文件中的配置 ---- 然后会在 dashboard 目录下生成一个 dist 文件夹,将文件夹下内容复制到 nginx 的 html 文件夹内。 参考以下内容配置你的 nginx 的 nginx.conf 文件。 diff --git a/web/dashboard/.env.development b/web/dashboard/.env.development index f324ce5..56d20fe 100644 --- a/web/dashboard/.env.development +++ b/web/dashboard/.env.development @@ -1,11 +1,12 @@ # 开发环境 NODE_ENV = "development" VUE_APP_HTTP_TIMEOUT = 15000 -VUE_APP_HTTP_API = "http://localhost:8088/manager" +VUE_APP_HTTP_REQUEST_URL = "http://localhost:9090/" +VUE_APP_HTTP_API = "http://localhost:9090/app_version_manager" VUE_APP_TITLE = "APP 管理平台 - 开发" # OSS 配置 -VUE_APP_OSS_REGION = "" -VUE_APP_OSS_KEYID = "" -VUE_APP_OSS_KEYSECRET = "" -VUE_APP_OSS_BUCKET = "" \ No newline at end of file +VUE_APP_OSS_REGION = "oss-cn-beijing" +VUE_APP_OSS_KEYID = "LTAI4G1zNcgp24VgY4rATBaL" +VUE_APP_OSS_KEYSECRET = "FNXorMyUbb09EQElVWM18Ye7XZM9Xn" +VUE_APP_OSS_BUCKET = "aliyun-oss-yxc" \ No newline at end of file diff --git a/web/dashboard/.env.production b/web/dashboard/.env.production index f324ce5..b53b423 100644 --- a/web/dashboard/.env.production +++ b/web/dashboard/.env.production @@ -1,11 +1,15 @@ # 开发环境 -NODE_ENV = "development" +NODE_ENV = "production" VUE_APP_HTTP_TIMEOUT = 15000 -VUE_APP_HTTP_API = "http://localhost:8088/manager" +VUE_APP_HTTP_REQUEST_URL = "http://111.204.83.200:6868/" +VUE_APP_HTTP_API = "http://111.204.83.200:6868/app_version_manager" VUE_APP_TITLE = "APP 管理平台 - 开发" # OSS 配置 -VUE_APP_OSS_REGION = "" -VUE_APP_OSS_KEYID = "" -VUE_APP_OSS_KEYSECRET = "" -VUE_APP_OSS_BUCKET = "" \ No newline at end of file +VUE_APP_OSS_REGION = "oss-cn-beijing" +VUE_APP_OSS_KEYID = "LTAI4G1zNcgp24VgY4rATBaL" +VUE_APP_OSS_KEYSECRET = "FNXorMyUbb09EQElVWM18Ye7XZM9Xn" +VUE_APP_OSS_BUCKET = "aliyun-oss-yxc" + + + diff --git a/web/dashboard/.env.test b/web/dashboard/.env.test index f324ce5..339d852 100644 --- a/web/dashboard/.env.test +++ b/web/dashboard/.env.test @@ -1,11 +1,11 @@ # 开发环境 -NODE_ENV = "development" +NODE_ENV = "test" VUE_APP_HTTP_TIMEOUT = 15000 -VUE_APP_HTTP_API = "http://localhost:8088/manager" +VUE_APP_HTTP_API = "http://localhost:8888/app-version-manager" VUE_APP_TITLE = "APP 管理平台 - 开发" # OSS 配置 -VUE_APP_OSS_REGION = "" -VUE_APP_OSS_KEYID = "" -VUE_APP_OSS_KEYSECRET = "" -VUE_APP_OSS_BUCKET = "" \ No newline at end of file +VUE_APP_OSS_REGION = "oss-cn-beijing" +VUE_APP_OSS_KEYID = "LTAI4G1zNcgp24VgY4rATBaL" +VUE_APP_OSS_KEYSECRET = "FNXorMyUbb09EQElVWM18Ye7XZM9Xn" +VUE_APP_OSS_BUCKET = "aliyun-oss-yxc" \ No newline at end of file diff --git a/web/dashboard/.env.uat b/web/dashboard/.env.uat index f324ce5..67bd92b 100644 --- a/web/dashboard/.env.uat +++ b/web/dashboard/.env.uat @@ -1,11 +1,11 @@ # 开发环境 -NODE_ENV = "development" +NODE_ENV = "uat" VUE_APP_HTTP_TIMEOUT = 15000 -VUE_APP_HTTP_API = "http://localhost:8088/manager" +VUE_APP_HTTP_API = "http://localhost:8888/app-version-manager" VUE_APP_TITLE = "APP 管理平台 - 开发" # OSS 配置 -VUE_APP_OSS_REGION = "" -VUE_APP_OSS_KEYID = "" -VUE_APP_OSS_KEYSECRET = "" -VUE_APP_OSS_BUCKET = "" \ No newline at end of file +VUE_APP_OSS_REGION = "oss-cn-beijing" +VUE_APP_OSS_KEYID = "LTAI4G1zNcgp24VgY4rATBaL" +VUE_APP_OSS_KEYSECRET = "FNXorMyUbb09EQElVWM18Ye7XZM9Xn" +VUE_APP_OSS_BUCKET = "aliyun-oss-yxc" \ No newline at end of file diff --git a/web/dashboard/package-lock.json b/web/dashboard/package-lock.json index 3b3a86d..e16d77b 100644 --- a/web/dashboard/package-lock.json +++ b/web/dashboard/package-lock.json @@ -5,30 +5,32 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.5.5.tgz", - "integrity": "sha1-vAeC9tafe31JUxIZaZuYj2aaj50=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.10.1.tgz?cache=0&sync_timestamp=1590617298858&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fcode-frame%2Fdownload%2F%40babel%2Fcode-frame-7.10.1.tgz", + "integrity": "sha1-1UgcUJXaocV+FuVMb5GYRDr7Sf8=", "dev": true, "requires": { - "@babel/highlight": "^7.0.0" + "@babel/highlight": "^7.10.1" } }, "@babel/core": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/core/download/@babel/core-7.5.5.tgz", - "integrity": "sha1-F7JobvDWvFj5Y93daKtml1VYLDA=", - "dev": true, - "requires": { - "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.5.5", - "@babel/helpers": "^7.5.5", - "@babel/parser": "^7.5.5", - "@babel/template": "^7.4.4", - "@babel/traverse": "^7.5.5", - "@babel/types": "^7.5.5", - "convert-source-map": "^1.1.0", + "version": "7.10.2", + "resolved": "https://registry.npm.taobao.org/@babel/core/download/@babel/core-7.10.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fcore%2Fdownload%2F%40babel%2Fcore-7.10.2.tgz", + "integrity": "sha1-vWeGBGZoqSWsK9L9lbV5uSojs2o=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.1", + "@babel/generator": "^7.10.2", + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helpers": "^7.10.1", + "@babel/parser": "^7.10.2", + "@babel/template": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.2", + "convert-source-map": "^1.7.0", "debug": "^4.1.0", - "json5": "^2.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", "lodash": "^4.17.13", "resolve": "^1.3.2", "semver": "^5.4.1", @@ -37,7 +39,7 @@ "dependencies": { "debug": { "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", "dev": true, "requires": { @@ -46,699 +48,703 @@ }, "source-map": { "version": "0.5.7", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map%2Fdownload%2Fsource-map-0.5.7.tgz", "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "dev": true } } }, "@babel/generator": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.5.5.tgz", - "integrity": "sha1-hzp/k2o8iUkbQ1NtEiRbYmZk488=", + "version": "7.10.2", + "resolved": "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.10.2.tgz?cache=0&sync_timestamp=1590868955737&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fgenerator%2Fdownload%2F%40babel%2Fgenerator-7.10.2.tgz", + "integrity": "sha1-D6W1sjiduL/fzDSStVHuIPXdaak=", "dev": true, "requires": { - "@babel/types": "^7.5.5", + "@babel/types": "^7.10.2", "jsesc": "^2.5.1", "lodash": "^4.17.13", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" + "source-map": "^0.5.0" }, "dependencies": { "source-map": { "version": "0.5.7", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map%2Fdownload%2Fsource-map-0.5.7.tgz", "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "dev": true } } }, "@babel/helper-annotate-as-pure": { - "version": "7.0.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-annotate-as-pure/download/@babel/helper-annotate-as-pure-7.0.0.tgz", - "integrity": "sha1-Mj053QtQ4Qx8Bsp9djjmhk2MXDI=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-annotate-as-pure/download/@babel/helper-annotate-as-pure-7.10.1.tgz?cache=0&sync_timestamp=1590617495113&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-annotate-as-pure%2Fdownload%2F%40babel%2Fhelper-annotate-as-pure-7.10.1.tgz", + "integrity": "sha1-9tCKzG9wu9WbQ2JiVT+y4lmhomg=", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.10.1" } }, "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.1.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-builder-binary-assignment-operator-visitor/download/@babel/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz", - "integrity": "sha1-a2lijf5Ah3mODE7Zjj1Kay+9L18=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-builder-binary-assignment-operator-visitor/download/@babel/helper-builder-binary-assignment-operator-visitor-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-builder-binary-assignment-operator-visitor%2Fdownload%2F%40babel%2Fhelper-builder-binary-assignment-operator-visitor-7.10.1.tgz", + "integrity": "sha1-DsfZvoF0k0UyZh+HeD6xjXIpAFk=", "dev": true, "requires": { - "@babel/helper-explode-assignable-expression": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-explode-assignable-expression": "^7.10.1", + "@babel/types": "^7.10.1" } }, - "@babel/helper-call-delegate": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/helper-call-delegate/download/@babel/helper-call-delegate-7.4.4.tgz", - "integrity": "sha1-h8H4yhmtVSpzanonscH8+LH/H0M=", + "@babel/helper-create-class-features-plugin": { + "version": "7.10.2", + "resolved": "https://registry.npm.taobao.org/@babel/helper-create-class-features-plugin/download/@babel/helper-create-class-features-plugin-7.10.2.tgz?cache=0&sync_timestamp=1590869014139&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-create-class-features-plugin%2Fdownload%2F%40babel%2Fhelper-create-class-features-plugin-7.10.2.tgz", + "integrity": "sha1-dHQpV3DyF9vPKIv3Vy6yE9tG7mc=", "dev": true, "requires": { - "@babel/helper-hoist-variables": "^7.4.4", - "@babel/traverse": "^7.4.4", - "@babel/types": "^7.4.4" + "@babel/helper-function-name": "^7.10.1", + "@babel/helper-member-expression-to-functions": "^7.10.1", + "@babel/helper-optimise-call-expression": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-replace-supers": "^7.10.1", + "@babel/helper-split-export-declaration": "^7.10.1" } }, - "@babel/helper-create-class-features-plugin": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/helper-create-class-features-plugin/download/@babel/helper-create-class-features-plugin-7.5.5.tgz", - "integrity": "sha1-QB8wLI3bwO3Tb3xrKIfY+hEi5aQ=", + "@babel/helper-create-regexp-features-plugin": { + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-create-regexp-features-plugin/download/@babel/helper-create-regexp-features-plugin-7.10.1.tgz?cache=0&sync_timestamp=1590617496931&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-create-regexp-features-plugin%2Fdownload%2F%40babel%2Fhelper-create-regexp-features-plugin-7.10.1.tgz", + "integrity": "sha1-G4/uqxWUy8+/OrWju8q6wEaO/b0=", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-member-expression-to-functions": "^7.5.5", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.5.5", - "@babel/helper-split-export-declaration": "^7.4.4" + "@babel/helper-annotate-as-pure": "^7.10.1", + "@babel/helper-regex": "^7.10.1", + "regexpu-core": "^4.7.0" } }, "@babel/helper-define-map": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/helper-define-map/download/@babel/helper-define-map-7.5.5.tgz", - "integrity": "sha1-PewywgRvN+CbKMk+sLED/Sol02k=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-define-map/download/@babel/helper-define-map-7.10.1.tgz?cache=0&sync_timestamp=1590617497687&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-define-map%2Fdownload%2F%40babel%2Fhelper-define-map-7.10.1.tgz", + "integrity": "sha1-XmnugwhkhHDdeQDRWcBEwQKFIh0=", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/types": "^7.5.5", + "@babel/helper-function-name": "^7.10.1", + "@babel/types": "^7.10.1", "lodash": "^4.17.13" } }, "@babel/helper-explode-assignable-expression": { - "version": "7.1.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-explode-assignable-expression/download/@babel/helper-explode-assignable-expression-7.1.0.tgz", - "integrity": "sha1-U3+hP28WdN90WwwA7I/k6ZaByPY=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-explode-assignable-expression/download/@babel/helper-explode-assignable-expression-7.10.1.tgz?cache=0&sync_timestamp=1590617498698&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-explode-assignable-expression%2Fdownload%2F%40babel%2Fhelper-explode-assignable-expression-7.10.1.tgz", + "integrity": "sha1-6ddjBe4RYspGc1euJd+U8XmvK34=", "dev": true, "requires": { - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.1.0.tgz", - "integrity": "sha1-oM6wFoX3M1XUNgwSR/WCv6/I/1M=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.10.1.tgz?cache=0&sync_timestamp=1590617298411&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-function-name%2Fdownload%2F%40babel%2Fhelper-function-name-7.10.1.tgz", + "integrity": "sha1-kr1jgpv8khWsqdne+oX1a1OUVPQ=", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-get-function-arity": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha1-g1ctQyDipGVyY3NBE8QoaLZOScM=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.10.1.tgz", + "integrity": "sha1-cwM5CoG6fLWWE4laGSuThQ43P30=", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.10.1" } }, "@babel/helper-hoist-variables": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/helper-hoist-variables/download/@babel/helper-hoist-variables-7.4.4.tgz", - "integrity": "sha1-Api18lyMCcUxAtUqxKmPdz6yhQo=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-hoist-variables/download/@babel/helper-hoist-variables-7.10.1.tgz?cache=0&sync_timestamp=1590617495977&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-hoist-variables%2Fdownload%2F%40babel%2Fhelper-hoist-variables-7.10.1.tgz", + "integrity": "sha1-fnfILl3K4evxIxdMOFqq2/eH0Hc=", "dev": true, "requires": { - "@babel/types": "^7.4.4" + "@babel/types": "^7.10.1" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/helper-member-expression-to-functions/download/@babel/helper-member-expression-to-functions-7.5.5.tgz", - "integrity": "sha1-H7W47ERTqTxDnun+Ou6kqEt2tZA=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-member-expression-to-functions/download/@babel/helper-member-expression-to-functions-7.10.1.tgz?cache=0&sync_timestamp=1590617494746&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-member-expression-to-functions%2Fdownload%2F%40babel%2Fhelper-member-expression-to-functions-7.10.1.tgz", + "integrity": "sha1-Qyln/X4SpK/vZsRofUyiK8BFbxU=", "dev": true, "requires": { - "@babel/types": "^7.5.5" + "@babel/types": "^7.10.1" } }, "@babel/helper-module-imports": { - "version": "7.0.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-module-imports/download/@babel/helper-module-imports-7.0.0.tgz", - "integrity": "sha1-lggbcRHkhtpNLNlxrRpP4hbMLj0=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-module-imports/download/@babel/helper-module-imports-7.10.1.tgz?cache=0&sync_timestamp=1590617391715&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-module-imports%2Fdownload%2F%40babel%2Fhelper-module-imports-7.10.1.tgz", + "integrity": "sha1-3TMb1FvMxWbOdwBOnQX+F63ROHY=", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.10.1" } }, "@babel/helper-module-transforms": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/helper-module-transforms/download/@babel/helper-module-transforms-7.5.5.tgz", - "integrity": "sha1-+E/4oJA43Lyh/UNVZhpQCTcWW0o=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-module-transforms/download/@babel/helper-module-transforms-7.10.1.tgz?cache=0&sync_timestamp=1590617408279&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-module-transforms%2Fdownload%2F%40babel%2Fhelper-module-transforms-7.10.1.tgz", + "integrity": "sha1-JOLwjuaDLGCxV7sJNshr73IQxiI=", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/template": "^7.4.4", - "@babel/types": "^7.5.5", + "@babel/helper-module-imports": "^7.10.1", + "@babel/helper-replace-supers": "^7.10.1", + "@babel/helper-simple-access": "^7.10.1", + "@babel/helper-split-export-declaration": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/types": "^7.10.1", "lodash": "^4.17.13" } }, "@babel/helper-optimise-call-expression": { - "version": "7.0.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-optimise-call-expression/download/@babel/helper-optimise-call-expression-7.0.0.tgz", - "integrity": "sha1-opIMVwKwc8Fd5REGIAqoytIEl9U=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-optimise-call-expression/download/@babel/helper-optimise-call-expression-7.10.1.tgz?cache=0&sync_timestamp=1590617495485&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-optimise-call-expression%2Fdownload%2F%40babel%2Fhelper-optimise-call-expression-7.10.1.tgz", + "integrity": "sha1-tKHyVhhwzhJHzt2wKjhg+pbXJUM=", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.10.1" } }, "@babel/helper-plugin-utils": { - "version": "7.0.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-plugin-utils/download/@babel/helper-plugin-utils-7.0.0.tgz", - "integrity": "sha1-u7P77phmHFaQNCN8wDlnupm08lA=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-plugin-utils/download/@babel/helper-plugin-utils-7.10.1.tgz?cache=0&sync_timestamp=1590617525191&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-plugin-utils%2Fdownload%2F%40babel%2Fhelper-plugin-utils-7.10.1.tgz", + "integrity": "sha1-7Fpc8O7JJbZsYFgDKLEiwBIwoSc=", "dev": true }, "@babel/helper-regex": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/helper-regex/download/@babel/helper-regex-7.5.5.tgz", - "integrity": "sha1-CqaCT3EAouDonBUnwjk2wVLKs1E=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-regex/download/@babel/helper-regex-7.10.1.tgz", + "integrity": "sha1-Ahzxp7qZgi+ZMiKgAcw/7IMlW5Y=", "dev": true, "requires": { "lodash": "^4.17.13" } }, "@babel/helper-remap-async-to-generator": { - "version": "7.1.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-remap-async-to-generator/download/@babel/helper-remap-async-to-generator-7.1.0.tgz", - "integrity": "sha1-Nh2AghtvONp1vT8HheziCojF/n8=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-remap-async-to-generator/download/@babel/helper-remap-async-to-generator-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-remap-async-to-generator%2Fdownload%2F%40babel%2Fhelper-remap-async-to-generator-7.10.1.tgz", + "integrity": "sha1-utaqpP85zo1Lgsyq4L/g99u19DI=", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-wrap-function": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-annotate-as-pure": "^7.10.1", + "@babel/helper-wrap-function": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-replace-supers": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/helper-replace-supers/download/@babel/helper-replace-supers-7.5.5.tgz", - "integrity": "sha1-+EzkPfAxIi0rrQaNJibLV5nDS8I=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-replace-supers/download/@babel/helper-replace-supers-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-replace-supers%2Fdownload%2F%40babel%2Fhelper-replace-supers-7.10.1.tgz", + "integrity": "sha1-7GhZ0gxdgIf2otxOAU23Iol18T0=", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.5.5", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/traverse": "^7.5.5", - "@babel/types": "^7.5.5" + "@babel/helper-member-expression-to-functions": "^7.10.1", + "@babel/helper-optimise-call-expression": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-simple-access": { - "version": "7.1.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-simple-access/download/@babel/helper-simple-access-7.1.0.tgz", - "integrity": "sha1-Ze65VMjCRb6qToWdphiPOdceWFw=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-simple-access/download/@babel/helper-simple-access-7.10.1.tgz?cache=0&sync_timestamp=1590617400870&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-simple-access%2Fdownload%2F%40babel%2Fhelper-simple-access-7.10.1.tgz", + "integrity": "sha1-CPt+Iqzp64Mm9+OSChwgUvE9hR4=", "dev": true, "requires": { - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/template": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-split-export-declaration": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.4.4.tgz", - "integrity": "sha1-/5SJSjQL549T8GrwOLIFxJ2ZNnc=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.10.1.tgz", + "integrity": "sha1-xvS+HLwV46ho5MZKF9XTHXVNo18=", "dev": true, "requires": { - "@babel/types": "^7.4.4" + "@babel/types": "^7.10.1" } }, + "@babel/helper-validator-identifier": { + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-validator-identifier/download/@babel/helper-validator-identifier-7.10.1.tgz?cache=0&sync_timestamp=1590617286975&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-validator-identifier%2Fdownload%2F%40babel%2Fhelper-validator-identifier-7.10.1.tgz", + "integrity": "sha1-V3CwwagmxPU/Xt5eFTFj4DGOlLU=", + "dev": true + }, "@babel/helper-wrap-function": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/helper-wrap-function/download/@babel/helper-wrap-function-7.2.0.tgz", - "integrity": "sha1-xOABJEV2nigVtVKW6tQ6lYVJ9vo=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helper-wrap-function/download/@babel/helper-wrap-function-7.10.1.tgz?cache=0&sync_timestamp=1590617498978&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-wrap-function%2Fdownload%2F%40babel%2Fhelper-wrap-function-7.10.1.tgz", + "integrity": "sha1-lW0TENZpYlenr9R+TELf2l387ck=", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.2.0" + "@babel/helper-function-name": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helpers": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/helpers/download/@babel/helpers-7.5.5.tgz", - "integrity": "sha1-Y5CNKnOUIinR5mhbwqDnMN3jt14=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/helpers/download/@babel/helpers-7.10.1.tgz?cache=0&sync_timestamp=1590617407271&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelpers%2Fdownload%2F%40babel%2Fhelpers-7.10.1.tgz", + "integrity": "sha1-poJ7fLl1ydnO9f1h2Rn2DYhEqXM=", "dev": true, "requires": { - "@babel/template": "^7.4.4", - "@babel/traverse": "^7.5.5", - "@babel/types": "^7.5.5" + "@babel/template": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/highlight": { - "version": "7.5.0", - "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.5.0.tgz?cache=0&sync_timestamp=1562245140883&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhighlight%2Fdownload%2F%40babel%2Fhighlight-7.5.0.tgz", - "integrity": "sha1-VtETEr2SSPphlZHQJHK+boyzJUA=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.10.1.tgz", + "integrity": "sha1-hB0Ji6YTuhpCeis4PXnjVVLDiuA=", "dev": true, "requires": { + "@babel/helper-validator-identifier": "^7.10.1", "chalk": "^2.0.0", - "esutils": "^2.0.2", "js-tokens": "^4.0.0" } }, "@babel/parser": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.5.5.tgz", - "integrity": "sha1-AvB3rIgX099Kgy71neZ1Zeccyks=", + "version": "7.10.2", + "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.10.2.tgz?cache=0&sync_timestamp=1590869015720&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fparser%2Fdownload%2F%40babel%2Fparser-7.10.2.tgz", + "integrity": "sha1-hxgH8QRCuS/5fkeDubVPagyoEtA=", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-async-generator-functions/download/@babel/plugin-proposal-async-generator-functions-7.2.0.tgz", - "integrity": "sha1-somzBmadzkrSCwJSiJoVdoydQX4=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-async-generator-functions/download/@babel/plugin-proposal-async-generator-functions-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-async-generator-functions%2Fdownload%2F%40babel%2Fplugin-proposal-async-generator-functions-7.10.1.tgz", + "integrity": "sha1-aRGvW6LmFcT/PEl/4vR7Nb9tflU=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0", - "@babel/plugin-syntax-async-generators": "^7.2.0" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-remap-async-to-generator": "^7.10.1", + "@babel/plugin-syntax-async-generators": "^7.8.0" } }, "@babel/plugin-proposal-class-properties": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-class-properties/download/@babel/plugin-proposal-class-properties-7.5.5.tgz", - "integrity": "sha1-qXTPrh43wxEOcfPGouSLjnGVjNQ=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-class-properties/download/@babel/plugin-proposal-class-properties-7.10.1.tgz?cache=0&sync_timestamp=1590617500094&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-class-properties%2Fdownload%2F%40babel%2Fplugin-proposal-class-properties-7.10.1.tgz", + "integrity": "sha1-BGvH9lULsI2b0dTwYPX1pPEIfgE=", "dev": true, "requires": { - "@babel/helper-create-class-features-plugin": "^7.5.5", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-create-class-features-plugin": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-proposal-decorators": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-decorators/download/@babel/plugin-proposal-decorators-7.4.4.tgz", - "integrity": "sha1-3psqGoqwGW83jiqC8QtuKjbyHMA=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-decorators/download/@babel/plugin-proposal-decorators-7.10.1.tgz?cache=0&sync_timestamp=1590617499010&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-decorators%2Fdownload%2F%40babel%2Fplugin-proposal-decorators-7.10.1.tgz", + "integrity": "sha1-k3PC2NtFNFxuMEUq13tGl1jlyPc=", "dev": true, "requires": { - "@babel/helper-create-class-features-plugin": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-decorators": "^7.2.0" + "@babel/helper-create-class-features-plugin": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/plugin-syntax-decorators": "^7.10.1" } }, "@babel/plugin-proposal-json-strings": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-json-strings/download/@babel/plugin-proposal-json-strings-7.2.0.tgz", - "integrity": "sha1-Vo7MRGxhSK5rJn8CVREwiR4p8xc=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-json-strings/download/@babel/plugin-proposal-json-strings-7.10.1.tgz?cache=0&sync_timestamp=1590617487236&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-json-strings%2Fdownload%2F%40babel%2Fplugin-proposal-json-strings-7.10.1.tgz", + "integrity": "sha1-seaR7iTGUbWl4yITIisjeXNK/wk=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-json-strings": "^7.2.0" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/plugin-syntax-json-strings": "^7.8.0" } }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-object-rest-spread/download/@babel/plugin-proposal-object-rest-spread-7.5.5.tgz", - "integrity": "sha1-YZOXRPcbp2o65Gte6hilTBbSLlg=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-object-rest-spread/download/@babel/plugin-proposal-object-rest-spread-7.10.1.tgz", + "integrity": "sha1-y6RJCKyfFCZQtKZbiqBr80eNX7Y=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.10.1" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-optional-catch-binding/download/@babel/plugin-proposal-optional-catch-binding-7.2.0.tgz", - "integrity": "sha1-E12B7baKCB5V5W7EhUHs6AZcOPU=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-optional-catch-binding/download/@babel/plugin-proposal-optional-catch-binding-7.10.1.tgz?cache=0&sync_timestamp=1590617524388&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-optional-catch-binding%2Fdownload%2F%40babel%2Fplugin-proposal-optional-catch-binding-7.10.1.tgz", + "integrity": "sha1-yfhtmTBfn6UxtWj/WrjJZLiyI9I=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" } }, "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-unicode-property-regex/download/@babel/plugin-proposal-unicode-property-regex-7.4.4.tgz", - "integrity": "sha1-UB/9mCbAuR2iJpByByKsfLHKnHg=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-proposal-unicode-property-regex/download/@babel/plugin-proposal-unicode-property-regex-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-unicode-property-regex%2Fdownload%2F%40babel%2Fplugin-proposal-unicode-property-regex-7.10.1.tgz", + "integrity": "sha1-3AT+sl4t1wwSsF1oAZDhOPosDG8=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "@babel/helper-create-regexp-features-plugin": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-syntax-async-generators": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-async-generators/download/@babel/plugin-syntax-async-generators-7.2.0.tgz", - "integrity": "sha1-aeHw2zTG9aDPfiszI78VmnbIy38=", + "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?cache=0&sync_timestamp=1578951201180&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-async-generators%2Fdownload%2F%40babel%2Fplugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha1-qYP7Gusuw/btBCohD2QOkOeG/g0=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-decorators": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-decorators/download/@babel/plugin-syntax-decorators-7.2.0.tgz", - "integrity": "sha1-xQsblX3MaeSxEntl4cM+72FXDBs=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-decorators/download/@babel/plugin-syntax-decorators-7.10.1.tgz?cache=0&sync_timestamp=1590617485835&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-decorators%2Fdownload%2F%40babel%2Fplugin-syntax-decorators-7.10.1.tgz", + "integrity": "sha1-FrhpxL6vyaRCVlFHvafOCWe9TxM=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-syntax-dynamic-import": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-dynamic-import/download/@babel/plugin-syntax-dynamic-import-7.2.0.tgz", - "integrity": "sha1-acFZ/69JmBIhYa2OvF5tH1XfhhI=", + "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?cache=0&sync_timestamp=1578952227018&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-dynamic-import%2Fdownload%2F%40babel%2Fplugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha1-Yr+Ysto80h1iYVT8lu5bPLaOrLM=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-json-strings": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-json-strings/download/@babel/plugin-syntax-json-strings-7.2.0.tgz", - "integrity": "sha1-cr0T9v/h0lk4Ep0qGGsR/WKVFHA=", + "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.0.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-jsx": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-jsx/download/@babel/plugin-syntax-jsx-7.2.0.tgz", - "integrity": "sha1-C4WjtLx830zEuL8jYzW5B8oi58c=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-jsx/download/@babel/plugin-syntax-jsx-7.10.1.tgz?cache=0&sync_timestamp=1590617488045&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-jsx%2Fdownload%2F%40babel%2Fplugin-syntax-jsx-7.10.1.tgz", + "integrity": "sha1-CuNxE0pCuR1UGP6zyMjUPhVl0to=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-syntax-object-rest-spread": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-object-rest-spread/download/@babel/plugin-syntax-object-rest-spread-7.2.0.tgz", - "integrity": "sha1-O3o+czUQxX6CC5FCpleayLDfrS4=", + "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?cache=0&sync_timestamp=1578952449003&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-object-rest-spread%2Fdownload%2F%40babel%2Fplugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha1-YOIl7cvZimQDMqLnLdPmbxr1WHE=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-syntax-optional-catch-binding/download/@babel/plugin-syntax-optional-catch-binding-7.2.0.tgz", - "integrity": "sha1-qUAT1u2okI3+akd+f57ahWVuz1w=", + "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.0.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-transform-arrow-functions": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-arrow-functions/download/@babel/plugin-transform-arrow-functions-7.2.0.tgz", - "integrity": "sha1-mur75Nb/xlY7+Pg3IJFijwB3lVA=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-arrow-functions/download/@babel/plugin-transform-arrow-functions-7.10.1.tgz?cache=0&sync_timestamp=1590617488714&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-arrow-functions%2Fdownload%2F%40babel%2Fplugin-transform-arrow-functions-7.10.1.tgz", + "integrity": "sha1-y17jo28IY8BurQtAm0zEOoibKVs=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-async-to-generator": { - "version": "7.5.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-async-to-generator/download/@babel/plugin-transform-async-to-generator-7.5.0.tgz", - "integrity": "sha1-iaOEigFmYjtbxIEWS1k2q5R+iH4=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-async-to-generator/download/@babel/plugin-transform-async-to-generator-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-async-to-generator%2Fdownload%2F%40babel%2Fplugin-transform-async-to-generator-7.10.1.tgz", + "integrity": "sha1-5RU+saPgKPeRlO2Kekv1X4YrIGI=", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0" + "@babel/helper-module-imports": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-remap-async-to-generator": "^7.10.1" } }, "@babel/plugin-transform-block-scoped-functions": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-block-scoped-functions/download/@babel/plugin-transform-block-scoped-functions-7.2.0.tgz", - "integrity": "sha1-XTzBHo1d3XUqpkyRSNDbbLef0ZA=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-block-scoped-functions/download/@babel/plugin-transform-block-scoped-functions-7.10.1.tgz", + "integrity": "sha1-FGhW51bVSyD/8UuBlFaz4BgguF0=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-block-scoping": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-block-scoping/download/@babel/plugin-transform-block-scoping-7.5.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-block-scoping%2Fdownload%2F%40babel%2Fplugin-transform-block-scoping-7.5.5.tgz", - "integrity": "sha1-o185XlQCgi8Q0hGfb44EXjY5os4=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-block-scoping/download/@babel/plugin-transform-block-scoping-7.10.1.tgz?cache=0&sync_timestamp=1590617489049&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-block-scoping%2Fdownload%2F%40babel%2Fplugin-transform-block-scoping-7.10.1.tgz", + "integrity": "sha1-Rwktico0WBFFHNDcXZFgWYJwXV4=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-plugin-utils": "^7.10.1", "lodash": "^4.17.13" } }, "@babel/plugin-transform-classes": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-classes/download/@babel/plugin-transform-classes-7.5.5.tgz", - "integrity": "sha1-0JQpnZvWgKFKKg7a44MFrWD7Tek=", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-define-map": "^7.5.5", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.5.5", - "@babel/helper-split-export-declaration": "^7.4.4", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-classes/download/@babel/plugin-transform-classes-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-classes%2Fdownload%2F%40babel%2Fplugin-transform-classes-7.10.1.tgz", + "integrity": "sha1-bhHdbE365w9UBICkcCR37XZtcz8=", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.10.1", + "@babel/helper-define-map": "^7.10.1", + "@babel/helper-function-name": "^7.10.1", + "@babel/helper-optimise-call-expression": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-replace-supers": "^7.10.1", + "@babel/helper-split-export-declaration": "^7.10.1", "globals": "^11.1.0" } }, "@babel/plugin-transform-computed-properties": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-computed-properties/download/@babel/plugin-transform-computed-properties-7.2.0.tgz", - "integrity": "sha1-g6ffamWIZbHI9kHVEMbzryICFto=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-computed-properties/download/@babel/plugin-transform-computed-properties-7.10.1.tgz?cache=0&sync_timestamp=1590617489784&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-computed-properties%2Fdownload%2F%40babel%2Fplugin-transform-computed-properties-7.10.1.tgz", + "integrity": "sha1-Wao5kGRCnWTc5c9275uQtyRevQc=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-destructuring": { - "version": "7.5.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-destructuring/download/@babel/plugin-transform-destructuring-7.5.0.tgz", - "integrity": "sha1-9sCf3+P5RRb/B0/od9t7ye8FhVo=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-destructuring/download/@babel/plugin-transform-destructuring-7.10.1.tgz?cache=0&sync_timestamp=1590617489227&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-destructuring%2Fdownload%2F%40babel%2Fplugin-transform-destructuring-7.10.1.tgz", + "integrity": "sha1-q9WOUTN4Fco6IqM2uF9iuZjnGQc=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-dotall-regex/download/@babel/plugin-transform-dotall-regex-7.4.4.tgz", - "integrity": "sha1-NhoUi8lRREMSxpRG127R6o5EUMM=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-dotall-regex/download/@babel/plugin-transform-dotall-regex-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-dotall-regex%2Fdownload%2F%40babel%2Fplugin-transform-dotall-regex-7.10.1.tgz", + "integrity": "sha1-kguf7C14u1frtkpkTVwrpnzBBO4=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "@babel/helper-create-regexp-features-plugin": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-duplicate-keys": { - "version": "7.5.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-duplicate-keys/download/@babel/plugin-transform-duplicate-keys-7.5.0.tgz", - "integrity": "sha1-xdv1EGv4TN9pEiLAl0wSsd+TGFM=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-duplicate-keys/download/@babel/plugin-transform-duplicate-keys-7.10.1.tgz?cache=0&sync_timestamp=1590617489638&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-duplicate-keys%2Fdownload%2F%40babel%2Fplugin-transform-duplicate-keys-7.10.1.tgz", + "integrity": "sha1-yQCnk76wlrydTQqdDN4ZUY/8g7k=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-exponentiation-operator": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-exponentiation-operator/download/@babel/plugin-transform-exponentiation-operator-7.2.0.tgz", - "integrity": "sha1-pjhoKJ5bQAf3BU1GSRr1FDV2YAg=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-exponentiation-operator/download/@babel/plugin-transform-exponentiation-operator-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-exponentiation-operator%2Fdownload%2F%40babel%2Fplugin-transform-exponentiation-operator-7.10.1.tgz", + "integrity": "sha1-J5wxFnVqYN1ub15Ii6eVfbnFnrM=", "dev": true, "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-for-of": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-for-of/download/@babel/plugin-transform-for-of-7.4.4.tgz", - "integrity": "sha1-Amf8c14kyAi6FzhmxsTRRA/DxVY=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-for-of/download/@babel/plugin-transform-for-of-7.10.1.tgz?cache=0&sync_timestamp=1590617490212&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-for-of%2Fdownload%2F%40babel%2Fplugin-transform-for-of-7.10.1.tgz", + "integrity": "sha1-/wERl4TrDuMiWOhkYVe6JQH8/aU=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-function-name": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-function-name/download/@babel/plugin-transform-function-name-7.4.4.tgz", - "integrity": "sha1-4UNhFquwYQwiWQlISHVKxSMJIq0=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-function-name/download/@babel/plugin-transform-function-name-7.10.1.tgz", + "integrity": "sha1-TtRv1uHY/eKi7HsDxm2FPSySQn0=", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-function-name": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-literals": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-literals/download/@babel/plugin-transform-literals-7.2.0.tgz", - "integrity": "sha1-aQNT6B+SZ9rU/Yz9d+r6hqulPqE=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-literals/download/@babel/plugin-transform-literals-7.10.1.tgz", + "integrity": "sha1-V5T42oKEayLk5mMeoWWLznCOtGo=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-modules-amd": { - "version": "7.5.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-amd/download/@babel/plugin-transform-modules-amd-7.5.0.tgz", - "integrity": "sha1-7wBDXUbaCllhqnKKHS7P8GPk+5E=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-amd/download/@babel/plugin-transform-modules-amd-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-modules-amd%2Fdownload%2F%40babel%2Fplugin-transform-modules-amd-7.10.1.tgz", + "integrity": "sha1-ZZUOjgV5fr0v5TK5bhn8VIKh1So=", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0", - "babel-plugin-dynamic-import-node": "^2.3.0" + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.5.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-commonjs/download/@babel/plugin-transform-modules-commonjs-7.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-modules-commonjs%2Fdownload%2F%40babel%2Fplugin-transform-modules-commonjs-7.5.0.tgz", - "integrity": "sha1-QlEn5gRSMTYIWO6qR6cdde3tenQ=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-commonjs/download/@babel/plugin-transform-modules-commonjs-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-modules-commonjs%2Fdownload%2F%40babel%2Fplugin-transform-modules-commonjs-7.10.1.tgz", + "integrity": "sha1-1f9LRBPtl//e2ZlhBW4fuYD7kwE=", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "babel-plugin-dynamic-import-node": "^2.3.0" + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-simple-access": "^7.10.1", + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.5.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-systemjs/download/@babel/plugin-transform-modules-systemjs-7.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-modules-systemjs%2Fdownload%2F%40babel%2Fplugin-transform-modules-systemjs-7.5.0.tgz", - "integrity": "sha1-51JmoT75QgLbKgYgl3dW9R1S0kk=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-systemjs/download/@babel/plugin-transform-modules-systemjs-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-modules-systemjs%2Fdownload%2F%40babel%2Fplugin-transform-modules-systemjs-7.10.1.tgz", + "integrity": "sha1-mWLksKxqry4gQxraPY7HIILL/7Y=", "dev": true, "requires": { - "@babel/helper-hoist-variables": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0", - "babel-plugin-dynamic-import-node": "^2.3.0" + "@babel/helper-hoist-variables": "^7.10.1", + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-umd": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-umd/download/@babel/plugin-transform-modules-umd-7.2.0.tgz", - "integrity": "sha1-dnjOdRafCHe46yI1U4wHQmjdAa4=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-modules-umd/download/@babel/plugin-transform-modules-umd-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-modules-umd%2Fdownload%2F%40babel%2Fplugin-transform-modules-umd-7.10.1.tgz", + "integrity": "sha1-6ggJEf/G6yGEClGXo57eTuZ7FZU=", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.4.5", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-named-capturing-groups-regex/download/@babel/plugin-transform-named-capturing-groups-regex-7.4.5.tgz", - "integrity": "sha1-nSaf0oo3AlgZm0KUc2gTpgu90QY=", + "version": "7.8.3", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-named-capturing-groups-regex/download/@babel/plugin-transform-named-capturing-groups-regex-7.8.3.tgz?cache=0&sync_timestamp=1578952452844&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-named-capturing-groups-regex%2Fdownload%2F%40babel%2Fplugin-transform-named-capturing-groups-regex-7.8.3.tgz", + "integrity": "sha1-oqcr/6ICrA4tBQav0JOcXsvEjGw=", "dev": true, "requires": { - "regexp-tree": "^0.1.6" + "@babel/helper-create-regexp-features-plugin": "^7.8.3" } }, "@babel/plugin-transform-new-target": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-new-target/download/@babel/plugin-transform-new-target-7.4.4.tgz", - "integrity": "sha1-GNEgQ4sMye6VpH8scryXaPvtYKU=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-new-target/download/@babel/plugin-transform-new-target-7.10.1.tgz", + "integrity": "sha1-buQaXmSNp2MuIrb7VAEuh/YS8yQ=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-object-super": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-object-super/download/@babel/plugin-transform-object-super-7.5.5.tgz", - "integrity": "sha1-xwAh34NAc8ZethO4Z5zEo4HRqfk=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-object-super/download/@babel/plugin-transform-object-super-7.10.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-object-super%2Fdownload%2F%40babel%2Fplugin-transform-object-super-7.10.1.tgz", + "integrity": "sha1-LjAWsK2/JimDvw1RIdZ2pe2cT94=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.5.5" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-replace-supers": "^7.10.1" } }, "@babel/plugin-transform-parameters": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-parameters/download/@babel/plugin-transform-parameters-7.4.4.tgz", - "integrity": "sha1-dVbPA/MYvScZ/kySLS2Ai+VXHhY=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-parameters/download/@babel/plugin-transform-parameters-7.10.1.tgz", + "integrity": "sha1-slk4o8X64DVBRKcgsHsydm9oPd0=", "dev": true, "requires": { - "@babel/helper-call-delegate": "^7.4.4", - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-get-function-arity": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-regenerator": { - "version": "7.4.5", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-regenerator/download/@babel/plugin-transform-regenerator-7.4.5.tgz", - "integrity": "sha1-Yp3IJRLFXO4BNB+ye9/LIQNUaA8=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-regenerator/download/@babel/plugin-transform-regenerator-7.10.1.tgz?cache=0&sync_timestamp=1590617523541&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-regenerator%2Fdownload%2F%40babel%2Fplugin-transform-regenerator-7.10.1.tgz", + "integrity": "sha1-EOF1y+e9tjzJs5+bP4I8XHxcVJA=", "dev": true, "requires": { - "regenerator-transform": "^0.14.0" + "regenerator-transform": "^0.14.2" } }, "@babel/plugin-transform-runtime": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-runtime/download/@babel/plugin-transform-runtime-7.5.5.tgz", - "integrity": "sha1-pjMa+/xZGJ0hNbLglHRFeo49KLw=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-runtime/download/@babel/plugin-transform-runtime-7.10.1.tgz", + "integrity": "sha1-/RiH90ljf7LthtwnjnnrQd839LE=", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-module-imports": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1", "resolve": "^1.8.1", "semver": "^5.5.1" } }, "@babel/plugin-transform-shorthand-properties": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-shorthand-properties/download/@babel/plugin-transform-shorthand-properties-7.2.0.tgz", - "integrity": "sha1-YzOu4vjW7n4oYVRXKYk0o7RhmPA=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-shorthand-properties/download/@babel/plugin-transform-shorthand-properties-7.10.1.tgz?cache=0&sync_timestamp=1590617494359&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-shorthand-properties%2Fdownload%2F%40babel%2Fplugin-transform-shorthand-properties-7.10.1.tgz", + "integrity": "sha1-6LVPI4ocy65ILE3OlGGArnsxQ/M=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-spread": { - "version": "7.2.2", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-spread/download/@babel/plugin-transform-spread-7.2.2.tgz", - "integrity": "sha1-MQOpq+IvdCttQG7NPNSbd0kZtAY=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-spread/download/@babel/plugin-transform-spread-7.10.1.tgz", + "integrity": "sha1-DG1higxEYaJ0QYRgooycz1I5p8g=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-sticky-regex": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-sticky-regex/download/@babel/plugin-transform-sticky-regex-7.2.0.tgz", - "integrity": "sha1-oeRUtZlVYKnB4NU338FQYf0mh+E=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-sticky-regex/download/@babel/plugin-transform-sticky-regex-7.10.1.tgz?cache=0&sync_timestamp=1590617492839&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-sticky-regex%2Fdownload%2F%40babel%2Fplugin-transform-sticky-regex-7.10.1.tgz", + "integrity": "sha1-kPyJt1JiKL7ZhCz/NYgnCno5OwA=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1", + "@babel/helper-regex": "^7.10.1" } }, "@babel/plugin-transform-template-literals": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-template-literals/download/@babel/plugin-transform-template-literals-7.4.4.tgz", - "integrity": "sha1-nSj+p7vOY3+3YSoHUJidgyHUvLA=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-template-literals/download/@babel/plugin-transform-template-literals-7.10.1.tgz", + "integrity": "sha1-kUx7f0dSxXDqAFU7QoTa2AcOhig=", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-annotate-as-pure": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-typeof-symbol": { - "version": "7.2.0", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-typeof-symbol/download/@babel/plugin-transform-typeof-symbol-7.2.0.tgz", - "integrity": "sha1-EX0rzsL79ktLWdH5gZiUaC0p8rI=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-typeof-symbol/download/@babel/plugin-transform-typeof-symbol-7.10.1.tgz?cache=0&sync_timestamp=1590619661466&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-transform-typeof-symbol%2Fdownload%2F%40babel%2Fplugin-transform-typeof-symbol-7.10.1.tgz", + "integrity": "sha1-YMAjm2mWXRZrgKhN5zFcG8fguw4=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/plugin-transform-unicode-regex": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-unicode-regex/download/@babel/plugin-transform-unicode-regex-7.4.4.tgz", - "integrity": "sha1-q0Y0u08U02cov1l4Mis1WHeHlw8=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/plugin-transform-unicode-regex/download/@babel/plugin-transform-unicode-regex-7.10.1.tgz", + "integrity": "sha1-a1jyrqe2jfN6xQJdnIh1JEOmtD8=", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "@babel/helper-create-regexp-features-plugin": "^7.10.1", + "@babel/helper-plugin-utils": "^7.10.1" } }, "@babel/preset-env": { "version": "7.3.4", - "resolved": "https://registry.npm.taobao.org/@babel/preset-env/download/@babel/preset-env-7.3.4.tgz", + "resolved": "https://registry.npm.taobao.org/@babel/preset-env/download/@babel/preset-env-7.3.4.tgz?cache=0&sync_timestamp=1590868958159&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fpreset-env%2Fdownload%2F%40babel%2Fpreset-env-7.3.4.tgz", "integrity": "sha1-iHzzi20jyC8ZtRNSmL2xYAYuM+E=", "dev": true, "requires": { @@ -788,47 +794,47 @@ } }, "@babel/runtime": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/runtime/download/@babel/runtime-7.5.5.tgz", - "integrity": "sha1-dPulbTXvvspEQJHHhQzNSU/S8TI=", + "version": "7.10.2", + "resolved": "https://registry.npm.taobao.org/@babel/runtime/download/@babel/runtime-7.10.2.tgz", + "integrity": "sha1-0QPyHyYCSX04NIoy4AhjfVBtuDk=", "dev": true, "requires": { - "regenerator-runtime": "^0.13.2" + "regenerator-runtime": "^0.13.4" } }, "@babel/runtime-corejs2": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/runtime-corejs2/download/@babel/runtime-corejs2-7.5.5.tgz", - "integrity": "sha1-wyFMCO8gNBr0GH8cn73DV/vslrI=", + "version": "7.10.2", + "resolved": "https://registry.npm.taobao.org/@babel/runtime-corejs2/download/@babel/runtime-corejs2-7.10.2.tgz", + "integrity": "sha1-Uy8guDloRhX5fp9wD2MOmV7+1CY=", "dev": true, "requires": { "core-js": "^2.6.5", - "regenerator-runtime": "^0.13.2" + "regenerator-runtime": "^0.13.4" } }, "@babel/template": { - "version": "7.4.4", - "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.4.4.tgz", - "integrity": "sha1-9LiNEiVomgj1vDoXSDVFvp5O0jc=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.10.1.tgz", + "integrity": "sha1-4WcVSpTLXxSyjcWPU1bSFi9TmBE=", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.4.4", - "@babel/types": "^7.4.4" + "@babel/code-frame": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/traverse": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.5.5.tgz", - "integrity": "sha1-9mT482jtMpiM1kjan3LVynDxZbs=", + "version": "7.10.1", + "resolved": "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.10.1.tgz", + "integrity": "sha1-u87zAx5BUqbAtQFH9JWN9Uyg3Sc=", "dev": true, "requires": { - "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.5.5", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.5.5", - "@babel/types": "^7.5.5", + "@babel/code-frame": "^7.10.1", + "@babel/generator": "^7.10.1", + "@babel/helper-function-name": "^7.10.1", + "@babel/helper-split-export-declaration": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -836,7 +842,7 @@ "dependencies": { "debug": { "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", "dev": true, "requires": { @@ -846,42 +852,42 @@ } }, "@babel/types": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.5.5.tgz", - "integrity": "sha1-l7n3KOGCeFkJqkq1YmTwkKAo0Yo=", + "version": "7.10.2", + "resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.10.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Ftypes%2Fdownload%2F%40babel%2Ftypes-7.10.2.tgz", + "integrity": "sha1-MCg74xytDb9vsAvUBkHKDqZ1Fy0=", "dev": true, "requires": { - "esutils": "^2.0.2", + "@babel/helper-validator-identifier": "^7.10.1", "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } }, "@fortawesome/fontawesome-free": { - "version": "5.10.1", - "resolved": "https://registry.npm.taobao.org/@fortawesome/fontawesome-free/download/@fortawesome/fontawesome-free-5.10.1.tgz", - "integrity": "sha1-3sKO4Cw/xR2kbVPOTanVeHMS+9c=" + "version": "5.13.0", + "resolved": "https://registry.npm.taobao.org/@fortawesome/fontawesome-free/download/@fortawesome/fontawesome-free-5.13.0.tgz", + "integrity": "sha1-/LET0ayktHG3CejJwWhnT71uBtk=" }, "@hapi/address": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/@hapi/address/download/@hapi/address-2.0.0.tgz", - "integrity": "sha1-nwVGnIjLL9Pc1iR3a1TulcMSEmo=", + "version": "2.1.4", + "resolved": "https://registry.npm.taobao.org/@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.npm.taobao.org/@hapi/bourne/download/@hapi/bourne-1.3.2.tgz", + "resolved": "https://registry.npm.taobao.org/@hapi/bourne/download/@hapi/bourne-1.3.2.tgz?cache=0&sync_timestamp=1578129291870&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40hapi%2Fbourne%2Fdownload%2F%40hapi%2Fbourne-1.3.2.tgz", "integrity": "sha1-CnCVreoGckPOMoPhtWuKj0U7JCo=", "dev": true }, "@hapi/hoek": { - "version": "8.2.1", - "resolved": "https://registry.npm.taobao.org/@hapi/hoek/download/@hapi/hoek-8.2.1.tgz?cache=0&sync_timestamp=1565854121942&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40hapi%2Fhoek%2Fdownload%2F%40hapi%2Fhoek-8.2.1.tgz", - "integrity": "sha1-kkrwTLsi4XNZxiDSqclG5j9Y63c=", + "version": "8.5.1", + "resolved": "https://registry.npm.taobao.org/@hapi/hoek/download/@hapi/hoek-8.5.1.tgz", + "integrity": "sha1-/elgZMpEbeyMVajC8TCVewcMbgY=", "dev": true }, "@hapi/joi": { "version": "15.1.1", - "resolved": "https://registry.npm.taobao.org/@hapi/joi/download/@hapi/joi-15.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40hapi%2Fjoi%2Fdownload%2F%40hapi%2Fjoi-15.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/@hapi/joi/download/@hapi/joi-15.1.1.tgz", "integrity": "sha1-xnW4pxKW8Cgz+NbSQ7NMV7jOGdc=", "dev": true, "requires": { @@ -892,12 +898,12 @@ } }, "@hapi/topo": { - "version": "3.1.3", - "resolved": "https://registry.npm.taobao.org/@hapi/topo/download/@hapi/topo-3.1.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40hapi%2Ftopo%2Fdownload%2F%40hapi%2Ftopo-3.1.3.tgz", - "integrity": "sha1-x6AuDZNlltKfGE5tf9wH6LXvzhE=", + "version": "3.1.6", + "resolved": "https://registry.npm.taobao.org/@hapi/topo/download/@hapi/topo-3.1.6.tgz?cache=0&sync_timestamp=1578128698166&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40hapi%2Ftopo%2Fdownload%2F%40hapi%2Ftopo-3.1.6.tgz", + "integrity": "sha1-aNk1+j6uf91asNf5U/MgXYsr/Ck=", "dev": true, "requires": { - "@hapi/hoek": "8.x.x" + "@hapi/hoek": "^8.3.0" } }, "@intervolga/optimize-cssnano-plugin": { @@ -946,13 +952,13 @@ }, "ansi-styles": { "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-2.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "dev": true }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz?cache=0&sync_timestamp=1591687028262&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -980,44 +986,56 @@ } } }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/@types/events/download/@types/events-3.0.0.tgz", - "integrity": "sha1-KGLz9Yqaf3w+eNefEw3U1xwlwqc=", + "@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/@types/color-name/download/@types/color-name-1.1.1.tgz?cache=0&sync_timestamp=1588199606687&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fcolor-name%2Fdownload%2F%40types%2Fcolor-name-1.1.1.tgz", + "integrity": "sha1-HBJhu+qhCoBVu8XYq4S3sq/IRqA=", "dev": true }, "@types/glob": { - "version": "7.1.1", - "resolved": "https://registry.npm.taobao.org/@types/glob/download/@types/glob-7.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fglob%2Fdownload%2F%40types%2Fglob-7.1.1.tgz", - "integrity": "sha1-qlmhxuP7xCHgfM0xqUTDDrpSFXU=", + "version": "7.1.2", + "resolved": "https://registry.npm.taobao.org/@types/glob/download/@types/glob-7.1.2.tgz", + "integrity": "sha1-BsomUhNTpUXZSgrcdPOKWdIyyYc=", "dev": true, "requires": { - "@types/events": "*", "@types/minimatch": "*", "@types/node": "*" } }, + "@types/json-schema": { + "version": "7.0.5", + "resolved": "https://registry.npm.taobao.org/@types/json-schema/download/@types/json-schema-7.0.5.tgz?cache=0&sync_timestamp=1591720875502&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fjson-schema%2Fdownload%2F%40types%2Fjson-schema-7.0.5.tgz", + "integrity": "sha1-3M5EMOZLRDuolF8CkPtWStW6xt0=", + "dev": true + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npm.taobao.org/@types/json5/download/@types/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, "@types/minimatch": { "version": "3.0.3", - "resolved": "https://registry.npm.taobao.org/@types/minimatch/download/@types/minimatch-3.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fminimatch%2Fdownload%2F%40types%2Fminimatch-3.0.3.tgz", + "resolved": "https://registry.npm.taobao.org/@types/minimatch/download/@types/minimatch-3.0.3.tgz", "integrity": "sha1-PcoOPzOyAPx9ETnAzZbBJoyt/Z0=", "dev": true }, "@types/node": { - "version": "8.10.52", - "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-8.10.52.tgz?cache=0&sync_timestamp=1566325318079&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-8.10.52.tgz", - "integrity": "sha1-7wyhgJmU4gGGCQQIuMt/Kmh31fk=" + "version": "14.0.13", + "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-14.0.13.tgz?cache=0&sync_timestamp=1591734998944&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-14.0.13.tgz", + "integrity": "sha1-7hEo6IG4dMNxN0wfciAYk2FkF8k=", + "dev": true }, "@types/normalize-package-data": { "version": "2.4.0", - "resolved": "https://registry.npm.taobao.org/@types/normalize-package-data/download/@types/normalize-package-data-2.4.0.tgz", + "resolved": "https://registry.npm.taobao.org/@types/normalize-package-data/download/@types/normalize-package-data-2.4.0.tgz?cache=0&sync_timestamp=1588201212713&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnormalize-package-data%2Fdownload%2F%40types%2Fnormalize-package-data-2.4.0.tgz", "integrity": "sha1-5IbQ2XOW15vu3QpuM/RTT/a0lz4=", "dev": true }, "@types/q": { - "version": "1.5.2", - "resolved": "https://registry.npm.taobao.org/@types/q/download/@types/q-1.5.2.tgz", - "integrity": "sha1-aQoUdbhPKohP0HzXl8APXzE1bqg=", + "version": "1.5.4", + "resolved": "https://registry.npm.taobao.org/@types/q/download/@types/q-1.5.4.tgz", + "integrity": "sha1-FZJUFOCtLNdlv+9YhC9+JqesyyQ=", "dev": true }, "@vue/babel-helper-vue-jsx-merge-props": { @@ -1027,9 +1045,9 @@ "dev": true }, "@vue/babel-plugin-transform-vue-jsx": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/@vue/babel-plugin-transform-vue-jsx/download/@vue/babel-plugin-transform-vue-jsx-1.0.0.tgz", - "integrity": "sha1-68vznDEslBFMjE9AfuT2yXqkVDI=", + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-plugin-transform-vue-jsx/download/@vue/babel-plugin-transform-vue-jsx-1.1.2.tgz", + "integrity": "sha1-wKPm78Ai515CR7RIqPxrhvA+kcA=", "dev": true, "requires": { "@babel/helper-module-imports": "^7.0.0", @@ -1041,9 +1059,9 @@ } }, "@vue/babel-preset-app": { - "version": "3.11.0", - "resolved": "https://registry.npm.taobao.org/@vue/babel-preset-app/download/@vue/babel-preset-app-3.11.0.tgz", - "integrity": "sha1-Ur95wVVgowShP0dw4+VTDgHdYXM=", + "version": "3.12.1", + "resolved": "https://registry.npm.taobao.org/@vue/babel-preset-app/download/@vue/babel-preset-app-3.12.1.tgz?cache=0&sync_timestamp=1591967129919&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-preset-app%2Fdownload%2F%40vue%2Fbabel-preset-app-3.12.1.tgz", + "integrity": "sha1-JMR3BS8HjzD9t3NRA7FN0fosv+E=", "dev": true, "requires": { "@babel/helper-module-imports": "^7.0.0", @@ -1062,88 +1080,88 @@ } }, "@vue/babel-preset-jsx": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/@vue/babel-preset-jsx/download/@vue/babel-preset-jsx-1.1.0.tgz", - "integrity": "sha1-yAATKfWzcil6MRGiUetPnpVsEmY=", + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-preset-jsx/download/@vue/babel-preset-jsx-1.1.2.tgz", + "integrity": "sha1-LhaetMIE6jfKZsLqhaiAv8mdTyA=", "dev": true, "requires": { "@vue/babel-helper-vue-jsx-merge-props": "^1.0.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.0.0", - "@vue/babel-sugar-functional-vue": "^1.0.0", - "@vue/babel-sugar-inject-h": "^1.0.0", - "@vue/babel-sugar-v-model": "^1.0.0", - "@vue/babel-sugar-v-on": "^1.1.0" + "@vue/babel-plugin-transform-vue-jsx": "^1.1.2", + "@vue/babel-sugar-functional-vue": "^1.1.2", + "@vue/babel-sugar-inject-h": "^1.1.2", + "@vue/babel-sugar-v-model": "^1.1.2", + "@vue/babel-sugar-v-on": "^1.1.2" } }, "@vue/babel-sugar-functional-vue": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-functional-vue/download/@vue/babel-sugar-functional-vue-1.0.0.tgz", - "integrity": "sha1-F+LEyie3SyRNo7kjJA7JHRAEjLM=", + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-functional-vue/download/@vue/babel-sugar-functional-vue-1.1.2.tgz", + "integrity": "sha1-9+JPugnm8e5wEEVgqICAV1VfGpo=", "dev": true, "requires": { "@babel/plugin-syntax-jsx": "^7.2.0" } }, "@vue/babel-sugar-inject-h": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-inject-h/download/@vue/babel-sugar-inject-h-1.0.0.tgz", - "integrity": "sha1-5e+2xbW3mI3AODGvbRM797zeY0c=", + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-inject-h/download/@vue/babel-sugar-inject-h-1.1.2.tgz", + "integrity": "sha1-ilJ2ttji7Rb/yAeKrZQjYnTm7fA=", "dev": true, "requires": { "@babel/plugin-syntax-jsx": "^7.2.0" } }, "@vue/babel-sugar-v-model": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-v-model/download/@vue/babel-sugar-v-model-1.0.0.tgz", - "integrity": "sha1-9NpWqmf2WjSb0sJpqV5y5gGvRhM=", + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-v-model/download/@vue/babel-sugar-v-model-1.1.2.tgz", + "integrity": "sha1-H/b9G4ACI/ycsehNzrXlLXN6gZI=", "dev": true, "requires": { "@babel/plugin-syntax-jsx": "^7.2.0", "@vue/babel-helper-vue-jsx-merge-props": "^1.0.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.0.0", + "@vue/babel-plugin-transform-vue-jsx": "^1.1.2", "camelcase": "^5.0.0", "html-tags": "^2.0.0", "svg-tags": "^1.0.0" } }, "@vue/babel-sugar-v-on": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-v-on/download/@vue/babel-sugar-v-on-1.1.0.tgz", - "integrity": "sha1-Hys17uq7h+r4klkx9NNP2OZASkU=", + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-v-on/download/@vue/babel-sugar-v-on-1.1.2.tgz", + "integrity": "sha1-su+ZuPL6sJ++rSWq1w70Lhz1sTs=", "dev": true, "requires": { "@babel/plugin-syntax-jsx": "^7.2.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.0.0", + "@vue/babel-plugin-transform-vue-jsx": "^1.1.2", "camelcase": "^5.0.0" } }, "@vue/cli-overlay": { - "version": "3.11.0", - "resolved": "https://registry.npm.taobao.org/@vue/cli-overlay/download/@vue/cli-overlay-3.11.0.tgz", - "integrity": "sha1-iNSQYAlcnFForGAU1MTrZufdSHQ=", + "version": "3.12.1", + "resolved": "https://registry.npm.taobao.org/@vue/cli-overlay/download/@vue/cli-overlay-3.12.1.tgz?cache=0&sync_timestamp=1591967125617&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcli-overlay%2Fdownload%2F%40vue%2Fcli-overlay-3.12.1.tgz", + "integrity": "sha1-vf3o9xI1YasG5OTGC4VMxQkvWrE=", "dev": true }, "@vue/cli-plugin-babel": { - "version": "3.11.0", - "resolved": "https://registry.npm.taobao.org/@vue/cli-plugin-babel/download/@vue/cli-plugin-babel-3.11.0.tgz", - "integrity": "sha1-JHpyMxAKM+oP2ffTC98rm1VOnog=", + "version": "3.12.1", + "resolved": "https://registry.npm.taobao.org/@vue/cli-plugin-babel/download/@vue/cli-plugin-babel-3.12.1.tgz?cache=0&sync_timestamp=1591967129567&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcli-plugin-babel%2Fdownload%2F%40vue%2Fcli-plugin-babel-3.12.1.tgz", + "integrity": "sha1-mnkVnejNCGsBP6bXijmDCy4uxwY=", "dev": true, "requires": { "@babel/core": "^7.0.0", - "@vue/babel-preset-app": "^3.11.0", - "@vue/cli-shared-utils": "^3.11.0", + "@vue/babel-preset-app": "^3.12.1", + "@vue/cli-shared-utils": "^3.12.1", "babel-loader": "^8.0.5", "webpack": "^4.0.0" } }, "@vue/cli-plugin-eslint": { - "version": "3.11.0", - "resolved": "https://registry.npm.taobao.org/@vue/cli-plugin-eslint/download/@vue/cli-plugin-eslint-3.11.0.tgz", - "integrity": "sha1-mbFKnUqwXZb8cH2VjbneSFYTMyk=", + "version": "3.12.1", + "resolved": "https://registry.npm.taobao.org/@vue/cli-plugin-eslint/download/@vue/cli-plugin-eslint-3.12.1.tgz?cache=0&sync_timestamp=1591967127528&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcli-plugin-eslint%2Fdownload%2F%40vue%2Fcli-plugin-eslint-3.12.1.tgz", + "integrity": "sha1-MCxGOGfzjnkLuZbq/fcVnHgtyM8=", "dev": true, "requires": { - "@vue/cli-shared-utils": "^3.11.0", + "@vue/cli-shared-utils": "^3.12.1", "babel-eslint": "^10.0.1", "eslint": "^4.19.1", "eslint-loader": "^2.1.2", @@ -1154,15 +1172,15 @@ } }, "@vue/cli-service": { - "version": "3.11.0", - "resolved": "https://registry.npm.taobao.org/@vue/cli-service/download/@vue/cli-service-3.11.0.tgz", - "integrity": "sha1-NWUm6RAKegoljjxKE/9CHeKerd4=", + "version": "3.12.1", + "resolved": "https://registry.npm.taobao.org/@vue/cli-service/download/@vue/cli-service-3.12.1.tgz?cache=0&sync_timestamp=1591967128631&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcli-service%2Fdownload%2F%40vue%2Fcli-service-3.12.1.tgz", + "integrity": "sha1-EyILHBiSVOfAAzkN8ykIb5tud+Y=", "dev": true, "requires": { "@intervolga/optimize-cssnano-plugin": "^1.0.5", "@soda/friendly-errors-webpack-plugin": "^1.7.1", - "@vue/cli-overlay": "^3.11.0", - "@vue/cli-shared-utils": "^3.11.0", + "@vue/cli-overlay": "^3.12.1", + "@vue/cli-shared-utils": "^3.12.1", "@vue/component-compiler-utils": "^3.0.0", "@vue/preload-webpack-plugin": "^1.1.0", "@vue/web-component-wrapper": "^1.2.0", @@ -1195,7 +1213,7 @@ "lodash.defaultsdeep": "^4.6.1", "lodash.mapvalues": "^4.6.0", "lodash.transform": "^4.6.0", - "mini-css-extract-plugin": "^0.6.0", + "mini-css-extract-plugin": "^0.8.0", "minimist": "^1.2.0", "ora": "^3.4.0", "portfinder": "^1.0.20", @@ -1219,31 +1237,25 @@ "dependencies": { "debug": { "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", "dev": true, "requires": { "ms": "^2.1.1" } }, - "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, "semver": { "version": "6.3.0", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1565627380363&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz", "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=", "dev": true } } }, "@vue/cli-shared-utils": { - "version": "3.11.0", - "resolved": "https://registry.npm.taobao.org/@vue/cli-shared-utils/download/@vue/cli-shared-utils-3.11.0.tgz", - "integrity": "sha1-o9b4CbDfs2fmJrcUBfhd6gYxMQs=", + "version": "3.12.1", + "resolved": "https://registry.npm.taobao.org/@vue/cli-shared-utils/download/@vue/cli-shared-utils-3.12.1.tgz?cache=0&sync_timestamp=1591967126772&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcli-shared-utils%2Fdownload%2F%40vue%2Fcli-shared-utils-3.12.1.tgz", + "integrity": "sha1-vPB2KH3a3uu7l8anSN/p/1DsjfA=", "dev": true, "requires": { "@hapi/joi": "^15.0.1", @@ -1260,33 +1272,18 @@ "string.prototype.padstart": "^3.0.0" }, "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "http://registry.npm.taobao.org/lru-cache/download/lru-cache-5.1.1.tgz", - "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, "semver": { "version": "6.3.0", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1565627380363&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz", "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=", "dev": true - }, - "yallist": { - "version": "3.0.3", - "resolved": "http://registry.npm.taobao.org/yallist/download/yallist-3.0.3.tgz", - "integrity": "sha1-tLBJ4xS+VF486AIjbWzSLNkcPek=", - "dev": true } } }, "@vue/component-compiler-utils": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/@vue/component-compiler-utils/download/@vue/component-compiler-utils-3.0.0.tgz", - "integrity": "sha1-0W+ia4NsBt9bqutF89gK/EfjVjQ=", + "version": "3.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/component-compiler-utils/download/@vue/component-compiler-utils-3.1.2.tgz", + "integrity": "sha1-ghOl/zIC+fITf+VTcPnouWVggcM=", "dev": true, "requires": { "consolidate": "^0.15.1", @@ -1294,10 +1291,28 @@ "lru-cache": "^4.1.2", "merge-source-map": "^1.1.0", "postcss": "^7.0.14", - "postcss-selector-parser": "^5.0.0", - "prettier": "1.16.3", + "postcss-selector-parser": "^6.0.2", + "prettier": "^1.18.2", "source-map": "~0.6.1", "vue-template-es2015-compiler": "^1.9.0" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz", + "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz?cache=0&sync_timestamp=1569874223546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } } }, "@vue/eslint-config-standard": { @@ -1315,7 +1330,7 @@ }, "@vue/preload-webpack-plugin": { "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/@vue/preload-webpack-plugin/download/@vue/preload-webpack-plugin-1.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fpreload-webpack-plugin%2Fdownload%2F%40vue%2Fpreload-webpack-plugin-1.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/@vue/preload-webpack-plugin/download/@vue/preload-webpack-plugin-1.1.1.tgz", "integrity": "sha1-GHI1MNME9EMCHaIpLW7JUCgmEEo=", "dev": true }, @@ -1326,178 +1341,177 @@ "dev": true }, "@webassemblyjs/ast": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/ast/download/@webassemblyjs/ast-1.8.5.tgz", - "integrity": "sha1-UbHF/mV2o0lTv0slPfnw1JDZ41k=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/ast/download/@webassemblyjs/ast-1.9.0.tgz", + "integrity": "sha1-vYUGBLQEJFmlpBzX0zjL7Wle2WQ=", "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" } }, "@webassemblyjs/floating-point-hex-parser": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/floating-point-hex-parser/download/@webassemblyjs/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha1-G6kmopI2E+3OSW/VsC6M6KX0lyE=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@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.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-api-error/download/@webassemblyjs/helper-api-error-1.8.5.tgz", - "integrity": "sha1-xJ2tIvZFInxe22EL25aX8aq3Ifc=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-api-error/download/@webassemblyjs/helper-api-error-1.9.0.tgz", + "integrity": "sha1-ID9nbjM7lsnaLuqzzO8zxFkotqI=", "dev": true }, "@webassemblyjs/helper-buffer": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-buffer/download/@webassemblyjs/helper-buffer-1.8.5.tgz", - "integrity": "sha1-/qk+Qphj3V5DOFVfQikjhaZT8gQ=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-buffer/download/@webassemblyjs/helper-buffer-1.9.0.tgz?cache=0&sync_timestamp=1580600188490&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fhelper-buffer%2Fdownload%2F%40webassemblyjs%2Fhelper-buffer-1.9.0.tgz", + "integrity": "sha1-oUQtJpxf6yP8vJ73WdrDVH8p3gA=", "dev": true }, "@webassemblyjs/helper-code-frame": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-code-frame/download/@webassemblyjs/helper-code-frame-1.8.5.tgz", - "integrity": "sha1-mnQP9I4/qjAisd/1RCPfmqKTwl4=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-code-frame/download/@webassemblyjs/helper-code-frame-1.9.0.tgz", + "integrity": "sha1-ZH+Iks0gQ6gqwMjF51w28dkVnyc=", "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.8.5" + "@webassemblyjs/wast-printer": "1.9.0" } }, "@webassemblyjs/helper-fsm": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-fsm/download/@webassemblyjs/helper-fsm-1.8.5.tgz", - "integrity": "sha1-ugt9Oz9+RzPaYFnJMyJ12GBwJFI=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-fsm/download/@webassemblyjs/helper-fsm-1.9.0.tgz?cache=0&sync_timestamp=1580600184873&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fhelper-fsm%2Fdownload%2F%40webassemblyjs%2Fhelper-fsm-1.9.0.tgz", + "integrity": "sha1-wFJWtxJEIUZx9LCOwQitY7cO3bg=", "dev": true }, "@webassemblyjs/helper-module-context": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-module-context/download/@webassemblyjs/helper-module-context-1.8.5.tgz", - "integrity": "sha1-3vS5knsBAdyMu9jR7bW3ucguskU=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-module-context/download/@webassemblyjs/helper-module-context-1.9.0.tgz", + "integrity": "sha1-JdiIS3aDmHGgimxvgGw5ee9xLwc=", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" + "@webassemblyjs/ast": "1.9.0" } }, "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-wasm-bytecode/download/@webassemblyjs/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha1-U3p1Dt31weky83RCBlUckcG5PmE=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@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.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-wasm-section/download/@webassemblyjs/helper-wasm-section-1.8.5.tgz", - "integrity": "sha1-dMpqa8vhnlCjtrRihH5pUD5r/L8=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/helper-wasm-section/download/@webassemblyjs/helper-wasm-section-1.9.0.tgz", + "integrity": "sha1-WkE41aYpK6GLBMWuSXF+QWeWU0Y=", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" } }, "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/ieee754/download/@webassemblyjs/ieee754-1.8.5.tgz", - "integrity": "sha1-cSMp2+8kDza/V70ve4+5v0FUQh4=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/ieee754/download/@webassemblyjs/ieee754-1.9.0.tgz?cache=0&sync_timestamp=1580627709910&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fieee754%2Fdownload%2F%40webassemblyjs%2Fieee754-1.9.0.tgz", + "integrity": "sha1-Fceg+6roP7JhQ7us9tbfFwKtOeQ=", "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" } }, "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/leb128/download/@webassemblyjs/leb128-1.8.5.tgz", - "integrity": "sha1-BE7es06mefPgTNT9mCTV41dnrhA=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/leb128/download/@webassemblyjs/leb128-1.9.0.tgz?cache=0&sync_timestamp=1580627709555&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%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.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/utf8/download/@webassemblyjs/utf8-1.8.5.tgz", - "integrity": "sha1-qL87XY/+mGx8Hjc8y9wqCRXwztw=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/utf8/download/@webassemblyjs/utf8-1.9.0.tgz", + "integrity": "sha1-BNM7Y2945qaBMifoJAL3Y3tiKas=", "dev": true }, "@webassemblyjs/wasm-edit": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-edit/download/@webassemblyjs/wasm-edit-1.8.5.tgz", - "integrity": "sha1-li2hKqWswcExyBxCMpkcgs5W4Bo=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-edit/download/@webassemblyjs/wasm-edit-1.9.0.tgz", + "integrity": "sha1-P+bXnT8PkiGDqoYALELdJWz+6c8=", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/helper-wasm-section": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-opt": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "@webassemblyjs/wast-printer": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" } }, "@webassemblyjs/wasm-gen": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-gen/download/@webassemblyjs/wasm-gen-1.8.5.tgz", - "integrity": "sha1-VIQHZsLBAC62TtGr5yCt7XFPmLw=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-gen/download/@webassemblyjs/wasm-gen-1.9.0.tgz", + "integrity": "sha1-ULxw7Gje2OJ2OwGhQYv0NJGnpJw=", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" } }, "@webassemblyjs/wasm-opt": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-opt/download/@webassemblyjs/wasm-opt-1.8.5.tgz", - "integrity": "sha1-sk2fa6UDlK8TSfUQr6j/y4pj0mQ=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-opt/download/@webassemblyjs/wasm-opt-1.9.0.tgz?cache=0&sync_timestamp=1580600547572&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fwasm-opt%2Fdownload%2F%40webassemblyjs%2Fwasm-opt-1.9.0.tgz", + "integrity": "sha1-IhEYHlsxMmRDzIES658LkChyGmE=", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" } }, "@webassemblyjs/wasm-parser": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-parser/download/@webassemblyjs/wasm-parser-1.8.5.tgz", - "integrity": "sha1-IVdvDsiLkUJzV7hTY4NmjvfGa40=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wasm-parser/download/@webassemblyjs/wasm-parser-1.9.0.tgz", + "integrity": "sha1-nUjkSCbfSmWYKUqmyHRp1kL/9l4=", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" } }, "@webassemblyjs/wast-parser": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wast-parser/download/@webassemblyjs/wast-parser-1.8.5.tgz", - "integrity": "sha1-4Q7s1ULQ5705T2gnxJ899tTu+4w=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wast-parser/download/@webassemblyjs/wast-parser-1.9.0.tgz", + "integrity": "sha1-MDERXXmsW9JhVWzsw/qQo+9FGRQ=", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/floating-point-hex-parser": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-code-frame": "1.8.5", - "@webassemblyjs/helper-fsm": "1.8.5", + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", "@xtuc/long": "4.2.2" } }, "@webassemblyjs/wast-printer": { - "version": "1.8.5", - "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wast-printer/download/@webassemblyjs/wast-printer-1.8.5.tgz", - "integrity": "sha1-EUu8SB/RDKDiOzVg+oEnSLC65bw=", + "version": "1.9.0", + "resolved": "https://registry.npm.taobao.org/@webassemblyjs/wast-printer/download/@webassemblyjs/wast-printer-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fwast-printer%2Fdownload%2F%40webassemblyjs%2Fwast-printer-1.9.0.tgz", + "integrity": "sha1-STXVTIX+9jewDOn1I3dFHQDUeJk=", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", "@xtuc/long": "4.2.2" } }, @@ -1529,14 +1543,14 @@ } }, "acorn": { - "version": "6.3.0", - "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-6.3.0.tgz", - "integrity": "sha1-AIdQkRn/pPwKAEHR6TpBfmjLhW4=", + "version": "6.4.1", + "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-6.4.1.tgz?cache=0&sync_timestamp=1591869424806&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-6.4.1.tgz", + "integrity": "sha1-Ux5Yuj9RudrLmmZGyk3r9bFMpHQ=", "dev": true }, "acorn-jsx": { "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/acorn-jsx/download/acorn-jsx-3.0.1.tgz?cache=0&sync_timestamp=1566311078040&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn-jsx%2Fdownload%2Facorn-jsx-3.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/acorn-jsx/download/acorn-jsx-3.0.1.tgz", "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", "dev": true, "optional": true, @@ -1546,7 +1560,7 @@ "dependencies": { "acorn": { "version": "3.3.0", - "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-3.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-3.3.0.tgz?cache=0&sync_timestamp=1591869424806&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-3.3.0.tgz", "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", "dev": true, "optional": true @@ -1555,14 +1569,14 @@ }, "acorn-walk": { "version": "6.2.0", - "resolved": "https://registry.npm.taobao.org/acorn-walk/download/acorn-walk-6.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/acorn-walk/download/acorn-walk-6.2.0.tgz?cache=0&sync_timestamp=1592373515240&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn-walk%2Fdownload%2Facorn-walk-6.2.0.tgz", "integrity": "sha1-Ejy487hMIXHx9/slJhWxx4prGow=", "dev": true }, "address": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/address/download/address-1.1.0.tgz", - "integrity": "sha1-744EeEf80sW29QwWll+ST9mf5wk=" + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/address/download/address-1.1.2.tgz", + "integrity": "sha1-vxEWycdYxRt6kz0pa3LCIe2UKLY=" }, "agent-base": { "version": "4.3.0", @@ -1574,19 +1588,19 @@ }, "agentkeepalive": { "version": "3.5.2", - "resolved": "https://registry.npm.taobao.org/agentkeepalive/download/agentkeepalive-3.5.2.tgz", + "resolved": "https://registry.npm.taobao.org/agentkeepalive/download/agentkeepalive-3.5.2.tgz?cache=0&sync_timestamp=1592193887466&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fagentkeepalive%2Fdownload%2Fagentkeepalive-3.5.2.tgz", "integrity": "sha1-oROSTdP6JKC8O3gQjEUMKr7gD2c=", "requires": { "humanize-ms": "^1.2.1" } }, "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-6.10.2.tgz?cache=0&sync_timestamp=1563113786760&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv%2Fdownload%2Fajv-6.10.2.tgz", - "integrity": "sha1-086gTWsBeyiUrWkED+yLYj60vVI=", + "version": "6.12.2", + "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-6.12.2.tgz?cache=0&sync_timestamp=1587339911109&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv%2Fdownload%2Fajv-6.12.2.tgz", + "integrity": "sha1-xinF7O0XuvMUQ3kY0tqIyZ1ZWM0=", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", + "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" @@ -1600,7 +1614,7 @@ }, "ajv-keywords": { "version": "3.4.1", - "resolved": "https://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-3.4.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv-keywords%2Fdownload%2Fajv-keywords-3.4.1.tgz", + "resolved": "https://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-3.4.1.tgz", "integrity": "sha1-75FuJxxkrBIXH9g4TqrmsjRYVNo=", "dev": true }, @@ -1658,7 +1672,7 @@ }, "ansi-escapes": { "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/ansi-escapes/download/ansi-escapes-3.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/ansi-escapes/download/ansi-escapes-3.2.0.tgz?cache=0&sync_timestamp=1583072804444&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-escapes%2Fdownload%2Fansi-escapes-3.2.0.tgz", "integrity": "sha1-h4C5j/nb9WOBUtHx/lwde0RCl2s=", "dev": true, "optional": true @@ -1677,7 +1691,7 @@ }, "ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-3.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-3.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-3.2.1.tgz", "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=", "dev": true, "requires": { @@ -1690,24 +1704,14 @@ "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" }, "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz", - "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/anymatch/download/anymatch-3.1.1.tgz", + "integrity": "sha1-xV7PAhheJGklk5kxDBc84xIzsUI=", "dev": true, + "optional": true, "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "http://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" - } - } + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" } }, "aproba": { @@ -1717,9 +1721,9 @@ "dev": true }, "arch": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/arch/download/arch-2.1.1.tgz", - "integrity": "sha1-j1wnMao1owkpIhuwZA7tZRdeyE4=", + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/arch/download/arch-2.1.2.tgz", + "integrity": "sha1-DFK75zRLtPomDEQ9LLrZwA/y8L8=", "dev": true }, "are-we-there-yet": { @@ -1743,19 +1747,19 @@ }, "arr-diff": { "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/arr-diff/download/arr-diff-4.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/arr-diff/download/arr-diff-4.0.0.tgz", "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", "dev": true }, "arr-flatten": { "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/arr-flatten/download/arr-flatten-1.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/arr-flatten/download/arr-flatten-1.1.0.tgz", "integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE=", "dev": true }, "arr-union": { "version": "3.1.0", - "resolved": "http://registry.npm.taobao.org/arr-union/download/arr-union-3.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/arr-union/download/arr-union-3.1.0.tgz", "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", "dev": true }, @@ -1767,18 +1771,19 @@ }, "array-flatten": { "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/array-flatten/download/array-flatten-1.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/array-flatten/download/array-flatten-1.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farray-flatten%2Fdownload%2Farray-flatten-1.1.1.tgz", "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", "dev": true }, "array-includes": { - "version": "3.0.3", - "resolved": "https://registry.npm.taobao.org/array-includes/download/array-includes-3.0.3.tgz", - "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/array-includes/download/array-includes-3.1.1.tgz", + "integrity": "sha1-zdZ+aFK9+cEhVGB4ZzIlXtJFk0g=", "dev": true, "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.7.0" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0", + "is-string": "^1.0.5" } }, "array-union": { @@ -1798,10 +1803,20 @@ }, "array-unique": { "version": "0.3.2", - "resolved": "http://registry.npm.taobao.org/array-unique/download/array-unique-0.3.2.tgz", + "resolved": "https://registry.npm.taobao.org/array-unique/download/array-unique-0.3.2.tgz", "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", "dev": true }, + "array.prototype.flat": { + "version": "1.2.3", + "resolved": "https://registry.npm.taobao.org/array.prototype.flat/download/array.prototype.flat-1.2.3.tgz?cache=0&sync_timestamp=1576169912513&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farray.prototype.flat%2Fdownload%2Farray.prototype.flat-1.2.3.tgz", + "integrity": "sha1-DegrQmsDGNv9uUAInjiwQ9N/bHs=", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, "asn1": { "version": "0.2.4", "resolved": "https://registry.npm.taobao.org/asn1/download/asn1-0.2.4.tgz", @@ -1820,6 +1835,14 @@ "bn.js": "^4.0.0", "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.9.tgz", + "integrity": "sha1-JtVWgpRY+dHoH8SJUkk9C6NQeCg=", + "dev": true + } } }, "assert": { @@ -1840,7 +1863,7 @@ }, "util": { "version": "0.10.3", - "resolved": "https://registry.npm.taobao.org/util/download/util-0.10.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Futil%2Fdownload%2Futil-0.10.3.tgz", + "resolved": "https://registry.npm.taobao.org/util/download/util-0.10.3.tgz?cache=0&sync_timestamp=1588238331562&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Futil%2Fdownload%2Futil-0.10.3.tgz", "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", "dev": true, "requires": { @@ -1857,20 +1880,23 @@ }, "assign-symbols": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/assign-symbols/download/assign-symbols-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/assign-symbols/download/assign-symbols-1.0.0.tgz", "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", "dev": true }, "ast-types": { - "version": "0.13.2", - "resolved": "https://registry.npm.taobao.org/ast-types/download/ast-types-0.13.2.tgz", - "integrity": "sha1-3zm2d6kRqD86BJZE+3T93tI86kg=" + "version": "0.13.3", + "resolved": "https://registry.npm.taobao.org/ast-types/download/ast-types-0.13.3.tgz", + "integrity": "sha1-UNo/KNF728eWmjotg6DkpyrnVac=" }, "async": { - "version": "1.5.2", - "resolved": "https://registry.npm.taobao.org/async/download/async-1.5.2.tgz?cache=0&sync_timestamp=1563385399810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fasync%2Fdownload%2Fasync-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true + "version": "2.6.3", + "resolved": "https://registry.npm.taobao.org/async/download/async-2.6.3.tgz", + "integrity": "sha1-1yYl4jRKNlbjo61Pp0n6gymdgv8=", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } }, "async-each": { "version": "1.0.3", @@ -1886,7 +1912,7 @@ }, "async-limiter": { "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/async-limiter/download/async-limiter-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/async-limiter/download/async-limiter-1.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fasync-limiter%2Fdownload%2Fasync-limiter-1.0.1.tgz", "integrity": "sha1-3TeelPDbgxCwgpH51kwyCXZmF/0=", "dev": true }, @@ -1903,31 +1929,23 @@ }, "atob": { "version": "2.1.2", - "resolved": "http://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz", "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=", "dev": true }, "autoprefixer": { - "version": "9.6.1", - "resolved": "https://registry.npm.taobao.org/autoprefixer/download/autoprefixer-9.6.1.tgz", - "integrity": "sha1-UZZ6AtLSMAuwGGbBYR7INI01Wkc=", + "version": "9.8.0", + "resolved": "https://registry.npm.taobao.org/autoprefixer/download/autoprefixer-9.8.0.tgz", + "integrity": "sha1-aOLSvve6TDplQ29mLQpWp0HlZRE=", "dev": true, "requires": { - "browserslist": "^4.6.3", - "caniuse-lite": "^1.0.30000980", + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001061", "chalk": "^2.4.2", "normalize-range": "^0.1.2", "num2fraction": "^1.2.2", - "postcss": "^7.0.17", - "postcss-value-parser": "^4.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "4.0.2", - "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-4.0.2.tgz", - "integrity": "sha1-SCKCwJpCcG0fyaBptz9E7Ag5Hck=", - "dev": true - } + "postcss": "^7.0.30", + "postcss-value-parser": "^4.1.0" } }, "aws-sign2": { @@ -1937,14 +1955,14 @@ "dev": true }, "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npm.taobao.org/aws4/download/aws4-1.8.0.tgz", - "integrity": "sha1-8OAD2cqef1nHpQiUXXsu+aBKVC8=", + "version": "1.10.0", + "resolved": "https://registry.npm.taobao.org/aws4/download/aws4-1.10.0.tgz", + "integrity": "sha1-oXs6jqgRBg501H0wYSJACtRJeuI=", "dev": true }, "axios": { "version": "0.18.1", - "resolved": "https://registry.npm.taobao.org/axios/download/axios-0.18.1.tgz", + "resolved": "https://registry.npm.taobao.org/axios/download/axios-0.18.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Faxios%2Fdownload%2Faxios-0.18.1.tgz", "integrity": "sha1-/z8N4ue10YDnV62YAA8Qgbh7zqM=", "requires": { "follow-redirects": "1.5.10", @@ -1970,13 +1988,13 @@ }, "ansi-styles": { "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-2.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "dev": true }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz?cache=0&sync_timestamp=1591687028262&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -2011,47 +2029,36 @@ } }, "babel-eslint": { - "version": "10.0.2", - "resolved": "https://registry.npm.taobao.org/babel-eslint/download/babel-eslint-10.0.2.tgz", - "integrity": "sha1-GC1awgRXn/CIFoSwQFYP3MFVhFY=", + "version": "10.1.0", + "resolved": "https://registry.npm.taobao.org/babel-eslint/download/babel-eslint-10.1.0.tgz?cache=0&sync_timestamp=1582676192861&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbabel-eslint%2Fdownload%2Fbabel-eslint-10.1.0.tgz", + "integrity": "sha1-aWjlaKkQt4+zd5zdi2rC9HmUMjI=", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "eslint-scope": "3.7.1", - "eslint-visitor-keys": "^1.0.0" - }, - "dependencies": { - "eslint-scope": { - "version": "3.7.1", - "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-3.7.1.tgz", - "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - } + "@babel/parser": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0", + "eslint-visitor-keys": "^1.0.0", + "resolve": "^1.12.0" } }, "babel-loader": { - "version": "8.0.6", - "resolved": "https://registry.npm.taobao.org/babel-loader/download/babel-loader-8.0.6.tgz", - "integrity": "sha1-4zvbbzYrA/S7FBoMIauHxQG3Dfs=", + "version": "8.1.0", + "resolved": "https://registry.npm.taobao.org/babel-loader/download/babel-loader-8.1.0.tgz?cache=0&sync_timestamp=1584715959282&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbabel-loader%2Fdownload%2Fbabel-loader-8.1.0.tgz", + "integrity": "sha1-xhHVESvVIJq+i5+oTD5NolJ18cM=", "dev": true, "requires": { - "find-cache-dir": "^2.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1", - "pify": "^4.0.1" + "find-cache-dir": "^2.1.0", + "loader-utils": "^1.4.0", + "mkdirp": "^0.5.3", + "pify": "^4.0.1", + "schema-utils": "^2.6.5" } }, "babel-plugin-dynamic-import-node": { - "version": "2.3.0", - "resolved": "https://registry.npm.taobao.org/babel-plugin-dynamic-import-node/download/babel-plugin-dynamic-import-node-2.3.0.tgz", - "integrity": "sha1-8A9Qe9qjw+P/bn5emNkKesq5b38=", + "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?cache=0&sync_timestamp=1587496311403&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbabel-plugin-dynamic-import-node%2Fdownload%2Fbabel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha1-hP2hnJduxcbe/vV/lCez3vZuF6M=", "dev": true, "requires": { "object.assign": "^4.1.0" @@ -2077,7 +2084,7 @@ }, "base": { "version": "0.11.2", - "resolved": "http://registry.npm.taobao.org/base/download/base-0.11.2.tgz", + "resolved": "https://registry.npm.taobao.org/base/download/base-0.11.2.tgz", "integrity": "sha1-e95c7RRbbVUakNuH+DxVi060io8=", "dev": true, "requires": { @@ -2092,7 +2099,7 @@ "dependencies": { "define-property": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { @@ -2101,7 +2108,7 @@ }, "is-accessor-descriptor": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", "dev": true, "requires": { @@ -2110,7 +2117,7 @@ }, "is-data-descriptor": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", "dev": true, "requires": { @@ -2119,7 +2126,7 @@ }, "is-descriptor": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", "dev": true, "requires": { @@ -2175,10 +2182,21 @@ "dev": true }, "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-1.13.1.tgz", - "integrity": "sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U=", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-2.0.0.tgz", + "integrity": "sha1-I8DfFPaogHf1+YbA0WfsA8PVU3w=", + "dev": true, + "optional": true + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npm.taobao.org/bindings/download/bindings-1.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbindings%2Fdownload%2Fbindings-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", @@ -2190,20 +2208,20 @@ } }, "bluebird": { - "version": "3.5.5", - "resolved": "https://registry.npm.taobao.org/bluebird/download/bluebird-3.5.5.tgz", - "integrity": "sha1-qNCv1zJR7/u9X+OEp31zADwXpx8=", + "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": "4.11.8", - "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.8.tgz", - "integrity": "sha1-LN4J617jQfSEdGuwMJsyU7GxRC8=", + "version": "5.1.2", + "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-5.1.2.tgz", + "integrity": "sha1-yWhpAtPJoncp9DqxD515wgBNp7A=", "dev": true }, "body-parser": { "version": "1.19.0", - "resolved": "https://registry.npm.taobao.org/body-parser/download/body-parser-1.19.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbody-parser%2Fdownload%2Fbody-parser-1.19.0.tgz", + "resolved": "https://registry.npm.taobao.org/body-parser/download/body-parser-1.19.0.tgz", "integrity": "sha1-lrJwnlfJxOCab9Zqj9l5hE9p8Io=", "dev": true, "requires": { @@ -2240,7 +2258,7 @@ }, "qs": { "version": "6.7.0", - "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz?cache=0&sync_timestamp=1566009952956&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fqs%2Fdownload%2Fqs-6.7.0.tgz", + "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz", "integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw=", "dev": true }, @@ -2274,7 +2292,7 @@ "dependencies": { "array-flatten": { "version": "2.1.2", - "resolved": "https://registry.npm.taobao.org/array-flatten/download/array-flatten-2.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/array-flatten/download/array-flatten-2.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farray-flatten%2Fdownload%2Farray-flatten-2.1.2.tgz", "integrity": "sha1-JO+AoowaiTYX4hSbDG0NeIKTsJk=", "dev": true } @@ -2369,21 +2387,50 @@ "requires": { "bn.js": "^4.1.0", "randombytes": "^2.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.9.tgz", + "integrity": "sha1-JtVWgpRY+dHoH8SJUkk9C6NQeCg=", + "dev": true + } } }, "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npm.taobao.org/browserify-sign/download/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/browserify-sign/download/browserify-sign-4.2.0.tgz", + "integrity": "sha1-VF0LGwfmssmSEQgr8bEsznoLDhE=", "dev": true, "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.2", + "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.npm.taobao.org/readable-stream/download/readable-stream-3.6.0.tgz?cache=0&sync_timestamp=1581623021561&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-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.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.1.tgz?cache=0&sync_timestamp=1589129010497&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.2.1.tgz", + "integrity": "sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=", + "dev": true + } } }, "browserify-zlib": { @@ -2396,20 +2443,21 @@ } }, "browserslist": { - "version": "4.6.6", - "resolved": "https://registry.npm.taobao.org/browserslist/download/browserslist-4.6.6.tgz", - "integrity": "sha1-bkv0Z83lILydvfN0fa+gNTHOxFM=", + "version": "4.12.0", + "resolved": "https://registry.npm.taobao.org/browserslist/download/browserslist-4.12.0.tgz?cache=0&sync_timestamp=1587419256330&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbrowserslist%2Fdownload%2Fbrowserslist-4.12.0.tgz", + "integrity": "sha1-BsbVcVoe3mxR/Dn/Z/1kf3QLZW0=", "dev": true, "requires": { - "caniuse-lite": "^1.0.30000984", - "electron-to-chromium": "^1.3.191", - "node-releases": "^1.1.25" + "caniuse-lite": "^1.0.30001043", + "electron-to-chromium": "^1.3.413", + "node-releases": "^1.1.53", + "pkg-up": "^2.0.0" } }, "buffer": { - "version": "4.9.1", - "resolved": "https://registry.npm.taobao.org/buffer/download/buffer-4.9.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbuffer%2Fdownload%2Fbuffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "version": "4.9.2", + "resolved": "https://registry.npm.taobao.org/buffer/download/buffer-4.9.2.tgz", + "integrity": "sha1-Iw6tNEACmIZEhBqwJEr4xEu+Pvg=", "dev": true, "requires": { "base64-js": "^1.0.2", @@ -2446,9 +2494,9 @@ "integrity": "sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY=" }, "cacache": { - "version": "12.0.3", - "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-12.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-12.0.3.tgz", - "integrity": "sha1-vpmruk4b9d9GHNWiwQcfxDJXM5A=", + "version": "12.0.4", + "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-12.0.4.tgz", + "integrity": "sha1-ZovL0QWutfHZL+JVcOyVJcj6pAw=", "dev": true, "requires": { "bluebird": "^3.5.5", @@ -2466,28 +2514,11 @@ "ssri": "^6.0.1", "unique-filename": "^1.1.1", "y18n": "^4.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "http://registry.npm.taobao.org/lru-cache/download/lru-cache-5.1.1.tgz", - "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "yallist": { - "version": "3.0.3", - "resolved": "http://registry.npm.taobao.org/yallist/download/yallist-3.0.3.tgz", - "integrity": "sha1-tLBJ4xS+VF486AIjbWzSLNkcPek=", - "dev": true - } } }, "cache-base": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/cache-base/download/cache-base-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/cache-base/download/cache-base-1.0.1.tgz", "integrity": "sha1-Cn9GQWgxyLZi7jb+TnxZ129marI=", "dev": true, "requires": { @@ -2504,7 +2535,7 @@ }, "cache-loader": { "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/cache-loader/download/cache-loader-2.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcache-loader%2Fdownload%2Fcache-loader-2.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/cache-loader/download/cache-loader-2.0.1.tgz", "integrity": "sha1-V1j0GmLXwjlB48PHAW5vrrA6ywc=", "dev": true, "requires": { @@ -2513,6 +2544,19 @@ "neo-async": "^2.6.0", "normalize-path": "^3.0.0", "schema-utils": "^1.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } } }, "call-me-maybe": { @@ -2523,7 +2567,7 @@ }, "caller-callsite": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/caller-callsite/download/caller-callsite-2.0.0.tgz?cache=0&sync_timestamp=1562668933683&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcaller-callsite%2Fdownload%2Fcaller-callsite-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/caller-callsite/download/caller-callsite-2.0.0.tgz", "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", "dev": true, "requires": { @@ -2540,7 +2584,7 @@ }, "caller-path": { "version": "0.1.0", - "resolved": "https://registry.npm.taobao.org/caller-path/download/caller-path-0.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/caller-path/download/caller-path-0.1.0.tgz?cache=0&sync_timestamp=1574395720588&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcaller-path%2Fdownload%2Fcaller-path-0.1.0.tgz", "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", "dev": true, "optional": true, @@ -2573,7 +2617,7 @@ }, "camelcase-keys": { "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/camelcase-keys/download/camelcase-keys-2.1.0.tgz?cache=0&sync_timestamp=1564587881114&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamelcase-keys%2Fdownload%2Fcamelcase-keys-2.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/camelcase-keys/download/camelcase-keys-2.1.0.tgz?cache=0&sync_timestamp=1585886217523&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamelcase-keys%2Fdownload%2Fcamelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { @@ -2602,15 +2646,15 @@ } }, "caniuse-lite": { - "version": "1.0.30000989", - "resolved": "https://registry.npm.taobao.org/caniuse-lite/download/caniuse-lite-1.0.30000989.tgz", - "integrity": "sha1-uRk+KTzPfkQmxSRRNLjypWwKxLk=", + "version": "1.0.30001084", + "resolved": "https://registry.npm.taobao.org/caniuse-lite/download/caniuse-lite-1.0.30001084.tgz?cache=0&sync_timestamp=1592288317961&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcaniuse-lite%2Fdownload%2Fcaniuse-lite-1.0.30001084.tgz", + "integrity": "sha1-AORxkx6u++71T0aqIgORTTwWVmk=", "dev": true }, "case-sensitive-paths-webpack-plugin": { - "version": "2.2.0", - "resolved": "https://registry.npm.taobao.org/case-sensitive-paths-webpack-plugin/download/case-sensitive-paths-webpack-plugin-2.2.0.tgz", - "integrity": "sha1-M3HvY2XvnCX6S4HBas4OnH3FjD4=", + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/case-sensitive-paths-webpack-plugin/download/case-sensitive-paths-webpack-plugin-2.3.0.tgz", + "integrity": "sha1-I6xhPMmoVuT4j/i7c7u16YmCXPc=", "dev": true }, "caseless": { @@ -2621,7 +2665,7 @@ }, "chalk": { "version": "2.4.2", - "resolved": "http://registry.npm.taobao.org/chalk/download/chalk-2.4.2.tgz", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-2.4.2.tgz?cache=0&sync_timestamp=1591687028262&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-2.4.2.tgz", "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", "dev": true, "requires": { @@ -2632,41 +2676,77 @@ }, "chardet": { "version": "0.4.2", - "resolved": "https://registry.npm.taobao.org/chardet/download/chardet-0.4.2.tgz?cache=0&sync_timestamp=1562888139305&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchardet%2Fdownload%2Fchardet-0.4.2.tgz", + "resolved": "https://registry.npm.taobao.org/chardet/download/chardet-0.4.2.tgz?cache=0&sync_timestamp=1588893413176&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchardet%2Fdownload%2Fchardet-0.4.2.tgz", "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", "dev": true, "optional": true }, "check-types": { "version": "8.0.3", - "resolved": "https://registry.npm.taobao.org/check-types/download/check-types-8.0.3.tgz?cache=0&sync_timestamp=1566113968138&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcheck-types%2Fdownload%2Fcheck-types-8.0.3.tgz", + "resolved": "https://registry.npm.taobao.org/check-types/download/check-types-8.0.3.tgz?cache=0&sync_timestamp=1579455903027&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcheck-types%2Fdownload%2Fcheck-types-8.0.3.tgz", "integrity": "sha1-M1bMoZyIlUTy16le1JzlCKDs9VI=", "dev": true }, "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npm.taobao.org/chokidar/download/chokidar-2.1.8.tgz?cache=0&sync_timestamp=1566409724365&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchokidar%2Fdownload%2Fchokidar-2.1.8.tgz", - "integrity": "sha1-gEs6e2qZNYw8XGHnHYco8EHP+Rc=", + "version": "3.4.0", + "resolved": "https://registry.npm.taobao.org/chokidar/download/chokidar-3.4.0.tgz?cache=0&sync_timestamp=1587911215694&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchokidar%2Fdownload%2Fchokidar-3.4.0.tgz", + "integrity": "sha1-swYRQjzjdjV8dlubj5BLn7o8C+g=", "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" + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.4.0" + }, + "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.npm.taobao.org/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.npm.taobao.org/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.2", - "resolved": "https://registry.npm.taobao.org/chownr/download/chownr-1.1.2.tgz", - "integrity": "sha1-oY8eCyacimpdPIbrKYvrFMPde/Y=", + "version": "1.1.4", + "resolved": "https://registry.npm.taobao.org/chownr/download/chownr-1.1.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchownr%2Fdownload%2Fchownr-1.1.4.tgz", + "integrity": "sha1-b8nXtC0ypYNZYzdmbn0ICE2izGs=", "dev": true }, "chrome-trace-event": { @@ -2680,7 +2760,7 @@ }, "ci-info": { "version": "1.6.0", - "resolved": "http://registry.npm.taobao.org/ci-info/download/ci-info-1.6.0.tgz", + "resolved": "https://registry.npm.taobao.org/ci-info/download/ci-info-1.6.0.tgz", "integrity": "sha1-LKINu5zrMtRSSmgzAzE/AwSx5Jc=", "dev": true }, @@ -2703,7 +2783,7 @@ }, "class-utils": { "version": "0.3.6", - "resolved": "http://registry.npm.taobao.org/class-utils/download/class-utils-0.3.6.tgz", + "resolved": "https://registry.npm.taobao.org/class-utils/download/class-utils-0.3.6.tgz", "integrity": "sha1-+TNprouafOAv1B+q0MqDAzGQxGM=", "dev": true, "requires": { @@ -2715,7 +2795,7 @@ "dependencies": { "define-property": { "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { @@ -2725,9 +2805,9 @@ } }, "clean-css": { - "version": "4.2.1", - "resolved": "https://registry.npm.taobao.org/clean-css/download/clean-css-4.2.1.tgz", - "integrity": "sha1-LUEe92uFabbQyEBo2r6FsKpeXBc=", + "version": "4.2.3", + "resolved": "https://registry.npm.taobao.org/clean-css/download/clean-css-4.2.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fclean-css%2Fdownload%2Fclean-css-4.2.3.tgz", + "integrity": "sha1-UHtd59l7SO5T2ErbAWD/YhY4D3g=", "dev": true, "requires": { "source-map": "~0.6.0" @@ -2743,35 +2823,88 @@ } }, "cli-highlight": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/cli-highlight/download/cli-highlight-2.1.1.tgz", - "integrity": "sha1-IYAiPVFhixEvRQnPluSmx1Cwfpc=", + "version": "2.1.4", + "resolved": "https://registry.npm.taobao.org/cli-highlight/download/cli-highlight-2.1.4.tgz", + "integrity": "sha1-CYy2Qs8X9CrcHBFF4H+WDsTXUis=", "dev": true, "requires": { - "chalk": "^2.3.0", + "chalk": "^3.0.0", "highlight.js": "^9.6.0", "mz": "^2.4.0", - "parse5": "^4.0.0", - "yargs": "^13.0.0" - } - }, + "parse5": "^5.1.1", + "parse5-htmlparser2-tree-adapter": "^5.1.1", + "yargs": "^15.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-4.2.1.tgz", + "integrity": "sha1-kK51xCTQCNJiTFvynq0xd+v881k=", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-3.0.0.tgz?cache=0&sync_timestamp=1591687028262&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-3.0.0.tgz", + "integrity": "sha1-P3PCv1JlkfV0zEksUeJFY0n4ROQ=", + "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.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz", + "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-7.1.0.tgz", + "integrity": "sha1-aOMlkd9z4lrRxLSRCKLsUHliv9E=", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "cli-spinners": { - "version": "2.2.0", - "resolved": "https://registry.npm.taobao.org/cli-spinners/download/cli-spinners-2.2.0.tgz", - "integrity": "sha1-6LmI2SBsaSMC2O6DTnqFwBRNj3c=", + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/cli-spinners/download/cli-spinners-2.3.0.tgz?cache=0&sync_timestamp=1586157510340&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcli-spinners%2Fdownload%2Fcli-spinners-2.3.0.tgz", + "integrity": "sha1-BjIjmktapMlYYQFCw0u3plH8jfU=", "dev": true }, "cli-width": { - "version": "2.2.0", - "resolved": "http://registry.npm.taobao.org/cli-width/download/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/cli-width/download/cli-width-2.2.1.tgz", + "integrity": "sha1-sEM9C06chH7xiGik7xb9X8gnHEg=", "dev": true, "optional": true }, "clipboard": { - "version": "2.0.4", - "resolved": "http://registry.npm.taobao.org/clipboard/download/clipboard-2.0.4.tgz", - "integrity": "sha1-g22v1mzw/qXXHOXVsL9ulYAJES0=", + "version": "2.0.6", + "resolved": "https://registry.npm.taobao.org/clipboard/download/clipboard-2.0.6.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fclipboard%2Fdownload%2Fclipboard-2.0.6.tgz", + "integrity": "sha1-UpISlu7A/fd+rRdJQhshyWhkc3Y=", "requires": { "good-listener": "^1.2.2", "select": "^1.1.2", @@ -2779,13 +2912,25 @@ } }, "clipboardy": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/clipboardy/download/clipboardy-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fclipboardy%2Fdownload%2Fclipboardy-2.1.0.tgz", - "integrity": "sha1-ASOgyPrJLyVtxWM14LuL6XpJCaU=", + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/clipboardy/download/clipboardy-2.3.0.tgz", + "integrity": "sha1-PCkDZQxo5GqRs4iYW8J3QofbopA=", "dev": true, "requires": { "arch": "^2.1.1", - "execa": "^1.0.0" + "execa": "^1.0.0", + "is-wsl": "^2.1.1" + }, + "dependencies": { + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/is-wsl/download/is-wsl-2.2.0.tgz", + "integrity": "sha1-dKTHbnfKn9P5MvKQwX6jJs0VcnE=", + "dev": true, + "requires": { + "is-docker": "^2.0.0" + } + } } }, "cliui": { @@ -2799,9 +2944,15 @@ "wrap-ansi": "^5.1.0" }, "dependencies": { + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz", + "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=", + "dev": true + }, "string-width": { "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-3.1.0.tgz", "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", "dev": true, "requires": { @@ -2809,12 +2960,23 @@ "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^5.1.0" } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npm.taobao.org/wrap-ansi/download/wrap-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" + } } } }, "clone": { "version": "1.0.4", - "resolved": "https://registry.npm.taobao.org/clone/download/clone-1.0.4.tgz", + "resolved": "https://registry.npm.taobao.org/clone/download/clone-1.0.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fclone%2Fdownload%2Fclone-1.0.4.tgz", "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", "dev": true }, @@ -2870,18 +3032,18 @@ }, "code-point-at": { "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/code-point-at/download/code-point-at-1.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/code-point-at/download/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", "dev": true }, "codemirror": { - "version": "5.48.4", - "resolved": "https://registry.npm.taobao.org/codemirror/download/codemirror-5.48.4.tgz", - "integrity": "sha1-QhD76Svnmojw7qNI+rOueNqFzkc=" + "version": "5.54.0", + "resolved": "https://registry.npm.taobao.org/codemirror/download/codemirror-5.54.0.tgz", + "integrity": "sha1-grat9mKynut7hn/ng51J4l5KCzg=" }, "collection-visit": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz", "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, "requires": { @@ -2891,7 +3053,7 @@ }, "color": { "version": "3.1.2", - "resolved": "https://registry.npm.taobao.org/color/download/color-3.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcolor%2Fdownload%2Fcolor-3.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/color/download/color-3.1.2.tgz", "integrity": "sha1-aBSOf4XUGtdknF+oyBBvCY0inhA=", "dev": true, "requires": { @@ -2901,7 +3063,7 @@ }, "color-convert": { "version": "1.9.3", - "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz?cache=0&sync_timestamp=1566248870121&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcolor-convert%2Fdownload%2Fcolor-convert-1.9.3.tgz", + "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz", "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=", "dev": true, "requires": { @@ -2910,7 +3072,7 @@ }, "color-name": { "version": "1.1.3", - "resolved": "http://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz", + "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz", "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, @@ -2934,9 +3096,9 @@ } }, "commander": { - "version": "2.20.0", - "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.20.0.tgz?cache=0&sync_timestamp=1565398176321&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.20.0.tgz", - "integrity": "sha1-1YuytcHuj4ew00ACfp6U4iLFpCI=" + "version": "2.20.3", + "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.20.3.tgz", + "integrity": "sha1-/UhehMA+tIgcIHIrpIA16FMa6zM=" }, "commondir": { "version": "1.0.1", @@ -2951,17 +3113,17 @@ "dev": true }, "compressible": { - "version": "2.0.17", - "resolved": "https://registry.npm.taobao.org/compressible/download/compressible-2.0.17.tgz", - "integrity": "sha1-bowQihatWDhKl386SCyiC/8vOME=", + "version": "2.0.18", + "resolved": "https://registry.npm.taobao.org/compressible/download/compressible-2.0.18.tgz", + "integrity": "sha1-r1PMprBw1MPAdQ+9dyhqbXzEb7o=", "dev": true, "requires": { - "mime-db": ">= 1.40.0 < 2" + "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", + "resolved": "https://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz", "integrity": "sha1-lVI+/xcMpXwpoMpB5v4TH0Hlu48=", "dev": true, "requires": { @@ -2989,7 +3151,7 @@ }, "concat-stream": { "version": "1.6.2", - "resolved": "https://registry.npm.taobao.org/concat-stream/download/concat-stream-1.6.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconcat-stream%2Fdownload%2Fconcat-stream-1.6.2.tgz", + "resolved": "https://registry.npm.taobao.org/concat-stream/download/concat-stream-1.6.2.tgz", "integrity": "sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ=", "dev": true, "requires": { @@ -3015,13 +3177,10 @@ "dev": true }, "console-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/console-browserify/download/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", - "dev": true, - "requires": { - "date-now": "^0.1.4" - } + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/console-browserify/download/console-browserify-1.2.0.tgz?cache=0&sync_timestamp=1572252287978&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconsole-browserify%2Fdownload%2Fconsole-browserify-1.2.0.tgz", + "integrity": "sha1-ZwY871fOts9Jk6KrOlWECujEkzY=", + "dev": true }, "console-control-strings": { "version": "1.1.0", @@ -3065,9 +3224,9 @@ "integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js=" }, "convert-source-map": { - "version": "1.6.0", - "resolved": "https://registry.npm.taobao.org/convert-source-map/download/convert-source-map-1.6.0.tgz", - "integrity": "sha1-UbU3qMQ+DwTewZk7/83VBOdYrCA=", + "version": "1.7.0", + "resolved": "https://registry.npm.taobao.org/convert-source-map/download/convert-source-map-1.7.0.tgz", + "integrity": "sha1-F6LLiC1/d9NJBYXizmxSRCSjpEI=", "dev": true, "requires": { "safe-buffer": "~5.1.1" @@ -3075,7 +3234,7 @@ }, "cookie": { "version": "0.4.0", - "resolved": "https://registry.npm.taobao.org/cookie/download/cookie-0.4.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcookie%2Fdownload%2Fcookie-0.4.0.tgz", + "resolved": "https://registry.npm.taobao.org/cookie/download/cookie-0.4.0.tgz", "integrity": "sha1-vrQ35wIrO21JAZ0IhmUwPr6cFLo=", "dev": true }, @@ -3101,7 +3260,7 @@ }, "copy-descriptor": { "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz", "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", "dev": true }, @@ -3128,7 +3287,7 @@ "dependencies": { "cacache": { "version": "10.0.4", - "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-10.0.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-10.0.4.tgz", + "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-10.0.4.tgz", "integrity": "sha1-ZFI2eZnv+dQYiu/ZoU6dfGomNGA=", "dev": true, "requires": { @@ -3149,7 +3308,7 @@ }, "find-cache-dir": { "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-1.0.0.tgz?cache=0&sync_timestamp=1583734806517&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffind-cache-dir%2Fdownload%2Ffind-cache-dir-1.0.0.tgz", "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", "dev": true, "requires": { @@ -3160,7 +3319,7 @@ }, "globby": { "version": "7.1.1", - "resolved": "https://registry.npm.taobao.org/globby/download/globby-7.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/globby/download/globby-7.1.1.tgz?cache=0&sync_timestamp=1591083787584&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglobby%2Fdownload%2Fglobby-7.1.1.tgz", "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", "dev": true, "requires": { @@ -3172,9 +3331,19 @@ "slash": "^1.0.0" } }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz", + "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, "make-dir": { "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-1.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-1.3.0.tgz?cache=0&sync_timestamp=1587567610342&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmake-dir%2Fdownload%2Fmake-dir-1.3.0.tgz", "integrity": "sha1-ecEDO4BRW9bSTsmTPoYMp17ifww=", "dev": true, "requires": { @@ -3201,7 +3370,7 @@ }, "pify": { "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", "dev": true }, @@ -3224,6 +3393,12 @@ "once": "^1.3.1" } }, + "serialize-javascript": { + "version": "1.9.1", + "resolved": "https://registry.npm.taobao.org/serialize-javascript/download/serialize-javascript-1.9.1.tgz", + "integrity": "sha1-z8IArvd7YAxH2pu4FJyUPnmML9s=", + "dev": true + }, "slash": { "version": "1.0.0", "resolved": "https://registry.npm.taobao.org/slash/download/slash-1.0.0.tgz", @@ -3238,18 +3413,24 @@ "requires": { "safe-buffer": "^5.1.1" } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz?cache=0&sync_timestamp=1569874223546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true } } }, "core-js": { - "version": "2.6.9", - "resolved": "https://registry.npm.taobao.org/core-js/download/core-js-2.6.9.tgz", - "integrity": "sha1-a0shRiDINBUuF5Mjcn/Bl0GwhPI=", + "version": "2.6.11", + "resolved": "https://registry.npm.taobao.org/core-js/download/core-js-2.6.11.tgz", + "integrity": "sha1-OIMUafmSK97Y7iHJ3EaYXgOZMIw=", "dev": true }, "core-util-is": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/core-util-is/download/core-util-is-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/core-util-is/download/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "cosmiconfig": { @@ -3272,6 +3453,14 @@ "requires": { "bn.js": "^4.1.0", "elliptic": "^6.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.9.tgz", + "integrity": "sha1-JtVWgpRY+dHoH8SJUkk9C6NQeCg=", + "dev": true + } } }, "create-hash": { @@ -3303,7 +3492,7 @@ }, "cross-spawn": { "version": "6.0.5", - "resolved": "http://registry.npm.taobao.org/cross-spawn/download/cross-spawn-6.0.5.tgz", + "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-6.0.5.tgz", "integrity": "sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q=", "dev": true, "requires": { @@ -3351,7 +3540,7 @@ }, "css-loader": { "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/css-loader/download/css-loader-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/css-loader/download/css-loader-1.0.1.tgz?cache=0&sync_timestamp=1592056900788&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss-loader%2Fdownload%2Fcss-loader-1.0.1.tgz", "integrity": "sha1-aIW7UjOzXsR7AGBX2gHMZAtref4=", "dev": true, "requires": { @@ -3379,17 +3568,23 @@ "source-map": "^0.6.1", "supports-color": "^5.4.0" } + }, + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true } } }, "css-select": { - "version": "2.0.2", - "resolved": "https://registry.npm.taobao.org/css-select/download/css-select-2.0.2.tgz", - "integrity": "sha1-q0OGzsnh9miFVWSxfDcztDsqXt4=", + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/css-select/download/css-select-2.1.0.tgz", + "integrity": "sha1-ajRlM1ZjWTSoG6ymjQJVQyEF2+8=", "dev": true, "requires": { "boolbase": "^1.0.0", - "css-what": "^2.1.2", + "css-what": "^3.2.1", "domutils": "^1.7.0", "nth-check": "^1.0.2" } @@ -3401,90 +3596,36 @@ "dev": true }, "css-selector-tokenizer": { - "version": "0.7.1", - "resolved": "https://registry.npm.taobao.org/css-selector-tokenizer/download/css-selector-tokenizer-0.7.1.tgz", - "integrity": "sha1-oXcnGovKUBkXL0+JH8bu2cv2jV0=", + "version": "0.7.2", + "resolved": "https://registry.npm.taobao.org/css-selector-tokenizer/download/css-selector-tokenizer-0.7.2.tgz", + "integrity": "sha1-EeXifJpI2QKE8i1FBhwwPXolrYc=", "dev": true, "requires": { - "cssesc": "^0.1.0", - "fastparse": "^1.1.1", - "regexpu-core": "^1.0.0" - }, - "dependencies": { - "cssesc": { - "version": "0.1.0", - "resolved": "https://registry.npm.taobao.org/cssesc/download/cssesc-0.1.0.tgz", - "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", - "dev": true - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npm.taobao.org/jsesc/download/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "regexpu-core": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-1.0.0.tgz", - "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npm.taobao.org/regjsgen/download/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npm.taobao.org/regjsparser/download/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - } - } + "cssesc": "^3.0.0", + "fastparse": "^1.1.2", + "regexpu-core": "^4.6.0" } }, "css-tree": { - "version": "1.0.0-alpha.33", - "resolved": "https://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.33.tgz", - "integrity": "sha1-lw4g5akfejeN3Q/FjQtsjU876T4=", + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npm.taobao.org/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.5.3" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "source-map": "^0.6.1" } }, - "css-unit-converter": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/css-unit-converter/download/css-unit-converter-1.1.1.tgz", - "integrity": "sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY=", - "dev": true - }, "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npm.taobao.org/css-what/download/css-what-2.1.3.tgz", - "integrity": "sha1-ptdgRXM2X+dGhsPzEcVlE9iChfI=", + "version": "3.3.0", + "resolved": "https://registry.npm.taobao.org/css-what/download/css-what-3.3.0.tgz", + "integrity": "sha1-EP7Glqns4uWRrHctdZqsq6w4zTk=", "dev": true }, "cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/cssesc/download/cssesc-2.0.0.tgz", - "integrity": "sha1-OxO9G7HLNuG8taTc0n9UxdyzVwM=", + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/cssesc/download/cssesc-3.0.0.tgz", + "integrity": "sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4=", "dev": true }, "cssnano": { @@ -3565,34 +3706,28 @@ "dev": true }, "csso": { - "version": "3.5.1", - "resolved": "https://registry.npm.taobao.org/csso/download/csso-3.5.1.tgz", - "integrity": "sha1-e564vmFiiXPBsmHhadLwJACOdYs=", + "version": "4.0.3", + "resolved": "https://registry.npm.taobao.org/csso/download/csso-4.0.3.tgz?cache=0&sync_timestamp=1585052282901&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcsso%2Fdownload%2Fcsso-4.0.3.tgz", + "integrity": "sha1-DZmF3IUsfMKyys+74QeQFNGo6QM=", "dev": true, "requires": { - "css-tree": "1.0.0-alpha.29" + "css-tree": "1.0.0-alpha.39" }, "dependencies": { "css-tree": { - "version": "1.0.0-alpha.29", - "resolved": "https://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.29.tgz", - "integrity": "sha1-P6nU7zFCy9HDAedmTB81K9gvWjk=", + "version": "1.0.0-alpha.39", + "resolved": "https://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.39.tgz", + "integrity": "sha1-K/8//huz93bPfu/ZHuXLp3oUnus=", "dev": true, "requires": { - "mdn-data": "~1.1.0", - "source-map": "^0.5.3" + "mdn-data": "2.0.6", + "source-map": "^0.6.1" } }, "mdn-data": { - "version": "1.1.4", - "resolved": "https://registry.npm.taobao.org/mdn-data/download/mdn-data-1.1.4.tgz?cache=0&sync_timestamp=1562673334420&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmdn-data%2Fdownload%2Fmdn-data-1.1.4.tgz", - "integrity": "sha1-ULXU/8RXUnZXPE7tuHgIEqhBnwE=", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "version": "2.0.6", + "resolved": "https://registry.npm.taobao.org/mdn-data/download/mdn-data-2.0.6.tgz", + "integrity": "sha1-hS3GD8ql2qLoz2yRicRA7T4EKXg=", "dev": true } } @@ -3613,9 +3748,9 @@ } }, "cyclist": { - "version": "0.2.2", - "resolved": "https://registry.npm.taobao.org/cyclist/download/cyclist-0.2.2.tgz", - "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/cyclist/download/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", "dev": true }, "dashdash": { @@ -3628,18 +3763,9 @@ } }, "data-uri-to-buffer": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/data-uri-to-buffer/download/data-uri-to-buffer-2.0.1.tgz", - "integrity": "sha1-yo9W/jix/TKUc+nRtKmvzYzhwEU=", - "requires": { - "@types/node": "^8.0.7" - } - }, - "date-now": { - "version": "0.1.4", - "resolved": "https://registry.npm.taobao.org/date-now/download/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", - "dev": true + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/data-uri-to-buffer/download/data-uri-to-buffer-1.2.0.tgz?cache=0&sync_timestamp=1590800186814&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdata-uri-to-buffer%2Fdownload%2Fdata-uri-to-buffer-1.2.0.tgz", + "integrity": "sha1-dxY+qcINhkG0cH6PGKvfmnjzSDU=" }, "dateformat": { "version": "2.2.0", @@ -3648,13 +3774,13 @@ }, "de-indent": { "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/de-indent/download/de-indent-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/de-indent/download/de-indent-1.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fde-indent%2Fdownload%2Fde-indent-1.0.2.tgz", "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", "dev": true }, "debug": { "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "requires": { "ms": "2.0.0" @@ -3662,7 +3788,7 @@ "dependencies": { "ms": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } @@ -3675,15 +3801,23 @@ }, "decode-uri-component": { "version": "0.2.0", - "resolved": "http://registry.npm.taobao.org/decode-uri-component/download/decode-uri-component-0.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/decode-uri-component/download/decode-uri-component-0.2.0.tgz", "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", "dev": true }, "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/deep-equal/download/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/deep-equal/download/deep-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" + } }, "deep-is": { "version": "0.1.3", @@ -3692,29 +3826,41 @@ }, "deepmerge": { "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/deepmerge/download/deepmerge-2.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/deepmerge/download/deepmerge-2.2.1.tgz?cache=0&sync_timestamp=1572279720382&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdeepmerge%2Fdownload%2Fdeepmerge-2.2.1.tgz", "integrity": "sha1-XT/yKgHAD2RUBaL7wX0HeKGAEXA=" }, "default-gateway": { - "version": "5.0.3", - "resolved": "https://registry.npm.taobao.org/default-gateway/download/default-gateway-5.0.3.tgz?cache=0&sync_timestamp=1565763930901&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdefault-gateway%2Fdownload%2Fdefault-gateway-5.0.3.tgz", - "integrity": "sha1-GENMlDChgDWihh94Ob92abNDbm8=", + "version": "5.0.5", + "resolved": "https://registry.npm.taobao.org/default-gateway/download/default-gateway-5.0.5.tgz?cache=0&sync_timestamp=1590419186221&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdefault-gateway%2Fdownload%2Fdefault-gateway-5.0.5.tgz", + "integrity": "sha1-T9a9XShV05s0zFpZUFSG6ar8mxA=", "dev": true, "requires": { - "execa": "^2.0.3" + "execa": "^3.3.0" }, "dependencies": { + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npm.taobao.org/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": "2.0.4", - "resolved": "https://registry.npm.taobao.org/execa/download/execa-2.0.4.tgz", - "integrity": "sha1-L1zFicgdsxZihicATqTje5M5HY4=", + "version": "3.4.0", + "resolved": "https://registry.npm.taobao.org/execa/download/execa-3.4.0.tgz", + "integrity": "sha1-wI7UVQ72XYWPrCaf/IVyRG8364k=", "dev": true, "requires": { - "cross-spawn": "^6.0.5", + "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": "^3.0.0", + "npm-run-path": "^4.0.0", "onetime": "^5.1.0", "p-finally": "^2.0.0", "signal-exit": "^3.0.2", @@ -3738,14 +3884,14 @@ }, "mimic-fn": { "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-2.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmimic-fn%2Fdownload%2Fmimic-fn-2.1.0.tgz", "integrity": "sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs=", "dev": true }, "npm-run-path": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/npm-run-path/download/npm-run-path-3.1.0.tgz", - "integrity": "sha1-f5G+MX9qRm7+08nymArYpO6LD6U=", + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/npm-run-path/download/npm-run-path-4.0.1.tgz?cache=0&sync_timestamp=1577052941951&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-run-path%2Fdownload%2Fnpm-run-path-4.0.1.tgz", + "integrity": "sha1-t+zR5e1T2o43pV4cImnguX7XSOo=", "dev": true, "requires": { "path-key": "^3.0.0" @@ -3767,10 +3913,34 @@ "dev": true }, "path-key": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-3.1.0.tgz", - "integrity": "sha1-maENhwqAO91e5vBHDljfzS+aVNM=", + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-3.1.1.tgz?cache=0&sync_timestamp=1574441404712&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.npm.taobao.org/shebang-command/download/shebang-command-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fshebang-command%2Fdownload%2Fshebang-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.npm.taobao.org/shebang-regex/download/shebang-regex-3.0.0.tgz", + "integrity": "sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI=", "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/which/download/which-2.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwhich%2Fdownload%2Fwhich-2.0.2.tgz", + "integrity": "sha1-fGqN0KY2oDJ+ELWckobu6T8/UbE=", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } } } }, @@ -3802,7 +3972,7 @@ }, "define-property": { "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz", "integrity": "sha1-1Flono1lS6d+AqgX+HENcCyxbp0=", "dev": true, "requires": { @@ -3812,7 +3982,7 @@ "dependencies": { "is-accessor-descriptor": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", "dev": true, "requires": { @@ -3821,7 +3991,7 @@ }, "is-data-descriptor": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", "dev": true, "requires": { @@ -3830,7 +4000,7 @@ }, "is-descriptor": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", "dev": true, "requires": { @@ -3843,7 +4013,7 @@ }, "degenerator": { "version": "1.0.4", - "resolved": "https://registry.npm.taobao.org/degenerator/download/degenerator-1.0.4.tgz", + "resolved": "https://registry.npm.taobao.org/degenerator/download/degenerator-1.0.4.tgz?cache=0&sync_timestamp=1580870191995&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdegenerator%2Fdownload%2Fdegenerator-1.0.4.tgz", "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", "requires": { "ast-types": "0.x.x", @@ -3853,7 +4023,7 @@ }, "del": { "version": "4.1.1", - "resolved": "https://registry.npm.taobao.org/del/download/del-4.1.1.tgz?cache=0&sync_timestamp=1562093521173&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdel%2Fdownload%2Fdel-4.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/del/download/del-4.1.1.tgz", "integrity": "sha1-no8RciLqRKMf86FWwEm5kFKp8LQ=", "dev": true, "requires": { @@ -3868,7 +4038,7 @@ "dependencies": { "globby": { "version": "6.1.0", - "resolved": "https://registry.npm.taobao.org/globby/download/globby-6.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/globby/download/globby-6.1.0.tgz?cache=0&sync_timestamp=1591083787584&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglobby%2Fdownload%2Fglobby-6.1.0.tgz", "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", "dev": true, "requires": { @@ -3881,7 +4051,7 @@ "dependencies": { "pify": { "version": "2.3.0", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true } @@ -3897,7 +4067,7 @@ }, "delegate": { "version": "3.2.0", - "resolved": "http://registry.npm.taobao.org/delegate/download/delegate-3.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/delegate/download/delegate-3.2.0.tgz", "integrity": "sha1-tmtxwxWFIuirV0T3INjKDCr1kWY=" }, "delegates": { @@ -3908,13 +4078,13 @@ }, "depd": { "version": "1.1.2", - "resolved": "http://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz", "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" }, "des.js": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/des.js/download/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "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", @@ -3923,7 +4093,7 @@ }, "destroy": { "version": "1.0.4", - "resolved": "http://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz", + "resolved": "https://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz", "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, "detect-node": { @@ -3941,6 +4111,14 @@ "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.9.tgz", + "integrity": "sha1-JtVWgpRY+dHoH8SJUkk9C6NQeCg=", + "dev": true + } } }, "digest-header": { @@ -4015,9 +4193,9 @@ } }, "dom-serializer": { - "version": "0.2.1", - "resolved": "https://registry.npm.taobao.org/dom-serializer/download/dom-serializer-0.2.1.tgz?cache=0&sync_timestamp=1564710970695&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdom-serializer%2Fdownload%2Fdom-serializer-0.2.1.tgz", - "integrity": "sha1-E2UMhQ2v/qNdi2JqTPxNOhdkP9s=", + "version": "0.2.2", + "resolved": "https://registry.npm.taobao.org/dom-serializer/download/dom-serializer-0.2.2.tgz", + "integrity": "sha1-GvuB9TNxcXXUeGVd68XjMtn5u1E=", "dev": true, "requires": { "domelementtype": "^2.0.1", @@ -4055,7 +4233,7 @@ }, "domutils": { "version": "1.7.0", - "resolved": "https://registry.npm.taobao.org/domutils/download/domutils-1.7.0.tgz", + "resolved": "https://registry.npm.taobao.org/domutils/download/domutils-1.7.0.tgz?cache=0&sync_timestamp=1589052712571&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomutils%2Fdownload%2Fdomutils-1.7.0.tgz", "integrity": "sha1-Vuo0HoNOBuZ0ivehyyXaZ+qfjCo=", "dev": true, "requires": { @@ -4064,17 +4242,17 @@ } }, "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npm.taobao.org/dot-prop/download/dot-prop-4.2.0.tgz", - "integrity": "sha1-HxngwuGqDjJ5fEl5nyg3rGr2nFc=", + "version": "5.2.0", + "resolved": "https://registry.npm.taobao.org/dot-prop/download/dot-prop-5.2.0.tgz", + "integrity": "sha1-w07MKVVtxF8fTCJpe29JBODMT8s=", "dev": true, "requires": { - "is-obj": "^1.0.0" + "is-obj": "^2.0.0" } }, "dotenv": { "version": "7.0.0", - "resolved": "https://registry.npm.taobao.org/dotenv/download/dotenv-7.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/dotenv/download/dotenv-7.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdotenv%2Fdownload%2Fdotenv-7.0.0.tgz", "integrity": "sha1-or481Sc2ZzIG6KhftSEO6ilijnw=", "dev": true }, @@ -4127,37 +4305,53 @@ "lru-cache": "^4.1.5", "semver": "^5.6.0", "sigmund": "^1.0.1" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz", + "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz?cache=0&sync_timestamp=1569874223546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + } } }, "ee-first": { "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "ejs": { - "version": "2.6.2", - "resolved": "https://registry.npm.taobao.org/ejs/download/ejs-2.6.2.tgz", - "integrity": "sha1-OjLGPRzRbREmbNRwOxT+xOdKtPY=", + "version": "2.7.4", + "resolved": "https://registry.npm.taobao.org/ejs/download/ejs-2.7.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fejs%2Fdownload%2Fejs-2.7.4.tgz", + "integrity": "sha1-SGYSh1c9zFPjZsehrlLDoSDuybo=", "dev": true }, "electron-to-chromium": { - "version": "1.3.237", - "resolved": "https://registry.npm.taobao.org/electron-to-chromium/download/electron-to-chromium-1.3.237.tgz", - "integrity": "sha1-OcXR2lnW/Rb/cFuX53K7O139p+Q=", + "version": "1.3.475", + "resolved": "https://registry.npm.taobao.org/electron-to-chromium/download/electron-to-chromium-1.3.475.tgz?cache=0&sync_timestamp=1592364999062&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Felectron-to-chromium%2Fdownload%2Felectron-to-chromium-1.3.475.tgz", + "integrity": "sha1-Z2iMyCw0LzlZSkEihul17aRdhBI=", "dev": true }, "element-resize-detector": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/element-resize-detector/download/element-resize-detector-1.2.0.tgz", - "integrity": "sha1-YzRP1vTl7P9vAY0Cfheygf1Pozg=", + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/element-resize-detector/download/element-resize-detector-1.2.1.tgz", + "integrity": "sha1-sDBRlER6SGMVXljxMyOgrvMIUdE=", "requires": { "batch-processor": "1.0.0" } }, "elliptic": { - "version": "6.5.0", - "resolved": "https://registry.npm.taobao.org/elliptic/download/elliptic-6.5.0.tgz", - "integrity": "sha1-K47UyJG33jIA4UQSpbgkjHr1Bco=", + "version": "6.5.2", + "resolved": "https://registry.npm.taobao.org/elliptic/download/elliptic-6.5.2.tgz", + "integrity": "sha1-BcVnjXFzwEnYykM1UiJKSV0ON2I=", "dev": true, "requires": { "bn.js": "^4.4.0", @@ -4167,30 +4361,38 @@ "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0", "minimalistic-crypto-utils": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.9.tgz", + "integrity": "sha1-JtVWgpRY+dHoH8SJUkk9C6NQeCg=", + "dev": true + } } }, "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz", - "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=", + "version": "8.0.0", + "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-8.0.0.tgz", + "integrity": "sha1-6Bj9ac5cz8tARZT4QpY79TFkzDc=", "dev": true }, "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/emojis-list/download/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "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": "http://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz", "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", "dev": true }, "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.1.tgz", - "integrity": "sha1-7SljTRm6ukY7bOa4CjchPqtx7EM=", + "version": "1.4.4", + "resolved": "https://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.4.tgz", + "integrity": "sha1-WuZKX0UFe682JuwU2gyl5LJDHrA=", "requires": { "once": "^1.4.0" } @@ -4201,20 +4403,32 @@ "integrity": "sha1-3HpiEP5403L+4kqLSJnb0VVBTcs=" }, "enhanced-resolve": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.1.0.tgz", - "integrity": "sha1-Qcfgv9/nSsH/4eV61qXGyfN0Kn8=", + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.2.0.tgz?cache=0&sync_timestamp=1592387335371&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.2.0.tgz", + "integrity": "sha1-XUO9pKD9RHyw675xvvje/4gFrQ0=", "dev": true, "requires": { "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", + "memory-fs": "^0.5.0", "tapable": "^1.0.0" + }, + "dependencies": { + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npm.taobao.org/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.0.0", - "resolved": "https://registry.npm.taobao.org/entities/download/entities-2.0.0.tgz", - "integrity": "sha1-aNYITKsbB5dnVA2A5Wo5tCPkq/Q=", + "version": "2.0.3", + "resolved": "https://registry.npm.taobao.org/entities/download/entities-2.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fentities%2Fdownload%2Fentities-2.0.3.tgz", + "integrity": "sha1-XEh+V0Krk8Fau12iJ1m4WQ7AO38=", "dev": true }, "errno": { @@ -4228,7 +4442,7 @@ }, "error-ex": { "version": "1.3.2", - "resolved": "http://registry.npm.taobao.org/error-ex/download/error-ex-1.3.2.tgz", + "resolved": "https://registry.npm.taobao.org/error-ex/download/error-ex-1.3.2.tgz", "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=", "dev": true, "requires": { @@ -4236,32 +4450,37 @@ } }, "error-stack-parser": { - "version": "2.0.3", - "resolved": "https://registry.npm.taobao.org/error-stack-parser/download/error-stack-parser-2.0.3.tgz?cache=0&sync_timestamp=1565689156653&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ferror-stack-parser%2Fdownload%2Ferror-stack-parser-2.0.3.tgz", - "integrity": "sha1-nTwAD7n1xGH3xOY8GqdTc6x6qjY=", + "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.0.4" + "stackframe": "^1.1.1" } }, "es-abstract": { - "version": "1.13.0", - "resolved": "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.13.0.tgz", - "integrity": "sha1-rIYUX91QmdjdSVWMy6Lq+biOJOk=", + "version": "1.17.6", + "resolved": "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.17.6.tgz?cache=0&sync_timestamp=1592109018051&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes-abstract%2Fdownload%2Fes-abstract-1.17.6.tgz", + "integrity": "sha1-kUIHFweFeyysx7iey2cDFsPi1So=", "dev": true, "requires": { - "es-to-primitive": "^1.2.0", + "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", - "object-keys": "^1.0.12" + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" } }, "es-to-primitive": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.0.tgz", - "integrity": "sha1-7fckeAM0VujdqO8J4ArZZQcH83c=", + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.1.tgz", + "integrity": "sha1-5VzUyc3BiLzvsDs2bHNjI/xciYo=", "dev": true, "requires": { "is-callable": "^1.1.4", @@ -4271,7 +4490,7 @@ }, "es6-promise": { "version": "4.2.8", - "resolved": "https://registry.npm.taobao.org/es6-promise/download/es6-promise-4.2.8.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes6-promise%2Fdownload%2Fes6-promise-4.2.8.tgz", + "resolved": "https://registry.npm.taobao.org/es6-promise/download/es6-promise-4.2.8.tgz", "integrity": "sha1-TrIVlMlyvEBVPSduUQU5FD21Pgo=" }, "es6-promisify": { @@ -4284,30 +4503,37 @@ }, "escape-html": { "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz", + "resolved": "https://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz", "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, "escape-string-regexp": { "version": "1.0.5", - "resolved": "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fescape-string-regexp%2Fdownload%2Fescape-string-regexp-1.0.5.tgz", + "resolved": "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, "escodegen": { - "version": "1.12.0", - "resolved": "https://registry.npm.taobao.org/escodegen/download/escodegen-1.12.0.tgz", - "integrity": "sha1-92Pa+ECvFyuzorbdchnA4X9/9UE=", + "version": "1.14.2", + "resolved": "https://registry.npm.taobao.org/escodegen/download/escodegen-1.14.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fescodegen%2Fdownload%2Fescodegen-1.14.2.tgz", + "integrity": "sha1-FKtxv1AmwqoIFzr7oixvMXMoSoQ=", "requires": { - "esprima": "^3.1.3", + "esprima": "^4.0.1", "estraverse": "^4.2.0", "esutils": "^2.0.2", "optionator": "^0.8.1", "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz", + "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=" + } } }, "eslint": { "version": "4.19.1", - "resolved": "https://registry.npm.taobao.org/eslint/download/eslint-4.19.1.tgz?cache=0&sync_timestamp=1566300526377&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint%2Fdownload%2Feslint-4.19.1.tgz", + "resolved": "https://registry.npm.taobao.org/eslint/download/eslint-4.19.1.tgz?cache=0&sync_timestamp=1591401615541&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint%2Fdownload%2Feslint-4.19.1.tgz", "integrity": "sha1-MtHWU+HZBAiFS/spbwdux+GGowA=", "dev": true, "optional": true, @@ -4354,7 +4580,7 @@ "dependencies": { "ajv": { "version": "5.5.2", - "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-5.5.2.tgz?cache=0&sync_timestamp=1563113786760&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv%2Fdownload%2Fajv-5.5.2.tgz", + "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-5.5.2.tgz?cache=0&sync_timestamp=1587339911109&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv%2Fdownload%2Fajv-5.5.2.tgz", "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "dev": true, "optional": true, @@ -4374,7 +4600,7 @@ }, "cross-spawn": { "version": "5.1.0", - "resolved": "http://registry.npm.taobao.org/cross-spawn/download/cross-spawn-5.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-5.1.0.tgz", "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "dev": true, "optional": true, @@ -4386,7 +4612,7 @@ }, "debug": { "version": "3.2.6", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", "dev": true, "optional": true, @@ -4396,7 +4622,7 @@ }, "eslint-scope": { "version": "3.7.3", - "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-3.7.3.tgz", + "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-3.7.3.tgz?cache=0&sync_timestamp=1591269986906&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-scope%2Fdownload%2Feslint-scope-3.7.3.tgz", "integrity": "sha1-u1ByANPRf2AkdjYWC0gmKEsQhTU=", "dev": true, "optional": true, @@ -4407,7 +4633,7 @@ }, "fast-deep-equal": { "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-1.1.0.tgz?cache=0&sync_timestamp=1562517919182&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-deep-equal%2Fdownload%2Ffast-deep-equal-1.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-1.1.0.tgz?cache=0&sync_timestamp=1591599659970&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-deep-equal%2Fdownload%2Ffast-deep-equal-1.1.0.tgz", "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", "dev": true, "optional": true @@ -4419,6 +4645,17 @@ "dev": true, "optional": true }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz", + "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", + "dev": true, + "optional": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz", @@ -4428,6 +4665,13 @@ "requires": { "ansi-regex": "^3.0.0" } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz?cache=0&sync_timestamp=1569874223546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true, + "optional": true } } }, @@ -4438,13 +4682,13 @@ "dev": true }, "eslint-import-resolver-node": { - "version": "0.3.2", - "resolved": "https://registry.npm.taobao.org/eslint-import-resolver-node/download/eslint-import-resolver-node-0.3.2.tgz", - "integrity": "sha1-WPFfuDm40FdsqYBBNHaqskcttmo=", + "version": "0.3.4", + "resolved": "https://registry.npm.taobao.org/eslint-import-resolver-node/download/eslint-import-resolver-node-0.3.4.tgz?cache=0&sync_timestamp=1592327223893&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-import-resolver-node%2Fdownload%2Feslint-import-resolver-node-0.3.4.tgz", + "integrity": "sha1-hf+oGULCUBLYIxCW3fZ5wDBCxxc=", "dev": true, "requires": { "debug": "^2.6.9", - "resolve": "^1.5.0" + "resolve": "^1.13.1" } }, "eslint-loader": { @@ -4461,12 +4705,12 @@ } }, "eslint-module-utils": { - "version": "2.4.1", - "resolved": "https://registry.npm.taobao.org/eslint-module-utils/download/eslint-module-utils-2.4.1.tgz", - "integrity": "sha1-e0Z1h1v5aw2/GyGXdFblux9eAYw=", + "version": "2.6.0", + "resolved": "https://registry.npm.taobao.org/eslint-module-utils/download/eslint-module-utils-2.6.0.tgz?cache=0&sync_timestamp=1585438056134&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-module-utils%2Fdownload%2Feslint-module-utils-2.6.0.tgz", + "integrity": "sha1-V569CU9Wr3eX0ZyYZsnJSGYpv6Y=", "dev": true, "requires": { - "debug": "^2.6.8", + "debug": "^2.6.9", "pkg-dir": "^2.0.0" }, "dependencies": { @@ -4482,22 +4726,24 @@ } }, "eslint-plugin-import": { - "version": "2.18.2", - "resolved": "https://registry.npm.taobao.org/eslint-plugin-import/download/eslint-plugin-import-2.18.2.tgz", - "integrity": "sha1-AvEYC5Cwd7M9RHoXojJs60AKzrY=", + "version": "2.21.2", + "resolved": "https://registry.npm.taobao.org/eslint-plugin-import/download/eslint-plugin-import-2.21.2.tgz?cache=0&sync_timestamp=1591754079958&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-plugin-import%2Fdownload%2Feslint-plugin-import-2.21.2.tgz", + "integrity": "sha1-j+93R1zFUQgBvtyV+EuTL38zSnw=", "dev": true, "requires": { - "array-includes": "^3.0.3", + "array-includes": "^3.1.1", + "array.prototype.flat": "^1.2.3", "contains-path": "^0.1.0", "debug": "^2.6.9", "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.2", - "eslint-module-utils": "^2.4.0", + "eslint-import-resolver-node": "^0.3.3", + "eslint-module-utils": "^2.6.0", "has": "^1.0.3", "minimatch": "^3.0.4", - "object.values": "^1.1.0", + "object.values": "^1.1.1", "read-pkg-up": "^2.0.0", - "resolve": "^1.11.0" + "resolve": "^1.17.0", + "tsconfig-paths": "^3.9.0" }, "dependencies": { "doctrine": { @@ -4514,7 +4760,7 @@ }, "eslint-plugin-node": { "version": "6.0.1", - "resolved": "https://registry.npm.taobao.org/eslint-plugin-node/download/eslint-plugin-node-6.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/eslint-plugin-node/download/eslint-plugin-node-6.0.1.tgz?cache=0&sync_timestamp=1585396050025&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-plugin-node%2Fdownload%2Feslint-plugin-node-6.0.1.tgz", "integrity": "sha1-vxlkIpgGQ3kxXXpLKnWTc3b6BeQ=", "dev": true, "requires": { @@ -4532,13 +4778,13 @@ }, "eslint-plugin-standard": { "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/eslint-plugin-standard/download/eslint-plugin-standard-3.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/eslint-plugin-standard/download/eslint-plugin-standard-3.1.0.tgz?cache=0&sync_timestamp=1566246326407&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-plugin-standard%2Fdownload%2Feslint-plugin-standard-3.1.0.tgz", "integrity": "sha1-Kp4hJZukxHwC1TstDJE11LECLUc=", "dev": true }, "eslint-plugin-vue": { "version": "4.7.1", - "resolved": "https://registry.npm.taobao.org/eslint-plugin-vue/download/eslint-plugin-vue-4.7.1.tgz", + "resolved": "https://registry.npm.taobao.org/eslint-plugin-vue/download/eslint-plugin-vue-4.7.1.tgz?cache=0&sync_timestamp=1591524668010&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-plugin-vue%2Fdownload%2Feslint-plugin-vue-4.7.1.tgz", "integrity": "sha1-yCm5/GJYLBiXtaC5Sv1E7MpRHmM=", "dev": true, "optional": true, @@ -4548,7 +4794,7 @@ }, "eslint-scope": { "version": "4.0.3", - "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-4.0.3.tgz", + "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-4.0.3.tgz?cache=0&sync_timestamp=1591269986906&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-scope%2Fdownload%2Feslint-scope-4.0.3.tgz", "integrity": "sha1-ygODMxD2iJoyZHgaqC5j65z+eEg=", "dev": true, "requires": { @@ -4557,14 +4803,14 @@ } }, "eslint-visitor-keys": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/eslint-visitor-keys/download/eslint-visitor-keys-1.1.0.tgz?cache=0&sync_timestamp=1565705511122&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-visitor-keys%2Fdownload%2Feslint-visitor-keys-1.1.0.tgz", - "integrity": "sha1-4qgs6oT/JGrW+1f5veW0ZiFFnsI=", + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/eslint-visitor-keys/download/eslint-visitor-keys-1.2.0.tgz", + "integrity": "sha1-dEFayISHRJX3jsKpc0lSU0TJgfo=", "dev": true }, "espree": { "version": "3.5.4", - "resolved": "https://registry.npm.taobao.org/espree/download/espree-3.5.4.tgz", + "resolved": "https://registry.npm.taobao.org/espree/download/espree-3.5.4.tgz?cache=0&sync_timestamp=1591269387241&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fespree%2Fdownload%2Fespree-3.5.4.tgz", "integrity": "sha1-sPRHGHyKi+2US4FaZgvd9d610ac=", "dev": true, "optional": true, @@ -4574,9 +4820,9 @@ }, "dependencies": { "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-5.7.3.tgz", - "integrity": "sha1-Z6ojG/iBKXS4UjWpZ3Hra9B+onk=", + "version": "5.7.4", + "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-5.7.4.tgz?cache=0&sync_timestamp=1591869424806&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-5.7.4.tgz", + "integrity": "sha1-Po2KmUfQWZoXltECJddDL0pKz14=", "dev": true, "optional": true } @@ -4588,13 +4834,22 @@ "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" }, "esquery": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/esquery/download/esquery-1.0.1.tgz", - "integrity": "sha1-QGxRZYsfWZGl+bYrHcJbAOPlxwg=", + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/esquery/download/esquery-1.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fesquery%2Fdownload%2Fesquery-1.3.1.tgz", + "integrity": "sha1-t4tYKKqOIU4p+3TE1bdS4cAz2lc=", "dev": true, "optional": true, "requires": { - "estraverse": "^4.0.0" + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.1.0", + "resolved": "https://registry.npm.taobao.org/estraverse/download/estraverse-5.1.0.tgz?cache=0&sync_timestamp=1586968779444&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Festraverse%2Fdownload%2Festraverse-5.1.0.tgz", + "integrity": "sha1-N0MJ05/ZNa5QDnuS6Ka0xyDllkI=", + "dev": true, + "optional": true + } } }, "esrecurse": { @@ -4608,7 +4863,7 @@ }, "estraverse": { "version": "4.3.0", - "resolved": "https://registry.npm.taobao.org/estraverse/download/estraverse-4.3.0.tgz?cache=0&sync_timestamp=1565734335990&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Festraverse%2Fdownload%2Festraverse-4.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/estraverse/download/estraverse-4.3.0.tgz?cache=0&sync_timestamp=1586968779444&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Festraverse%2Fdownload%2Festraverse-4.3.0.tgz", "integrity": "sha1-OYrT88WiSUi+dyXoPRGn3ijNvR0=" }, "esutils": { @@ -4618,7 +4873,7 @@ }, "etag": { "version": "1.8.1", - "resolved": "http://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz", + "resolved": "https://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz", "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", "dev": true }, @@ -4629,15 +4884,15 @@ "dev": true }, "eventemitter3": { - "version": "3.1.2", - "resolved": "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-3.1.2.tgz?cache=0&sync_timestamp=1560950873670&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feventemitter3%2Fdownload%2Feventemitter3-3.1.2.tgz", - "integrity": "sha1-LT1I+cNGaY/Og6hdfWZOmFNd9uc=", + "version": "4.0.4", + "resolved": "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-4.0.4.tgz?cache=0&sync_timestamp=1589283112999&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feventemitter3%2Fdownload%2Feventemitter3-4.0.4.tgz", + "integrity": "sha1-tUY6zmNaCD0Bi9x8kXtMXxCoU4Q=", "dev": true }, "events": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/events/download/events-3.0.0.tgz", - "integrity": "sha1-mgoN+vYok9krh1uPJpjKQRSXPog=", + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/events/download/events-3.1.0.tgz?cache=0&sync_timestamp=1578498239809&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fevents%2Fdownload%2Fevents-3.1.0.tgz", + "integrity": "sha1-hCea8bNMt1qoi/X/KR9tC9mzGlk=", "dev": true }, "eventsource": { @@ -4676,7 +4931,7 @@ }, "expand-brackets": { "version": "2.1.4", - "resolved": "http://registry.npm.taobao.org/expand-brackets/download/expand-brackets-2.1.4.tgz", + "resolved": "https://registry.npm.taobao.org/expand-brackets/download/expand-brackets-2.1.4.tgz", "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { @@ -4691,7 +4946,7 @@ "dependencies": { "define-property": { "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { @@ -4702,7 +4957,7 @@ }, "express": { "version": "4.17.1", - "resolved": "https://registry.npm.taobao.org/express/download/express-4.17.1.tgz", + "resolved": "https://registry.npm.taobao.org/express/download/express-4.17.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fexpress%2Fdownload%2Fexpress-4.17.1.tgz", "integrity": "sha1-RJH8OGBc9R+GKdOcK10Cb5ikwTQ=", "dev": true, "requires": { @@ -4740,7 +4995,7 @@ "dependencies": { "qs": { "version": "6.7.0", - "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz?cache=0&sync_timestamp=1566009952956&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fqs%2Fdownload%2Fqs-6.7.0.tgz", + "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz", "integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw=", "dev": true } @@ -4753,7 +5008,7 @@ }, "extend-shallow": { "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "requires": { "is-extendable": "^0.1.0" @@ -4761,7 +5016,7 @@ }, "external-editor": { "version": "2.2.0", - "resolved": "https://registry.npm.taobao.org/external-editor/download/external-editor-2.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fexternal-editor%2Fdownload%2Fexternal-editor-2.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/external-editor/download/external-editor-2.2.0.tgz", "integrity": "sha1-BFURz9jRM/OEZnPRBHwVTiFK09U=", "dev": true, "optional": true, @@ -4773,7 +5028,7 @@ }, "extglob": { "version": "2.0.4", - "resolved": "http://registry.npm.taobao.org/extglob/download/extglob-2.0.4.tgz", + "resolved": "https://registry.npm.taobao.org/extglob/download/extglob-2.0.4.tgz", "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", "dev": true, "requires": { @@ -4789,7 +5044,7 @@ "dependencies": { "define-property": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { @@ -4798,7 +5053,7 @@ }, "is-accessor-descriptor": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", "dev": true, "requires": { @@ -4807,7 +5062,7 @@ }, "is-data-descriptor": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", "dev": true, "requires": { @@ -4816,7 +5071,7 @@ }, "is-descriptor": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", "dev": true, "requires": { @@ -4834,14 +5089,14 @@ "dev": true }, "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-2.0.1.tgz?cache=0&sync_timestamp=1562517919182&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-deep-equal%2Fdownload%2Ffast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "version": "3.1.3", + "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-3.1.3.tgz?cache=0&sync_timestamp=1591599659970&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-deep-equal%2Fdownload%2Ffast-deep-equal-3.1.3.tgz", + "integrity": "sha1-On1WtVnWy8PrUSMlJE5hmmXGxSU=", "dev": true }, "fast-glob": { "version": "2.2.7", - "resolved": "https://registry.npm.taobao.org/fast-glob/download/fast-glob-2.2.7.tgz", + "resolved": "https://registry.npm.taobao.org/fast-glob/download/fast-glob-2.2.7.tgz?cache=0&sync_timestamp=1592290346558&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-glob%2Fdownload%2Ffast-glob-2.2.7.tgz", "integrity": "sha1-aVOFfDr6R1//ku5gFdUtpwpM050=", "dev": true, "requires": { @@ -4851,12 +5106,35 @@ "is-glob": "^4.0.0", "merge2": "^1.2.3", "micromatch": "^3.1.10" - } - }, + }, + "dependencies": { + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/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.npm.taobao.org/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.0.0", - "resolved": "https://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-json-stable-stringify%2Fdownload%2Ffast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM=", "dev": true }, "fast-levenshtein": { @@ -4880,9 +5158,9 @@ } }, "figgy-pudding": { - "version": "3.5.1", - "resolved": "https://registry.npm.taobao.org/figgy-pudding/download/figgy-pudding-3.5.1.tgz", - "integrity": "sha1-hiRwESkBxyeg5JWoB0S9W6odZ5A=", + "version": "3.5.2", + "resolved": "https://registry.npm.taobao.org/figgy-pudding/download/figgy-pudding-3.5.2.tgz?cache=0&sync_timestamp=1585068742276&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffiggy-pudding%2Fdownload%2Ffiggy-pudding-3.5.2.tgz", + "integrity": "sha1-tO7oFIq7Adzx0aw0Nn1Z4S+mHW4=", "dev": true }, "figures": { @@ -4908,12 +5186,25 @@ }, "file-loader": { "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/file-loader/download/file-loader-3.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-loader%2Fdownload%2Ffile-loader-3.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/file-loader/download/file-loader-3.0.1.tgz", "integrity": "sha1-+OC6C1mZGLUa3+RdZtHnca1WD6o=", "dev": true, "requires": { "loader-utils": "^1.0.2", "schema-utils": "^1.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } } }, "file-uri-to-path": { @@ -4923,7 +5214,7 @@ }, "filesize": { "version": "3.6.1", - "resolved": "https://registry.npm.taobao.org/filesize/download/filesize-3.6.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffilesize%2Fdownload%2Ffilesize-3.6.1.tgz", + "resolved": "https://registry.npm.taobao.org/filesize/download/filesize-3.6.1.tgz", "integrity": "sha1-CQuz7gG2+AGoqL6Z0xcQs0Irsxc=" }, "fill-range": { @@ -4973,7 +5264,7 @@ }, "find-cache-dir": { "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-2.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-2.1.0.tgz?cache=0&sync_timestamp=1583734806517&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffind-cache-dir%2Fdownload%2Ffind-cache-dir-2.1.0.tgz", "integrity": "sha1-jQ+UzRP+Q8bHwmGg2GEVypGMBfc=", "dev": true, "requires": { @@ -5028,7 +5319,7 @@ }, "follow-redirects": { "version": "1.5.10", - "resolved": "https://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.5.10.tgz", + "resolved": "https://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.5.10.tgz?cache=0&sync_timestamp=1592338306588&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffollow-redirects%2Fdownload%2Ffollow-redirects-1.5.10.tgz", "integrity": "sha1-e3qfmuov3/NnhqlP9kPtB/T/Xio=", "requires": { "debug": "=3.1.0" @@ -5036,7 +5327,7 @@ "dependencies": { "debug": { "version": "3.1.0", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", "requires": { "ms": "2.0.0" @@ -5044,14 +5335,14 @@ }, "ms": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, "for-in": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/for-in/download/for-in-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/for-in/download/for-in-1.0.2.tgz", "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", "dev": true }, @@ -5063,7 +5354,7 @@ }, "form-data": { "version": "2.3.3", - "resolved": "https://registry.npm.taobao.org/form-data/download/form-data-2.3.3.tgz?cache=0&sync_timestamp=1562216133657&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fform-data%2Fdownload%2Fform-data-2.3.3.tgz", + "resolved": "https://registry.npm.taobao.org/form-data/download/form-data-2.3.3.tgz", "integrity": "sha1-3M5SwF9kTymManq5Nr1yTO/786Y=", "dev": true, "requires": { @@ -5090,7 +5381,7 @@ }, "fragment-cache": { "version": "0.2.1", - "resolved": "http://registry.npm.taobao.org/fragment-cache/download/fragment-cache-0.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/fragment-cache/download/fragment-cache-0.2.1.tgz", "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "dev": true, "requires": { @@ -5099,7 +5390,7 @@ }, "fresh": { "version": "0.5.2", - "resolved": "http://registry.npm.taobao.org/fresh/download/fresh-0.5.2.tgz", + "resolved": "https://registry.npm.taobao.org/fresh/download/fresh-0.5.2.tgz", "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", "dev": true }, @@ -5115,7 +5406,7 @@ }, "fs-extra": { "version": "7.0.1", - "resolved": "https://registry.npm.taobao.org/fs-extra/download/fs-extra-7.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/fs-extra/download/fs-extra-7.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffs-extra%2Fdownload%2Ffs-extra-7.0.1.tgz", "integrity": "sha1-TxicRKoSO4lfcigE9V6iPq3DSOk=", "dev": true, "requires": { @@ -5142,599 +5433,11 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "1.2.9", - "resolved": "https://registry.npm.taobao.org/fsevents/download/fsevents-1.2.9.tgz", - "integrity": "sha1-P17WZYPM1vQAtaANtvfoYTY+OI8=", + "version": "2.1.3", + "resolved": "https://registry.npm.taobao.org/fsevents/download/fsevents-2.1.3.tgz", + "integrity": "sha1-+3OHA66NL5/pAMM4Nt3r7ouX8j4=", "dev": true, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", - "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true, - "optional": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", - "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", - "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - }, - "minipass": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", - "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", - "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.3.0.tgz", - "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", - "dev": true, - "optional": true, - "requires": { - "debug": "^4.1.0", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz", - "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", - "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", - "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", - "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "yallist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", - "dev": true - } - } + "optional": true }, "fstream": { "version": "1.0.12", @@ -5759,12 +5462,12 @@ "dependencies": { "isarray": { "version": "0.0.1", - "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-0.0.1.tgz?cache=0&sync_timestamp=1562592096220&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fisarray%2Fdownload%2Fisarray-0.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-0.0.1.tgz?cache=0&sync_timestamp=1562592125418&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fisarray%2Fdownload%2Fisarray-0.0.1.tgz", "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" }, "readable-stream": { "version": "1.1.14", - "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-1.1.14.tgz", + "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-1.1.14.tgz?cache=0&sync_timestamp=1581623021561&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "requires": { "core-util-is": "~1.0.0", @@ -5775,7 +5478,7 @@ }, "string_decoder": { "version": "0.10.31", - "resolved": "https://registry.npm.taobao.org/string_decoder/download/string_decoder-0.10.31.tgz?cache=0&sync_timestamp=1565170823020&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring_decoder%2Fdownload%2Fstring_decoder-0.10.31.tgz", + "resolved": "https://registry.npm.taobao.org/string_decoder/download/string_decoder-0.10.31.tgz", "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" } } @@ -5826,7 +5529,7 @@ }, "string-width": { "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-1.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { @@ -5855,6 +5558,12 @@ "globule": "^1.0.0" } }, + "gensync": { + "version": "1.0.0-beta.1", + "resolved": "https://registry.npm.taobao.org/gensync/download/gensync-1.0.0-beta.1.tgz", + "integrity": "sha1-WPQ2H/mH5f9uHnohCCeqNx6qwmk=", + "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", @@ -5882,41 +5591,21 @@ } }, "get-uri": { - "version": "2.0.3", - "resolved": "https://registry.npm.taobao.org/get-uri/download/get-uri-2.0.3.tgz", - "integrity": "sha1-+hM1Iml4HXUWLG/IE8npBTI/urU=", + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/get-uri/download/get-uri-2.0.4.tgz?cache=0&sync_timestamp=1586470355115&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fget-uri%2Fdownload%2Fget-uri-2.0.4.tgz", + "integrity": "sha1-1JN6uBniGNTLWuGOT1livvFpzGo=", "requires": { - "data-uri-to-buffer": "2", - "debug": "4", + "data-uri-to-buffer": "1", + "debug": "2", "extend": "~3.0.2", "file-uri-to-path": "1", "ftp": "~0.3.10", - "readable-stream": "3" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", - "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", - "requires": { - "ms": "^2.1.1" - } - }, - "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.4.0.tgz", - "integrity": "sha1-pRwmdUZY4KPCHb9ZFjvUW6b0R/w=", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "readable-stream": "2" } }, "get-value": { "version": "2.0.6", - "resolved": "http://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz", + "resolved": "https://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz", "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", "dev": true }, @@ -5930,9 +5619,9 @@ } }, "glob": { - "version": "7.1.4", - "resolved": "https://registry.npm.taobao.org/glob/download/glob-7.1.4.tgz", - "integrity": "sha1-qmCKL2xXetNX4a5aXCbZqNGWklU=", + "version": "7.1.6", + "resolved": "https://registry.npm.taobao.org/glob/download/glob-7.1.6.tgz", + "integrity": "sha1-FB8zuBp8JJLhJVlDB0gMRmeSeKY=", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -5943,24 +5632,13 @@ } }, "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/glob-parent/download/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "version": "5.1.1", + "resolved": "https://registry.npm.taobao.org/glob-parent/download/glob-parent-5.1.1.tgz", + "integrity": "sha1-tsHvQXxOVmPqSY8cRa+saRa7wik=", "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.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } + "is-glob": "^4.0.1" } }, "glob-to-regexp": { @@ -5971,13 +5649,13 @@ }, "globals": { "version": "11.12.0", - "resolved": "https://registry.npm.taobao.org/globals/download/globals-11.12.0.tgz?cache=0&sync_timestamp=1563721993391&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglobals%2Fdownload%2Fglobals-11.12.0.tgz", + "resolved": "https://registry.npm.taobao.org/globals/download/globals-11.12.0.tgz", "integrity": "sha1-q4eVM4hooLq9hSV1gBjCp+uVxC4=", "dev": true }, "globby": { "version": "9.2.0", - "resolved": "https://registry.npm.taobao.org/globby/download/globby-9.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/globby/download/globby-9.2.0.tgz?cache=0&sync_timestamp=1591083787584&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglobby%2Fdownload%2Fglobby-9.2.0.tgz", "integrity": "sha1-/QKacGxwPSm90XD0tts6P3p8tj0=", "dev": true, "requires": { @@ -5993,16 +5671,16 @@ "dependencies": { "ignore": { "version": "4.0.6", - "resolved": "https://registry.npm.taobao.org/ignore/download/ignore-4.0.6.tgz", + "resolved": "https://registry.npm.taobao.org/ignore/download/ignore-4.0.6.tgz?cache=0&sync_timestamp=1590809380232&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fignore%2Fdownload%2Fignore-4.0.6.tgz", "integrity": "sha1-dQ49tYYgh7RzfrrIIH/9HvJ7Jfw=", "dev": true } } }, "globule": { - "version": "1.2.1", - "resolved": "https://registry.npm.taobao.org/globule/download/globule-1.2.1.tgz", - "integrity": "sha1-Xf+xsZHyLSB5epNptJ6rTpg5aW0=", + "version": "1.3.2", + "resolved": "https://registry.npm.taobao.org/globule/download/globule-1.3.2.tgz?cache=0&sync_timestamp=1591641966255&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglobule%2Fdownload%2Fglobule-1.3.2.tgz", + "integrity": "sha1-2L3Z6eTu+PluJFmZpd7n612FKcQ=", "dev": true, "requires": { "glob": "~7.1.1", @@ -6012,16 +5690,16 @@ }, "good-listener": { "version": "1.2.2", - "resolved": "http://registry.npm.taobao.org/good-listener/download/good-listener-1.2.2.tgz", + "resolved": "https://registry.npm.taobao.org/good-listener/download/good-listener-1.2.2.tgz", "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", "requires": { "delegate": "^3.1.2" } }, "graceful-fs": { - "version": "4.2.2", - "resolved": "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.2.tgz", - "integrity": "sha1-bwlSYF0BQMHP2xOO0AV3W5LWewI=", + "version": "4.2.4", + "resolved": "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.4.tgz?cache=0&sync_timestamp=1588086905523&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgraceful-fs%2Fdownload%2Fgraceful-fs-4.2.4.tgz", + "integrity": "sha1-Ila94U02MpWMRl68ltxGfKB6Kfs=", "dev": true }, "gzip-size": { @@ -6035,9 +5713,9 @@ } }, "handle-thing": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/handle-thing/download/handle-thing-2.0.0.tgz", - "integrity": "sha1-DgOWlf9QyT/CiFV9aW88HcZ3Z1Q=", + "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": { @@ -6067,7 +5745,7 @@ }, "has-ansi": { "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/has-ansi/download/has-ansi-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/has-ansi/download/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "dev": true, "requires": { @@ -6089,9 +5767,9 @@ "dev": true }, "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.1.tgz?cache=0&sync_timestamp=1573950719586&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-symbols%2Fdownload%2Fhas-symbols-1.0.1.tgz", + "integrity": "sha1-n1IUdYpEGWxAbZvXbOv4HsLdMeg=", "dev": true }, "has-unicode": { @@ -6102,7 +5780,7 @@ }, "has-value": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/has-value/download/has-value-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/has-value/download/has-value-1.0.0.tgz", "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", "dev": true, "requires": { @@ -6113,7 +5791,7 @@ }, "has-values": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/has-values/download/has-values-1.0.0.tgz", + "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": { @@ -6123,13 +5801,13 @@ "dependencies": { "is-buffer": { "version": "1.1.6", - "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", + "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz?cache=0&sync_timestamp=1588707106955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-1.1.6.tgz", "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", "dev": true }, "kind-of": { "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-4.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "dev": true, "requires": { @@ -6139,13 +5817,33 @@ } }, "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npm.taobao.org/hash-base/download/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/hash-base/download/hash-base-3.1.0.tgz", + "integrity": "sha1-VcOB2eBuHSmXqIO0o/3f5/DTrzM=", "dev": true, "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.6.0.tgz?cache=0&sync_timestamp=1581623021561&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-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.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.1.tgz?cache=0&sync_timestamp=1589129010497&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.2.1.tgz", + "integrity": "sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=", + "dev": true + } } }, "hash-sum": { @@ -6177,9 +5875,9 @@ "dev": true }, "highlight.js": { - "version": "9.15.10", - "resolved": "https://registry.npm.taobao.org/highlight.js/download/highlight.js-9.15.10.tgz", - "integrity": "sha1-exjtdckDSMBF7vntCMoTGaIhmtI=", + "version": "9.18.1", + "resolved": "https://registry.npm.taobao.org/highlight.js/download/highlight.js-9.18.1.tgz", + "integrity": "sha1-7SGqAB/mJSuxCj121HVzxlOf4Tw=", "dev": true }, "hmac-drbg": { @@ -6200,9 +5898,9 @@ "dev": true }, "hosted-git-info": { - "version": "2.8.4", - "resolved": "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-2.8.4.tgz", - "integrity": "sha1-RBGauvS8ZGkqFqzjRwD+2cA+JUY=", + "version": "2.8.8", + "resolved": "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-2.8.8.tgz?cache=0&sync_timestamp=1583044512484&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhosted-git-info%2Fdownload%2Fhosted-git-info-2.8.8.tgz", + "integrity": "sha1-dTm9S8Hg4KiVgVouAmJCCxKFhIg=", "dev": true }, "hpack.js": { @@ -6236,9 +5934,9 @@ "dev": true }, "html-entities": { - "version": "1.2.1", - "resolved": "https://registry.npm.taobao.org/html-entities/download/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/html-entities/download/html-entities-1.3.1.tgz", + "integrity": "sha1-+5oaS1sUxdq6gtPjTGrk/nAaDkQ=", "dev": true }, "html-minifier": { @@ -6258,7 +5956,7 @@ "dependencies": { "commander": { "version": "2.17.1", - "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.17.1.tgz?cache=0&sync_timestamp=1565398176321&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.17.1.tgz", + "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.17.1.tgz", "integrity": "sha1-vXerfebelCBc6sxy8XFtKfIKd78=", "dev": true } @@ -6266,13 +5964,13 @@ }, "html-tags": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/html-tags/download/html-tags-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhtml-tags%2Fdownload%2Fhtml-tags-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/html-tags/download/html-tags-2.0.0.tgz", "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=", "dev": true }, "html-webpack-plugin": { "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/html-webpack-plugin/download/html-webpack-plugin-3.2.0.tgz?cache=0&sync_timestamp=1563437816811&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhtml-webpack-plugin%2Fdownload%2Fhtml-webpack-plugin-3.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/html-webpack-plugin/download/html-webpack-plugin-3.2.0.tgz?cache=0&sync_timestamp=1588268193119&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhtml-webpack-plugin%2Fdownload%2Fhtml-webpack-plugin-3.2.0.tgz", "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", "dev": true, "requires": { @@ -6291,6 +5989,12 @@ "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.npm.taobao.org/json5/download/json5-0.5.1.tgz", @@ -6308,6 +6012,16 @@ "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", + "integrity": "sha1-RA9xZaRZyaFtwUXrjnLzVocJcDA=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } } } }, @@ -6327,14 +6041,14 @@ "dependencies": { "entities": { "version": "1.1.2", - "resolved": "https://registry.npm.taobao.org/entities/download/entities-1.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/entities/download/entities-1.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fentities%2Fdownload%2Fentities-1.1.2.tgz", "integrity": "sha1-vfpzUplmTfr9NFKe1PhSKidf6lY=", "dev": true }, "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.4.0.tgz", - "integrity": "sha1-pRwmdUZY4KPCHb9ZFjvUW6b0R/w=", + "version": "3.6.0", + "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.6.0.tgz?cache=0&sync_timestamp=1581623021561&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-3.6.0.tgz", + "integrity": "sha1-M3u9o63AcGvT4CRCaihtS0sskZg=", "dev": true, "requires": { "inherits": "^2.0.3", @@ -6362,19 +6076,13 @@ "toidentifier": "1.0.0" } }, - "http-parser-js": { - "version": "0.4.10", - "resolved": "https://registry.npm.taobao.org/http-parser-js/download/http-parser-js-0.4.10.tgz", - "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=", - "dev": true - }, "http-proxy": { - "version": "1.17.0", - "resolved": "https://registry.npm.taobao.org/http-proxy/download/http-proxy-1.17.0.tgz", - "integrity": "sha1-etOElGWPhGBeL220Q230EPTlvpo=", + "version": "1.18.1", + "resolved": "https://registry.npm.taobao.org/http-proxy/download/http-proxy-1.18.1.tgz", + "integrity": "sha1-QBVB8FNIhLv5UmAzTnL4juOXZUk=", "dev": true, "requires": { - "eventemitter3": "^3.0.0", + "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", "requires-port": "^1.0.0" } @@ -6390,7 +6098,7 @@ "dependencies": { "debug": { "version": "3.1.0", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz", "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", "requires": { "ms": "2.0.0" @@ -6398,7 +6106,7 @@ }, "ms": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } @@ -6433,9 +6141,9 @@ "dev": true }, "https-proxy-agent": { - "version": "2.2.2", - "resolved": "https://registry.npm.taobao.org/https-proxy-agent/download/https-proxy-agent-2.2.2.tgz", - "integrity": "sha1-Jx6o6Q+DasnxGdrM05wZ/337B5M=", + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/https-proxy-agent/download/https-proxy-agent-3.0.1.tgz", + "integrity": "sha1-uMKGQz6HYCMRsByOo0QT2Fakr4E=", "requires": { "agent-base": "^4.3.0", "debug": "^3.1.0" @@ -6443,7 +6151,7 @@ "dependencies": { "debug": { "version": "3.2.6", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", "requires": { "ms": "^2.1.1" @@ -6451,6 +6159,12 @@ } } }, + "human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/human-signals/download/human-signals-1.1.1.tgz", + "integrity": "sha1-xbHNFPUK6uCatsWf5jujOV/k36M=", + "dev": true + }, "humanize-ms": { "version": "1.2.1", "resolved": "https://registry.npm.taobao.org/humanize-ms/download/humanize-ms-1.2.1.tgz", @@ -6461,7 +6175,7 @@ }, "iconv-lite": { "version": "0.4.24", - "resolved": "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz", + "resolved": "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz?cache=0&sync_timestamp=1591605330039&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.4.24.tgz", "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=", "requires": { "safer-buffer": ">= 2.1.2 < 3" @@ -6475,7 +6189,7 @@ }, "icss-utils": { "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/icss-utils/download/icss-utils-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ficss-utils%2Fdownload%2Ficss-utils-2.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/icss-utils/download/icss-utils-2.1.0.tgz", "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", "dev": true, "requires": { @@ -6509,7 +6223,7 @@ }, "ignore": { "version": "3.3.10", - "resolved": "https://registry.npm.taobao.org/ignore/download/ignore-3.3.10.tgz", + "resolved": "https://registry.npm.taobao.org/ignore/download/ignore-3.3.10.tgz?cache=0&sync_timestamp=1590809380232&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fignore%2Fdownload%2Fignore-3.3.10.tgz", "integrity": "sha1-Cpf7h2mG6AgcYxFg+PnziRV/AEM=", "dev": true }, @@ -6534,7 +6248,7 @@ "dependencies": { "caller-path": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/caller-path/download/caller-path-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/caller-path/download/caller-path-2.0.0.tgz?cache=0&sync_timestamp=1574395720588&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcaller-path%2Fdownload%2Fcaller-path-2.0.0.tgz", "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", "dev": true, "requires": { @@ -6578,14 +6292,14 @@ }, "imurmurhash": { "version": "0.1.4", - "resolved": "http://registry.npm.taobao.org/imurmurhash/download/imurmurhash-0.1.4.tgz", + "resolved": "https://registry.npm.taobao.org/imurmurhash/download/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, "in-publish": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/in-publish/download/in-publish-2.0.0.tgz", - "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=", + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/in-publish/download/in-publish-2.0.1.tgz", + "integrity": "sha1-lIsaU1yAMFYc6lIvc/ePS+NX4Aw=", "dev": true }, "indent-string": { @@ -6625,12 +6339,12 @@ }, "ini": { "version": "1.3.5", - "resolved": "http://registry.npm.taobao.org/ini/download/ini-1.3.5.tgz", + "resolved": "https://registry.npm.taobao.org/ini/download/ini-1.3.5.tgz", "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=" }, "inquirer": { "version": "3.3.0", - "resolved": "https://registry.npm.taobao.org/inquirer/download/inquirer-3.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/inquirer/download/inquirer-3.3.0.tgz?cache=0&sync_timestamp=1592184360271&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Finquirer%2Fdownload%2Finquirer-3.3.0.tgz", "integrity": "sha1-ndLyrXZdyrH/BEO0kUQqILoifck=", "dev": true, "optional": true, @@ -6672,7 +6386,7 @@ }, "internal-ip": { "version": "4.3.0", - "resolved": "https://registry.npm.taobao.org/internal-ip/download/internal-ip-4.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/internal-ip/download/internal-ip-4.3.0.tgz?cache=0&sync_timestamp=1584010513586&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Finternal-ip%2Fdownload%2Finternal-ip-4.3.0.tgz", "integrity": "sha1-hFRSuq2dLKO2nGNaE3rLmg2tCQc=", "dev": true, "requires": { @@ -6682,7 +6396,7 @@ "dependencies": { "default-gateway": { "version": "4.2.0", - "resolved": "https://registry.npm.taobao.org/default-gateway/download/default-gateway-4.2.0.tgz?cache=0&sync_timestamp=1565763930901&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdefault-gateway%2Fdownload%2Fdefault-gateway-4.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/default-gateway/download/default-gateway-4.2.0.tgz?cache=0&sync_timestamp=1590419186221&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdefault-gateway%2Fdownload%2Fdefault-gateway-4.2.0.tgz", "integrity": "sha1-FnEEx1AMIRX23WmwpTa7jtcgVSs=", "dev": true, "requires": { @@ -6694,19 +6408,13 @@ }, "invariant": { "version": "2.2.4", - "resolved": "https://registry.npm.taobao.org/invariant/download/invariant-2.2.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Finvariant%2Fdownload%2Finvariant-2.2.4.tgz", + "resolved": "https://registry.npm.taobao.org/invariant/download/invariant-2.2.4.tgz", "integrity": "sha1-YQ88ksk1nOHbYW5TgAjSP/NRWOY=", "dev": true, "requires": { "loose-envify": "^1.0.0" } }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/invert-kv/download/invert-kv-2.0.0.tgz", - "integrity": "sha1-c5P1r6Weyf9fZ6J2INEcIm4+7AI=", - "dev": true - }, "ip": { "version": "1.1.5", "resolved": "https://registry.npm.taobao.org/ip/download/ip-1.1.5.tgz", @@ -6719,9 +6427,9 @@ "dev": true }, "ipaddr.js": { - "version": "1.9.0", - "resolved": "https://registry.npm.taobao.org/ipaddr.js/download/ipaddr.js-1.9.0.tgz", - "integrity": "sha1-N9905DCg5HVQ/lSi3v4w2KzZX2U=", + "version": "1.9.1", + "resolved": "https://registry.npm.taobao.org/ipaddr.js/download/ipaddr.js-1.9.1.tgz", + "integrity": "sha1-v/OFQ+64mEglB5/zoqjmy9RngbM=", "dev": true }, "is-absolute-url": { @@ -6732,7 +6440,7 @@ }, "is-accessor-descriptor": { "version": "0.1.6", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", + "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { @@ -6741,13 +6449,13 @@ "dependencies": { "is-buffer": { "version": "1.1.6", - "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", + "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz?cache=0&sync_timestamp=1588707106955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-1.1.6.tgz", "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", "dev": true }, "kind-of": { "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { @@ -6756,35 +6464,42 @@ } } }, + "is-arguments": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/is-arguments/download/is-arguments-1.0.4.tgz", + "integrity": "sha1-P6+WbHy6D/Q3+zH2JQCC/PBEjPM=", + "dev": true + }, "is-arrayish": { "version": "0.2.1", - "resolved": "http://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.2.1.tgz", "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-2.1.0.tgz", + "integrity": "sha1-6h9/O4DwZCNug0cPhsCcJU+0Wwk=", "dev": true, + "optional": true, "requires": { - "binary-extensions": "^1.0.0" + "binary-extensions": "^2.0.0" } }, "is-buffer": { - "version": "2.0.3", - "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-2.0.3.tgz", - "integrity": "sha1-Ts8/z3ScvR5HJonhCaxmJhol5yU=" + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-2.0.4.tgz?cache=0&sync_timestamp=1588707106955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-2.0.4.tgz", + "integrity": "sha1-PlcvI8hBGlz9lVfISeNmXgspBiM=" }, "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npm.taobao.org/is-callable/download/is-callable-1.1.4.tgz", - "integrity": "sha1-HhrfIZ4e62hNaR+dagX/DTCiTXU=", + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/is-callable/download/is-callable-1.2.0.tgz?cache=0&sync_timestamp=1591427607174&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-callable%2Fdownload%2Fis-callable-1.2.0.tgz", + "integrity": "sha1-gzNlYLVKOONeOi33r9BFTWkUaLs=", "dev": true }, "is-ci": { "version": "1.2.1", - "resolved": "http://registry.npm.taobao.org/is-ci/download/is-ci-1.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-ci/download/is-ci-1.2.1.tgz", "integrity": "sha1-43ecjuF/zPQoSI9uKBGH8uYyhBw=", "dev": true, "requires": { @@ -6812,7 +6527,7 @@ }, "is-data-descriptor": { "version": "0.1.4", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { @@ -6821,13 +6536,13 @@ "dependencies": { "is-buffer": { "version": "1.1.6", - "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", + "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz?cache=0&sync_timestamp=1588707106955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-1.1.6.tgz", "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", "dev": true }, "kind-of": { "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { @@ -6837,14 +6552,14 @@ } }, "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/is-date-object/download/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/is-date-object/download/is-date-object-1.0.2.tgz?cache=0&sync_timestamp=1576729165697&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-date-object%2Fdownload%2Fis-date-object-1.0.2.tgz", + "integrity": "sha1-vac28s2P0G0yhE53Q7+nSUw7/X4=", "dev": true }, "is-descriptor": { "version": "0.1.6", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz", "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", "dev": true, "requires": { @@ -6855,7 +6570,7 @@ "dependencies": { "kind-of": { "version": "5.1.0", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-5.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-5.1.0.tgz", "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=", "dev": true } @@ -6867,25 +6582,28 @@ "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", "dev": true }, + "is-docker": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/is-docker/download/is-docker-2.0.0.tgz", + "integrity": "sha1-LLDfDnXi0GT+GGTDfN6st7Lc8ls=", + "dev": true + }, "is-extendable": { "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-0.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-0.1.1.tgz", "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" }, "is-extglob": { "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz", + "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.0.2", - "resolved": "https://registry.npm.taobao.org/is-finite/download/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/is-finite/download/is-finite-1.1.0.tgz", + "integrity": "sha1-kEE1x3+0LAZB1qobzbxNqo2ggvM=", + "dev": true }, "is-fullwidth-code-point": { "version": "2.0.0", @@ -6904,7 +6622,7 @@ }, "is-number": { "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { @@ -6913,13 +6631,13 @@ "dependencies": { "is-buffer": { "version": "1.1.6", - "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", + "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz?cache=0&sync_timestamp=1588707106955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-1.1.6.tgz", "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", "dev": true }, "kind-of": { "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { @@ -6929,20 +6647,20 @@ } }, "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/is-obj/download/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "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.npm.taobao.org/is-path-cwd/download/is-path-cwd-2.2.0.tgz?cache=0&sync_timestamp=1562347283002&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-path-cwd%2Fdownload%2Fis-path-cwd-2.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-path-cwd/download/is-path-cwd-2.2.0.tgz", "integrity": "sha1-Z9Q7gmZKe1GR/ZEZEn6zAASKn9s=", "dev": true }, "is-path-in-cwd": { "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/is-path-in-cwd/download/is-path-in-cwd-2.1.0.tgz?cache=0&sync_timestamp=1562347183080&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-path-in-cwd%2Fdownload%2Fis-path-in-cwd-2.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-path-in-cwd/download/is-path-in-cwd-2.1.0.tgz", "integrity": "sha1-v+Lcomxp85cmWkAJljYCk1oFOss=", "dev": true, "requires": { @@ -6960,7 +6678,7 @@ }, "is-plain-obj": { "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz?cache=0&sync_timestamp=1579603005816&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 }, @@ -6973,20 +6691,13 @@ "isobject": "^3.0.1" } }, - "is-promise": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/is-promise/download/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true, - "optional": true - }, "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npm.taobao.org/is-regex/download/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/is-regex/download/is-regex-1.1.0.tgz", + "integrity": "sha1-7OOOOJ5JDfDcIcrqK9WW+Yf3Z/8=", "dev": true, "requires": { - "has": "^1.0.1" + "has-symbols": "^1.0.1" } }, "is-resolvable": { @@ -7001,6 +6712,12 @@ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, + "is-string": { + "version": "1.0.5", + "resolved": "https://registry.npm.taobao.org/is-string/download/is-string-1.0.5.tgz?cache=0&sync_timestamp=1576732180884&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-string%2Fdownload%2Fis-string-1.0.5.tgz", + "integrity": "sha1-QEk+0ZjvP/R3uMf5L2ROyCpc06Y=", + "dev": true + }, "is-svg": { "version": "3.0.0", "resolved": "https://registry.npm.taobao.org/is-svg/download/is-svg-3.0.0.tgz", @@ -7011,12 +6728,12 @@ } }, "is-symbol": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.2.tgz", - "integrity": "sha1-oFX2rlcZLK7jKeeoYBGLSXqVDzg=", + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.3.tgz?cache=0&sync_timestamp=1574296307739&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-symbol%2Fdownload%2Fis-symbol-1.0.3.tgz", + "integrity": "sha1-OOEBS55jKb4N6dJKQU/XRB7GGTc=", "dev": true, "requires": { - "has-symbols": "^1.0.0" + "has-symbols": "^1.0.1" } }, "is-type-of": { @@ -7037,13 +6754,13 @@ }, "is-utf8": { "version": "0.2.1", - "resolved": "http://registry.npm.taobao.org/is-utf8/download/is-utf8-0.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-utf8/download/is-utf8-0.2.1.tgz", "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", "dev": true }, "is-windows": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz", "integrity": "sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0=", "dev": true }, @@ -7055,12 +6772,12 @@ }, "isarray": { "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz?cache=0&sync_timestamp=1562592096220&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fisarray%2Fdownload%2Fisarray-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz?cache=0&sync_timestamp=1562592125418&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fisarray%2Fdownload%2Fisarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "isexe": { "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz", "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, @@ -7076,18 +6793,18 @@ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "iview": { - "version": "3.4.2", - "resolved": "https://registry.npm.taobao.org/iview/download/iview-3.4.2.tgz", - "integrity": "sha1-Her+gYP+KbmzMXnYX6o3s4E7D3M=", + "version": "3.5.4", + "resolved": "https://registry.npm.taobao.org/iview/download/iview-3.5.4.tgz", + "integrity": "sha1-1Ra5LnO2F/Lcf0WDH5kFnWmTL4I=", "requires": { - "async-validator": "^1.10.0", + "async-validator": "^1.12.2", "deepmerge": "^2.2.1", "element-resize-detector": "^1.2.0", "js-calendar": "^1.2.3", "lodash.throttle": "^4.1.1", "popper.js": "^1.14.6", "tinycolor2": "^1.4.1", - "v-click-outside-x": "^3.5.6" + "v-click-outside-x": "^4.0.19" } }, "javascript-stringify": { @@ -7097,21 +6814,28 @@ "dev": true }, "js-base64": { - "version": "2.5.1", - "resolved": "https://registry.npm.taobao.org/js-base64/download/js-base64-2.5.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjs-base64%2Fdownload%2Fjs-base64-2.5.1.tgz", - "integrity": "sha1-Hvo57yxfeYC7F4St5KivLeMpESE=", + "version": "2.5.2", + "resolved": "https://registry.npm.taobao.org/js-base64/download/js-base64-2.5.2.tgz", + "integrity": "sha1-MTtidN2nGPcU0AszMLuubjjpAgk=", "dev": true }, "js-beautify": { - "version": "1.10.2", - "resolved": "https://registry.npm.taobao.org/js-beautify/download/js-beautify-1.10.2.tgz?cache=0&sync_timestamp=1565115377786&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjs-beautify%2Fdownload%2Fjs-beautify-1.10.2.tgz", - "integrity": "sha1-iMkJnNZVlAKxJM+rGHVJNvinsXg=", + "version": "1.11.0", + "resolved": "https://registry.npm.taobao.org/js-beautify/download/js-beautify-1.11.0.tgz", + "integrity": "sha1-r7hz3EfViYY2AJPctplR6LzV3tI=", "requires": { "config-chain": "^1.1.12", "editorconfig": "^0.15.3", "glob": "^7.1.3", - "mkdirp": "~0.5.1", - "nopt": "~4.0.1" + "mkdirp": "~1.0.3", + "nopt": "^4.0.3" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/mkdirp/download/mkdirp-1.0.4.tgz?cache=0&sync_timestamp=1587535418745&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmkdirp%2Fdownload%2Fmkdirp-1.0.4.tgz", + "integrity": "sha1-PrXtYmInVteaXw4qIh3+utdcL34=" + } } }, "js-calendar": { @@ -7121,7 +6845,7 @@ }, "js-cookie": { "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/js-cookie/download/js-cookie-2.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/js-cookie/download/js-cookie-2.2.1.tgz?cache=0&sync_timestamp=1583934899542&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjs-cookie%2Fdownload%2Fjs-cookie-2.2.1.tgz", "integrity": "sha1-aeEG3F1YBolFYpAqpbrsN0Tpsrg=" }, "js-levenshtein": { @@ -7157,9 +6881,9 @@ "dev": true }, "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npm.taobao.org/js-yaml/download/js-yaml-3.13.1.tgz", - "integrity": "sha1-r/FRswv9+o5J4F2iLnQV6d+jeEc=", + "version": "3.14.0", + "resolved": "https://registry.npm.taobao.org/js-yaml/download/js-yaml-3.14.0.tgz?cache=0&sync_timestamp=1590172281856&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjs-yaml%2Fdownload%2Fjs-yaml-3.14.0.tgz", + "integrity": "sha1-p6NBcPJqIbsWJCTYray0ETpp5II=", "dev": true, "requires": { "argparse": "^1.0.7", @@ -7224,25 +6948,17 @@ "dev": true }, "json5": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/json5/download/json5-2.1.0.tgz", - "integrity": "sha1-56DGLEgoXGKNIKELhcibuAfDKFA=", + "version": "2.1.3", + "resolved": "https://registry.npm.taobao.org/json5/download/json5-2.1.3.tgz", + "integrity": "sha1-ybD3+pIzv+WAf+ZvzzpWF+1ZfUM=", "dev": true, "requires": { - "minimist": "^1.2.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } + "minimist": "^1.2.5" } }, "jsonfile": { "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/jsonfile/download/jsonfile-4.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/jsonfile/download/jsonfile-4.0.0.tgz?cache=0&sync_timestamp=1583621113286&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjsonfile%2Fdownload%2Fjsonfile-4.0.0.tgz", "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", "dev": true, "requires": { @@ -7273,9 +6989,9 @@ "dev": true }, "kind-of": { - "version": "6.0.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=", + "version": "6.0.3", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-6.0.3.tgz", + "integrity": "sha1-B8BQNKbDSfoG4k+jWqdttFgM5N0=", "dev": true }, "ko-sleep": { @@ -7305,15 +7021,6 @@ "launch-editor": "^2.2.1" } }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/lcid/download/lcid-2.0.0.tgz", - "integrity": "sha1-bvXS32DlL4LrIopMNz6NHzlyU88=", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, "levn": { "version": "0.3.0", "resolved": "https://registry.npm.taobao.org/levn/download/levn-0.3.0.tgz", @@ -7331,7 +7038,7 @@ }, "load-json-file": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fload-json-file%2Fdownload%2Fload-json-file-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, "requires": { @@ -7352,25 +7059,25 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true } } }, "loader-fs-cache": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/loader-fs-cache/download/loader-fs-cache-1.0.2.tgz", - "integrity": "sha1-VM7fa3J+F3n9jwEgXwX26IcG8IY=", + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/loader-fs-cache/download/loader-fs-cache-1.0.3.tgz", + "integrity": "sha1-8IZXZG1gcHi+LwoDL4vWndbyd9k=", "dev": true, "requires": { "find-cache-dir": "^0.1.1", - "mkdirp": "0.5.1" + "mkdirp": "^0.5.1" }, "dependencies": { "find-cache-dir": { "version": "0.1.1", - "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-0.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-0.1.1.tgz?cache=0&sync_timestamp=1583734806517&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffind-cache-dir%2Fdownload%2Ffind-cache-dir-0.1.1.tgz", "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", "dev": true, "requires": { @@ -7411,18 +7118,18 @@ }, "loader-runner": { "version": "2.4.0", - "resolved": "https://registry.npm.taobao.org/loader-runner/download/loader-runner-2.4.0.tgz", + "resolved": "https://registry.npm.taobao.org/loader-runner/download/loader-runner-2.4.0.tgz?cache=0&sync_timestamp=1574712695617&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Floader-runner%2Fdownload%2Floader-runner-2.4.0.tgz", "integrity": "sha1-7UcGa/5TTX6ExMe5mYwqdWB9k1c=", "dev": true }, "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-1.2.3.tgz", - "integrity": "sha1-H/XcaRHJ8KBiUxpMBLYJQGEIwsc=", + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-1.4.0.tgz", + "integrity": "sha1-xXm140yzSxp07cbB+za/o3HVphM=", "dev": true, "requires": { "big.js": "^5.2.2", - "emojis-list": "^2.0.0", + "emojis-list": "^3.0.0", "json5": "^1.0.1" }, "dependencies": { @@ -7434,12 +7141,6 @@ "requires": { "minimist": "^1.2.0" } - }, - "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true } } }, @@ -7455,7 +7156,7 @@ }, "lodash": { "version": "4.17.15", - "resolved": "https://registry.npm.taobao.org/lodash/download/lodash-4.17.15.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flodash%2Fdownload%2Flodash-4.17.15.tgz", + "resolved": "https://registry.npm.taobao.org/lodash/download/lodash-4.17.15.tgz", "integrity": "sha1-tEf2ZwoEVbv+7dETku/zMOoJdUg=", "dev": true }, @@ -7510,9 +7211,9 @@ } }, "loglevel": { - "version": "1.6.3", - "resolved": "https://registry.npm.taobao.org/loglevel/download/loglevel-1.6.3.tgz", - "integrity": "sha1-d/LrZL5VpATJ/QStFtV8HW1rEoA=", + "version": "1.6.8", + "resolved": "https://registry.npm.taobao.org/loglevel/download/loglevel-1.6.8.tgz", + "integrity": "sha1-iiX7ddCSIw7NRFcnDYC1TigBEXE=", "dev": true }, "loose-envify": { @@ -7541,17 +7242,16 @@ "dev": true }, "lru-cache": { - "version": "4.1.5", - "resolved": "http://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz", - "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", + "version": "5.1.1", + "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-5.1.1.tgz", + "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=", "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "yallist": "^3.0.2" } }, "make-dir": { "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-2.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-2.1.0.tgz?cache=0&sync_timestamp=1587567610342&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmake-dir%2Fdownload%2Fmake-dir-2.1.0.tgz", "integrity": "sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU=", "dev": true, "requires": { @@ -7559,36 +7259,21 @@ "semver": "^5.6.0" } }, - "mamacro": { - "version": "0.0.3", - "resolved": "https://registry.npm.taobao.org/mamacro/download/mamacro-0.0.3.tgz", - "integrity": "sha1-rSyVdhl8nxq/MI0Hh4Zb2XWj8+Q=", - "dev": true - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npm.taobao.org/map-age-cleaner/download/map-age-cleaner-0.1.3.tgz", - "integrity": "sha1-fVg6cwZDTAVf5HSw9FB45uG0uSo=", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, "map-cache": { "version": "0.2.2", - "resolved": "http://registry.npm.taobao.org/map-cache/download/map-cache-0.2.2.tgz", + "resolved": "https://registry.npm.taobao.org/map-cache/download/map-cache-0.2.2.tgz", "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", "dev": true }, "map-obj": { "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/map-obj/download/map-obj-1.0.1.tgz?cache=0&sync_timestamp=1560578867343&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmap-obj%2Fdownload%2Fmap-obj-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/map-obj/download/map-obj-1.0.1.tgz", "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", "dev": true }, "map-visit": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/map-visit/download/map-visit-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/map-visit/download/map-visit-1.0.0.tgz", "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", "dev": true, "requires": { @@ -7608,7 +7293,7 @@ }, "mdn-data": { "version": "2.0.4", - "resolved": "https://registry.npm.taobao.org/mdn-data/download/mdn-data-2.0.4.tgz?cache=0&sync_timestamp=1562673334420&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmdn-data%2Fdownload%2Fmdn-data-2.0.4.tgz", + "resolved": "https://registry.npm.taobao.org/mdn-data/download/mdn-data-2.0.4.tgz", "integrity": "sha1-aZs8OKxvHXKAkaZGULZdOIUC/Vs=", "dev": true }, @@ -7618,25 +7303,6 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", "dev": true }, - "mem": { - "version": "4.3.0", - "resolved": "https://registry.npm.taobao.org/mem/download/mem-4.3.0.tgz", - "integrity": "sha1-Rhr0l7xK4JYIzbLmDu+2m/90QXg=", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - }, - "dependencies": { - "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 - } - } - }, "memory-fs": { "version": "0.4.1", "resolved": "https://registry.npm.taobao.org/memory-fs/download/memory-fs-0.4.1.tgz", @@ -7649,7 +7315,7 @@ }, "meow": { "version": "3.7.0", - "resolved": "https://registry.npm.taobao.org/meow/download/meow-3.7.0.tgz", + "resolved": "https://registry.npm.taobao.org/meow/download/meow-3.7.0.tgz?cache=0&sync_timestamp=1589206013917&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmeow%2Fdownload%2Fmeow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { @@ -7677,7 +7343,7 @@ }, "load-json-file": { "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-1.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fload-json-file%2Fdownload%2Fload-json-file-1.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { @@ -7688,12 +7354,6 @@ "strip-bom": "^2.0.0" } }, - "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npm.taobao.org/parse-json/download/parse-json-2.2.0.tgz", @@ -7725,7 +7385,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -7777,14 +7437,14 @@ }, "merge-stream": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/merge-stream/download/merge-stream-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/merge-stream/download/merge-stream-2.0.0.tgz?cache=0&sync_timestamp=1570885317489&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmerge-stream%2Fdownload%2Fmerge-stream-2.0.0.tgz", "integrity": "sha1-UoI2KaFN0AyXcPtq1H3GMQ8sH2A=", "dev": true }, "merge2": { - "version": "1.2.4", - "resolved": "https://registry.npm.taobao.org/merge2/download/merge2-1.2.4.tgz", - "integrity": "sha1-ySaVieaIWmDPgGBdlSLUtnymRuM=", + "version": "1.4.1", + "resolved": "https://registry.npm.taobao.org/merge2/download/merge2-1.4.1.tgz", + "integrity": "sha1-Q2iJL4hekHRVpv19xVwMnUBJkK4=", "dev": true }, "methods": { @@ -7795,7 +7455,7 @@ }, "micromatch": { "version": "3.1.10", - "resolved": "https://registry.npm.taobao.org/micromatch/download/micromatch-3.1.10.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmicromatch%2Fdownload%2Fmicromatch-3.1.10.tgz", + "resolved": "https://registry.npm.taobao.org/micromatch/download/micromatch-3.1.10.tgz", "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", "dev": true, "requires": { @@ -7816,7 +7476,7 @@ "dependencies": { "extend-shallow": { "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { @@ -7826,7 +7486,7 @@ }, "is-extendable": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", "dev": true, "requires": { @@ -7843,55 +7503,75 @@ "requires": { "bn.js": "^4.0.0", "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.9.tgz", + "integrity": "sha1-JtVWgpRY+dHoH8SJUkk9C6NQeCg=", + "dev": true + } } }, "mime": { "version": "1.6.0", - "resolved": "https://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz?cache=0&sync_timestamp=1560034758817&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-1.6.0.tgz", + "resolved": "https://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz?cache=0&sync_timestamp=1590596728112&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-1.6.0.tgz", "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=" }, "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npm.taobao.org/mime-db/download/mime-db-1.40.0.tgz", - "integrity": "sha1-plBX6ZjbCQ9zKmj2wnbTh9QSbDI=", + "version": "1.44.0", + "resolved": "https://registry.npm.taobao.org/mime-db/download/mime-db-1.44.0.tgz", + "integrity": "sha1-+hHF6wrKEzS0Izy01S8QxaYnL5I=", "dev": true }, "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npm.taobao.org/mime-types/download/mime-types-2.1.24.tgz", - "integrity": "sha1-tvjQs+lR77d97eyhlM/20W9nb4E=", + "version": "2.1.27", + "resolved": "https://registry.npm.taobao.org/mime-types/download/mime-types-2.1.27.tgz", + "integrity": "sha1-R5SfmOJ56lMRn1ci4PNOUpvsAJ8=", "dev": true, "requires": { - "mime-db": "1.40.0" + "mime-db": "1.44.0" } }, "mimic-fn": { "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-1.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-1.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmimic-fn%2Fdownload%2Fmimic-fn-1.2.0.tgz", "integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI=", "dev": true }, "mini-css-extract-plugin": { - "version": "0.6.0", - "resolved": "https://registry.npm.taobao.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.6.0.tgz?cache=0&sync_timestamp=1563310974743&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmini-css-extract-plugin%2Fdownload%2Fmini-css-extract-plugin-0.6.0.tgz", - "integrity": "sha1-o/Ezctb83pEvPuTNA5ZlcEgB47k=", + "version": "0.8.2", + "resolved": "https://registry.npm.taobao.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.8.2.tgz", + "integrity": "sha1-qHXhab6yfIivd92WJ3HJ7tw9oWE=", "dev": true, "requires": { "loader-utils": "^1.1.0", - "normalize-url": "^2.0.1", + "normalize-url": "1.9.1", "schema-utils": "^1.0.0", "webpack-sources": "^1.1.0" }, "dependencies": { "normalize-url": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/normalize-url/download/normalize-url-2.0.1.tgz", - "integrity": "sha1-g1qdoVUfom9w6SMpBpojqmV01+Y=", + "version": "1.9.1", + "resolved": "https://registry.npm.taobao.org/normalize-url/download/normalize-url-1.9.1.tgz?cache=0&sync_timestamp=1580491128021&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%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.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", "dev": true, "requires": { - "prepend-http": "^2.0.0", - "query-string": "^5.0.1", - "sort-keys": "^2.0.0" + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" } } } @@ -7910,16 +7590,16 @@ }, "minimatch": { "version": "3.0.4", - "resolved": "https://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fminimatch%2Fdownload%2Fminimatch-3.0.4.tgz", + "resolved": "https://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz", "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { - "version": "0.0.8", - "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "version": "1.2.5", + "resolved": "https://registry.npm.taobao.org/minimist/download/minimist-1.2.5.tgz", + "integrity": "sha1-Z9ZgFLZqaoqqDAg8X9WN9OTpdgI=" }, "mississippi": { "version": "3.0.0", @@ -7951,7 +7631,7 @@ "dependencies": { "is-extendable": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", "dev": true, "requires": { @@ -7961,11 +7641,11 @@ } }, "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.5", + "resolved": "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.5.tgz?cache=0&sync_timestamp=1587535418745&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmkdirp%2Fdownload%2Fmkdirp-0.5.5.tgz", + "integrity": "sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8=", "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } }, "move-concurrently": { @@ -7984,7 +7664,7 @@ }, "ms": { "version": "2.1.2", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz", "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=" }, "multicast-dns": { @@ -8005,7 +7685,7 @@ }, "mute-stream": { "version": "0.0.7", - "resolved": "http://registry.npm.taobao.org/mute-stream/download/mute-stream-0.0.7.tgz", + "resolved": "https://registry.npm.taobao.org/mute-stream/download/mute-stream-0.0.7.tgz", "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", "dev": true, "optional": true @@ -8033,14 +7713,14 @@ } }, "nan": { - "version": "2.14.0", - "resolved": "https://registry.npm.taobao.org/nan/download/nan-2.14.0.tgz", - "integrity": "sha1-eBj3IgJ7JFmobwKV1DTR/CM2xSw=", + "version": "2.14.1", + "resolved": "https://registry.npm.taobao.org/nan/download/nan-2.14.1.tgz", + "integrity": "sha1-174036MQW5FJTDFHCJMV7/iHSwE=", "dev": true }, "nanomatch": { "version": "1.2.13", - "resolved": "http://registry.npm.taobao.org/nanomatch/download/nanomatch-1.2.13.tgz", + "resolved": "https://registry.npm.taobao.org/nanomatch/download/nanomatch-1.2.13.tgz", "integrity": "sha1-uHqKpPwN6P5r6IiVs4mD/yZb0Rk=", "dev": true, "requires": { @@ -8059,7 +7739,7 @@ "dependencies": { "extend-shallow": { "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { @@ -8069,7 +7749,7 @@ }, "is-extendable": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", "dev": true, "requires": { @@ -8104,13 +7784,13 @@ }, "nice-try": { "version": "1.0.5", - "resolved": "https://registry.npm.taobao.org/nice-try/download/nice-try-1.0.5.tgz", + "resolved": "https://registry.npm.taobao.org/nice-try/download/nice-try-1.0.5.tgz?cache=0&sync_timestamp=1584699756095&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", + "resolved": "https://registry.npm.taobao.org/no-case/download/no-case-2.3.2.tgz?cache=0&sync_timestamp=1576721605564&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fno-case%2Fdownload%2Fno-case-2.3.2.tgz", "integrity": "sha1-YLgTOWvjmz8SiKTB7V0efSi0ZKw=", "dev": true, "requires": { @@ -8118,14 +7798,14 @@ } }, "node-forge": { - "version": "0.7.5", - "resolved": "https://registry.npm.taobao.org/node-forge/download/node-forge-0.7.5.tgz", - "integrity": "sha1-bBUsNFzhHFL0ZcKr2VfoY5zWdN8=", + "version": "0.9.0", + "resolved": "https://registry.npm.taobao.org/node-forge/download/node-forge-0.9.0.tgz", + "integrity": "sha1-1iQFDtu0SHStyhK7mlLsY8t4JXk=", "dev": true }, "node-gyp": { "version": "3.8.0", - "resolved": "https://registry.npm.taobao.org/node-gyp/download/node-gyp-3.8.0.tgz", + "resolved": "https://registry.npm.taobao.org/node-gyp/download/node-gyp-3.8.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-gyp%2Fdownload%2Fnode-gyp-3.8.0.tgz", "integrity": "sha1-VAMEJhwzDoDQ1e3OJTpoyzlkIYw=", "dev": true, "requires": { @@ -8145,7 +7825,7 @@ "dependencies": { "nopt": { "version": "3.0.6", - "resolved": "https://registry.npm.taobao.org/nopt/download/nopt-3.0.6.tgz", + "resolved": "https://registry.npm.taobao.org/nopt/download/nopt-3.0.6.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnopt%2Fdownload%2Fnopt-3.0.6.tgz", "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", "dev": true, "requires": { @@ -8154,7 +7834,7 @@ }, "semver": { "version": "5.3.0", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.3.0.tgz?cache=0&sync_timestamp=1565627380363&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.3.0.tgz", "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", "dev": true } @@ -8211,18 +7891,15 @@ } }, "node-releases": { - "version": "1.1.28", - "resolved": "https://registry.npm.taobao.org/node-releases/download/node-releases-1.1.28.tgz?cache=0&sync_timestamp=1566404888794&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-releases%2Fdownload%2Fnode-releases-1.1.28.tgz", - "integrity": "sha1-UDw8cNDkcyuE56qikl+93hBILUo=", - "dev": true, - "requires": { - "semver": "^5.3.0" - } + "version": "1.1.58", + "resolved": "https://registry.npm.taobao.org/node-releases/download/node-releases-1.1.58.tgz?cache=0&sync_timestamp=1591162286391&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-releases%2Fdownload%2Fnode-releases-1.1.58.tgz", + "integrity": "sha1-juIO7zD6YOUnVfzAlC3vWnNP6TU=", + "dev": true }, "node-sass": { - "version": "4.12.0", - "resolved": "https://registry.npm.taobao.org/node-sass/download/node-sass-4.12.0.tgz", - "integrity": "sha1-CRT1MZMjgBFKMMxfpPpjIzol8Bc=", + "version": "4.14.1", + "resolved": "https://registry.npm.taobao.org/node-sass/download/node-sass-4.14.1.tgz", + "integrity": "sha1-mch+wu+3BH7WOPtMnbfzpC4iF7U=", "dev": true, "requires": { "async-foreach": "^0.1.3", @@ -8232,14 +7909,14 @@ "get-stdin": "^4.0.1", "glob": "^7.0.3", "in-publish": "^2.0.0", - "lodash": "^4.17.11", + "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.4", + "sass-graph": "2.2.5", "stdout-stream": "^1.4.0", "true-case-path": "^1.0.2" }, @@ -8252,13 +7929,13 @@ }, "ansi-styles": { "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-2.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "dev": true }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz?cache=0&sync_timestamp=1591687028262&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -8271,7 +7948,7 @@ }, "cross-spawn": { "version": "3.0.1", - "resolved": "http://registry.npm.taobao.org/cross-spawn/download/cross-spawn-3.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-3.0.1.tgz", "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", "dev": true, "requires": { @@ -8279,6 +7956,16 @@ "which": "^1.2.9" } }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz", + "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz", @@ -8293,13 +7980,19 @@ "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-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?cache=0&sync_timestamp=1569874223546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true } } }, "nopt": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/nopt/download/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "version": "4.0.3", + "resolved": "https://registry.npm.taobao.org/nopt/download/nopt-4.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnopt%2Fdownload%2Fnopt-4.0.3.tgz", + "integrity": "sha1-o3XK2dAv2SEnjZVMIlTVqlfhXkg=", "requires": { "abbrev": "1", "osenv": "^0.1.4" @@ -8319,7 +8012,7 @@ }, "normalize-path": { "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/normalize-path/download/normalize-path-3.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/normalize-path/download/normalize-path-3.0.0.tgz", "integrity": "sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU=", "dev": true }, @@ -8331,13 +8024,13 @@ }, "normalize-url": { "version": "3.3.0", - "resolved": "https://registry.npm.taobao.org/normalize-url/download/normalize-url-3.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/normalize-url/download/normalize-url-3.3.0.tgz?cache=0&sync_timestamp=1580491128021&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnormalize-url%2Fdownload%2Fnormalize-url-3.3.0.tgz", "integrity": "sha1-suHE3E98bVd0PfczpPWXjRhlBVk=", "dev": true }, "npm-run-path": { "version": "2.0.2", - "resolved": "https://registry.npm.taobao.org/npm-run-path/download/npm-run-path-2.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/npm-run-path/download/npm-run-path-2.0.2.tgz?cache=0&sync_timestamp=1577052941951&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-run-path%2Fdownload%2Fnpm-run-path-2.0.2.tgz", "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", "dev": true, "requires": { @@ -8373,7 +8066,7 @@ }, "number-is-nan": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/number-is-nan/download/number-is-nan-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/number-is-nan/download/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", "dev": true }, @@ -8385,12 +8078,12 @@ }, "object-assign": { "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-copy": { "version": "0.1.0", - "resolved": "http://registry.npm.taobao.org/object-copy/download/object-copy-0.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/object-copy/download/object-copy-0.1.0.tgz", "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", "dev": true, "requires": { @@ -8401,7 +8094,7 @@ "dependencies": { "define-property": { "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { @@ -8410,13 +8103,13 @@ }, "is-buffer": { "version": "1.1.6", - "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", + "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz?cache=0&sync_timestamp=1588707106955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-1.1.6.tgz", "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", "dev": true }, "kind-of": { "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { @@ -8431,6 +8124,22 @@ "integrity": "sha1-/eRSCYqVHLFF8Dm7fUVUSd3BJt8=", "dev": true }, + "object-inspect": { + "version": "1.7.0", + "resolved": "https://registry.npm.taobao.org/object-inspect/download/object-inspect-1.7.0.tgz", + "integrity": "sha1-9Pa9GBrXfwBrXs5gvQtvOY/3Smc=", + "dev": true + }, + "object-is": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/object-is/download/object-is-1.1.2.tgz?cache=0&sync_timestamp=1586894009620&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-is%2Fdownload%2Fobject-is-1.1.2.tgz", + "integrity": "sha1-xdLof/nhGfeLegiEQVGeLuwVc7Y=", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npm.taobao.org/object-keys/download/object-keys-1.1.1.tgz", @@ -8439,7 +8148,7 @@ }, "object-visit": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz", "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", "dev": true, "requires": { @@ -8459,18 +8168,18 @@ } }, "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "https://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject.getownpropertydescriptors%2Fdownload%2Fobject.getownpropertydescriptors-2.1.0.tgz", + "integrity": "sha1-Npvx+VktiridcS3O1cuBx8U1Jkk=", "dev": true, "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" } }, "object.pick": { "version": "1.3.0", - "resolved": "http://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz", "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", "dev": true, "requires": { @@ -8478,13 +8187,13 @@ } }, "object.values": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/object.values/download/object.values-1.1.0.tgz", - "integrity": "sha1-v2gQ712j5TJXkOqqK+IT6oRiTak=", + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/object.values/download/object.values-1.1.1.tgz", + "integrity": "sha1-aKmezeNWt+kpWjxeDOMdyMlT3l4=", "dev": true, "requires": { "define-properties": "^1.1.3", - "es-abstract": "^1.12.0", + "es-abstract": "^1.17.0-next.1", "function-bind": "^1.1.1", "has": "^1.0.3" } @@ -8497,7 +8206,7 @@ }, "on-finished": { "version": "2.3.0", - "resolved": "http://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz", "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", "dev": true, "requires": { @@ -8552,21 +8261,21 @@ } }, "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npm.taobao.org/optionator/download/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "version": "0.8.3", + "resolved": "https://registry.npm.taobao.org/optionator/download/optionator-0.8.3.tgz?cache=0&sync_timestamp=1585966141328&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Foptionator%2Fdownload%2Foptionator-0.8.3.tgz", + "integrity": "sha1-hPodA2/p08fiHZmIS2ARZ+yPtJU=", "requires": { "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", + "fast-levenshtein": "~2.0.6", "levn": "~0.3.0", "prelude-ls": "~1.1.2", "type-check": "~0.3.2", - "wordwrap": "~1.0.0" + "word-wrap": "~1.2.3" } }, "ora": { "version": "3.4.0", - "resolved": "https://registry.npm.taobao.org/ora/download/ora-3.4.0.tgz", + "resolved": "https://registry.npm.taobao.org/ora/download/ora-3.4.0.tgz?cache=0&sync_timestamp=1587481629710&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fora%2Fdownload%2Fora-3.4.0.tgz", "integrity": "sha1-vwdSSRBZo+8+1MhQl1Md6f280xg=", "dev": true, "requires": { @@ -8598,17 +8307,6 @@ "resolved": "https://registry.npm.taobao.org/os-homedir/download/os-homedir-1.0.2.tgz", "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/os-locale/download/os-locale-3.1.0.tgz", - "integrity": "sha1-qAKm7hfyTBBIOrmTVxnO9O0Wvxo=", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, "os-name": { "version": "1.0.3", "resolved": "https://registry.npm.taobao.org/os-name/download/os-name-1.0.3.tgz", @@ -8620,7 +8318,7 @@ }, "os-tmpdir": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/os-tmpdir/download/os-tmpdir-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/os-tmpdir/download/os-tmpdir-1.0.2.tgz", "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" }, "osenv": { @@ -8638,36 +8336,17 @@ "integrity": "sha1-8heRGigTaUmvG/kwiyQeJzfTzWw=", "requires": { "minimist": "^1.1.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - } } }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/p-defer/download/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npm.taobao.org/p-finally/download/p-finally-1.0.0.tgz", "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", "dev": true }, - "p-is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/p-is-promise/download/p-is-promise-2.1.0.tgz", - "integrity": "sha1-kYzrrqJIpiz3/6uOO8qMX4gvxC4=", - "dev": true - }, "p-limit": { "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-1.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-1.3.0.tgz?cache=0&sync_timestamp=1591460606987&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-limit%2Fdownload%2Fp-limit-1.3.0.tgz", "integrity": "sha1-uGvV8MJWkJEcdZD8v8IBDVSzzLg=", "dev": true, "requires": { @@ -8685,7 +8364,7 @@ }, "p-map": { "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/p-map/download/p-map-2.1.0.tgz?cache=0&sync_timestamp=1563032875018&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-map%2Fdownload%2Fp-map-2.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/p-map/download/p-map-2.1.0.tgz", "integrity": "sha1-MQko/u+cnsxltosXaTAYpmXOoXU=", "dev": true }, @@ -8705,24 +8384,24 @@ "dev": true }, "pac-proxy-agent": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/pac-proxy-agent/download/pac-proxy-agent-3.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpac-proxy-agent%2Fdownload%2Fpac-proxy-agent-3.0.0.tgz", - "integrity": "sha1-EdV4tyoWStdL+dW6yf9GKjgoJDI=", + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/pac-proxy-agent/download/pac-proxy-agent-3.0.1.tgz?cache=0&sync_timestamp=1581983190438&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpac-proxy-agent%2Fdownload%2Fpac-proxy-agent-3.0.1.tgz", + "integrity": "sha1-EVseWPkldsrC66cYWTynsON94q0=", "requires": { "agent-base": "^4.2.0", - "debug": "^3.1.0", + "debug": "^4.1.1", "get-uri": "^2.0.0", "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.1", + "https-proxy-agent": "^3.0.0", "pac-resolver": "^3.0.0", "raw-body": "^2.2.0", "socks-proxy-agent": "^4.0.1" }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", "requires": { "ms": "^2.1.1" } @@ -8731,7 +8410,7 @@ }, "pac-resolver": { "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/pac-resolver/download/pac-resolver-3.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/pac-resolver/download/pac-resolver-3.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpac-resolver%2Fdownload%2Fpac-resolver-3.0.0.tgz", "integrity": "sha1-auoweH2wqJFwTet4AKcip2FabyY=", "requires": { "co": "^4.6.0", @@ -8742,25 +8421,25 @@ } }, "pako": { - "version": "1.0.10", - "resolved": "https://registry.npm.taobao.org/pako/download/pako-1.0.10.tgz", - "integrity": "sha1-Qyi621CGpCaqkPVBl31JVdpclzI=", + "version": "1.0.11", + "resolved": "https://registry.npm.taobao.org/pako/download/pako-1.0.11.tgz", + "integrity": "sha1-bJWZ00DVTf05RjgCUqNXBaa5kr8=", "dev": true }, "parallel-transform": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/parallel-transform/download/parallel-transform-1.1.0.tgz", - "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "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": "~0.2.2", + "cyclist": "^1.0.1", "inherits": "^2.0.3", "readable-stream": "^2.1.5" } }, "param-case": { "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/param-case/download/param-case-2.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/param-case/download/param-case-2.1.1.tgz?cache=0&sync_timestamp=1576721608924&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparam-case%2Fdownload%2Fparam-case-2.1.1.tgz", "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", "dev": true, "requires": { @@ -8768,9 +8447,9 @@ } }, "parse-asn1": { - "version": "5.1.4", - "resolved": "https://registry.npm.taobao.org/parse-asn1/download/parse-asn1-5.1.4.tgz", - "integrity": "sha1-N/Zij4I/vesic7TVQENKIvPvH8w=", + "version": "5.1.5", + "resolved": "https://registry.npm.taobao.org/parse-asn1/download/parse-asn1-5.1.5.tgz", + "integrity": "sha1-ADJxND2ljclMrOSU+u89IUfs6g4=", "dev": true, "requires": { "asn1.js": "^4.0.0", @@ -8792,14 +8471,23 @@ } }, "parse5": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/parse5/download/parse5-4.0.0.tgz", - "integrity": "sha1-bXhlbj2o14tOwLkG98CO8d/j9gg=", + "version": "5.1.1", + "resolved": "https://registry.npm.taobao.org/parse5/download/parse5-5.1.1.tgz?cache=0&sync_timestamp=1586991218581&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparse5%2Fdownload%2Fparse5-5.1.1.tgz", + "integrity": "sha1-9o5OW6GFKsLK3AD0VV//bCq7YXg=", "dev": true }, + "parse5-htmlparser2-tree-adapter": { + "version": "5.1.1", + "resolved": "https://registry.npm.taobao.org/parse5-htmlparser2-tree-adapter/download/parse5-htmlparser2-tree-adapter-5.1.1.tgz?cache=0&sync_timestamp=1586991223660&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparse5-htmlparser2-tree-adapter%2Fdownload%2Fparse5-htmlparser2-tree-adapter-5.1.1.tgz", + "integrity": "sha1-6MdD1OkhlNUpPs3isIvjHmdGHLw=", + "dev": true, + "requires": { + "parse5": "^5.1.1" + } + }, "parseurl": { "version": "1.3.3", - "resolved": "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz", + "resolved": "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz?cache=0&sync_timestamp=1573614551652&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparseurl%2Fdownload%2Fparseurl-1.3.3.tgz", "integrity": "sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ=", "dev": true }, @@ -8829,18 +8517,18 @@ }, "path-is-absolute": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "path-is-inside": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/path-is-inside/download/path-is-inside-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/path-is-inside/download/path-is-inside-1.0.2.tgz", "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", "dev": true }, "path-key": { "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-2.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-2.0.1.tgz?cache=0&sync_timestamp=1574441404712&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-key%2Fdownload%2Fpath-key-2.0.1.tgz", "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", "dev": true }, @@ -8852,7 +8540,7 @@ }, "path-to-regexp": { "version": "0.1.7", - "resolved": "https://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-to-regexp%2Fdownload%2Fpath-to-regexp-0.1.7.tgz", + "resolved": "https://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz?cache=0&sync_timestamp=1574278262588&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-to-regexp%2Fdownload%2Fpath-to-regexp-0.1.7.tgz", "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", "dev": true }, @@ -8867,7 +8555,7 @@ "dependencies": { "pify": { "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", "dev": true } @@ -8882,9 +8570,9 @@ } }, "pbkdf2": { - "version": "3.0.17", - "resolved": "https://registry.npm.taobao.org/pbkdf2/download/pbkdf2-3.0.17.tgz", - "integrity": "sha1-l2wgZTBhexTrsyEUI597CTNuk6Y=", + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/pbkdf2/download/pbkdf2-3.1.1.tgz", + "integrity": "sha1-y4cksPramEWWhW0abrr9NYRlS5Q=", "dev": true, "requires": { "create-hash": "^1.1.2", @@ -8900,21 +8588,28 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", "dev": true }, + "picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npm.taobao.org/picomatch/download/picomatch-2.2.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpicomatch%2Fdownload%2Fpicomatch-2.2.2.tgz", + "integrity": "sha1-IfMz6ba46v8CRo9RRupAbTRfTa0=", + "dev": true, + "optional": true + }, "pify": { "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-4.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-4.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-4.0.1.tgz", "integrity": "sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE=", "dev": true }, "pinkie": { "version": "2.0.4", - "resolved": "http://registry.npm.taobao.org/pinkie/download/pinkie-2.0.4.tgz", + "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": "http://registry.npm.taobao.org/pinkie-promise/download/pinkie-promise-2.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/pinkie-promise/download/pinkie-promise-2.0.1.tgz", "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { @@ -8950,9 +8645,9 @@ } }, "p-limit": { - "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.2.1.tgz", - "integrity": "sha1-qgeniMwxUck5tRMfY1cPDdIAlTc=", + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.3.0.tgz?cache=0&sync_timestamp=1591460606987&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-limit%2Fdownload%2Fp-limit-2.3.0.tgz", + "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE=", "dev": true, "requires": { "p-try": "^2.0.0" @@ -8997,31 +8692,42 @@ "optional": true }, "popper.js": { - "version": "1.15.0", - "resolved": "https://registry.npm.taobao.org/popper.js/download/popper.js-1.15.0.tgz", - "integrity": "sha1-VWC5m7rXZH6fqkdca4BWYh9aT/I=" + "version": "1.16.1", + "resolved": "https://registry.npm.taobao.org/popper.js/download/popper.js-1.16.1.tgz", + "integrity": "sha1-KiI8s9x7YhPXQOQDcr5A3kPmWxs=" }, "portfinder": { - "version": "1.0.23", - "resolved": "https://registry.npm.taobao.org/portfinder/download/portfinder-1.0.23.tgz", - "integrity": "sha1-iU20vMXa8CtmFFF86JzSGjgia4I=", + "version": "1.0.26", + "resolved": "https://registry.npm.taobao.org/portfinder/download/portfinder-1.0.26.tgz?cache=0&sync_timestamp=1588108029311&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fportfinder%2Fdownload%2Fportfinder-1.0.26.tgz", + "integrity": "sha1-R1ZY1WyjC+1yrH8TeO01C9G2TnA=", "dev": true, "requires": { - "async": "^1.5.2", - "debug": "^2.2.0", - "mkdirp": "0.5.x" + "async": "^2.6.2", + "debug": "^3.1.1", + "mkdirp": "^0.5.1" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } } }, "posix-character-classes": { "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/posix-character-classes/download/posix-character-classes-0.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/posix-character-classes/download/posix-character-classes-0.1.1.tgz", "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", "dev": true }, "postcss": { - "version": "7.0.17", - "resolved": "https://registry.npm.taobao.org/postcss/download/postcss-7.0.17.tgz", - "integrity": "sha1-TaG9/1Mi1KCsqrTYfz54JDa60x8=", + "version": "7.0.32", + "resolved": "https://registry.npm.taobao.org/postcss/download/postcss-7.0.32.tgz", + "integrity": "sha1-QxDW7jRwU9o0M9sr5JKIPWLOxZ0=", "dev": true, "requires": { "chalk": "^2.4.2", @@ -9041,15 +8747,14 @@ } }, "postcss-calc": { - "version": "7.0.1", - "resolved": "https://registry.npm.taobao.org/postcss-calc/download/postcss-calc-7.0.1.tgz", - "integrity": "sha1-Ntd7qwI7Dsu5eJ2E3LI8SUEUVDY=", + "version": "7.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-calc/download/postcss-calc-7.0.2.tgz?cache=0&sync_timestamp=1582014221563&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-calc%2Fdownload%2Fpostcss-calc-7.0.2.tgz", + "integrity": "sha1-UE780AjKAnMSBWiweSsWzc3oqsE=", "dev": true, "requires": { - "css-unit-converter": "^1.1.1", - "postcss": "^7.0.5", - "postcss-selector-parser": "^5.0.0-rc.4", - "postcss-value-parser": "^3.3.1" + "postcss": "^7.0.27", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" } }, "postcss-colormin": { @@ -9063,6 +8768,14 @@ "has": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-convert-values": { @@ -9073,6 +8786,14 @@ "requires": { "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-discard-comments": { @@ -9131,6 +8852,19 @@ "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.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } } }, "postcss-merge-longhand": { @@ -9143,6 +8877,14 @@ "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0", "stylehacks": "^4.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-merge-rules": { @@ -9160,12 +8902,12 @@ }, "dependencies": { "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "version": "3.1.2", + "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha1-sxD1xMD9r3b5SQK7qjDbaqhPUnA=", "dev": true, "requires": { - "dot-prop": "^4.1.1", + "dot-prop": "^5.2.0", "indexes-of": "^1.0.1", "uniq": "^1.0.1" } @@ -9180,6 +8922,14 @@ "requires": { "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-minify-gradients": { @@ -9192,6 +8942,14 @@ "is-color-stop": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-minify-params": { @@ -9206,6 +8964,14 @@ "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0", "uniqs": "^2.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-minify-selectors": { @@ -9221,12 +8987,12 @@ }, "dependencies": { "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "version": "3.1.2", + "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha1-sxD1xMD9r3b5SQK7qjDbaqhPUnA=", "dev": true, "requires": { - "dot-prop": "^4.1.1", + "dot-prop": "^5.2.0", "indexes-of": "^1.0.1", "uniq": "^1.0.1" } @@ -9257,7 +9023,7 @@ }, "postcss-modules-local-by-default": { "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/postcss-modules-local-by-default/download/postcss-modules-local-by-default-1.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-modules-local-by-default%2Fdownload%2Fpostcss-modules-local-by-default-1.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/postcss-modules-local-by-default/download/postcss-modules-local-by-default-1.2.0.tgz", "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", "dev": true, "requires": { @@ -9280,7 +9046,7 @@ }, "postcss-modules-scope": { "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/postcss-modules-scope/download/postcss-modules-scope-1.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/postcss-modules-scope/download/postcss-modules-scope-1.1.0.tgz?cache=0&sync_timestamp=1584620714522&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-modules-scope%2Fdownload%2Fpostcss-modules-scope-1.1.0.tgz", "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", "dev": true, "requires": { @@ -9342,6 +9108,14 @@ "cssnano-util-get-match": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-normalize-positions": { @@ -9354,6 +9128,14 @@ "has": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-normalize-repeat-style": { @@ -9366,6 +9148,14 @@ "cssnano-util-get-match": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-normalize-string": { @@ -9377,6 +9167,14 @@ "has": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-normalize-timing-functions": { @@ -9388,6 +9186,14 @@ "cssnano-util-get-match": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-normalize-unicode": { @@ -9399,6 +9205,14 @@ "browserslist": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-normalize-url": { @@ -9411,6 +9225,14 @@ "normalize-url": "^3.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-normalize-whitespace": { @@ -9421,6 +9243,14 @@ "requires": { "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-ordered-values": { @@ -9432,6 +9262,14 @@ "cssnano-util-get-arguments": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-reduce-initial": { @@ -9456,15 +9294,23 @@ "has": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha1-JJBENWaXsztk8aj3yAki3d7nGVw=", + "version": "6.0.2", + "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-6.0.2.tgz", + "integrity": "sha1-k0z3mdAWyDQRhZ4J3Oyt4BKG7Fw=", "dev": true, "requires": { - "cssesc": "^2.0.0", + "cssesc": "^3.0.0", "indexes-of": "^1.0.1", "uniq": "^1.0.1" } @@ -9479,6 +9325,14 @@ "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0", "svgo": "^1.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + } } }, "postcss-unique-selectors": { @@ -9493,9 +9347,9 @@ } }, "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", - "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-4.1.0.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-4.1.0.tgz", + "integrity": "sha1-RD9qIM7WSBor2k+oUypuVdeJoss=", "dev": true }, "prelude-ls": { @@ -9504,16 +9358,17 @@ "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" }, "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/prepend-http/download/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/prepend-http/download/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", "dev": true }, "prettier": { - "version": "1.16.3", - "resolved": "https://registry.npm.taobao.org/prettier/download/prettier-1.16.3.tgz", - "integrity": "sha1-jGIWhFO63vcC80tFtu6JlXSmpl0=", - "dev": true + "version": "1.19.1", + "resolved": "https://registry.npm.taobao.org/prettier/download/prettier-1.19.1.tgz?cache=0&sync_timestamp=1587488858835&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fprettier%2Fdownload%2Fprettier-1.19.1.tgz", + "integrity": "sha1-99f1/4qc2HKnvkyhQglZVqYHl8s=", + "dev": true, + "optional": true }, "pretty-error": { "version": "2.1.1", @@ -9561,34 +9416,34 @@ "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=" }, "proxy-addr": { - "version": "2.0.5", - "resolved": "https://registry.npm.taobao.org/proxy-addr/download/proxy-addr-2.0.5.tgz", - "integrity": "sha1-NMvWSi2B9LH9IedvnwbIpFKZ7jQ=", + "version": "2.0.6", + "resolved": "https://registry.npm.taobao.org/proxy-addr/download/proxy-addr-2.0.6.tgz", + "integrity": "sha1-/cIzZQVEfT8vLGOO0nLK9hS7sr8=", "dev": true, "requires": { "forwarded": "~0.1.2", - "ipaddr.js": "1.9.0" + "ipaddr.js": "1.9.1" } }, "proxy-agent": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/proxy-agent/download/proxy-agent-3.1.0.tgz", - "integrity": "sha1-PPhu6RHJSHTeQ1nzfv2d4lFXwRM=", + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/proxy-agent/download/proxy-agent-3.1.1.tgz", + "integrity": "sha1-fgTga/Nq+mJKFUC+JHtHyXC9MBQ=", "requires": { "agent-base": "^4.2.0", - "debug": "^3.1.0", + "debug": "4", "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.1", - "lru-cache": "^4.1.2", - "pac-proxy-agent": "^3.0.0", + "https-proxy-agent": "^3.0.0", + "lru-cache": "^5.1.1", + "pac-proxy-agent": "^3.0.1", "proxy-from-env": "^1.0.0", "socks-proxy-agent": "^4.0.1" }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", "requires": { "ms": "^2.1.1" } @@ -9596,9 +9451,9 @@ } }, "proxy-from-env": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/proxy-from-env/download/proxy-from-env-1.0.0.tgz", - "integrity": "sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4=" + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/proxy-from-env/download/proxy-from-env-1.1.0.tgz?cache=0&sync_timestamp=1583293004668&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fproxy-from-env%2Fdownload%2Fproxy-from-env-1.1.0.tgz", + "integrity": "sha1-4QLxbKNVQkhldV0sno6k8k1Yw+I=" }, "prr": { "version": "1.0.1", @@ -9608,13 +9463,13 @@ }, "pseudomap": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/pseudomap/download/pseudomap-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/pseudomap/download/pseudomap-1.0.2.tgz", "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" }, "psl": { - "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/psl/download/psl-1.3.0.tgz", - "integrity": "sha1-4ev2o7VWT6g3bz2iJ12nbYdcob0=", + "version": "1.8.0", + "resolved": "https://registry.npm.taobao.org/psl/download/psl-1.8.0.tgz?cache=0&sync_timestamp=1585170332277&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpsl%2Fdownload%2Fpsl-1.8.0.tgz", + "integrity": "sha1-kyb4vPsBOtzABf3/BWrM4CDlHCQ=", "dev": true }, "public-encrypt": { @@ -9629,6 +9484,14 @@ "parse-asn1": "^5.0.0", "randombytes": "^2.0.1", "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.11.9.tgz", + "integrity": "sha1-JtVWgpRY+dHoH8SJUkk9C6NQeCg=", + "dev": true + } } }, "pump": { @@ -9642,7 +9505,7 @@ }, "pumpify": { "version": "1.5.1", - "resolved": "https://registry.npm.taobao.org/pumpify/download/pumpify-1.5.1.tgz?cache=0&sync_timestamp=1563089137219&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpumpify%2Fdownload%2Fpumpify-1.5.1.tgz", + "resolved": "https://registry.npm.taobao.org/pumpify/download/pumpify-1.5.1.tgz", "integrity": "sha1-NlE74karJ1cLGjdKXOJ4v9dDcM4=", "dev": true, "requires": { @@ -9676,17 +9539,16 @@ "dev": true }, "qs": { - "version": "6.8.0", - "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.8.0.tgz?cache=0&sync_timestamp=1566009952956&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fqs%2Fdownload%2Fqs-6.8.0.tgz", - "integrity": "sha1-h7dj8NN8pUIAM0zVe7Lvj2ih0IE=" + "version": "6.9.4", + "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.9.4.tgz", + "integrity": "sha1-kJCykNH5FyjTwi5UhDykSupatoc=" }, "query-string": { - "version": "5.1.1", - "resolved": "https://registry.npm.taobao.org/query-string/download/query-string-5.1.1.tgz", - "integrity": "sha1-p4wBK3HBfgXy4/ojGd0zBoLvs8s=", + "version": "4.3.4", + "resolved": "https://registry.npm.taobao.org/query-string/download/query-string-4.3.4.tgz?cache=0&sync_timestamp=1591853388817&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fquery-string%2Fdownload%2Fquery-string-4.3.4.tgz", + "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", "dev": true, "requires": { - "decode-uri-component": "^0.2.0", "object-assign": "^4.1.0", "strict-uri-encode": "^1.0.0" } @@ -9711,7 +9573,7 @@ }, "randombytes": { "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/randombytes/download/randombytes-2.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/randombytes/download/randombytes-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frandombytes%2Fdownload%2Frandombytes-2.1.0.tgz", "integrity": "sha1-32+ENy8CcNxlzfYpE0mrekc9Tyo=", "dev": true, "requires": { @@ -9792,7 +9654,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -9810,9 +9672,9 @@ } }, "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "version": "2.3.7", + "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.7.tgz?cache=0&sync_timestamp=1581623021561&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-2.3.7.tgz", + "integrity": "sha1-Hsoc9xGu+BTAT2IlKjamL2yyO1c=", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -9824,14 +9686,13 @@ } }, "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/readdirp/download/readdirp-2.2.1.tgz", - "integrity": "sha1-DodiKjMlqjPokihcr4tOhGUppSU=", + "version": "3.4.0", + "resolved": "https://registry.npm.taobao.org/readdirp/download/readdirp-3.4.0.tgz", + "integrity": "sha1-n9zN+ekVWAVEkiGsZF6DA6tbmto=", "dev": true, + "optional": true, "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" + "picomatch": "^2.2.1" } }, "redent": { @@ -9856,38 +9717,39 @@ } }, "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npm.taobao.org/regenerate/download/regenerate-1.4.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerate%2Fdownload%2Fregenerate-1.4.0.tgz", - "integrity": "sha1-SoVuxLVuQHfFV1icroXnpMiGmhE=", + "version": "1.4.1", + "resolved": "https://registry.npm.taobao.org/regenerate/download/regenerate-1.4.1.tgz", + "integrity": "sha1-ytkq2Oa1kXc0hfvgWkhcr09Ffm8=", "dev": true }, "regenerate-unicode-properties": { - "version": "8.1.0", - "resolved": "https://registry.npm.taobao.org/regenerate-unicode-properties/download/regenerate-unicode-properties-8.1.0.tgz", - "integrity": "sha1-71Hg8OpK1CS3e/fLQfPgFccKPw4=", + "version": "8.2.0", + "resolved": "https://registry.npm.taobao.org/regenerate-unicode-properties/download/regenerate-unicode-properties-8.2.0.tgz?cache=0&sync_timestamp=1583946996794&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerate-unicode-properties%2Fdownload%2Fregenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha1-5d5xEdZV57pgwFfb6f83yH5lzew=", "dev": true, "requires": { "regenerate": "^1.4.0" } }, "regenerator-runtime": { - "version": "0.13.3", - "resolved": "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.13.3.tgz", - "integrity": "sha1-fPanfY9cb2Drc8X8GVWyzrAea/U=", + "version": "0.13.5", + "resolved": "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.5.tgz?cache=0&sync_timestamp=1584052392667&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.13.5.tgz", + "integrity": "sha1-2Hih0JS0MG0QuQlkhLM+vVXiZpc=", "dev": true }, "regenerator-transform": { - "version": "0.14.1", - "resolved": "https://registry.npm.taobao.org/regenerator-transform/download/regenerator-transform-0.14.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerator-transform%2Fdownload%2Fregenerator-transform-0.14.1.tgz", - "integrity": "sha1-Oy/OThq3cywI9mXf2zFHScfd0vs=", + "version": "0.14.4", + "resolved": "https://registry.npm.taobao.org/regenerator-transform/download/regenerator-transform-0.14.4.tgz", + "integrity": "sha1-UmaFeJZRjRYWp4oEeTN6MOqXTMc=", "dev": true, "requires": { - "private": "^0.1.6" + "@babel/runtime": "^7.8.4", + "private": "^0.1.8" } }, "regex-not": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz", "integrity": "sha1-H07OJ+ALC2XgJHpoEOaoXYOldSw=", "dev": true, "requires": { @@ -9897,7 +9759,7 @@ "dependencies": { "extend-shallow": { "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { @@ -9907,7 +9769,7 @@ }, "is-extendable": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", "dev": true, "requires": { @@ -9916,11 +9778,15 @@ } } }, - "regexp-tree": { - "version": "0.1.11", - "resolved": "https://registry.npm.taobao.org/regexp-tree/download/regexp-tree-0.1.11.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregexp-tree%2Fdownload%2Fregexp-tree-0.1.11.tgz", - "integrity": "sha1-ycfwD89yLgpWxzkJg6emPdbCcvM=", - "dev": true + "regexp.prototype.flags": { + "version": "1.3.0", + "resolved": "https://registry.npm.taobao.org/regexp.prototype.flags/download/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha1-erqJs8E6ZFCdq888qNn7ub31y3U=", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } }, "regexpp": { "version": "1.1.0", @@ -9930,29 +9796,29 @@ "optional": true }, "regexpu-core": { - "version": "4.5.5", - "resolved": "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-4.5.5.tgz", - "integrity": "sha1-qv/mHCr1gmmz5Ra2GnN5A3YyZBE=", + "version": "4.7.0", + "resolved": "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-4.7.0.tgz?cache=0&sync_timestamp=1583949999327&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregexpu-core%2Fdownload%2Fregexpu-core-4.7.0.tgz", + "integrity": "sha1-/L9FjFBDGwu3tF1pZ7gZLZHz2Tg=", "dev": true, "requires": { "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.1.0", - "regjsgen": "^0.5.0", - "regjsparser": "^0.6.0", + "regenerate-unicode-properties": "^8.2.0", + "regjsgen": "^0.5.1", + "regjsparser": "^0.6.4", "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.1.0" + "unicode-match-property-value-ecmascript": "^1.2.0" } }, "regjsgen": { - "version": "0.5.0", - "resolved": "https://registry.npm.taobao.org/regjsgen/download/regjsgen-0.5.0.tgz", - "integrity": "sha1-p2NNwI+JIJwgSa3aNSVxH7lyZd0=", + "version": "0.5.2", + "resolved": "https://registry.npm.taobao.org/regjsgen/download/regjsgen-0.5.2.tgz", + "integrity": "sha1-kv8pX7He7L9uzaslQ9IH6RqjNzM=", "dev": true }, "regjsparser": { - "version": "0.6.0", - "resolved": "https://registry.npm.taobao.org/regjsparser/download/regjsparser-0.6.0.tgz", - "integrity": "sha1-8eaui32iuulsmTmbhozWyTOiupw=", + "version": "0.6.4", + "resolved": "https://registry.npm.taobao.org/regjsparser/download/regjsparser-0.6.4.tgz?cache=0&sync_timestamp=1583896720909&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregjsparser%2Fdownload%2Fregjsparser-0.6.4.tgz", + "integrity": "sha1-p2n4aEMIQBpm6bUp0kNv9NBmYnI=", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -9974,7 +9840,7 @@ }, "remove-trailing-separator": { "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/remove-trailing-separator/download/remove-trailing-separator-1.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/remove-trailing-separator/download/remove-trailing-separator-1.1.0.tgz", "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", "dev": true }, @@ -10009,9 +9875,15 @@ "nth-check": "~1.0.1" } }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npm.taobao.org/css-what/download/css-what-2.1.3.tgz", + "integrity": "sha1-ptdgRXM2X+dGhsPzEcVlE9iChfI=", + "dev": true + }, "domutils": { "version": "1.5.1", - "resolved": "https://registry.npm.taobao.org/domutils/download/domutils-1.5.1.tgz", + "resolved": "https://registry.npm.taobao.org/domutils/download/domutils-1.5.1.tgz?cache=0&sync_timestamp=1589052712571&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomutils%2Fdownload%2Fdomutils-1.5.1.tgz", "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", "dev": true, "requires": { @@ -10032,13 +9904,13 @@ }, "repeat-element": { "version": "1.1.3", - "resolved": "http://registry.npm.taobao.org/repeat-element/download/repeat-element-1.1.3.tgz", + "resolved": "https://registry.npm.taobao.org/repeat-element/download/repeat-element-1.1.3.tgz", "integrity": "sha1-eC4NglwMWjuzlzH4Tv7mt0Lmsc4=", "dev": true }, "repeat-string": { "version": "1.6.1", - "resolved": "http://registry.npm.taobao.org/repeat-string/download/repeat-string-1.6.1.tgz", + "resolved": "https://registry.npm.taobao.org/repeat-string/download/repeat-string-1.6.1.tgz", "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", "dev": true }, @@ -10052,9 +9924,9 @@ } }, "request": { - "version": "2.88.0", - "resolved": "https://registry.npm.taobao.org/request/download/request-2.88.0.tgz", - "integrity": "sha1-nC/KT301tZLv5Xx/ClXoEFIST+8=", + "version": "2.88.2", + "resolved": "https://registry.npm.taobao.org/request/download/request-2.88.2.tgz?cache=0&sync_timestamp=1581439006948&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frequest%2Fdownload%2Frequest-2.88.2.tgz", + "integrity": "sha1-1zyRhzHLWofaBH4gcjQUb2ZNErM=", "dev": true, "requires": { "aws-sign2": "~0.7.0", @@ -10064,7 +9936,7 @@ "extend": "~3.0.2", "forever-agent": "~0.6.1", "form-data": "~2.3.2", - "har-validator": "~5.1.0", + "har-validator": "~5.1.3", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", @@ -10074,48 +9946,48 @@ "performance-now": "^2.1.0", "qs": "~6.5.2", "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", + "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" }, "dependencies": { "qs": { "version": "6.5.2", - "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.5.2.tgz?cache=0&sync_timestamp=1566009952956&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fqs%2Fdownload%2Fqs-6.5.2.tgz", + "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.5.2.tgz", "integrity": "sha1-yzroBuh0BERYTvFUzo7pjUA/PjY=", "dev": true } } }, "request-promise-core": { - "version": "1.1.2", - "resolved": "https://registry.npm.taobao.org/request-promise-core/download/request-promise-core-1.1.2.tgz", - "integrity": "sha1-M59qq6vK/bMceZ/xWHADNjAdM0Y=", + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/request-promise-core/download/request-promise-core-1.1.3.tgz", + "integrity": "sha1-6aPAgbUTgN/qZ3M2Bh/qh5qCnuk=", "dev": true, "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.15" } }, "request-promise-native": { - "version": "1.0.7", - "resolved": "https://registry.npm.taobao.org/request-promise-native/download/request-promise-native-1.0.7.tgz", - "integrity": "sha1-pJhopiS96lBp8SUdCoNuDYmqLFk=", + "version": "1.0.8", + "resolved": "https://registry.npm.taobao.org/request-promise-native/download/request-promise-native-1.0.8.tgz?cache=0&sync_timestamp=1572829735085&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frequest-promise-native%2Fdownload%2Frequest-promise-native-1.0.8.tgz", + "integrity": "sha1-pFW5YLgm5E4r+Jma9k3/K/5YyzY=", "dev": true, "requires": { - "request-promise-core": "1.1.2", + "request-promise-core": "1.1.3", "stealthy-require": "^1.1.1", "tough-cookie": "^2.3.3" } }, "require-directory": { "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/require-directory/download/require-directory-2.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/require-directory/download/require-directory-2.1.1.tgz", "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "dev": true }, "require-main-filename": { "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/require-main-filename/download/require-main-filename-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/require-main-filename/download/require-main-filename-2.0.0.tgz", "integrity": "sha1-0LMp7MfMD2Fkn2IhW+aa9UqomJs=", "dev": true }, @@ -10138,14 +10010,14 @@ }, "reselect": { "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/reselect/download/reselect-3.0.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freselect%2Fdownload%2Freselect-3.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/reselect/download/reselect-3.0.1.tgz", "integrity": "sha1-79qpjqdFEyTQkrKyFjpqHXqaIUc=", "dev": true }, "resolve": { - "version": "1.12.0", - "resolved": "https://registry.npm.taobao.org/resolve/download/resolve-1.12.0.tgz?cache=0&sync_timestamp=1564641434608&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fresolve%2Fdownload%2Fresolve-1.12.0.tgz", - "integrity": "sha1-P8ZEo1yEpIVUYJ/ybsUrZvpXffY=", + "version": "1.17.0", + "resolved": "https://registry.npm.taobao.org/resolve/download/resolve-1.17.0.tgz", + "integrity": "sha1-sllBtUloIxzC0bt2p5y38sC/hEQ=", "dev": true, "requires": { "path-parse": "^1.0.6" @@ -10177,7 +10049,7 @@ }, "resolve-url": { "version": "0.2.1", - "resolved": "http://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz", + "resolved": "https://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz", "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", "dev": true }, @@ -10234,14 +10106,11 @@ } }, "run-async": { - "version": "2.3.0", - "resolved": "http://registry.npm.taobao.org/run-async/download/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "version": "2.4.1", + "resolved": "https://registry.npm.taobao.org/run-async/download/run-async-2.4.1.tgz", + "integrity": "sha1-hEDsz5nqPnC9QJ1JqriOEMGJpFU=", "dev": true, - "optional": true, - "requires": { - "is-promise": "^2.1.0" - } + "optional": true }, "run-queue": { "version": "1.0.3", @@ -10256,7 +10125,8 @@ "version": "4.0.8", "resolved": "https://registry.npm.taobao.org/rx-lite/download/rx-lite-4.0.8.tgz", "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", - "dev": true + "dev": true, + "optional": true }, "rx-lite-aggregates": { "version": "4.0.8", @@ -10270,12 +10140,12 @@ }, "safe-buffer": { "version": "5.1.2", - "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz?cache=0&sync_timestamp=1589129010497&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.1.2.tgz", "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=" }, "safe-regex": { "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/safe-regex/download/safe-regex-1.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/safe-regex/download/safe-regex-1.1.0.tgz?cache=0&sync_timestamp=1571687334026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-regex%2Fdownload%2Fsafe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, "requires": { @@ -10284,254 +10154,114 @@ }, "safer-buffer": { "version": "2.1.2", - "resolved": "http://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz", "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=" }, "sass-graph": { - "version": "2.2.4", - "resolved": "https://registry.npm.taobao.org/sass-graph/download/sass-graph-2.2.4.tgz", - "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", + "version": "2.2.5", + "resolved": "https://registry.npm.taobao.org/sass-graph/download/sass-graph-2.2.5.tgz?cache=0&sync_timestamp=1588596670185&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsass-graph%2Fdownload%2Fsass-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": "^7.0.0" + "yargs": "^13.3.2" }, "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz", + "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=", "dev": true }, - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - }, "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npm.taobao.org/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" - } - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/get-caller-file/download/get-caller-file-1.0.3.tgz", - "integrity": "sha1-+Xj6TJDR3+f/LWvtoqUV5xO9z0o=", - "dev": true - }, - "invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/invert-kv/download/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "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" - } - }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/lcid/download/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, - "requires": { - "invert-kv": "^1.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-1.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fload-json-file%2Fdownload%2Fload-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" - } - }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npm.taobao.org/os-locale/download/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "dev": true, - "requires": { - "lcid": "^1.0.0" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npm.taobao.org/parse-json/download/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/path-exists/download/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz", + "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", "dev": true, "requires": { - "pinkie-promise": "^2.0.0" + "locate-path": "^3.0.0" } }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/path-type/download/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-3.0.0.tgz", + "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" } }, - "pify": { + "p-limit": { "version": "2.3.0", - "resolved": "http://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.npm.taobao.org/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" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/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" - } - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/require-main-filename/download/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.3.0.tgz?cache=0&sync_timestamp=1591460606987&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-limit%2Fdownload%2Fp-limit-2.3.0.tgz", + "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE=", "dev": true, "requires": { - "ansi-regex": "^2.0.0" + "p-try": "^2.0.0" } }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/strip-bom/download/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-3.0.0.tgz", + "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", "dev": true, "requires": { - "is-utf8": "^0.2.0" + "p-limit": "^2.0.0" } }, - "which-module": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/which-module/download/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz", + "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", "dev": true }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-3.1.0.tgz", + "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", "dev": true, "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" } }, - "y18n": { - "version": "3.2.1", - "resolved": "http://registry.npm.taobao.org/y18n/download/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - }, "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "version": "13.3.2", + "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-13.3.2.tgz?cache=0&sync_timestamp=1590131311795&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-13.3.2.tgz", + "integrity": "sha1-rX/+/sGqWVZayRX4Lcyzipwxot0=", "dev": true, "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", + "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" } }, "yargs-parser": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-5.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "version": "13.1.2", + "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-13.1.2.tgz?cache=0&sync_timestamp=1590107599564&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-13.1.2.tgz", + "integrity": "sha1-Ew8JcC667vJlDVTObj5XBvek+zg=", "dev": true, "requires": { - "camelcase": "^3.0.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } } } }, "sass-loader": { "version": "7.3.1", - "resolved": "https://registry.npm.taobao.org/sass-loader/download/sass-loader-7.3.1.tgz?cache=0&sync_timestamp=1566337648785&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsass-loader%2Fdownload%2Fsass-loader-7.3.1.tgz", + "resolved": "https://registry.npm.taobao.org/sass-loader/download/sass-loader-7.3.1.tgz?cache=0&sync_timestamp=1578921665787&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsass-loader%2Fdownload%2Fsass-loader-7.3.1.tgz", "integrity": "sha1-pb9ooEvOocE/+ELXRxUPerfQ0j8=", "dev": true, "requires": { @@ -10544,7 +10274,7 @@ "dependencies": { "semver": { "version": "6.3.0", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1565627380363&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz", "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=", "dev": true } @@ -10556,14 +10286,14 @@ "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=" }, "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", - "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "version": "2.7.0", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.7.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.7.0.tgz", + "integrity": "sha1-FxUfdtjq5n+793lgwzxnatn078c=", "dev": true, "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" } }, "scss-tokenizer": { @@ -10578,7 +10308,7 @@ "dependencies": { "source-map": { "version": "0.4.4", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.4.4.tgz", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.4.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map%2Fdownload%2Fsource-map-0.4.4.tgz", "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", "dev": true, "requires": { @@ -10597,7 +10327,7 @@ }, "select": { "version": "1.1.2", - "resolved": "http://registry.npm.taobao.org/select/download/select-1.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/select/download/select-1.1.2.tgz", "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=" }, "select-hose": { @@ -10607,17 +10337,17 @@ "dev": true }, "selfsigned": { - "version": "1.10.4", - "resolved": "https://registry.npm.taobao.org/selfsigned/download/selfsigned-1.10.4.tgz", - "integrity": "sha1-zdfsz8pO12NdR6CL8tXTB0CS4s0=", + "version": "1.10.7", + "resolved": "https://registry.npm.taobao.org/selfsigned/download/selfsigned-1.10.7.tgz", + "integrity": "sha1-2lgZ/QSdVXTyjoipvMbbxubzkGs=", "dev": true, "requires": { - "node-forge": "0.7.5" + "node-forge": "0.9.0" } }, "semver": { "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1565627380363&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=" }, "send": { @@ -10643,17 +10373,20 @@ "dependencies": { "ms": { "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz", "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=", "dev": true } } }, "serialize-javascript": { - "version": "1.8.0", - "resolved": "https://registry.npm.taobao.org/serialize-javascript/download/serialize-javascript-1.8.0.tgz?cache=0&sync_timestamp=1566305509447&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fserialize-javascript%2Fdownload%2Fserialize-javascript-1.8.0.tgz", - "integrity": "sha1-lRX8aHIy4jIa6hynpSlHbrNLtIA=", - "dev": true + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/serialize-javascript/download/serialize-javascript-3.1.0.tgz", + "integrity": "sha1-i/OpFwcSZk7yVhtEtpHq/jmSFOo=", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } }, "serve-index": { "version": "1.9.1", @@ -10710,13 +10443,13 @@ }, "set-blocking": { "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/set-blocking/download/set-blocking-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/set-blocking/download/set-blocking-2.0.0.tgz", "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "dev": true }, "set-value": { "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/set-value/download/set-value-2.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/set-value/download/set-value-2.0.1.tgz?cache=0&sync_timestamp=1585774809732&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fset-value%2Fdownload%2Fset-value-2.0.1.tgz", "integrity": "sha1-oY1AUw5vB95CKMfe/kInr4ytAFs=", "dev": true, "requires": { @@ -10739,7 +10472,7 @@ }, "sha.js": { "version": "2.4.11", - "resolved": "https://registry.npm.taobao.org/sha.js/download/sha.js-2.4.11.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsha.js%2Fdownload%2Fsha.js-2.4.11.tgz", + "resolved": "https://registry.npm.taobao.org/sha.js/download/sha.js-2.4.11.tgz", "integrity": "sha1-N6XPC4HsvGlD3hCbopYNGyZYSuc=", "dev": true, "requires": { @@ -10758,7 +10491,7 @@ }, "shebang-command": { "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/shebang-command/download/shebang-command-1.2.0.tgz", + "resolved": "https://registry.npm.taobao.org/shebang-command/download/shebang-command-1.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fshebang-command%2Fdownload%2Fshebang-command-1.2.0.tgz", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "dev": true, "requires": { @@ -10772,9 +10505,9 @@ "dev": true }, "shell-quote": { - "version": "1.7.1", - "resolved": "https://registry.npm.taobao.org/shell-quote/download/shell-quote-1.7.1.tgz?cache=0&sync_timestamp=1565703322893&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fshell-quote%2Fdownload%2Fshell-quote-1.7.1.tgz", - "integrity": "sha1-MWHZaYhvsU+RQMZSRaXdGbbwsGs=", + "version": "1.7.2", + "resolved": "https://registry.npm.taobao.org/shell-quote/download/shell-quote-1.7.2.tgz", + "integrity": "sha1-Z6fQLHbJ2iT5nSCAj8re0ODgS+I=", "dev": true }, "sigmund": { @@ -10783,9 +10516,9 @@ "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=" }, "signal-exit": { - "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/signal-exit/download/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "version": "3.0.3", + "resolved": "https://registry.npm.taobao.org/signal-exit/download/signal-exit-3.0.3.tgz?cache=0&sync_timestamp=1585253373618&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsignal-exit%2Fdownload%2Fsignal-exit-3.0.3.tgz", + "integrity": "sha1-oUEMLt2PB3sItOJTyOrPyvBXRhw=", "dev": true }, "simple-swizzle": { @@ -10799,7 +10532,7 @@ "dependencies": { "is-arrayish": { "version": "0.3.2", - "resolved": "http://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.3.2.tgz", + "resolved": "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.3.2.tgz", "integrity": "sha1-RXSirlb3qyBolvtDHq7tBm/fjwM=", "dev": true } @@ -10822,13 +10555,13 @@ } }, "smart-buffer": { - "version": "4.0.2", - "resolved": "https://registry.npm.taobao.org/smart-buffer/download/smart-buffer-4.0.2.tgz", - "integrity": "sha1-UgeFjDgVzGkRBwPGuU5GwVY0OV0=" + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/smart-buffer/download/smart-buffer-4.1.0.tgz", + "integrity": "sha1-kWBcJdkWUvRmHqacz0XxszHKIbo=" }, "snapdragon": { "version": "0.8.2", - "resolved": "http://registry.npm.taobao.org/snapdragon/download/snapdragon-0.8.2.tgz", + "resolved": "https://registry.npm.taobao.org/snapdragon/download/snapdragon-0.8.2.tgz", "integrity": "sha1-ZJIufFZbDhQgS6GqfWlkJ40lGC0=", "dev": true, "requires": { @@ -10844,7 +10577,7 @@ "dependencies": { "define-property": { "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { @@ -10853,7 +10586,7 @@ }, "source-map": { "version": "0.5.7", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map%2Fdownload%2Fsource-map-0.5.7.tgz", "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "dev": true } @@ -10861,7 +10594,7 @@ }, "snapdragon-node": { "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/snapdragon-node/download/snapdragon-node-2.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/snapdragon-node/download/snapdragon-node-2.1.1.tgz", "integrity": "sha1-bBdfhv8UvbByRWPo88GwIaKGhTs=", "dev": true, "requires": { @@ -10872,7 +10605,7 @@ "dependencies": { "define-property": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { @@ -10881,7 +10614,7 @@ }, "is-accessor-descriptor": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", "dev": true, "requires": { @@ -10890,7 +10623,7 @@ }, "is-data-descriptor": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", "dev": true, "requires": { @@ -10899,7 +10632,7 @@ }, "is-descriptor": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", "dev": true, "requires": { @@ -10912,7 +10645,7 @@ }, "snapdragon-util": { "version": "3.0.1", - "resolved": "http://registry.npm.taobao.org/snapdragon-util/download/snapdragon-util-3.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/snapdragon-util/download/snapdragon-util-3.0.1.tgz", "integrity": "sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI=", "dev": true, "requires": { @@ -10921,13 +10654,13 @@ "dependencies": { "is-buffer": { "version": "1.1.6", - "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", + "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz?cache=0&sync_timestamp=1588707106955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-1.1.6.tgz", "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", "dev": true }, "kind-of": { "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { @@ -10937,19 +10670,20 @@ } }, "sockjs": { - "version": "0.3.19", - "resolved": "https://registry.npm.taobao.org/sockjs/download/sockjs-0.3.19.tgz", - "integrity": "sha1-2Xa76ACve9IK4IWY1YI5NQiZPA0=", + "version": "0.3.20", + "resolved": "https://registry.npm.taobao.org/sockjs/download/sockjs-0.3.20.tgz?cache=0&sync_timestamp=1583783910272&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsockjs%2Fdownload%2Fsockjs-0.3.20.tgz", + "integrity": "sha1-smooPsVi74smh7RAM6Tuzqx12FU=", "dev": true, "requires": { "faye-websocket": "^0.10.0", - "uuid": "^3.0.1" + "uuid": "^3.4.0", + "websocket-driver": "0.6.5" } }, "sockjs-client": { - "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/sockjs-client/download/sockjs-client-1.3.0.tgz", - "integrity": "sha1-EvydbLZj2lc509xftuhofalcsXc=", + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/sockjs-client/download/sockjs-client-1.4.0.tgz", + "integrity": "sha1-yfJWjhnI/YFztJl+o0IOC7MGx9U=", "dev": true, "requires": { "debug": "^3.2.5", @@ -10962,7 +10696,7 @@ "dependencies": { "debug": { "version": "3.2.6", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", "dev": true, "requires": { @@ -10981,17 +10715,17 @@ } }, "socks": { - "version": "2.3.2", - "resolved": "https://registry.npm.taobao.org/socks/download/socks-2.3.2.tgz", - "integrity": "sha1-reOI6ebYf9sRZJwVdGxXiSKliD4=", + "version": "2.3.3", + "resolved": "https://registry.npm.taobao.org/socks/download/socks-2.3.3.tgz", + "integrity": "sha1-ARKfCl1TTSuJdxLtis6rfuZdeOM=", "requires": { - "ip": "^1.1.5", - "smart-buffer": "4.0.2" + "ip": "1.1.5", + "smart-buffer": "^4.1.0" } }, "socks-proxy-agent": { "version": "4.0.2", - "resolved": "https://registry.npm.taobao.org/socks-proxy-agent/download/socks-proxy-agent-4.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/socks-proxy-agent/download/socks-proxy-agent-4.0.2.tgz?cache=0&sync_timestamp=1580846081477&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsocks-proxy-agent%2Fdownload%2Fsocks-proxy-agent-4.0.2.tgz", "integrity": "sha1-PImR8xRbJ5nnDhG9X7yLGWMRY4Y=", "requires": { "agent-base": "~4.2.1", @@ -11009,9 +10743,9 @@ } }, "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/sort-keys/download/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/sort-keys/download/sort-keys-1.1.2.tgz", + "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", "dev": true, "requires": { "is-plain-obj": "^1.0.0" @@ -11025,16 +10759,16 @@ }, "source-map": { "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map%2Fdownload%2Fsource-map-0.6.1.tgz", "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" }, "source-map-resolve": { - "version": "0.5.2", - "resolved": "http://registry.npm.taobao.org/source-map-resolve/download/source-map-resolve-0.5.2.tgz", - "integrity": "sha1-cuLMNAlVQ+Q7LGKyxMENSpBU8lk=", + "version": "0.5.3", + "resolved": "https://registry.npm.taobao.org/source-map-resolve/download/source-map-resolve-0.5.3.tgz?cache=0&sync_timestamp=1584829552965&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map-resolve%2Fdownload%2Fsource-map-resolve-0.5.3.tgz", + "integrity": "sha1-GQhmvs51U+H48mei7oLGBrVQmho=", "dev": true, "requires": { - "atob": "^2.1.1", + "atob": "^2.1.2", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", @@ -11042,9 +10776,9 @@ } }, "source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npm.taobao.org/source-map-support/download/source-map-support-0.5.13.tgz", - "integrity": "sha1-MbJKnC5zwt6FBmwP631Edn7VKTI=", + "version": "0.5.19", + "resolved": "https://registry.npm.taobao.org/source-map-support/download/source-map-support-0.5.19.tgz", + "integrity": "sha1-qYti+G3K9PZzmWSMCFKRq56P7WE=", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -11053,19 +10787,19 @@ }, "source-map-url": { "version": "0.4.0", - "resolved": "http://registry.npm.taobao.org/source-map-url/download/source-map-url-0.4.0.tgz", + "resolved": "https://registry.npm.taobao.org/source-map-url/download/source-map-url-0.4.0.tgz", "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", "dev": true }, "spark-md5": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/spark-md5/download/spark-md5-3.0.0.tgz", - "integrity": "sha1-NyIifFTi+vJLHcbZM8wUTm9xv+8=" + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/spark-md5/download/spark-md5-3.0.1.tgz", + "integrity": "sha1-g6DiVXNPKrTlxGblos/JuiqiEk0=" }, "spdx-correct": { - "version": "3.1.0", - "resolved": "http://registry.npm.taobao.org/spdx-correct/download/spdx-correct-3.1.0.tgz", - "integrity": "sha1-+4PlBERSaPFUsHTiGMh8ADzTHfQ=", + "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", @@ -11073,15 +10807,15 @@ } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "http://registry.npm.taobao.org/spdx-exceptions/download/spdx-exceptions-2.2.0.tgz", - "integrity": "sha1-LqRQrudPKom/uUUZwH/Nb0EyKXc=", + "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.0", - "resolved": "http://registry.npm.taobao.org/spdx-expression-parse/download/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha1-meEZt6XaAOBUkcn6M4t5BII7QdA=", + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/spdx-expression-parse/download/spdx-expression-parse-3.0.1.tgz?cache=0&sync_timestamp=1589386503783&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fspdx-expression-parse%2Fdownload%2Fspdx-expression-parse-3.0.1.tgz", + "integrity": "sha1-z3D1BILu/cmOPOCmgz5KU87rpnk=", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -11090,14 +10824,14 @@ }, "spdx-license-ids": { "version": "3.0.5", - "resolved": "https://registry.npm.taobao.org/spdx-license-ids/download/spdx-license-ids-3.0.5.tgz?cache=0&sync_timestamp=1562834220236&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fspdx-license-ids%2Fdownload%2Fspdx-license-ids-3.0.5.tgz", + "resolved": "https://registry.npm.taobao.org/spdx-license-ids/download/spdx-license-ids-3.0.5.tgz", "integrity": "sha1-NpS1gEVnpFjTyARYQqY1hjL2JlQ=", "dev": true }, "spdy": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/spdy/download/spdy-4.0.1.tgz", - "integrity": "sha1-bxLtHF236k8k67i4m6WMh8CCV/I=", + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/spdy/download/spdy-4.0.2.tgz?cache=0&sync_timestamp=1585970548235&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fspdy%2Fdownload%2Fspdy-4.0.2.tgz", + "integrity": "sha1-t09GYgOj7aRSwCSSuR+56EonZ3s=", "dev": true, "requires": { "debug": "^4.1.0", @@ -11109,7 +10843,7 @@ "dependencies": { "debug": { "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", "dev": true, "requires": { @@ -11134,7 +10868,7 @@ "dependencies": { "debug": { "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", "dev": true, "requires": { @@ -11142,9 +10876,9 @@ } }, "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.4.0.tgz", - "integrity": "sha1-pRwmdUZY4KPCHb9ZFjvUW6b0R/w=", + "version": "3.6.0", + "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.6.0.tgz?cache=0&sync_timestamp=1581623021561&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-3.6.0.tgz", + "integrity": "sha1-M3u9o63AcGvT4CRCaihtS0sskZg=", "dev": true, "requires": { "inherits": "^2.0.3", @@ -11165,7 +10899,7 @@ "dependencies": { "extend-shallow": { "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { @@ -11175,7 +10909,7 @@ }, "is-extendable": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", "dev": true, "requires": { @@ -11186,7 +10920,7 @@ }, "sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsprintf-js%2Fdownload%2Fsprintf-js-1.0.3.tgz", + "resolved": "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz", "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, @@ -11223,14 +10957,14 @@ "dev": true }, "stackframe": { - "version": "1.0.4", - "resolved": "https://registry.npm.taobao.org/stackframe/download/stackframe-1.0.4.tgz", - "integrity": "sha1-NXskqZL5Qny6a1RdlqFO0svKGHs=", + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/stackframe/download/stackframe-1.2.0.tgz?cache=0&sync_timestamp=1590854170093&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstackframe%2Fdownload%2Fstackframe-1.2.0.tgz", + "integrity": "sha1-UkKUktY8YuuYmATBFVLj0i53kwM=", "dev": true }, "static-extend": { "version": "0.1.2", - "resolved": "http://registry.npm.taobao.org/static-extend/download/static-extend-0.1.2.tgz", + "resolved": "https://registry.npm.taobao.org/static-extend/download/static-extend-0.1.2.tgz", "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "dev": true, "requires": { @@ -11240,7 +10974,7 @@ "dependencies": { "define-property": { "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { @@ -11251,7 +10985,7 @@ }, "statuses": { "version": "1.5.0", - "resolved": "http://registry.npm.taobao.org/statuses/download/statuses-1.5.0.tgz", + "resolved": "https://registry.npm.taobao.org/statuses/download/statuses-1.5.0.tgz", "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, "stdout-stream": { @@ -11291,7 +11025,7 @@ }, "stream-http": { "version": "2.8.2", - "resolved": "https://registry.npm.taobao.org/stream-http/download/stream-http-2.8.2.tgz", + "resolved": "https://registry.npm.taobao.org/stream-http/download/stream-http-2.8.2.tgz?cache=0&sync_timestamp=1588701139074&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstream-http%2Fdownload%2Fstream-http-2.8.2.tgz", "integrity": "sha1-QSboxrEHAERlkYqi/DVUnndALIc=", "requires": { "builtin-status-codes": "^3.0.0", @@ -11302,9 +11036,9 @@ } }, "stream-shift": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.1.tgz", + "integrity": "sha1-1wiCgVWasneEJCebCHfaPDktWj0=", "dev": true }, "stream-wormhole": { @@ -11320,7 +11054,7 @@ }, "string-width": { "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-2.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-2.1.1.tgz", "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", "dev": true, "requires": { @@ -11346,30 +11080,48 @@ } }, "string.prototype.padend": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/string.prototype.padend/download/string.prototype.padend-3.0.0.tgz", - "integrity": "sha1-86rvfBcZ8XDF6rHDK/eA2W4h8vA=", + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/string.prototype.padend/download/string.prototype.padend-3.1.0.tgz?cache=0&sync_timestamp=1576312069927&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.padend%2Fdownload%2Fstring.prototype.padend-3.1.0.tgz", + "integrity": "sha1-3Aj1eoAQ3FwVNVAxj2fhOtu3KsM=", "dev": true, "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.4.3", - "function-bind": "^1.0.2" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" } }, "string.prototype.padstart": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/string.prototype.padstart/download/string.prototype.padstart-3.0.0.tgz", - "integrity": "sha1-W8+tOfRkm7LQMSkuGbzwtRDUskI=", + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/string.prototype.padstart/download/string.prototype.padstart-3.1.0.tgz", + "integrity": "sha1-tHwIdUDQcQvlpJN1dRoKYnvU/5A=", "dev": true, "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.4.3", - "function-bind": "^1.0.2" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, + "string.prototype.trimend": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/string.prototype.trimend/download/string.prototype.trimend-1.0.1.tgz?cache=0&sync_timestamp=1586465233837&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.trimend%2Fdownload%2Fstring.prototype.trimend-1.0.1.tgz", + "integrity": "sha1-hYEqa4R6wAInD1gIFGBkyZX7aRM=", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "string.prototype.trimstart": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/string.prototype.trimstart/download/string.prototype.trimstart-1.0.1.tgz?cache=0&sync_timestamp=1586465234129&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.trimstart%2Fdownload%2Fstring.prototype.trimstart-1.0.1.tgz", + "integrity": "sha1-FK9tnzSwU/fPyJty+PLuFLkDmlQ=", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" } }, "string_decoder": { "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz?cache=0&sync_timestamp=1565170823020&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring_decoder%2Fdownload%2Fstring_decoder-1.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", "requires": { "safe-buffer": "~5.1.0" @@ -11392,7 +11144,7 @@ }, "strip-eof": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/strip-eof/download/strip-eof-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/strip-eof/download/strip-eof-1.0.0.tgz", "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, @@ -11410,7 +11162,7 @@ }, "strip-json-comments": { "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/strip-json-comments/download/strip-json-comments-2.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/strip-json-comments/download/strip-json-comments-2.0.1.tgz?cache=0&sync_timestamp=1586160054577&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-json-comments%2Fdownload%2Fstrip-json-comments-2.0.1.tgz", "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true, "optional": true @@ -11427,12 +11179,12 @@ }, "dependencies": { "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "version": "3.1.2", + "resolved": "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha1-sxD1xMD9r3b5SQK7qjDbaqhPUnA=", "dev": true, "requires": { - "dot-prop": "^4.1.1", + "dot-prop": "^5.2.0", "indexes-of": "^1.0.1", "uniq": "^1.0.1" } @@ -11455,17 +11207,17 @@ "dev": true }, "svgo": { - "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/svgo/download/svgo-1.3.0.tgz", - "integrity": "sha1-uuUbqV3tmjOja3xGzpw1mukVQxM=", + "version": "1.3.2", + "resolved": "https://registry.npm.taobao.org/svgo/download/svgo-1.3.2.tgz?cache=0&sync_timestamp=1572433377078&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsvgo%2Fdownload%2Fsvgo-1.3.2.tgz", + "integrity": "sha1-ttxRHAYzRsnkFbgeQ0ARRbltQWc=", "dev": true, "requires": { "chalk": "^2.4.1", "coa": "^2.0.2", "css-select": "^2.0.0", "css-select-base-adapter": "^0.1.1", - "css-tree": "1.0.0-alpha.33", - "csso": "^3.5.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", @@ -11492,7 +11244,7 @@ "dependencies": { "ajv": { "version": "5.5.2", - "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-5.5.2.tgz?cache=0&sync_timestamp=1563113786760&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv%2Fdownload%2Fajv-5.5.2.tgz", + "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-5.5.2.tgz?cache=0&sync_timestamp=1587339911109&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv%2Fdownload%2Fajv-5.5.2.tgz", "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "dev": true, "optional": true, @@ -11505,14 +11257,14 @@ }, "ajv-keywords": { "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv-keywords%2Fdownload%2Fajv-keywords-2.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-2.1.1.tgz", "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", "dev": true, "optional": true }, "fast-deep-equal": { "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-1.1.0.tgz?cache=0&sync_timestamp=1562517919182&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-deep-equal%2Fdownload%2Ffast-deep-equal-1.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-1.1.0.tgz?cache=0&sync_timestamp=1591599659970&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-deep-equal%2Fdownload%2Ffast-deep-equal-1.1.0.tgz", "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", "dev": true, "optional": true @@ -11534,7 +11286,7 @@ }, "tar": { "version": "2.2.2", - "resolved": "https://registry.npm.taobao.org/tar/download/tar-2.2.2.tgz", + "resolved": "https://registry.npm.taobao.org/tar/download/tar-2.2.2.tgz?cache=0&sync_timestamp=1588021503236&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftar%2Fdownload%2Ftar-2.2.2.tgz", "integrity": "sha1-DKiEhWLHKZuLRG/2pNYM27I+3EA=", "dev": true, "requires": { @@ -11544,9 +11296,9 @@ } }, "terser": { - "version": "4.2.0", - "resolved": "https://registry.npm.taobao.org/terser/download/terser-4.2.0.tgz", - "integrity": "sha1-SxtfRCS0JqekfoDWquReDXl5rvA=", + "version": "4.7.0", + "resolved": "https://registry.npm.taobao.org/terser/download/terser-4.7.0.tgz", + "integrity": "sha1-FYUs8aCOMlaoBCjoZaL6iT/7oAY=", "dev": true, "requires": { "commander": "^2.20.0", @@ -11555,20 +11307,33 @@ } }, "terser-webpack-plugin": { - "version": "1.4.1", - "resolved": "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-1.4.1.tgz", - "integrity": "sha1-YbGOQOruW+l+dxzbsQ7RKAiIwrQ=", + "version": "1.4.4", + "resolved": "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-1.4.4.tgz?cache=0&sync_timestamp=1592234728142&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser-webpack-plugin%2Fdownload%2Fterser-webpack-plugin-1.4.4.tgz", + "integrity": "sha1-LGNUQ0cyS6r6mla6rd8WNMir/C8=", "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": "^1.7.0", + "serialize-javascript": "^3.1.0", "source-map": "^0.6.1", "terser": "^4.1.2", "webpack-sources": "^1.4.0", "worker-farm": "^1.7.0" + }, + "dependencies": { + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } } }, "text-table": { @@ -11579,9 +11344,9 @@ "optional": true }, "thenify": { - "version": "3.3.0", - "resolved": "https://registry.npm.taobao.org/thenify/download/thenify-3.3.0.tgz", - "integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=", + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/thenify/download/thenify-3.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fthenify%2Fdownload%2Fthenify-3.3.1.tgz", + "integrity": "sha1-iTLmhqQGYDigFt2eLKRq3Zg4qV8=", "requires": { "any-promise": "^1.0.0" } @@ -11607,7 +11372,7 @@ }, "through": { "version": "2.3.8", - "resolved": "http://registry.npm.taobao.org/through/download/through-2.3.8.tgz", + "resolved": "https://registry.npm.taobao.org/through/download/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" }, "through2": { @@ -11626,9 +11391,9 @@ "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=" }, "thunky": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/thunky/download/thunky-1.0.3.tgz", - "integrity": "sha1-9d9zJFNAewkZHa5z4qjMc/OBqCY=", + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/thunky/download/thunky-1.1.0.tgz", + "integrity": "sha1-Wrr3FKlAXbBQRzK7zNLO3Z75U30=", "dev": true }, "timers-browserify": { @@ -11673,13 +11438,13 @@ }, "to-fast-properties": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/to-fast-properties/download/to-fast-properties-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/to-fast-properties/download/to-fast-properties-2.0.0.tgz?cache=0&sync_timestamp=1580550747747&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%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": "http://registry.npm.taobao.org/to-object-path/download/to-object-path-0.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/to-object-path/download/to-object-path-0.3.0.tgz", "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "dev": true, "requires": { @@ -11688,13 +11453,13 @@ "dependencies": { "is-buffer": { "version": "1.1.6", - "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", + "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz?cache=0&sync_timestamp=1588707106955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-1.1.6.tgz", "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", "dev": true }, "kind-of": { "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { @@ -11705,7 +11470,7 @@ }, "to-regex": { "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/to-regex/download/to-regex-3.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/to-regex/download/to-regex-3.0.2.tgz", "integrity": "sha1-E8/dmzNlUvMLUfM6iuG0Knp1mc4=", "dev": true, "requires": { @@ -11717,7 +11482,7 @@ "dependencies": { "extend-shallow": { "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { @@ -11727,7 +11492,7 @@ }, "is-extendable": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", "dev": true, "requires": { @@ -11758,21 +11523,13 @@ "dev": true }, "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.4.3.tgz", - "integrity": "sha1-U/Nto/R3g7CSWvoG/587FlKA94E=", + "version": "2.5.0", + "resolved": "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.5.0.tgz?cache=0&sync_timestamp=1584647110516&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftough-cookie%2Fdownload%2Ftough-cookie-2.5.0.tgz", + "integrity": "sha1-zZ+yoKodWhK0c72fuW+j3P9lreI=", "dev": true, "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } + "psl": "^1.1.28", + "punycode": "^2.1.1" } }, "trim-newlines": { @@ -11781,12 +11538,6 @@ "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", "dev": true }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/trim-right/download/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, "true-case-path": { "version": "1.0.3", "resolved": "https://registry.npm.taobao.org/true-case-path/download/true-case-path-1.0.3.tgz", @@ -11802,10 +11553,33 @@ "integrity": "sha1-8shUBoALmw90yfdGW4HqrSQSUvg=", "dev": true }, + "tsconfig-paths": { + "version": "3.9.0", + "resolved": "https://registry.npm.taobao.org/tsconfig-paths/download/tsconfig-paths-3.9.0.tgz", + "integrity": "sha1-CYVHpsREiAfo/Ljq4IEGTumjyQs=", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/json5/download/json5-1.0.1.tgz", + "integrity": "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + } + } + }, "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npm.taobao.org/tslib/download/tslib-1.10.0.tgz", - "integrity": "sha1-w8GflZc/sKYpc/sJ2Q2WHuQ+XIo=", + "version": "1.13.0", + "resolved": "https://registry.npm.taobao.org/tslib/download/tslib-1.13.0.tgz", + "integrity": "sha1-yIHhPMcBWJTtkUhi0nZDb6mkcEM=", "dev": true }, "tty-browserify": { @@ -11825,13 +11599,13 @@ }, "tweetnacl": { "version": "0.14.5", - "resolved": "https://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz", + "resolved": "https://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz?cache=0&sync_timestamp=1581364183265&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftweetnacl%2Fdownload%2Ftweetnacl-0.14.5.tgz", "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", "dev": true }, "type-check": { "version": "0.3.2", - "resolved": "https://registry.npm.taobao.org/type-check/download/type-check-0.3.2.tgz", + "resolved": "https://registry.npm.taobao.org/type-check/download/type-check-0.3.2.tgz?cache=0&sync_timestamp=1585882977555&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-check%2Fdownload%2Ftype-check-0.3.2.tgz", "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", "requires": { "prelude-ls": "~1.1.2" @@ -11861,7 +11635,7 @@ }, "uglify-js": { "version": "3.4.10", - "resolved": "https://registry.npm.taobao.org/uglify-js/download/uglify-js-3.4.10.tgz", + "resolved": "https://registry.npm.taobao.org/uglify-js/download/uglify-js-3.4.10.tgz?cache=0&sync_timestamp=1590575862599&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuglify-js%2Fdownload%2Fuglify-js-3.4.10.tgz", "integrity": "sha1-mtlWPY6zrN+404WX0q8dgV9qdV8=", "dev": true, "requires": { @@ -11871,7 +11645,7 @@ "dependencies": { "commander": { "version": "2.19.0", - "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.19.0.tgz?cache=0&sync_timestamp=1565398176321&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.19.0.tgz", + "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.19.0.tgz", "integrity": "sha1-9hmKqE5bg8RgVLlN3tv+1e6f8So=", "dev": true } @@ -11902,15 +11676,15 @@ } }, "unicode-match-property-value-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/unicode-match-property-value-ecmascript/download/unicode-match-property-value-ecmascript-1.1.0.tgz", - "integrity": "sha1-W0tCbgjROoA2Xg1lesemwexGonc=", + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/unicode-match-property-value-ecmascript/download/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha1-DZH2AO7rMJaqlisdb8iIduZOpTE=", "dev": true }, "unicode-property-aliases-ecmascript": { - "version": "1.0.5", - "resolved": "https://registry.npm.taobao.org/unicode-property-aliases-ecmascript/download/unicode-property-aliases-ecmascript-1.0.5.tgz", - "integrity": "sha1-qcxsx85joKMCP8meNBuUQx1AWlc=", + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/unicode-property-aliases-ecmascript/download/unicode-property-aliases-ecmascript-1.1.0.tgz?cache=0&sync_timestamp=1583945805856&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funicode-property-aliases-ecmascript%2Fdownload%2Funicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha1-3Vepn2IHvt/0Yoq++5TFDblByPQ=", "dev": true }, "union-value": { @@ -11963,7 +11737,7 @@ }, "unpipe": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz", "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, "unquote": { @@ -11974,7 +11748,7 @@ }, "unset-value": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/unset-value/download/unset-value-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/unset-value/download/unset-value-1.0.0.tgz", "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "dev": true, "requires": { @@ -11984,7 +11758,7 @@ "dependencies": { "has-value": { "version": "0.3.1", - "resolved": "http://registry.npm.taobao.org/has-value/download/has-value-0.3.1.tgz", + "resolved": "https://registry.npm.taobao.org/has-value/download/has-value-0.3.1.tgz", "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", "dev": true, "requires": { @@ -12006,21 +11780,21 @@ }, "has-values": { "version": "0.1.4", - "resolved": "http://registry.npm.taobao.org/has-values/download/has-values-0.1.4.tgz", + "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.1.2", - "resolved": "https://registry.npm.taobao.org/upath/download/upath-1.1.2.tgz", - "integrity": "sha1-PbZYYA7a7sy+bbXmhNZ+6MKs0Gg=", + "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.npm.taobao.org/upper-case/download/upper-case-1.1.3.tgz", + "resolved": "https://registry.npm.taobao.org/upper-case/download/upper-case-1.1.3.tgz?cache=0&sync_timestamp=1575601671982&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fupper-case%2Fdownload%2Fupper-case-1.1.3.tgz", "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", "dev": true }, @@ -12035,7 +11809,7 @@ }, "urix": { "version": "0.1.0", - "resolved": "http://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz", "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", "dev": true }, @@ -12069,16 +11843,27 @@ }, "dependencies": { "mime": { - "version": "2.4.4", - "resolved": "https://registry.npm.taobao.org/mime/download/mime-2.4.4.tgz?cache=0&sync_timestamp=1560034758817&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-2.4.4.tgz", - "integrity": "sha1-vXuRE1/GsBzePpuuM9ZZtj2IV+U=", + "version": "2.4.6", + "resolved": "https://registry.npm.taobao.org/mime/download/mime-2.4.6.tgz?cache=0&sync_timestamp=1590596728112&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-2.4.6.tgz", + "integrity": "sha1-5bQHyQ20QvK+tbFiNz0Htpr/pNE=", "dev": true + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } } } }, "url-parse": { "version": "1.4.7", - "resolved": "https://registry.npm.taobao.org/url-parse/download/url-parse-1.4.7.tgz", + "resolved": "https://registry.npm.taobao.org/url-parse/download/url-parse-1.4.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Furl-parse%2Fdownload%2Furl-parse-1.4.7.tgz", "integrity": "sha1-qKg1NejACjFuQDpdtKwbm4U64ng=", "dev": true, "requires": { @@ -12087,9 +11872,9 @@ } }, "urllib": { - "version": "2.34.0", - "resolved": "https://registry.npm.taobao.org/urllib/download/urllib-2.34.0.tgz", - "integrity": "sha1-kbxjDP3p3ZkL+0KumxqCx/at/hA=", + "version": "2.36.1", + "resolved": "https://registry.npm.taobao.org/urllib/download/urllib-2.36.1.tgz?cache=0&sync_timestamp=1591669747773&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Furllib%2Fdownload%2Furllib-2.36.1.tgz", + "integrity": "sha1-+9n7E7vBQOH8FbzbqHA9YUKn6zo=", "requires": { "any-promise": "^1.3.0", "content-type": "^1.0.2", @@ -12110,13 +11895,13 @@ }, "use": { "version": "3.1.1", - "resolved": "http://registry.npm.taobao.org/use/download/use-3.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/use/download/use-3.1.1.tgz", "integrity": "sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8=", "dev": true }, "util": { "version": "0.11.1", - "resolved": "https://registry.npm.taobao.org/util/download/util-0.11.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Futil%2Fdownload%2Futil-0.11.1.tgz", + "resolved": "https://registry.npm.taobao.org/util/download/util-0.11.1.tgz?cache=0&sync_timestamp=1588238331562&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Futil%2Fdownload%2Futil-0.11.1.tgz", "integrity": "sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE=", "dev": true, "requires": { @@ -12133,17 +11918,19 @@ }, "util-deprecate": { "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz", + "resolved": "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/util.promisify/download/util.promisify-1.0.0.tgz", - "integrity": "sha1-RA9xZaRZyaFtwUXrjnLzVocJcDA=", + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/util.promisify/download/util.promisify-1.0.1.tgz", + "integrity": "sha1-a693dLgO6w91INi4HQeYKlmruu4=", "dev": true, "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.2", + "has-symbols": "^1.0.1", + "object.getownpropertydescriptors": "^2.1.0" } }, "utila": { @@ -12153,9 +11940,9 @@ "dev": true }, "utility": { - "version": "1.16.1", - "resolved": "https://registry.npm.taobao.org/utility/download/utility-1.16.1.tgz", - "integrity": "sha1-OD9ctjAEQUdnNxtJweSMoBniaw8=", + "version": "1.16.3", + "resolved": "https://registry.npm.taobao.org/utility/download/utility-1.16.3.tgz", + "integrity": "sha1-Xf0R3nTmv92CbMShZ+YwHZL0tw0=", "requires": { "copy-to": "^2.0.1", "escape-html": "^1.0.3", @@ -12166,24 +11953,24 @@ }, "utils-merge": { "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz", + "resolved": "https://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz", "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", "dev": true }, "uuid": { - "version": "3.3.3", - "resolved": "https://registry.npm.taobao.org/uuid/download/uuid-3.3.3.tgz?cache=0&sync_timestamp=1566221202613&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuuid%2Fdownload%2Fuuid-3.3.3.tgz", - "integrity": "sha1-RWjwIW54dg7h2/Ok0s9T4iQRKGY=", + "version": "3.4.0", + "resolved": "https://registry.npm.taobao.org/uuid/download/uuid-3.4.0.tgz?cache=0&sync_timestamp=1590000998251&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuuid%2Fdownload%2Fuuid-3.4.0.tgz", + "integrity": "sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4=", "dev": true }, "v-click-outside-x": { - "version": "3.7.1", - "resolved": "https://registry.npm.taobao.org/v-click-outside-x/download/v-click-outside-x-3.7.1.tgz", - "integrity": "sha1-qgPqoOQeRMtSB9z4bC2fDdZAhME=" + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/v-click-outside-x/download/v-click-outside-x-4.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fv-click-outside-x%2Fdownload%2Fv-click-outside-x-4.1.0.tgz", + "integrity": "sha1-voJmgOLSVmaooYUzKSnUYkSqJEc=" }, "validate-npm-package-license": { "version": "3.0.4", - "resolved": "http://registry.npm.taobao.org/validate-npm-package-license/download/validate-npm-package-license-3.0.4.tgz", + "resolved": "https://registry.npm.taobao.org/validate-npm-package-license/download/validate-npm-package-license-3.0.4.tgz", "integrity": "sha1-/JH2uce6FchX9MssXe/uw51PQQo=", "dev": true, "requires": { @@ -12198,9 +11985,9 @@ "dev": true }, "vendors": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/vendors/download/vendors-1.0.3.tgz", - "integrity": "sha1-pkZ3gavTZiF8BQ+CAuflDMnu+MA=", + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/vendors/download/vendors-1.0.4.tgz?cache=0&sync_timestamp=1579857106626&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvendors%2Fdownload%2Fvendors-1.0.4.tgz", + "integrity": "sha1-4rgApT56Kbk1BsPPQRANFsTErY4=", "dev": true }, "verror": { @@ -12215,15 +12002,15 @@ } }, "vm-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/vm-browserify/download/vm-browserify-1.1.0.tgz", - "integrity": "sha1-vXbWojMj4sqP+hICjcBFWcdfkBk=", + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/vm-browserify/download/vm-browserify-1.1.2.tgz", + "integrity": "sha1-eGQcSIuObKkadfUR56OzKobl3aA=", "dev": true }, "vue": { - "version": "2.6.10", - "resolved": "https://registry.npm.taobao.org/vue/download/vue-2.6.10.tgz", - "integrity": "sha1-pysaQqTYKnIepDjRtr9V5mGVxjc=" + "version": "2.6.11", + "resolved": "https://registry.npm.taobao.org/vue/download/vue-2.6.11.tgz", + "integrity": "sha1-dllNh31LEiNEBuhONSdcbVFBJcU=" }, "vue-clipboard2": { "version": "0.2.1", @@ -12235,7 +12022,7 @@ }, "vue-eslint-parser": { "version": "2.0.3", - "resolved": "https://registry.npm.taobao.org/vue-eslint-parser/download/vue-eslint-parser-2.0.3.tgz", + "resolved": "https://registry.npm.taobao.org/vue-eslint-parser/download/vue-eslint-parser-2.0.3.tgz?cache=0&sync_timestamp=1589539313907&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-eslint-parser%2Fdownload%2Fvue-eslint-parser-2.0.3.tgz", "integrity": "sha1-wmjJbG2Uz+PZOKX3WTlZsMozYNE=", "dev": true, "optional": true, @@ -12250,7 +12037,7 @@ "dependencies": { "debug": { "version": "3.2.6", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", "dev": true, "optional": true, @@ -12260,7 +12047,7 @@ }, "eslint-scope": { "version": "3.7.3", - "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-3.7.3.tgz", + "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-3.7.3.tgz?cache=0&sync_timestamp=1591269986906&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-scope%2Fdownload%2Feslint-scope-3.7.3.tgz", "integrity": "sha1-u1ByANPRf2AkdjYWC0gmKEsQhTU=", "dev": true, "optional": true, @@ -12271,67 +12058,187 @@ } } }, - "vue-hot-reload-api": { - "version": "2.3.3", - "resolved": "https://registry.npm.taobao.org/vue-hot-reload-api/download/vue-hot-reload-api-2.3.3.tgz", - "integrity": "sha1-J1b0bLMlgFTF9HI96K5+hzAqHM8=", - "dev": true - }, - "vue-loader": { - "version": "15.7.1", - "resolved": "https://registry.npm.taobao.org/vue-loader/download/vue-loader-15.7.1.tgz?cache=0&sync_timestamp=1563435501637&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-loader%2Fdownload%2Fvue-loader-15.7.1.tgz", - "integrity": "sha1-bMrNQSKqgPabqqwI/ylaYuOu/P0=", - "dev": true, - "requires": { - "@vue/component-compiler-utils": "^3.0.0", - "hash-sum": "^1.0.2", - "loader-utils": "^1.1.0", - "vue-hot-reload-api": "^2.3.0", - "vue-style-loader": "^4.1.0" - } - }, - "vue-router": { - "version": "3.1.2", - "resolved": "https://registry.npm.taobao.org/vue-router/download/vue-router-3.1.2.tgz", - "integrity": "sha1-LgkEcDVF2r3UKyt6LmF/AvmaGWk=" - }, - "vue-style-loader": { - "version": "4.1.2", - "resolved": "https://registry.npm.taobao.org/vue-style-loader/download/vue-style-loader-4.1.2.tgz", - "integrity": "sha1-3t80mAbyXOtOZPOtfApE+6c1/Pg=", - "dev": true, - "requires": { - "hash-sum": "^1.0.2", - "loader-utils": "^1.0.2" - } - }, - "vue-template-compiler": { - "version": "2.6.10", - "resolved": "https://registry.npm.taobao.org/vue-template-compiler/download/vue-template-compiler-2.6.10.tgz", - "integrity": "sha1-MjtPNJXwT6o1AzN6gvXWUHeZycw=", - "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 - }, - "watchpack": { - "version": "1.6.0", - "resolved": "https://registry.npm.taobao.org/watchpack/download/watchpack-1.6.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwatchpack%2Fdownload%2Fwatchpack-1.6.0.tgz", - "integrity": "sha1-S8EsLr6KonenHx0/FNaFx7RGzQA=", - "dev": true, - "requires": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" - } - }, + "vue-hot-reload-api": { + "version": "2.3.4", + "resolved": "https://registry.npm.taobao.org/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.2", + "resolved": "https://registry.npm.taobao.org/vue-loader/download/vue-loader-15.9.2.tgz?cache=0&sync_timestamp=1590426395302&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-loader%2Fdownload%2Fvue-loader-15.9.2.tgz", + "integrity": "sha1-rgH19MnGoEv/RIORLnLvkaQCwa4=", + "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" + } + }, + "vue-router": { + "version": "3.3.4", + "resolved": "https://registry.npm.taobao.org/vue-router/download/vue-router-3.3.4.tgz?cache=0&sync_timestamp=1592040914451&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-router%2Fdownload%2Fvue-router-3.3.4.tgz", + "integrity": "sha1-Tjirw0oRxBtsPYJERJouNjumJQs=" + }, + "vue-style-loader": { + "version": "4.1.2", + "resolved": "https://registry.npm.taobao.org/vue-style-loader/download/vue-style-loader-4.1.2.tgz", + "integrity": "sha1-3t80mAbyXOtOZPOtfApE+6c1/Pg=", + "dev": true, + "requires": { + "hash-sum": "^1.0.2", + "loader-utils": "^1.0.2" + } + }, + "vue-template-compiler": { + "version": "2.6.11", + "resolved": "https://registry.npm.taobao.org/vue-template-compiler/download/vue-template-compiler-2.6.11.tgz", + "integrity": "sha1-wEcE749JixUxMAGJk+VjCdRpgIA=", + "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 + }, + "watchpack": { + "version": "1.7.2", + "resolved": "https://registry.npm.taobao.org/watchpack/download/watchpack-1.7.2.tgz", + "integrity": "sha1-wC5NTUmRPD5+EiwzJTZa+dMx6ao=", + "dev": true, + "requires": { + "chokidar": "^3.4.0", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0", + "watchpack-chokidar2": "^2.0.0" + } + }, + "watchpack-chokidar2": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/watchpack-chokidar2/download/watchpack-chokidar2-2.0.0.tgz", + "integrity": "sha1-mUihhmy71suCTeoTp+1pH2yN3/A=", + "dev": true, + "optional": true, + "requires": { + "chokidar": "^2.1.8" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz", + "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", + "dev": true, + "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.npm.taobao.org/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.npm.taobao.org/chokidar/download/chokidar-2.1.8.tgz?cache=0&sync_timestamp=1587911215694&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%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.npm.taobao.org/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.npm.taobao.org/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.npm.taobao.org/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.npm.taobao.org/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.npm.taobao.org/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", @@ -12351,16 +12258,16 @@ } }, "webpack": { - "version": "4.39.2", - "resolved": "https://registry.npm.taobao.org/webpack/download/webpack-4.39.2.tgz?cache=0&sync_timestamp=1565771497656&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack%2Fdownload%2Fwebpack-4.39.2.tgz", - "integrity": "sha1-yapcF3bXwwnRs5EXZPAojIwoFqo=", + "version": "4.43.0", + "resolved": "https://registry.npm.taobao.org/webpack/download/webpack-4.43.0.tgz?cache=0&sync_timestamp=1592434778507&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack%2Fdownload%2Fwebpack-4.43.0.tgz", + "integrity": "sha1-xIVHsR1WMiTFYdrRFyyKoLimeOY=", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/wasm-edit": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "acorn": "^6.2.1", + "@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", @@ -12371,24 +12278,37 @@ "loader-utils": "^1.2.3", "memory-fs": "^0.4.1", "micromatch": "^3.1.10", - "mkdirp": "^0.5.1", + "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.1", - "watchpack": "^1.6.0", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.6.1", "webpack-sources": "^1.4.1" + }, + "dependencies": { + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } } }, "webpack-bundle-analyzer": { - "version": "3.4.1", - "resolved": "https://registry.npm.taobao.org/webpack-bundle-analyzer/download/webpack-bundle-analyzer-3.4.1.tgz", - "integrity": "sha1-QwVEx7oWMbrM9nNHXKgwDLdKPEc=", + "version": "3.8.0", + "resolved": "https://registry.npm.taobao.org/webpack-bundle-analyzer/download/webpack-bundle-analyzer-3.8.0.tgz?cache=0&sync_timestamp=1589893683541&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-bundle-analyzer%2Fdownload%2Fwebpack-bundle-analyzer-3.8.0.tgz", + "integrity": "sha1-zms/kI2vBp/R9yZvaSy7O97ZuhY=", "dev": true, "requires": { - "acorn": "^6.0.7", - "acorn-walk": "^6.1.1", + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1", "bfj": "^6.1.1", "chalk": "^2.4.1", "commander": "^2.18.0", @@ -12400,11 +12320,25 @@ "mkdirp": "^0.5.1", "opener": "^1.5.1", "ws": "^6.0.0" + }, + "dependencies": { + "acorn": { + "version": "7.3.1", + "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-7.3.1.tgz?cache=0&sync_timestamp=1591869424806&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-7.3.1.tgz", + "integrity": "sha1-hQEHVNtTw/uvO56j4IOqXF0Uf/0=", + "dev": true + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npm.taobao.org/acorn-walk/download/acorn-walk-7.2.0.tgz?cache=0&sync_timestamp=1592373515240&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn-walk%2Fdownload%2Facorn-walk-7.2.0.tgz", + "integrity": "sha1-DeiJpgEgOQmw++B7iTjcIdLpZ7w=", + "dev": true + } } }, "webpack-chain": { "version": "4.12.1", - "resolved": "https://registry.npm.taobao.org/webpack-chain/download/webpack-chain-4.12.1.tgz", + "resolved": "https://registry.npm.taobao.org/webpack-chain/download/webpack-chain-4.12.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-chain%2Fdownload%2Fwebpack-chain-4.12.1.tgz", "integrity": "sha1-bIQ5u7KrVQlS1g4eqTGRQZBsAqY=", "dev": true, "requires": { @@ -12414,71 +12348,72 @@ "dependencies": { "deepmerge": { "version": "1.5.2", - "resolved": "https://registry.npm.taobao.org/deepmerge/download/deepmerge-1.5.2.tgz", + "resolved": "https://registry.npm.taobao.org/deepmerge/download/deepmerge-1.5.2.tgz?cache=0&sync_timestamp=1572279720382&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdeepmerge%2Fdownload%2Fdeepmerge-1.5.2.tgz", "integrity": "sha1-EEmdhohEza1P7ghC34x/bwyVp1M=", "dev": true } } }, "webpack-dev-middleware": { - "version": "3.7.0", - "resolved": "https://registry.npm.taobao.org/webpack-dev-middleware/download/webpack-dev-middleware-3.7.0.tgz", - "integrity": "sha1-73UdJfTppcijXaYAxf2jWCtcbP8=", + "version": "3.7.2", + "resolved": "https://registry.npm.taobao.org/webpack-dev-middleware/download/webpack-dev-middleware-3.7.2.tgz?cache=0&sync_timestamp=1582191620751&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-dev-middleware%2Fdownload%2Fwebpack-dev-middleware-3.7.2.tgz", + "integrity": "sha1-ABnD23FuP6XOy/ZPKriKdLqzMfM=", "dev": true, "requires": { "memory-fs": "^0.4.1", - "mime": "^2.4.2", + "mime": "^2.4.4", + "mkdirp": "^0.5.1", "range-parser": "^1.2.1", "webpack-log": "^2.0.0" }, "dependencies": { "mime": { - "version": "2.4.4", - "resolved": "https://registry.npm.taobao.org/mime/download/mime-2.4.4.tgz?cache=0&sync_timestamp=1560034758817&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-2.4.4.tgz", - "integrity": "sha1-vXuRE1/GsBzePpuuM9ZZtj2IV+U=", + "version": "2.4.6", + "resolved": "https://registry.npm.taobao.org/mime/download/mime-2.4.6.tgz?cache=0&sync_timestamp=1590596728112&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-2.4.6.tgz", + "integrity": "sha1-5bQHyQ20QvK+tbFiNz0Htpr/pNE=", "dev": true } } }, "webpack-dev-server": { - "version": "3.8.0", - "resolved": "https://registry.npm.taobao.org/webpack-dev-server/download/webpack-dev-server-3.8.0.tgz", - "integrity": "sha1-BsxPwvRAQoUI0Ol3DaH+8Q5e8o0=", + "version": "3.11.0", + "resolved": "https://registry.npm.taobao.org/webpack-dev-server/download/webpack-dev-server-3.11.0.tgz", + "integrity": "sha1-jxVKO84bz9HMYY705wMniFXn/4w=", "dev": true, "requires": { "ansi-html": "0.0.7", "bonjour": "^3.5.0", - "chokidar": "^2.1.6", + "chokidar": "^2.1.8", "compression": "^1.7.4", "connect-history-api-fallback": "^1.6.0", "debug": "^4.1.1", "del": "^4.1.1", "express": "^4.17.1", - "html-entities": "^1.2.1", - "http-proxy-middleware": "^0.19.1", + "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.0", + "is-absolute-url": "^3.0.3", "killable": "^1.0.1", - "loglevel": "^1.6.3", + "loglevel": "^1.6.8", "opn": "^5.5.0", "p-retry": "^3.0.1", - "portfinder": "^1.0.21", + "portfinder": "^1.0.26", "schema-utils": "^1.0.0", - "selfsigned": "^1.10.4", + "selfsigned": "^1.10.7", "semver": "^6.3.0", "serve-index": "^1.9.1", - "sockjs": "0.3.19", - "sockjs-client": "1.3.0", - "spdy": "^4.0.1", + "sockjs": "0.3.20", + "sockjs-client": "1.4.0", + "spdy": "^4.0.2", "strip-ansi": "^3.0.1", "supports-color": "^6.1.0", "url": "^0.11.0", - "webpack-dev-middleware": "^3.7.0", + "webpack-dev-middleware": "^3.7.2", "webpack-log": "^2.0.0", "ws": "^6.2.1", - "yargs": "12.0.5" + "yargs": "^13.3.2" }, "dependencies": { "ansi-regex": { @@ -12487,43 +12422,68 @@ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", "dev": true }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-4.1.0.tgz", - "integrity": "sha1-NIQi2+gtgAswIu709qwQvy5NG0k=", + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz", + "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", "dev": true, "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" }, "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "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": { - "ansi-regex": "^3.0.0" + "remove-trailing-separator": "^1.0.1" } } } }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-1.13.1.tgz", + "integrity": "sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U=", + "dev": true + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npm.taobao.org/chokidar/download/chokidar-2.1.8.tgz?cache=0&sync_timestamp=1587911215694&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%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" + } + }, "debug": { "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", "dev": true, "requires": { "ms": "^2.1.1" } }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz", + "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=", + "dev": true + }, "find-up": { "version": "3.0.0", "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz", @@ -12533,25 +12493,51 @@ "locate-path": "^3.0.0" } }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/get-caller-file/download/get-caller-file-1.0.3.tgz", - "integrity": "sha1-+Xj6TJDR3+f/LWvtoqUV5xO9z0o=", - "dev": true + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npm.taobao.org/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.npm.taobao.org/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.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } }, "is-absolute-url": { - "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-3.0.1.tgz", - "integrity": "sha1-4xXL3LvD1niVMtWRlUrHig5QSfY=", + "version": "3.0.3", + "resolved": "https://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-3.0.3.tgz", + "integrity": "sha1-lsaiK2ojkpsR6gr7GDbDatSl1pg=", "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=", + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, "requires": { - "number-is-nan": "^1.0.0" + "binary-extensions": "^1.0.0" } }, "locate-path": { @@ -12565,9 +12551,9 @@ } }, "p-limit": { - "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.2.1.tgz", - "integrity": "sha1-qgeniMwxUck5tRMfY1cPDdIAlTc=", + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.3.0.tgz?cache=0&sync_timestamp=1591460606987&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-limit%2Fdownload%2Fp-limit-2.3.0.tgz", + "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE=", "dev": true, "requires": { "p-try": "^2.0.0" @@ -12588,18 +12574,62 @@ "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", "dev": true }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/require-main-filename/download/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/readdirp/download/readdirp-2.2.1.tgz", + "integrity": "sha1-DodiKjMlqjPokihcr4tOhGUppSU=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } }, "semver": { "version": "6.3.0", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1565627380363&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz", "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=", "dev": true }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-3.1.0.tgz", + "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.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz", + "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=", + "dev": true + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz", + "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz", @@ -12618,53 +12648,28 @@ "has-flag": "^3.0.0" } }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-12.0.5.tgz", - "integrity": "sha1-BfWZe2CWR7ZPZrgeO0sQo2jnrRM=", + "version": "13.3.2", + "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-13.3.2.tgz?cache=0&sync_timestamp=1590131311795&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-13.3.2.tgz", + "integrity": "sha1-rX/+/sGqWVZayRX4Lcyzipwxot0=", "dev": true, "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", + "cliui": "^5.0.0", "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", + "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", + "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^2.0.0", + "string-width": "^3.0.0", "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" } }, "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-11.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-11.1.1.tgz", - "integrity": "sha1-h5oIZZc7yp9rq1y987HGfsfTvPQ=", + "version": "13.1.2", + "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-13.1.2.tgz?cache=0&sync_timestamp=1590107599564&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-13.1.2.tgz", + "integrity": "sha1-Ew8JcC667vJlDVTObj5XBvek+zg=", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -12675,7 +12680,7 @@ }, "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=1564684667159&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-log%2Fdownload%2Fwebpack-log-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/webpack-log/download/webpack-log-2.0.0.tgz", "integrity": "sha1-W3ko4GN1k/EZ0y9iJ8HgrDHhtH8=", "dev": true, "requires": { @@ -12684,17 +12689,17 @@ } }, "webpack-merge": { - "version": "4.2.1", - "resolved": "https://registry.npm.taobao.org/webpack-merge/download/webpack-merge-4.2.1.tgz", - "integrity": "sha1-XpI8+ALqKs5P1a8dMkc2imM0ibQ=", + "version": "4.2.2", + "resolved": "https://registry.npm.taobao.org/webpack-merge/download/webpack-merge-4.2.2.tgz", + "integrity": "sha1-onxS6ng9E5iv0gh/VH17nS9DY00=", "dev": true, "requires": { - "lodash": "^4.17.5" + "lodash": "^4.17.15" } }, "webpack-sources": { "version": "1.4.3", - "resolved": "https://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.4.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-sources%2Fdownload%2Fwebpack-sources-1.4.3.tgz", + "resolved": "https://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.4.3.tgz", "integrity": "sha1-7t2OwLko+/HL/plOItLYkPMwqTM=", "dev": true, "requires": { @@ -12703,25 +12708,23 @@ } }, "websocket-driver": { - "version": "0.7.3", - "resolved": "https://registry.npm.taobao.org/websocket-driver/download/websocket-driver-0.7.3.tgz", - "integrity": "sha1-otTg1PTxFvHmKX66WLBdQwEA6fk=", + "version": "0.6.5", + "resolved": "https://registry.npm.taobao.org/websocket-driver/download/websocket-driver-0.6.5.tgz?cache=0&sync_timestamp=1591289007652&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebsocket-driver%2Fdownload%2Fwebsocket-driver-0.6.5.tgz", + "integrity": "sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY=", "dev": true, "requires": { - "http-parser-js": ">=0.4.0 <0.4.11", - "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { - "version": "0.1.3", - "resolved": "https://registry.npm.taobao.org/websocket-extensions/download/websocket-extensions-0.1.3.tgz", - "integrity": "sha1-XS/yKXcAPsaHpLhwc9+7rBRszyk=", + "version": "0.1.4", + "resolved": "https://registry.npm.taobao.org/websocket-extensions/download/websocket-extensions-0.1.4.tgz?cache=0&sync_timestamp=1591103014229&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebsocket-extensions%2Fdownload%2Fwebsocket-extensions-0.1.4.tgz", + "integrity": "sha1-f4RzvIOd/YdgituV1+sHUhFXikI=", "dev": true }, "which": { "version": "1.3.1", - "resolved": "http://registry.npm.taobao.org/which/download/which-1.3.1.tgz", + "resolved": "https://registry.npm.taobao.org/which/download/which-1.3.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwhich%2Fdownload%2Fwhich-1.3.1.tgz", "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=", "dev": true, "requires": { @@ -12730,7 +12733,7 @@ }, "which-module": { "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/which-module/download/which-module-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/which-module/download/which-module-2.0.0.tgz", "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, @@ -12745,16 +12748,16 @@ }, "win-release": { "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/win-release/download/win-release-1.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwin-release%2Fdownload%2Fwin-release-1.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/win-release/download/win-release-1.1.1.tgz", "integrity": "sha1-X6VeAr58qTTt/BJmVjLoSbcuUgk=", "requires": { "semver": "^5.0.1" } }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/wordwrap/download/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npm.taobao.org/word-wrap/download/word-wrap-1.2.3.tgz", + "integrity": "sha1-YQY29rH3A4kb00dxzLF/uTtHB5w=" }, "worker-farm": { "version": "1.7.0", @@ -12766,25 +12769,71 @@ } }, "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-5.1.0.tgz", - "integrity": "sha1-H9H2cjXVttD+54EFYAG/tpTAOwk=", + "version": "6.2.0", + "resolved": "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-6.2.0.tgz", + "integrity": "sha1-6Tk7oHEC5skaOyIUePAlfNKFblM=", "dev": true, "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-5.0.0.tgz", + "integrity": "sha1-OIU59VF5vzkznIGvMKZU1p+Hy3U=", + "dev": true + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-4.2.1.tgz", + "integrity": "sha1-kK51xCTQCNJiTFvynq0xd+v881k=", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "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": "3.1.0", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz", - "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-4.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-4.2.0.tgz", + "integrity": "sha1-lSGCxGzHssMT0VluYjmSvRY7crU=", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-6.0.0.tgz", + "integrity": "sha1-CxVx3XZpzNTz4G4U7x7tJiJa5TI=", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" } } } @@ -12814,22 +12863,22 @@ } }, "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npm.taobao.org/xml2js/download/xml2js-0.4.19.tgz", - "integrity": "sha1-aGwg8hMgnpSr8NG88e+qKRx4J6c=", + "version": "0.4.23", + "resolved": "https://registry.npm.taobao.org/xml2js/download/xml2js-0.4.23.tgz?cache=0&sync_timestamp=1576775965247&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxml2js%2Fdownload%2Fxml2js-0.4.23.tgz", + "integrity": "sha1-oMaVFnUkIesqx1juTUzPWIQ+rGY=", "requires": { "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" + "xmlbuilder": "~11.0.0" } }, "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npm.taobao.org/xmlbuilder/download/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + "version": "11.0.1", + "resolved": "https://registry.npm.taobao.org/xmlbuilder/download/xmlbuilder-11.0.1.tgz?cache=0&sync_timestamp=1586386177211&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxmlbuilder%2Fdownload%2Fxmlbuilder-11.0.1.tgz", + "integrity": "sha1-vpuuHIoEbnazESdyY0fQrXACvrM=" }, "xregexp": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/xregexp/download/xregexp-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxregexp%2Fdownload%2Fxregexp-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/xregexp/download/xregexp-2.0.0.tgz?cache=0&sync_timestamp=1581429204252&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxregexp%2Fdownload%2Fxregexp-2.0.0.tgz", "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=" }, "xtend": { @@ -12839,68 +12888,92 @@ }, "y18n": { "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/y18n/download/y18n-4.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/y18n/download/y18n-4.0.0.tgz", "integrity": "sha1-le+U+F7MgdAHwmThkKEg8KPIVms=", "dev": true }, "yallist": { - "version": "2.1.2", - "resolved": "http://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-3.1.1.tgz?cache=0&sync_timestamp=1569874223546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-3.1.1.tgz", + "integrity": "sha1-27fa+b/YusmrRev2ArjLrQ1dCP0=" }, "yargs": { - "version": "13.3.0", - "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-13.3.0.tgz", - "integrity": "sha1-TGV6VeB+Xyz5R/ijZlZ8BKDe3IM=", + "version": "15.3.1", + "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-15.3.1.tgz?cache=0&sync_timestamp=1590131311795&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-15.3.1.tgz", + "integrity": "sha1-lQW0cnY5Y+VK/mAUitJ6MwgY6Ys=", "dev": true, "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.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", + "string-width": "^4.2.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^13.1.1" + "yargs-parser": "^18.1.1" }, "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-5.0.0.tgz", + "integrity": "sha1-OIU59VF5vzkznIGvMKZU1p+Hy3U=", + "dev": true + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npm.taobao.org/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" + } + }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-4.1.0.tgz", + "integrity": "sha1-l6/n1s3AvFkoWEt8jXsW6KmqXRk=", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, - "locate-path": { + "is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", + "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 + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-5.0.0.tgz", + "integrity": "sha1-Gvujlq/WdqbUJQTQpno6frn2KqA=", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, "p-limit": { - "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.2.1.tgz", - "integrity": "sha1-qgeniMwxUck5tRMfY1cPDdIAlTc=", + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.3.0.tgz?cache=0&sync_timestamp=1591460606987&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-limit%2Fdownload%2Fp-limit-2.3.0.tgz", + "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE=", "dev": true, "requires": { "p-try": "^2.0.0" } }, "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-4.1.0.tgz", + "integrity": "sha1-o0KLtwiLOmApL2aRkni3wpetTwc=", "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "^2.2.0" } }, "p-try": { @@ -12909,23 +12982,38 @@ "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", "dev": true }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/path-exists/download/path-exists-4.0.0.tgz", + "integrity": "sha1-UTvb4tO5XXdi6METfvoZXGxhtbM=", + "dev": true + }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz", - "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-4.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-4.2.0.tgz", + "integrity": "sha1-lSGCxGzHssMT0VluYjmSvRY7crU=", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-6.0.0.tgz", + "integrity": "sha1-CxVx3XZpzNTz4G4U7x7tJiJa5TI=", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" } } } }, "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-13.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-13.1.1.tgz", - "integrity": "sha1-0mBYUyqgbTZf4JH2ofwGsvfl7KA=", + "version": "18.1.3", + "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-18.1.3.tgz?cache=0&sync_timestamp=1590107599564&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-18.1.3.tgz", + "integrity": "sha1-vmjEl1xrKr9GkjawyHA2L6sJp7A=", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -12946,7 +13034,7 @@ "dependencies": { "cross-spawn": { "version": "5.1.0", - "resolved": "http://registry.npm.taobao.org/cross-spawn/download/cross-spawn-5.1.0.tgz", + "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-5.1.0.tgz", "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "dev": true, "requires": { @@ -12976,11 +13064,27 @@ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", "dev": true }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz", + "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, "normalize-path": { "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/normalize-path/download/normalize-path-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/normalize-path/download/normalize-path-1.0.0.tgz", "integrity": "sha1-MtDkcvkf80VwHBWoMRAY07CpA3k=", "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz?cache=0&sync_timestamp=1569874223546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyallist%2Fdownload%2Fyallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true } } } diff --git a/web/dashboard/src/app.vue b/web/dashboard/src/app.vue index 771ba01..a4160d8 100644 --- a/web/dashboard/src/app.vue +++ b/web/dashboard/src/app.vue @@ -1,6 +1,6 @@