From 6d0ec3713581a263042d894b5824d34286285d26 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Thu, 22 Oct 2020 09:32:58 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A0=BC=E5=BC=8FPDF?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E9=98=B2=E6=AD=A2=E5=9B=BE=E8=A3=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/manual_kafka_op/add_cluster.pdf | Bin 0 -> 905682 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/manual_kafka_op/add_cluster.pdf diff --git a/docs/manual_kafka_op/add_cluster.pdf b/docs/manual_kafka_op/add_cluster.pdf new file mode 100644 index 0000000000000000000000000000000000000000..ba7e13e5a6abc1d0c71e9ce7953270e5c0e7abb1 GIT binary patch literal 905682 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�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

)ly#Z1^|V~zfxfM7e+v>6(goEZWMaBq19hb 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 %>)mh{8dr4Y9h@B5+-BelI2mlJaAt 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%0AjJ5) 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

P7{{ngeo=5MaRl8xWh8?h;O0@i9Nckgp%>J1? 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%0AGg+JnuzCIpu-r4N$6gEJ^~#) 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%0APAuW4|8rsG>_SUn&$Mi7qj#dK3h#pi$1k# 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 Date: Mon, 26 Oct 2020 11:17:45 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=BC=80=E6=94=BE=E6=8E=A5=E5=8F=A3&?= =?UTF-8?q?=E8=BF=91=E6=9C=9FBUG=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/bizenum/ConsumeHealthEnum.java | 46 + .../common/bizenum/OffsetResetTypeEnum.java | 21 + .../manager/common/constant/ApiPrefix.java | 27 +- .../common/constant/SystemCodeConstant.java | 8 - .../entity/DeprecatedResponseResult.java | 83 - .../kafka/manager/common/entity/Result.java | 16 + .../manager/common/entity/ResultStatus.java | 3 + .../gateway/KafkaBootstrapServerConfig.java | 8 +- .../entity/pojo/OperationHistoryDO.java | 90 - .../common/entity/vo/normal/app/AppVO.java | 12 + .../entity/vo/thirdpart/AppBasicInfoVO.java | 90 - .../kafka/manager/common/utils/HttpUtils.java | 13 + .../common/utils/jmx/JmxConnectorWrap.java | 7 +- kafka-manager-console/package-lock.json | 9699 +++++++++++++++++ .../cache/PhysicalClusterMetadataManager.java | 10 +- .../impl/GatewayConfigServiceImpl.java | 4 +- .../service/impl/ConfigServiceImpl.java | 7 - .../service/impl/ConsumerServiceImpl.java | 2 +- .../service/impl/ExpertServiceImpl.java | 2 +- .../manager/service/utils/ConfigUtils.java | 11 + .../zookeeper/BrokerStateListener.java | 7 +- .../src/main/resources/mapper/ClusterDao.xml | 4 + .../account/common/entry/N9eResult.java | 35 + .../account/common/entry/N9eUserData.java | 134 + .../account/BaseEnterpriseStaffService.java | 2 +- .../manager/kcm/component/agent/n9e/N9e.java | 10 +- .../main/resources/application-kcm-dev.yml | 7 - .../monitor/component/n9e/N9eConverter.java | 129 +- .../monitor/component/n9e/N9eService.java | 138 +- .../component/n9e/entry/N9eNotifyGroup.java | 26 + .../n9e/entry/N9eNotifyGroupElem.java | 90 + .../component/n9e/entry/N9eStrategy.java | 242 + .../n9e/entry/N9eStrategyAlertUpgrade.java | 59 + .../n9e/entry/N9eStrategyExpression.java | 70 + .../n9e/entry/N9eStrategyFilter.java | 48 + .../resources/application-monitor-dev.yml | 3 - .../notify/notifyer/KafkaNotifierService.java | 4 +- .../main/resources/application-notify-dev.yml | 8 - .../manager/openapi/ThirdPartService.java | 20 + .../kafka/manager/openapi/ThirdPartUtils.java | 15 + .../common/constant/ThirdPartConstant.java | 18 + .../openapi/common/dto/ConsumeHealthDTO.java | 83 + .../openapi/common/dto/OffsetResetDTO.java | 208 + .../openapi/common/vo/BrokerRegionVO.java | 57 + .../openapi/common/vo/ConsumeHealthVO.java | 28 + .../common/vo/ThirdPartBrokerOverviewVO.java | 59 + .../common/vo/TopicOffsetChangedVO.java | 33 + .../common/vo/TopicStatisticMetricsVO.java | 34 + .../openapi/impl/ThirdPartServiceImpl.java | 200 + .../metrics/delete/DeleteMetrics.java | 1 - .../kafka/manager/web/MainApplication.java | 5 + .../gateway/GatewayHeartbeatController.java | 14 +- .../gateway/GatewayReportController.java | 10 +- .../gateway/GatewaySecurityController.java | 27 +- .../GatewayServiceDiscoveryController.java | 59 +- .../thirdpart/ThirdPartAppController.java | 49 + .../thirdpart/ThirdPartBrokerController.java | 109 + .../thirdpart/ThirdPartConsumeController.java | 171 + .../thirdpart/ThirdPartTopicController.java | 160 + .../manager/web/config/WebMvcConfig.java | 3 +- .../web/inteceptor/WebMetricsInterceptor.java | 6 +- .../src/main/resources/application.yml | 17 +- 62 files changed, 12138 insertions(+), 423 deletions(-) create mode 100644 kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/ConsumeHealthEnum.java create mode 100644 kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/OffsetResetTypeEnum.java delete mode 100644 kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/DeprecatedResponseResult.java delete mode 100644 kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/pojo/OperationHistoryDO.java delete mode 100644 kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/thirdpart/AppBasicInfoVO.java create mode 100644 kafka-manager-console/package-lock.json create mode 100644 kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eResult.java create mode 100644 kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eUserData.java delete mode 100644 kafka-manager-extends/kafka-manager-kcm/src/main/resources/application-kcm-dev.yml create mode 100644 kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eNotifyGroup.java create mode 100644 kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eNotifyGroupElem.java create mode 100644 kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategy.java create mode 100644 kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyAlertUpgrade.java create mode 100644 kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyExpression.java create mode 100644 kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyFilter.java delete mode 100644 kafka-manager-extends/kafka-manager-monitor/src/main/resources/application-monitor-dev.yml delete mode 100644 kafka-manager-extends/kafka-manager-notify/src/main/resources/application-notify-dev.yml create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/ThirdPartService.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/ThirdPartUtils.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/constant/ThirdPartConstant.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/dto/ConsumeHealthDTO.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/dto/OffsetResetDTO.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/BrokerRegionVO.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/ConsumeHealthVO.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/ThirdPartBrokerOverviewVO.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/TopicOffsetChangedVO.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/TopicStatisticMetricsVO.java create mode 100644 kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/impl/ThirdPartServiceImpl.java create mode 100644 kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartAppController.java create mode 100644 kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartBrokerController.java create mode 100644 kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartConsumeController.java create mode 100644 kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartTopicController.java diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/ConsumeHealthEnum.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/ConsumeHealthEnum.java new file mode 100644 index 00000000..74d2d8ab --- /dev/null +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/ConsumeHealthEnum.java @@ -0,0 +1,46 @@ +package com.xiaojukeji.kafka.manager.common.bizenum; + +/** + * 消费健康 + * @author zengqiao + * @date 20/5/22 + */ +public enum ConsumeHealthEnum { + UNKNOWN(-1, "unknown"), + HEALTH(0, "health"), + UNHEALTH(1, "unhealth"), + ; + + private Integer code; + + private String message; + + ConsumeHealthEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public void setCode(Integer code) { + this.code = code; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + @Override + public String toString() { + return "ConsumeHealthEnum{" + + "code=" + code + + ", message='" + message + '\'' + + '}'; + } +} diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/OffsetResetTypeEnum.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/OffsetResetTypeEnum.java new file mode 100644 index 00000000..b69a8a25 --- /dev/null +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/OffsetResetTypeEnum.java @@ -0,0 +1,21 @@ +package com.xiaojukeji.kafka.manager.common.bizenum; + +/** + * @author zengqiao + * @date 20/10/26 + */ +public enum OffsetResetTypeEnum { + RESET_BY_TIME(0), + + RESET_BY_OFFSET(1); + + private final Integer code; + + OffsetResetTypeEnum(Integer code) { + this.code = code; + } + + public Integer getCode() { + return code; + } +} diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/constant/ApiPrefix.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/constant/ApiPrefix.java index 5cd1ab5b..3690514f 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/constant/ApiPrefix.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/constant/ApiPrefix.java @@ -6,21 +6,20 @@ package com.xiaojukeji.kafka.manager.common.constant; * @date 20/4/16 */ public class ApiPrefix { - public static final String API_V1_SSO_PREFIX = "/api/v1/sso/"; + public static final String API_PREFIX = "/api/"; + public static final String API_V1_PREFIX = API_PREFIX + "v1/"; + public static final String API_V2_PREFIX = API_PREFIX + "v2/"; - public static final String API_V1_NORMAL_PREFIX = "/api/v1/normal/"; + // console + public static final String API_V1_SSO_PREFIX = API_V1_PREFIX + "sso/"; + public static final String API_V1_NORMAL_PREFIX = API_V1_PREFIX + "normal/"; + public static final String API_V1_RD_PREFIX = API_V1_PREFIX + "rd/"; + public static final String API_V1_OP_PREFIX = API_V1_PREFIX + "op/"; - public static final String API_V1_RD_PREFIX = "/api/v1/rd/"; + // open + public static final String API_V1_THIRD_PART_PREFIX = API_V1_PREFIX + "third-part/"; + public static final String API_V2_THIRD_PART_PREFIX = API_V2_PREFIX + "third-part/"; - public static final String API_V1_OP_PREFIX = "/api/v1/op/"; - - public static final String API_V1_THIRD_PART_PREFIX = "/api/v1/third-part/"; - - public static final String API_V2_THIRD_PART_PREFIX = "/api/v2/third-part/"; - - public static final String API_V1_OBSOLETE_PREFIX = "/api/v1/"; - - public static final String API_V2_OBSOLETE_PREFIX = "/api/v2/"; - - public static final String GATEWAY_API_V1_PREFIX = "/gateway/api/v1/"; + // gateway + public static final String GATEWAY_API_V1_PREFIX = "/gateway" + API_V1_PREFIX; } \ No newline at end of file diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/constant/SystemCodeConstant.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/constant/SystemCodeConstant.java index 5fc76f03..c3162a4b 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/constant/SystemCodeConstant.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/constant/SystemCodeConstant.java @@ -5,13 +5,5 @@ package com.xiaojukeji.kafka.manager.common.constant; * @date 20/7/28 */ public class SystemCodeConstant { - public static final String LOG_X = "LogX"; - - public static final String LEO = "leo"; - - public static final String DATA_DREAM = "datadream"; - public static final String KAFKA_MANAGER = "kafka-manager"; - - public static final String CHORUS = "chorus"; // 治理平台-服务治理 } \ No newline at end of file diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/DeprecatedResponseResult.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/DeprecatedResponseResult.java deleted file mode 100644 index 08b12721..00000000 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/DeprecatedResponseResult.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.xiaojukeji.kafka.manager.common.entity; - -/** - * @author zengqiao - * @date 20/7/27 - */ -public class DeprecatedResponseResult { - public static final String SUCCESS_STATUS = "success"; - - public static final String FAILED_STATUS = "failure"; - - public static final String SUCCESS_MESSAGE = "process succeeded!"; - - public static final String FAILED_MESSAGE = "process failed!"; - - private String status; - - private String message; - - private T data; - - public static DeprecatedResponseResult success(T data) { - DeprecatedResponseResult responseCommonResult = new DeprecatedResponseResult(); - responseCommonResult.setMessage(SUCCESS_MESSAGE); - responseCommonResult.setStatus(SUCCESS_STATUS); - responseCommonResult.setData(data); - return responseCommonResult; - } - - public static DeprecatedResponseResult success() { - DeprecatedResponseResult responseCommonResult = new DeprecatedResponseResult(); - responseCommonResult.setStatus(SUCCESS_STATUS); - responseCommonResult.setMessage(SUCCESS_MESSAGE); - return responseCommonResult; - } - - public static DeprecatedResponseResult failure() { - DeprecatedResponseResult responseCommonResult = new DeprecatedResponseResult(); - responseCommonResult.setMessage(FAILED_MESSAGE); - responseCommonResult.setStatus(FAILED_STATUS); - return responseCommonResult; - } - - public static DeprecatedResponseResult failure(String message) { - DeprecatedResponseResult responseCommonResult = new DeprecatedResponseResult(); - responseCommonResult.setMessage(message); - responseCommonResult.setStatus(FAILED_STATUS); - return responseCommonResult; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public T getData() { - return data; - } - - public void setData(T data) { - this.data = data; - } - - @Override - public String toString() { - return "DeprecatedResponseResult{" + - "status='" + status + '\'' + - ", message='" + message + '\'' + - ", data=" + data + - '}'; - } -} \ No newline at end of file diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/Result.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/Result.java index 7fc3343f..a3e8b655 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/Result.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/Result.java @@ -88,6 +88,22 @@ public class Result implements Serializable { return result; } + public static Result buildSuc(T data) { + Result result = new Result(); + result.setCode(ResultStatus.SUCCESS.getCode()); + result.setMessage(ResultStatus.SUCCESS.getMessage()); + result.setData(data); + return result; + } + + public static Result buildFailure(String message) { + Result result = new Result(); + result.setCode(ResultStatus.GATEWAY_INVALID_REQUEST.getCode()); + result.setMessage(message); + result.setData(null); + return result; + } + public static Result buildFrom(ResultStatus resultStatus) { Result result = new Result(); result.setCode(resultStatus.getCode()); diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java index b63151ac..ce044a13 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java @@ -8,7 +8,10 @@ import com.xiaojukeji.kafka.manager.common.constant.Constant; * @date 20/4/16 */ public enum ResultStatus { + GATEWAY_INVALID_REQUEST(-1, "invalid request"), + SUCCESS(Constant.SUCCESS, "success"), + LOGIN_FAILED(1, "login failed, please check username and password"), diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/gateway/KafkaBootstrapServerConfig.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/gateway/KafkaBootstrapServerConfig.java index 4b00c893..e61181c5 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/gateway/KafkaBootstrapServerConfig.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/gateway/KafkaBootstrapServerConfig.java @@ -8,18 +8,18 @@ import java.util.Map; * @date 20/7/29 */ public class KafkaBootstrapServerConfig extends BaseGatewayConfig { - private Map> clusterIdBootstrapServersMap; + private Map> clusterIdBootstrapServersMap; - public KafkaBootstrapServerConfig(Long version, Map> clusterIdBootstrapServersMap) { + public KafkaBootstrapServerConfig(Long version, Map> clusterIdBootstrapServersMap) { this.version = version; this.clusterIdBootstrapServersMap = clusterIdBootstrapServersMap; } - public Map> getClusterIdBootstrapServersMap() { + public Map> getClusterIdBootstrapServersMap() { return clusterIdBootstrapServersMap; } - public void setClusterIdBootstrapServersMap(Map> clusterIdBootstrapServersMap) { + public void setClusterIdBootstrapServersMap(Map> clusterIdBootstrapServersMap) { this.clusterIdBootstrapServersMap = clusterIdBootstrapServersMap; } diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/pojo/OperationHistoryDO.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/pojo/OperationHistoryDO.java deleted file mode 100644 index e513b371..00000000 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/pojo/OperationHistoryDO.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.xiaojukeji.kafka.manager.common.entity.pojo; - -import java.util.Date; - -/** - * @author zengqiao - * @date 20/4/29 - */ -public class OperationHistoryDO { - private Long id; - - private Date gmtCreate; - - private Long clusterId; - - private String topicName; - - private String operator; - - private String operation; - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public Date getGmtCreate() { - return gmtCreate; - } - - public void setGmtCreate(Date gmtCreate) { - this.gmtCreate = gmtCreate; - } - - public Long getClusterId() { - return clusterId; - } - - public void setClusterId(Long clusterId) { - this.clusterId = clusterId; - } - - public String getTopicName() { - return topicName; - } - - public void setTopicName(String topicName) { - this.topicName = topicName; - } - - public String getOperator() { - return operator; - } - - public void setOperator(String operator) { - this.operator = operator; - } - - public String getOperation() { - return operation; - } - - public void setOperation(String operation) { - this.operation = operation; - } - - @Override - public String toString() { - return "OperationHistoryDO{" + - "id=" + id + - ", gmtCreate=" + gmtCreate + - ", clusterId=" + clusterId + - ", topicName='" + topicName + '\'' + - ", operator='" + operator + '\'' + - ", operation='" + operation + '\'' + - '}'; - } - - public static OperationHistoryDO newInstance(Long clusterId, String topicName, String operator, String operation) { - OperationHistoryDO operationHistoryDO = new OperationHistoryDO(); - operationHistoryDO.setClusterId(clusterId); - operationHistoryDO.setTopicName(topicName); - operationHistoryDO.setOperator(operator); - operationHistoryDO.setOperation(operation); - return operationHistoryDO; - } -} \ No newline at end of file diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/normal/app/AppVO.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/normal/app/AppVO.java index 41ca8d92..dab97dd7 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/normal/app/AppVO.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/normal/app/AppVO.java @@ -18,6 +18,9 @@ public class AppVO { @ApiModelProperty(value="App密码") private String password; + @ApiModelProperty(value="申请人") + private String applicant; + @ApiModelProperty(value="App描述") private String description; @@ -48,6 +51,14 @@ public class AppVO { this.password = password; } + public String getApplicant() { + return applicant; + } + + public void setApplicant(String applicant) { + this.applicant = applicant; + } + public String getDescription() { return description; } @@ -70,6 +81,7 @@ public class AppVO { "appId='" + appId + '\'' + ", name='" + name + '\'' + ", password='" + password + '\'' + + ", applicant='" + applicant + '\'' + ", description='" + description + '\'' + ", principals='" + principals + '\'' + '}'; diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/thirdpart/AppBasicInfoVO.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/thirdpart/AppBasicInfoVO.java deleted file mode 100644 index dd43df2e..00000000 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/thirdpart/AppBasicInfoVO.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.xiaojukeji.kafka.manager.common.entity.vo.thirdpart; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; - -/** - * @author zhongyuankai - * @date 2020/6/18 - */ -@Deprecated -@ApiModel(description="AppID基本信息") -public class AppBasicInfoVO { - @ApiModelProperty(value="appId") - private String appId; - - @ApiModelProperty(value="app密码") - private String password; - - @ApiModelProperty(value="app名称") - private String name; - - @ApiModelProperty(value="申请人") - private String applicant; - - @ApiModelProperty(value="appId负责人") - private String principal; - - @ApiModelProperty(value="描述信息") - private String description; - - public String getAppId() { - return appId; - } - - public void setAppId(String appId) { - this.appId = appId; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getApplicant() { - return applicant; - } - - public void setApplicant(String applicant) { - this.applicant = applicant; - } - - public String getPrincipal() { - return principal; - } - - public void setPrincipal(String principal) { - this.principal = principal; - } - - public String getDescription() { - return description; - } - - public void setDescription(String description) { - this.description = description; - } - - @Override - public String toString() { - return "AppBasicInfoVO{" + - "appId='" + appId + '\'' + - ", password='" + password + '\'' + - ", name='" + name + '\'' + - ", applicant='" + applicant + '\'' + - ", principal='" + principal + '\'' + - ", description='" + description + '\'' + - '}'; - } -} diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/HttpUtils.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/HttpUtils.java index c15a25b4..2a0d1eac 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/HttpUtils.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/HttpUtils.java @@ -35,6 +35,7 @@ public class HttpUtils { private static final String METHOD_GET = "GET"; private static final String METHOD_POST = "POST"; private static final String METHOD_PUT = "PUT"; + private static final String METHOD_DELETE = "DELETE"; private static final String CHARSET_UTF8 = "UTF-8"; @@ -119,6 +120,18 @@ public class HttpUtils { return sendRequest(url, METHOD_PUT, null, headers, in); } + public static String deleteForString(String url, String content, Map headers) { + InputStream in = null; + try { + if (content != null && !content.isEmpty()) { + in = new ByteArrayInputStream(content.getBytes(CHARSET_UTF8)); + } + } catch (UnsupportedEncodingException e) { + throw new RuntimeException(e); + } + return sendRequest(url, METHOD_DELETE, null, headers, in); + } + /** * @param url 请求的链接, 只支持 http 和 https 链接 * @param method GET or POST diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/jmx/JmxConnectorWrap.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/jmx/JmxConnectorWrap.java index 83665791..ed8a639e 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/jmx/JmxConnectorWrap.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/jmx/JmxConnectorWrap.java @@ -28,10 +28,13 @@ public class JmxConnectorWrap { private AtomicInteger atomicInteger; - public JmxConnectorWrap(String host, int port) { + public JmxConnectorWrap(String host, int port, int maxConn) { this.host = host; this.port = port; - this.atomicInteger = new AtomicInteger(25); + if (maxConn <= 0) { + maxConn = 1; + } + this.atomicInteger = new AtomicInteger(maxConn); } public boolean checkJmxConnectionAndInitIfNeed() { diff --git a/kafka-manager-console/package-lock.json b/kafka-manager-console/package-lock.json new file mode 100644 index 00000000..903081c3 --- /dev/null +++ b/kafka-manager-console/package-lock.json @@ -0,0 +1,9699 @@ +{ + "name": "mobx-ts-example", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@ant-design/colors": { + "version": "3.2.2", + "resolved": "https://registry.npm.taobao.org/@ant-design/colors/download/@ant-design/colors-3.2.2.tgz?cache=0&sync_timestamp=1582896948217&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40ant-design%2Fcolors%2Fdownload%2F%40ant-design%2Fcolors-3.2.2.tgz", + "integrity": "sha1-WtQ9YZ6RHzSI66wwPWBuZqhCOQM=", + "dev": true, + "requires": { + "tinycolor2": "^1.4.1" + } + }, + "@ant-design/create-react-context": { + "version": "0.2.5", + "resolved": "https://registry.npm.taobao.org/@ant-design/create-react-context/download/@ant-design/create-react-context-0.2.5.tgz", + "integrity": "sha1-9fWpFjtHcgl3EoNzl60w4i55+Fg=", + "dev": true, + "requires": { + "gud": "^1.0.0", + "warning": "^4.0.3" + } + }, + "@ant-design/icons": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/@ant-design/icons/download/@ant-design/icons-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40ant-design%2Ficons%2Fdownload%2F%40ant-design%2Ficons-2.1.1.tgz", + "integrity": "sha1-e5wI3/1PXUHbZn2dvl4BB9C9mko=", + "dev": true + }, + "@ant-design/icons-react": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/@ant-design/icons-react/download/@ant-design/icons-react-2.0.1.tgz", + "integrity": "sha1-F6JRNXGrMXrKKSfljOol3THlNvs=", + "dev": true, + "requires": { + "@ant-design/colors": "^3.1.0", + "babel-runtime": "^6.26.0" + } + }, + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "http://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.0.0.tgz", + "integrity": "sha1-BuKrGb21NThVWaq7W6WXKUgoAPg=", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "http://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.0.0.tgz", + "integrity": "sha1-9xDDjI1Fjm3ZogGvtjf8t4HOmeQ=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/runtime": { + "version": "7.4.3", + "resolved": "http://registry.npm.taobao.org/@babel/runtime/download/@babel/runtime-7.4.3.tgz", + "integrity": "sha1-eYiORSA0IjrZYJGHoK0f4NKtS9w=", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.2" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.13.2", + "resolved": "http://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.2.tgz", + "integrity": "sha1-MuWcmm+5saSv8JtJMMotRHc0NEc=", + "dev": true + } + } + }, + "@hot-loader/react-dom": { + "version": "16.8.6", + "resolved": "http://registry.npm.taobao.org/@hot-loader/react-dom/download/@hot-loader/react-dom-16.8.6.tgz", + "integrity": "sha1-eSO6J9sVY6fMSNTgsoeaFA30Yeo=", + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2", + "scheduler": "^0.13.6" + } + }, + "@types/anymatch": { + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/@types/anymatch/download/@types/anymatch-1.3.1.tgz?cache=0&sync_timestamp=1580841236934&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fanymatch%2Fdownload%2F%40types%2Fanymatch-1.3.1.tgz", + "integrity": "sha1-M2utwb7sudrMOL6izzKt9ieoQho=", + "dev": true + }, + "@types/clipboard": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/@types/clipboard/download/@types/clipboard-2.0.1.tgz", + "integrity": "sha1-dadAhsKT11sSvJP/E7x3l/7wWkA=", + "dev": true + }, + "@types/echarts": { + "version": "4.6.2", + "resolved": "https://registry.npm.taobao.org/@types/echarts/download/@types/echarts-4.6.2.tgz", + "integrity": "sha1-9muHNuKlVPQy1Y7ANhv5ydkIzPw=", + "dev": true, + "requires": { + "@types/zrender": "*" + } + }, + "@types/events": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/@types/events/download/@types/events-3.0.0.tgz?cache=0&sync_timestamp=1580841806837&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fevents%2Fdownload%2F%40types%2Fevents-3.0.0.tgz", + "integrity": "sha1-KGLz9Yqaf3w+eNefEw3U1xwlwqc=", + "dev": true + }, + "@types/glob": { + "version": "7.1.1", + "resolved": "https://registry.npm.taobao.org/@types/glob/download/@types/glob-7.1.1.tgz", + "integrity": "sha1-qlmhxuP7xCHgfM0xqUTDDrpSFXU=", + "dev": true, + "requires": { + "@types/events": "*", + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/history": { + "version": "4.7.2", + "resolved": "http://registry.npm.taobao.org/@types/history/download/@types/history-4.7.2.tgz", + "integrity": "sha1-DmcOolTVWSQbbus4lPh1SZHnMiA=", + "dev": true + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "http://registry.npm.taobao.org/@types/json5/download/@types/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "@types/lodash": { + "version": "4.14.149", + "resolved": "https://registry.npm.taobao.org/@types/lodash/download/@types/lodash-4.14.149.tgz", + "integrity": "sha1-E0LWPZSMYGKDj7+WEBL3TU5jhEA=", + "dev": true + }, + "@types/lodash.debounce": { + "version": "4.0.6", + "resolved": "https://registry.npm.taobao.org/@types/lodash.debounce/download/@types/lodash.debounce-4.0.6.tgz", + "integrity": "sha1-xaIybNPvxGVmxH5MCqJI3A7lfWA=", + "dev": true, + "requires": { + "@types/lodash": "*" + } + }, + "@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", + "integrity": "sha1-PcoOPzOyAPx9ETnAzZbBJoyt/Z0=", + "dev": true + }, + "@types/node": { + "version": "13.13.2", + "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-13.13.2.tgz", + "integrity": "sha1-Fg2CYjYQ21kKZOjKgXhOERF+WlQ=", + "dev": true + }, + "@types/prop-types": { + "version": "15.7.1", + "resolved": "http://registry.npm.taobao.org/@types/prop-types/download/@types/prop-types-15.7.1.tgz", + "integrity": "sha1-8aEee6uww8rWgQC+OB0eBkxo8fY=", + "dev": true + }, + "@types/q": { + "version": "1.5.2", + "resolved": "http://registry.npm.taobao.org/@types/q/download/@types/q-1.5.2.tgz", + "integrity": "sha1-aQoUdbhPKohP0HzXl8APXzE1bqg=", + "dev": true + }, + "@types/react": { + "version": "16.8.13", + "resolved": "http://registry.npm.taobao.org/@types/react/download/@types/react-16.8.13.tgz", + "integrity": "sha1-qCsVqtmrkcQO3KDWiJt3Ra4k8FM=", + "dev": true, + "requires": { + "@types/prop-types": "*", + "csstype": "^2.2.0" + } + }, + "@types/react-dom": { + "version": "16.8.4", + "resolved": "http://registry.npm.taobao.org/@types/react-dom/download/@types/react-dom-16.8.4.tgz", + "integrity": "sha1-f7e6NohXx6oPTkURxHEMosWhKog=", + "dev": true, + "requires": { + "@types/react": "*" + } + }, + "@types/react-router": { + "version": "4.4.5", + "resolved": "http://registry.npm.taobao.org/@types/react-router/download/@types/react-router-4.4.5.tgz", + "integrity": "sha1-EWaZfcfu8pF7XrzokOvssy7lwbM=", + "dev": true, + "requires": { + "@types/history": "*", + "@types/react": "*" + } + }, + "@types/react-router-dom": { + "version": "4.3.2", + "resolved": "http://registry.npm.taobao.org/@types/react-router-dom/download/@types/react-router-dom-4.3.2.tgz", + "integrity": "sha1-UsF8NoJZdjjzHBfEJiBAPcXCo/U=", + "dev": true, + "requires": { + "@types/history": "*", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "@types/react-slick": { + "version": "0.23.4", + "resolved": "https://registry.npm.taobao.org/@types/react-slick/download/@types/react-slick-0.23.4.tgz?cache=0&sync_timestamp=1580865947659&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Freact-slick%2Fdownload%2F%40types%2Freact-slick-0.23.4.tgz", + "integrity": "sha1-yX4qnn49GTPGhZO46CdS+rHozlM=", + "dev": true, + "requires": { + "@types/react": "*" + } + }, + "@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npm.taobao.org/@types/source-list-map/download/@types/source-list-map-0.1.2.tgz", + "integrity": "sha1-AHiDYGP/rxdBI0m7o2QIfgrALsk=", + "dev": true + }, + "@types/spark-md5": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/@types/spark-md5/download/@types/spark-md5-3.0.2.tgz", + "integrity": "sha1-2i6Kd4ogM1/E9AtkccSw2Gtw2lU=", + "dev": true + }, + "@types/tapable": { + "version": "1.0.5", + "resolved": "https://registry.npm.taobao.org/@types/tapable/download/@types/tapable-1.0.5.tgz?cache=0&sync_timestamp=1580844951142&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Ftapable%2Fdownload%2F%40types%2Ftapable-1.0.5.tgz", + "integrity": "sha1-mtvBKVBYKqZerXa//fOf4MJ6PAI=", + "dev": true + }, + "@types/uglify-js": { + "version": "3.9.0", + "resolved": "https://registry.npm.taobao.org/@types/uglify-js/download/@types/uglify-js-3.9.0.tgz", + "integrity": "sha1-RJChQMqCqoVa1oCTgp5/1q6U6oc=", + "dev": true, + "requires": { + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "@types/webpack": { + "version": "4.41.12", + "resolved": "https://registry.npm.taobao.org/@types/webpack/download/@types/webpack-4.41.12.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fwebpack%2Fdownload%2F%40types%2Fwebpack-4.41.12.tgz", + "integrity": "sha1-A4buKigUNo4vI5ersDbAvxc/9sM=", + "dev": true, + "requires": { + "@types/anymatch": "*", + "@types/node": "*", + "@types/tapable": "*", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "@types/webpack-sources": { + "version": "0.1.7", + "resolved": "https://registry.npm.taobao.org/@types/webpack-sources/download/@types/webpack-sources-0.1.7.tgz?cache=0&sync_timestamp=1584978716401&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fwebpack-sources%2Fdownload%2F%40types%2Fwebpack-sources-0.1.7.tgz", + "integrity": "sha1-CjMKlFYRNBDHSl1kGArwy8oAcUE=", + "dev": true, + "requires": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "@types/zrender": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/@types/zrender/download/@types/zrender-4.0.0.tgz", + "integrity": "sha1-poBvEuxOzKrr2bDYFvBJrKYYj70=", + "dev": true + }, + "@webassemblyjs/ast": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/ast/download/@webassemblyjs/ast-1.8.5.tgz", + "integrity": "sha1-UbHF/mV2o0lTv0slPfnw1JDZ41k=", + "dev": true, + "requires": { + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/floating-point-hex-parser/download/@webassemblyjs/floating-point-hex-parser-1.8.5.tgz", + "integrity": "sha1-G6kmopI2E+3OSW/VsC6M6KX0lyE=", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-api-error/download/@webassemblyjs/helper-api-error-1.8.5.tgz", + "integrity": "sha1-xJ2tIvZFInxe22EL25aX8aq3Ifc=", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-buffer/download/@webassemblyjs/helper-buffer-1.8.5.tgz", + "integrity": "sha1-/qk+Qphj3V5DOFVfQikjhaZT8gQ=", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-code-frame/download/@webassemblyjs/helper-code-frame-1.8.5.tgz", + "integrity": "sha1-mnQP9I4/qjAisd/1RCPfmqKTwl4=", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.8.5" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-fsm/download/@webassemblyjs/helper-fsm-1.8.5.tgz", + "integrity": "sha1-ugt9Oz9+RzPaYFnJMyJ12GBwJFI=", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-module-context/download/@webassemblyjs/helper-module-context-1.8.5.tgz", + "integrity": "sha1-3vS5knsBAdyMu9jR7bW3ucguskU=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "mamacro": "^0.0.3" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-wasm-bytecode/download/@webassemblyjs/helper-wasm-bytecode-1.8.5.tgz", + "integrity": "sha1-U3p1Dt31weky83RCBlUckcG5PmE=", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-wasm-section/download/@webassemblyjs/helper-wasm-section-1.8.5.tgz", + "integrity": "sha1-dMpqa8vhnlCjtrRihH5pUD5r/L8=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/ieee754/download/@webassemblyjs/ieee754-1.8.5.tgz", + "integrity": "sha1-cSMp2+8kDza/V70ve4+5v0FUQh4=", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/leb128/download/@webassemblyjs/leb128-1.8.5.tgz", + "integrity": "sha1-BE7es06mefPgTNT9mCTV41dnrhA=", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/utf8/download/@webassemblyjs/utf8-1.8.5.tgz", + "integrity": "sha1-qL87XY/+mGx8Hjc8y9wqCRXwztw=", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wasm-edit/download/@webassemblyjs/wasm-edit-1.8.5.tgz", + "integrity": "sha1-li2hKqWswcExyBxCMpkcgs5W4Bo=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/helper-wasm-section": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-opt": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "@webassemblyjs/wast-printer": "1.8.5" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wasm-gen/download/@webassemblyjs/wasm-gen-1.8.5.tgz", + "integrity": "sha1-VIQHZsLBAC62TtGr5yCt7XFPmLw=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wasm-opt/download/@webassemblyjs/wasm-opt-1.8.5.tgz", + "integrity": "sha1-sk2fa6UDlK8TSfUQr6j/y4pj0mQ=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wasm-parser/download/@webassemblyjs/wasm-parser-1.8.5.tgz", + "integrity": "sha1-IVdvDsiLkUJzV7hTY4NmjvfGa40=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wast-parser/download/@webassemblyjs/wast-parser-1.8.5.tgz", + "integrity": "sha1-4Q7s1ULQ5705T2gnxJ899tTu+4w=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/floating-point-hex-parser": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-code-frame": "1.8.5", + "@webassemblyjs/helper-fsm": "1.8.5", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.8.5", + "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wast-printer/download/@webassemblyjs/wast-printer-1.8.5.tgz", + "integrity": "sha1-EUu8SB/RDKDiOzVg+oEnSLC65bw=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/@xtuc/ieee754/download/@xtuc/ieee754-1.2.0.tgz", + "integrity": "sha1-7vAUoxRa5Hehy8AM0eVSM23Ot5A=", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "http://registry.npm.taobao.org/@xtuc/long/download/@xtuc/long-4.2.2.tgz", + "integrity": "sha1-0pHGpOl5ibXGHZrPOWrk/hM6cY0=", + "dev": true + }, + "accepts": { + "version": "1.3.5", + "resolved": "http://registry.npm.taobao.org/accepts/download/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "dev": true, + "requires": { + "mime-types": "~2.1.18", + "negotiator": "0.6.1" + } + }, + "acorn": { + "version": "6.1.1", + "resolved": "http://registry.npm.taobao.org/acorn/download/acorn-6.1.1.tgz", + "integrity": "sha1-fSWuBbuK0fm2mRCOEJTs14hK3B8=", + "dev": true + }, + "acorn-dynamic-import": { + "version": "4.0.0", + "resolved": "http://registry.npm.taobao.org/acorn-dynamic-import/download/acorn-dynamic-import-4.0.0.tgz", + "integrity": "sha1-SCIQFAWCo2uDw+NC4c/ryqkkCUg=", + "dev": true + }, + "add-dom-event-listener": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/add-dom-event-listener/download/add-dom-event-listener-1.1.0.tgz", + "integrity": "sha1-apLbOg3Qq8JU4JXA8dwUrLuq4xA=", + "dev": true, + "requires": { + "object-assign": "4.x" + } + }, + "adler-32": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/adler-32/download/adler-32-1.2.0.tgz", + "integrity": "sha1-aj5r8KY5ALoVZSgIyxXGgT0aXyU=", + "dev": true, + "requires": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.1.0" + } + }, + "ajv": { + "version": "6.10.0", + "resolved": "http://registry.npm.taobao.org/ajv/download/ajv-6.10.0.tgz", + "integrity": "sha1-kNDVRDnaWHzX6EO/twRfUL0ivfE=", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/ajv-errors/download/ajv-errors-1.0.1.tgz", + "integrity": "sha1-81mGrOuRr63sQQL72FAUlQzvpk0=", + "dev": true + }, + "ajv-keywords": { + "version": "3.4.0", + "resolved": "http://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-3.4.0.tgz", + "integrity": "sha1-S4Mee1MUFafMUYzUBOc/YZPGNJ0=", + "dev": true + }, + "alphanum-sort": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/alphanum-sort/download/alphanum-sort-1.0.2.tgz", + "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", + "dev": true + }, + "ansi-colors": { + "version": "3.2.4", + "resolved": "http://registry.npm.taobao.org/ansi-colors/download/ansi-colors-3.2.4.tgz", + "integrity": "sha1-46PaS/uubIapwoViXeEkojQCb78=", + "dev": true + }, + "ansi-html": { + "version": "0.0.7", + "resolved": "http://registry.npm.taobao.org/ansi-html/download/ansi-html-0.0.7.tgz", + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/ansi-regex/download/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "http://registry.npm.taobao.org/ansi-styles/download/ansi-styles-3.2.1.tgz", + "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "antd": { + "version": "3.26.15", + "resolved": "https://registry.npm.taobao.org/antd/download/antd-3.26.15.tgz?cache=0&sync_timestamp=1587231303053&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fantd%2Fdownload%2Fantd-3.26.15.tgz", + "integrity": "sha1-xfTlYoUC+c37DDUccTINXA4kIb4=", + "dev": true, + "requires": { + "@ant-design/create-react-context": "^0.2.4", + "@ant-design/icons": "~2.1.1", + "@ant-design/icons-react": "~2.0.1", + "@types/react-slick": "^0.23.4", + "array-tree-filter": "^2.1.0", + "babel-runtime": "6.x", + "classnames": "~2.2.6", + "copy-to-clipboard": "^3.2.0", + "css-animation": "^1.5.0", + "dom-closest": "^0.2.0", + "enquire.js": "^2.1.6", + "is-mobile": "^2.1.0", + "lodash": "^4.17.13", + "moment": "^2.24.0", + "omit.js": "^1.0.2", + "prop-types": "^15.7.2", + "raf": "^3.4.1", + "rc-animate": "^2.10.2", + "rc-calendar": "~9.15.7", + "rc-cascader": "~0.17.4", + "rc-checkbox": "~2.1.6", + "rc-collapse": "~1.11.3", + "rc-dialog": "~7.6.0", + "rc-drawer": "~3.1.1", + "rc-dropdown": "~2.4.1", + "rc-editor-mention": "^1.1.13", + "rc-form": "^2.4.10", + "rc-input-number": "~4.5.0", + "rc-mentions": "~0.4.0", + "rc-menu": "~7.5.1", + "rc-notification": "~3.3.1", + "rc-pagination": "~1.20.11", + "rc-progress": "~2.5.0", + "rc-rate": "~2.5.0", + "rc-resize-observer": "^0.1.0", + "rc-select": "~9.2.0", + "rc-slider": "~8.7.1", + "rc-steps": "~3.5.0", + "rc-switch": "~1.9.0", + "rc-table": "~6.10.5", + "rc-tabs": "~9.7.0", + "rc-time-picker": "~3.7.1", + "rc-tooltip": "~3.7.3", + "rc-tree": "~2.1.0", + "rc-tree-select": "~2.9.1", + "rc-trigger": "^2.6.2", + "rc-upload": "~2.9.1", + "rc-util": "^4.16.1", + "react-lazy-load": "^3.0.13", + "react-lifecycles-compat": "^3.0.4", + "react-slick": "~0.25.2", + "resize-observer-polyfill": "^1.5.1", + "shallowequal": "^1.1.0", + "warning": "~4.0.3" + }, + "dependencies": { + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npm.taobao.org/lodash/download/lodash-4.17.15.tgz", + "integrity": "sha1-tEf2ZwoEVbv+7dETku/zMOoJdUg=", + "dev": true + } + } + }, + "anymatch": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz", + "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "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" + } + } + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/aproba/download/aproba-1.2.0.tgz", + "integrity": "sha1-aALmJk79GMeQobDVF/DyYnvyyUo=", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "http://registry.npm.taobao.org/argparse/download/argparse-1.0.10.tgz", + "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "http://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", + "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", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-flatten": { + "version": "2.1.2", + "resolved": "http://registry.npm.taobao.org/array-flatten/download/array-flatten-2.1.2.tgz", + "integrity": "sha1-JO+AoowaiTYX4hSbDG0NeIKTsJk=", + "dev": true + }, + "array-tree-filter": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/array-tree-filter/download/array-tree-filter-2.1.0.tgz", + "integrity": "sha1-hzrAD+yDdJ8lWsjdCDgUtPYykZA=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/array-union/download/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/array-uniq/download/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "http://registry.npm.taobao.org/array-unique/download/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "asap": { + "version": "2.0.6", + "resolved": "http://registry.npm.taobao.org/asap/download/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "http://registry.npm.taobao.org/asn1/download/asn1-0.2.4.tgz", + "integrity": "sha1-jSR136tVO7M+d7VOWeiAu4ziMTY=", + "dev": true, + "optional": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "http://registry.npm.taobao.org/asn1.js/download/asn1.js-4.10.1.tgz", + "integrity": "sha1-ucK/WAXx5kqt7tbfOiv6+1pz9aA=", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.4.1", + "resolved": "http://registry.npm.taobao.org/assert/download/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "dev": true, + "requires": { + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/inherits/download/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "http://registry.npm.taobao.org/util/download/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/assert-plus/download/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/assign-symbols/download/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "async": { + "version": "1.5.2", + "resolved": "http://registry.npm.taobao.org/async/download/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "async-each": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/async-each/download/async-each-1.0.3.tgz", + "integrity": "sha1-tyfb+H12UWAvBvTUrDh/R9kbDL8=", + "dev": true + }, + "async-validator": { + "version": "1.11.5", + "resolved": "https://registry.npm.taobao.org/async-validator/download/async-validator-1.11.5.tgz", + "integrity": "sha1-nUPPSe9rt2vlRCOI0Z+5puR1l+o=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "http://registry.npm.taobao.org/asynckit/download/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true, + "optional": true + }, + "atob": { + "version": "2.1.2", + "resolved": "http://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz", + "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "http://registry.npm.taobao.org/aws-sign2/download/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true, + "optional": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "http://registry.npm.taobao.org/aws4/download/aws4-1.8.0.tgz", + "integrity": "sha1-8OAD2cqef1nHpQiUXXsu+aBKVC8=", + "dev": true, + "optional": true + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "http://registry.npm.taobao.org/babel-runtime/download/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "http://registry.npm.taobao.org/base/download/base-0.11.2.tgz", + "integrity": "sha1-e95c7RRbbVUakNuH+DxVi060io8=", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "base64-js": { + "version": "1.3.0", + "resolved": "http://registry.npm.taobao.org/base64-js/download/base64-js-1.3.0.tgz", + "integrity": "sha1-yrHmEY8FEJXli1KBrqjBzSK/wOM=", + "dev": true + }, + "batch": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/batch/download/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "big.js": { + "version": "5.2.2", + "resolved": "http://registry.npm.taobao.org/big.js/download/big.js-5.2.2.tgz", + "integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=", + "dev": true + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "http://registry.npm.taobao.org/binary-extensions/download/binary-extensions-1.13.1.tgz", + "integrity": "sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U=", + "dev": true + }, + "bluebird": { + "version": "3.5.4", + "resolved": "http://registry.npm.taobao.org/bluebird/download/bluebird-3.5.4.tgz", + "integrity": "sha1-1sxmFZXeMNWzr1/O3TwLPvbsVxQ=", + "dev": true + }, + "bn.js": { + "version": "4.11.8", + "resolved": "http://registry.npm.taobao.org/bn.js/download/bn.js-4.11.8.tgz", + "integrity": "sha1-LN4J617jQfSEdGuwMJsyU7GxRC8=", + "dev": true + }, + "body-parser": { + "version": "1.18.3", + "resolved": "http://registry.npm.taobao.org/body-parser/download/body-parser-1.18.3.tgz", + "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", + "dev": true, + "requires": { + "bytes": "3.0.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "~2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "iconv-lite": { + "version": "0.4.23", + "resolved": "http://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.23.tgz", + "integrity": "sha1-KXhx9jvlB63Pv8pxXQzQ7thOmmM=", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "bonjour": { + "version": "3.5.0", + "resolved": "http://registry.npm.taobao.org/bonjour/download/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "requires": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/boolbase/download/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "http://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz", + "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "http://registry.npm.taobao.org/braces/download/braces-2.3.2.tgz", + "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/brorand/download/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/browserify-aes/download/browserify-aes-1.2.0.tgz", + "integrity": "sha1-Mmc0ZC9APavDADIJhTu3CtQo70g=", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/browserify-cipher/download/browserify-cipher-1.0.1.tgz", + "integrity": "sha1-jWR0wbhwv9q807z8wZNKEOlPFfA=", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/browserify-des/download/browserify-des-1.0.2.tgz", + "integrity": "sha1-OvTx9Zg5QDVy8cZiBDdfen9wPpw=", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/browserify-rsa/download/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "http://registry.npm.taobao.org/browserify-sign/download/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "http://registry.npm.taobao.org/browserify-zlib/download/browserify-zlib-0.2.0.tgz", + "integrity": "sha1-KGlFnZqjviRf6P4sofRuLn9U1z8=", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.5.5", + "resolved": "http://registry.npm.taobao.org/browserslist/download/browserslist-4.5.5.tgz", + "integrity": "sha1-/ho1IzDSSQ1XNVdMFJqFvBjvm4I=", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30000960", + "electron-to-chromium": "^1.3.124", + "node-releases": "^1.1.14" + } + }, + "buffer": { + "version": "4.9.1", + "resolved": "http://registry.npm.taobao.org/buffer/download/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + } + } + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/buffer-from/download/buffer-from-1.1.1.tgz", + "integrity": "sha1-MnE7wCj3XAL9txDXx7zsHyxgcO8=", + "dev": true + }, + "buffer-indexof": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/buffer-indexof/download/buffer-indexof-1.1.1.tgz", + "integrity": "sha1-Uvq8xqYG0aADAoAmSO9o9jnaJow=", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/buffer-xor/download/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/builtin-modules/download/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/builtin-status-codes/download/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "bytes": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/bytes/download/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "cacache": { + "version": "11.3.2", + "resolved": "http://registry.npm.taobao.org/cacache/download/cacache-11.3.2.tgz", + "integrity": "sha1-LYHjCOPSWMo4Eltna5iyrJzmm/o=", + "dev": true, + "requires": { + "bluebird": "^3.5.3", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.3", + "graceful-fs": "^4.1.15", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/cache-base/download/cache-base-1.0.1.tgz", + "integrity": "sha1-Cn9GQWgxyLZi7jb+TnxZ129marI=", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/caller-callsite/download/caller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "dev": true, + "requires": { + "callsites": "^2.0.0" + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/caller-path/download/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dev": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, + "callsites": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/callsites/download/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "dev": true + }, + "camel-case": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/camel-case/download/camel-case-3.0.0.tgz", + "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "dev": true, + "requires": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "http://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz", + "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=", + "dev": true + }, + "caniuse-api": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/caniuse-api/download/caniuse-api-3.0.0.tgz", + "integrity": "sha1-Xk2Q4idJYdRikZl99Znj7QCO5MA=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "caniuse-lite": { + "version": "1.0.30000962", + "resolved": "http://registry.npm.taobao.org/caniuse-lite/download/caniuse-lite-1.0.30000962.tgz", + "integrity": "sha1-bBDDqzBLib6pBeZq35jAkFCI7kQ=", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "http://registry.npm.taobao.org/caseless/download/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true, + "optional": true + }, + "cfb": { + "version": "1.1.4", + "resolved": "https://registry.npm.taobao.org/cfb/download/cfb-1.1.4.tgz?cache=0&sync_timestamp=1584080716545&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcfb%2Fdownload%2Fcfb-1.1.4.tgz", + "integrity": "sha1-gf017eTJGdjwliqUWC4d+vcFHio=", + "dev": true, + "requires": { + "adler-32": "~1.2.0", + "commander": "^2.16.0", + "crc-32": "~1.2.0", + "printj": "~1.1.2" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "http://registry.npm.taobao.org/chalk/download/chalk-2.4.2.tgz", + "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chokidar": { + "version": "2.1.5", + "resolved": "http://registry.npm.taobao.org/chokidar/download/chokidar-2.1.5.tgz", + "integrity": "sha1-CuhDTZYigaX1bHKGnnnLbZ2GrU0=", + "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" + } + }, + "chownr": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/chownr/download/chownr-1.1.1.tgz", + "integrity": "sha1-VHJri4//TfBTxCGH6AH7RBLfFJQ=", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/chrome-trace-event/download/chrome-trace-event-1.0.0.tgz", + "integrity": "sha1-Rakb0sIMlBHwljtarrmhuV4JzEg=", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "http://registry.npm.taobao.org/cipher-base/download/cipher-base-1.0.4.tgz", + "integrity": "sha1-h2Dk7MJy9MNjUy+SbYdKriwTl94=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "http://registry.npm.taobao.org/class-utils/download/class-utils-0.3.6.tgz", + "integrity": "sha1-+TNprouafOAv1B+q0MqDAzGQxGM=", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "classnames": { + "version": "2.2.6", + "resolved": "http://registry.npm.taobao.org/classnames/download/classnames-2.2.6.tgz", + "integrity": "sha1-Q5Nb/90pHzJtrQogUwmzjQD2UM4=", + "dev": true + }, + "clean-css": { + "version": "4.2.1", + "resolved": "http://registry.npm.taobao.org/clean-css/download/clean-css-4.2.1.tgz", + "integrity": "sha1-LUEe92uFabbQyEBo2r6FsKpeXBc=", + "dev": true, + "requires": { + "source-map": "~0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "clean-webpack-plugin": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/clean-webpack-plugin/download/clean-webpack-plugin-3.0.0.tgz", + "integrity": "sha1-qZ2Ow0wcYopFQVZ6p7RXRGRgxis=", + "dev": true, + "requires": { + "@types/webpack": "^4.4.31", + "del": "^4.1.1" + }, + "dependencies": { + "del": { + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/del/download/del-4.1.1.tgz", + "integrity": "sha1-no8RciLqRKMf86FWwEm5kFKp8LQ=", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "globby": "^6.1.0", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" + } + } + } + }, + "clipboard": { + "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=", + "dev": true, + "requires": { + "good-listener": "^1.2.2", + "select": "^1.1.2", + "tiny-emitter": "^2.0.0" + } + }, + "cliui": { + "version": "4.1.0", + "resolved": "http://registry.npm.taobao.org/cliui/download/cliui-4.1.0.tgz", + "integrity": "sha1-NIQi2+gtgAswIu709qwQvy5NG0k=", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "http://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": "http://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "clone": { + "version": "2.1.2", + "resolved": "http://registry.npm.taobao.org/clone/download/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true + }, + "coa": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/coa/download/coa-2.0.2.tgz", + "integrity": "sha1-Q/bCEVG07yv1cYfbDXPeIp4+fsM=", + "dev": true, + "requires": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/code-point-at/download/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "codepage": { + "version": "1.14.0", + "resolved": "https://registry.npm.taobao.org/codepage/download/codepage-1.14.0.tgz", + "integrity": "sha1-jL4lSBMjVZ19MHVxsP/5HnodL5k=", + "dev": true, + "requires": { + "commander": "~2.14.1", + "exit-on-epipe": "~1.0.1" + }, + "dependencies": { + "commander": { + "version": "2.14.1", + "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.14.1.tgz", + "integrity": "sha1-IjUSPjevjKPGXfRbAm29NXsBuao=", + "dev": true + } + } + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color": { + "version": "3.1.0", + "resolved": "http://registry.npm.taobao.org/color/download/color-3.1.0.tgz", + "integrity": "sha1-2On7CWcyh1d0yEv5IoFd8DCND/w=", + "dev": true, + "requires": { + "color-convert": "^1.9.1", + "color-string": "^1.5.2" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "http://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz", + "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "http://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "color-string": { + "version": "1.5.3", + "resolved": "http://registry.npm.taobao.org/color-string/download/color-string-1.5.3.tgz", + "integrity": "sha1-ybvF8BtYtUkvPWhXRZy2WQziBMw=", + "dev": true, + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "combined-stream": { + "version": "1.0.7", + "resolved": "http://registry.npm.taobao.org/combined-stream/download/combined-stream-1.0.7.tgz", + "integrity": "sha1-LR0kMXr7ir6V1tLAsHtXgTU52Cg=", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.17.1", + "resolved": "http://registry.npm.taobao.org/commander/download/commander-2.17.1.tgz", + "integrity": "sha1-vXerfebelCBc6sxy8XFtKfIKd78=", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/commondir/download/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-classes": { + "version": "1.2.6", + "resolved": "http://registry.npm.taobao.org/component-classes/download/component-classes-1.2.6.tgz", + "integrity": "sha1-xkI5TDYYpNiwuJGe/Mu9kw5c1pE=", + "dev": true, + "requires": { + "component-indexof": "0.0.3" + } + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "http://registry.npm.taobao.org/component-emitter/download/component-emitter-1.3.0.tgz", + "integrity": "sha1-FuQHD7qK4ptnnyIVhT7hgasuq8A=", + "dev": true + }, + "component-indexof": { + "version": "0.0.3", + "resolved": "http://registry.npm.taobao.org/component-indexof/download/component-indexof-0.0.3.tgz", + "integrity": "sha1-EdCRMSI5648yyPJa6csAL/6NPCQ=", + "dev": true + }, + "compressible": { + "version": "2.0.16", + "resolved": "http://registry.npm.taobao.org/compressible/download/compressible-2.0.16.tgz", + "integrity": "sha1-pJv5hY84IbZM4b4Clq/HOARmp38=", + "dev": true, + "requires": { + "mime-db": ">= 1.38.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "http://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz", + "integrity": "sha1-lVI+/xcMpXwpoMpB5v4TH0Hlu48=", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "http://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "http://registry.npm.taobao.org/concat-stream/download/concat-stream-1.6.2.tgz", + "integrity": "sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ=", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "http://registry.npm.taobao.org/connect-history-api-fallback/download/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha1-izIIk1kwjRERFdgcrT/Oq4iPl7w=", + "dev": true + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/console-browserify/download/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "^0.1.4" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/constants-browserify/download/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "http://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", + "dev": true + }, + "content-type": { + "version": "1.0.4", + "resolved": "http://registry.npm.taobao.org/content-type/download/content-type-1.0.4.tgz", + "integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js=", + "dev": true + }, + "cookie": { + "version": "0.3.1", + "resolved": "http://registry.npm.taobao.org/cookie/download/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "http://registry.npm.taobao.org/cookie-signature/download/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "http://registry.npm.taobao.org/copy-concurrently/download/copy-concurrently-1.0.5.tgz", + "integrity": "sha1-kilzmMrjSTf8r9bsgTnBgFHwteA=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "http://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "copy-to-clipboard": { + "version": "3.3.1", + "resolved": "https://registry.npm.taobao.org/copy-to-clipboard/download/copy-to-clipboard-3.3.1.tgz", + "integrity": "sha1-EVqhqZmP+rYZb5MHatbaO5E2Yq4=", + "dev": true, + "requires": { + "toggle-selection": "^1.0.6" + } + }, + "core-js": { + "version": "2.6.11", + "resolved": "https://registry.npm.taobao.org/core-js/download/core-js-2.6.11.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-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", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cosmiconfig": { + "version": "5.2.0", + "resolved": "http://registry.npm.taobao.org/cosmiconfig/download/cosmiconfig-5.2.0.tgz", + "integrity": "sha1-RQOOTSin/nhyA67enCW8pKCLEsg=", + "dev": true, + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.0", + "parse-json": "^4.0.0" + } + }, + "crc-32": { + "version": "1.2.0", + "resolved": "https://registry.npm.taobao.org/crc-32/download/crc-32-1.2.0.tgz", + "integrity": "sha1-yy224puIUI4y2d0OwWk+e0Ghggg=", + "dev": true, + "requires": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.1.0" + } + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "http://registry.npm.taobao.org/create-ecdh/download/create-ecdh-4.0.3.tgz", + "integrity": "sha1-yREbbzMEXEaX8UR4f5JUzcd8Rf8=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/create-hash/download/create-hash-1.2.0.tgz", + "integrity": "sha1-iJB4rxGmN1a8+1m9IhmWvjqe8ZY=", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "http://registry.npm.taobao.org/create-hmac/download/create-hmac-1.1.7.tgz", + "integrity": "sha1-aRcMeLOrlXFHsriwRXLkfq0iQ/8=", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "create-react-class": { + "version": "15.6.3", + "resolved": "http://registry.npm.taobao.org/create-react-class/download/create-react-class-15.6.3.tgz", + "integrity": "sha1-LXMjf7P5cK5uvgEanmb0bbyoADY=", + "dev": true, + "requires": { + "fbjs": "^0.8.9", + "loose-envify": "^1.3.1", + "object-assign": "^4.1.1" + } + }, + "create-react-context": { + "version": "0.2.2", + "resolved": "http://registry.npm.taobao.org/create-react-context/download/create-react-context-0.2.2.tgz", + "integrity": "sha1-mDZUL5qqIoaM19Sm+CZn3zgBnco=", + "dev": true, + "requires": { + "fbjs": "^0.8.0", + "gud": "^1.0.0" + } + }, + "cross-env": { + "version": "7.0.2", + "resolved": "https://registry.npm.taobao.org/cross-env/download/cross-env-7.0.2.tgz?cache=0&sync_timestamp=1583443602692&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcross-env%2Fdownload%2Fcross-env-7.0.2.tgz", + "integrity": "sha1-vV7TEzmpOjQYrE88qco0Awgq5fk=", + "dev": true, + "requires": { + "cross-spawn": "^7.0.1" + }, + "dependencies": { + "cross-spawn": { + "version": "7.0.2", + "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-7.0.2.tgz", + "integrity": "sha1-0Nfc+nTokRXHYZ9PchqU4f23FtY=", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/path-key/download/path-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&sync_timestamp=1567781622888&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" + } + } + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "http://registry.npm.taobao.org/cross-spawn/download/cross-spawn-6.0.5.tgz", + "integrity": "sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q=", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "http://registry.npm.taobao.org/crypto-browserify/download/crypto-browserify-3.12.0.tgz", + "integrity": "sha1-OWz58xN/A+S45TLFj2mCVOAPgOw=", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "css-animation": { + "version": "1.6.1", + "resolved": "https://registry.npm.taobao.org/css-animation/download/css-animation-1.6.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss-animation%2Fdownload%2Fcss-animation-1.6.1.tgz", + "integrity": "sha1-FiBko7DVH5WLf/N7PW1N4Y4XA54=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "component-classes": "^1.2.5" + } + }, + "css-color-names": { + "version": "0.0.4", + "resolved": "http://registry.npm.taobao.org/css-color-names/download/css-color-names-0.0.4.tgz", + "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=", + "dev": true + }, + "css-declaration-sorter": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/css-declaration-sorter/download/css-declaration-sorter-4.0.1.tgz", + "integrity": "sha1-wZiUD2OnbX42wecQGLABchBUyyI=", + "dev": true, + "requires": { + "postcss": "^7.0.1", + "timsort": "^0.3.0" + } + }, + "css-loader": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/css-loader/download/css-loader-2.1.1.tgz", + "integrity": "sha1-2CVPcuQSuyI4u0TdZ0/770lzM+o=", + "dev": true, + "requires": { + "camelcase": "^5.2.0", + "icss-utils": "^4.1.0", + "loader-utils": "^1.2.3", + "normalize-path": "^3.0.0", + "postcss": "^7.0.14", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^2.0.6", + "postcss-modules-scope": "^2.1.0", + "postcss-modules-values": "^2.0.0", + "postcss-value-parser": "^3.3.0", + "schema-utils": "^1.0.0" + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/css-select/download/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-select-base-adapter": { + "version": "0.1.1", + "resolved": "http://registry.npm.taobao.org/css-select-base-adapter/download/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha1-Oy/0lyzDYquIVhUHqVQIoUMhNdc=", + "dev": true + }, + "css-tree": { + "version": "1.0.0-alpha.28", + "resolved": "http://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.28.tgz", + "integrity": "sha1-joloGQ2IbJR3vI1h6W9hrz9/+n8=", + "dev": true, + "requires": { + "mdn-data": "~1.1.0", + "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 + } + } + }, + "css-unit-converter": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/css-unit-converter/download/css-unit-converter-1.1.1.tgz", + "integrity": "sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY=", + "dev": true + }, + "css-url-regex": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/css-url-regex/download/css-url-regex-1.1.0.tgz", + "integrity": "sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w=", + "dev": true + }, + "css-what": { + "version": "2.1.3", + "resolved": "http://registry.npm.taobao.org/css-what/download/css-what-2.1.3.tgz", + "integrity": "sha1-ptdgRXM2X+dGhsPzEcVlE9iChfI=", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/cssesc/download/cssesc-3.0.0.tgz", + "integrity": "sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4=", + "dev": true + }, + "cssnano": { + "version": "4.1.10", + "resolved": "http://registry.npm.taobao.org/cssnano/download/cssnano-4.1.10.tgz", + "integrity": "sha1-CsQfCxPRPUZUh+ERt3jULaYxuLI=", + "dev": true, + "requires": { + "cosmiconfig": "^5.0.0", + "cssnano-preset-default": "^4.0.7", + "is-resolvable": "^1.0.0", + "postcss": "^7.0.0" + } + }, + "cssnano-preset-default": { + "version": "4.0.7", + "resolved": "http://registry.npm.taobao.org/cssnano-preset-default/download/cssnano-preset-default-4.0.7.tgz", + "integrity": "sha1-UexmLM/KD4izltzZZ5zbkxvhf3Y=", + "dev": true, + "requires": { + "css-declaration-sorter": "^4.0.1", + "cssnano-util-raw-cache": "^4.0.1", + "postcss": "^7.0.0", + "postcss-calc": "^7.0.1", + "postcss-colormin": "^4.0.3", + "postcss-convert-values": "^4.0.1", + "postcss-discard-comments": "^4.0.2", + "postcss-discard-duplicates": "^4.0.2", + "postcss-discard-empty": "^4.0.1", + "postcss-discard-overridden": "^4.0.1", + "postcss-merge-longhand": "^4.0.11", + "postcss-merge-rules": "^4.0.3", + "postcss-minify-font-values": "^4.0.2", + "postcss-minify-gradients": "^4.0.2", + "postcss-minify-params": "^4.0.2", + "postcss-minify-selectors": "^4.0.2", + "postcss-normalize-charset": "^4.0.1", + "postcss-normalize-display-values": "^4.0.2", + "postcss-normalize-positions": "^4.0.2", + "postcss-normalize-repeat-style": "^4.0.2", + "postcss-normalize-string": "^4.0.2", + "postcss-normalize-timing-functions": "^4.0.2", + "postcss-normalize-unicode": "^4.0.1", + "postcss-normalize-url": "^4.0.1", + "postcss-normalize-whitespace": "^4.0.2", + "postcss-ordered-values": "^4.1.2", + "postcss-reduce-initial": "^4.0.3", + "postcss-reduce-transforms": "^4.0.2", + "postcss-svgo": "^4.0.2", + "postcss-unique-selectors": "^4.0.1" + } + }, + "cssnano-util-get-arguments": { + "version": "4.0.0", + "resolved": "http://registry.npm.taobao.org/cssnano-util-get-arguments/download/cssnano-util-get-arguments-4.0.0.tgz", + "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=", + "dev": true + }, + "cssnano-util-get-match": { + "version": "4.0.0", + "resolved": "http://registry.npm.taobao.org/cssnano-util-get-match/download/cssnano-util-get-match-4.0.0.tgz", + "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=", + "dev": true + }, + "cssnano-util-raw-cache": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/cssnano-util-raw-cache/download/cssnano-util-raw-cache-4.0.1.tgz", + "integrity": "sha1-sm1f1fcqEd/np4RvtMZyYPlr8oI=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "cssnano-util-same-parent": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/cssnano-util-same-parent/download/cssnano-util-same-parent-4.0.1.tgz", + "integrity": "sha1-V0CC+yhZ0ttDOFWDXZqEVuoYu/M=", + "dev": true + }, + "csso": { + "version": "3.5.1", + "resolved": "http://registry.npm.taobao.org/csso/download/csso-3.5.1.tgz", + "integrity": "sha1-e564vmFiiXPBsmHhadLwJACOdYs=", + "dev": true, + "requires": { + "css-tree": "1.0.0-alpha.29" + }, + "dependencies": { + "css-tree": { + "version": "1.0.0-alpha.29", + "resolved": "http://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.29.tgz", + "integrity": "sha1-P6nU7zFCy9HDAedmTB81K9gvWjk=", + "dev": true, + "requires": { + "mdn-data": "~1.1.0", + "source-map": "^0.5.3" + } + }, + "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 + } + } + }, + "csstype": { + "version": "2.6.4", + "resolved": "http://registry.npm.taobao.org/csstype/download/csstype-2.6.4.tgz", + "integrity": "sha1-1YWmBiCW4yTnGH+A4E+SvQ8A438=", + "dev": true + }, + "cyclist": { + "version": "0.2.2", + "resolved": "http://registry.npm.taobao.org/cyclist/download/cyclist-0.2.2.tgz", + "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "http://registry.npm.taobao.org/dashdash/download/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "optional": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-now": { + "version": "0.1.4", + "resolved": "http://registry.npm.taobao.org/date-now/download/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, + "debug": { + "version": "4.1.1", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", + "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/decamelize/download/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "http://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": "http://registry.npm.taobao.org/deep-equal/download/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deepmerge": { + "version": "2.2.1", + "resolved": "http://registry.npm.taobao.org/deepmerge/download/deepmerge-2.2.1.tgz", + "integrity": "sha1-XT/yKgHAD2RUBaL7wX0HeKGAEXA=", + "dev": true + }, + "default-gateway": { + "version": "4.2.0", + "resolved": "http://registry.npm.taobao.org/default-gateway/download/default-gateway-4.2.0.tgz", + "integrity": "sha1-FnEEx1AMIRX23WmwpTa7jtcgVSs=", + "dev": true, + "requires": { + "execa": "^1.0.0", + "ip-regex": "^2.1.0" + } + }, + "define-properties": { + "version": "1.1.3", + "resolved": "http://registry.npm.taobao.org/define-properties/download/define-properties-1.1.3.tgz", + "integrity": "sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz", + "integrity": "sha1-1Flono1lS6d+AqgX+HENcCyxbp0=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "del": { + "version": "4.1.0", + "resolved": "http://registry.npm.taobao.org/del/download/del-4.1.0.tgz", + "integrity": "sha1-BJVDuCkOGpKT4r0VCrOgb2NzIrg=", + "dev": true, + "requires": { + "globby": "^6.1.0", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/delayed-stream/download/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "delegate": { + "version": "3.2.0", + "resolved": "https://registry.npm.taobao.org/delegate/download/delegate-3.2.0.tgz", + "integrity": "sha1-tmtxwxWFIuirV0T3INjKDCr1kWY=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "http://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "des.js": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/des.js/download/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.0.4", + "resolved": "http://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "detect-file": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/detect-file/download/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true + }, + "detect-node": { + "version": "2.0.4", + "resolved": "http://registry.npm.taobao.org/detect-node/download/detect-node-2.0.4.tgz", + "integrity": "sha1-AU7o+PZpxcWAI9pkuBecCDooxGw=", + "dev": true + }, + "diff": { + "version": "3.5.0", + "resolved": "http://registry.npm.taobao.org/diff/download/diff-3.5.0.tgz", + "integrity": "sha1-gAwN0eCov7yVg1wgKtIg/jF+WhI=", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "http://registry.npm.taobao.org/diffie-hellman/download/diffie-hellman-5.0.3.tgz", + "integrity": "sha1-QOjumPVaIUlgcUaSHGPhrl89KHU=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/dns-equal/download/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "dns-packet": { + "version": "1.3.1", + "resolved": "http://registry.npm.taobao.org/dns-packet/download/dns-packet-1.3.1.tgz", + "integrity": "sha1-EqpCaYEHW+UAuRDu3NC0fdfe2lo=", + "dev": true, + "requires": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "dns-txt": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/dns-txt/download/dns-txt-2.0.2.tgz", + "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "dev": true, + "requires": { + "buffer-indexof": "^1.0.0" + } + }, + "dom-align": { + "version": "1.11.1", + "resolved": "https://registry.npm.taobao.org/dom-align/download/dom-align-1.11.1.tgz?cache=0&sync_timestamp=1584441192594&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdom-align%2Fdownload%2Fdom-align-1.11.1.tgz", + "integrity": "sha1-dZK+maZgo2ze3B1u6yK4EJ11jK4=", + "dev": true + }, + "dom-closest": { + "version": "0.2.0", + "resolved": "http://registry.npm.taobao.org/dom-closest/download/dom-closest-0.2.0.tgz", + "integrity": "sha1-69n5HRvyLo1vR3h2u80+yQIWwM8=", + "dev": true, + "requires": { + "dom-matches": ">=1.0.1" + } + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "http://registry.npm.taobao.org/dom-converter/download/dom-converter-0.2.0.tgz", + "integrity": "sha1-ZyGp2u4uKTaClVtq/kFncWJ7t2g=", + "dev": true, + "requires": { + "utila": "~0.4" + } + }, + "dom-matches": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/dom-matches/download/dom-matches-2.0.0.tgz", + "integrity": "sha1-0nKLQWqHUzmA6wibhI0lPPI6dYw=", + "dev": true + }, + "dom-scroll-into-view": { + "version": "1.2.1", + "resolved": "http://registry.npm.taobao.org/dom-scroll-into-view/download/dom-scroll-into-view-1.2.1.tgz", + "integrity": "sha1-6PNnMt0ImwIBqI14Fdw/iObWbH4=", + "dev": true + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "http://registry.npm.taobao.org/dom-serializer/download/dom-serializer-0.1.1.tgz", + "integrity": "sha1-HsQFnihLq+027sKUHUqXChic58A=", + "dev": true, + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "dom-walk": { + "version": "0.1.1", + "resolved": "http://registry.npm.taobao.org/dom-walk/download/dom-walk-0.1.1.tgz", + "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=", + "dev": true + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/domain-browser/download/domain-browser-1.2.0.tgz", + "integrity": "sha1-PTH1AZGmdJ3RN1p/Ui6CPULlTto=", + "dev": true + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "http://registry.npm.taobao.org/domelementtype/download/domelementtype-1.3.1.tgz", + "integrity": "sha1-0EjESzew0Qp/Kj1f7j9DM9eQSB8=", + "dev": true + }, + "domhandler": { + "version": "2.4.2", + "resolved": "http://registry.npm.taobao.org/domhandler/download/domhandler-2.4.2.tgz", + "integrity": "sha1-iAUJfpM9ZehVRvcm1g9euItE+AM=", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "http://registry.npm.taobao.org/domutils/download/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "http://registry.npm.taobao.org/dot-prop/download/dot-prop-4.2.0.tgz", + "integrity": "sha1-HxngwuGqDjJ5fEl5nyg3rGr2nFc=", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "draft-js": { + "version": "0.10.5", + "resolved": "http://registry.npm.taobao.org/draft-js/download/draft-js-0.10.5.tgz", + "integrity": "sha1-v6m+sBj+BTPbsI1mdcNxprCPp0I=", + "dev": true, + "requires": { + "fbjs": "^0.8.15", + "immutable": "~3.7.4", + "object-assign": "^4.1.0" + } + }, + "duplexify": { + "version": "3.7.1", + "resolved": "http://registry.npm.taobao.org/duplexify/download/duplexify-3.7.1.tgz", + "integrity": "sha1-Kk31MX9sz9kfhtb9JdjYoQO4gwk=", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "http://registry.npm.taobao.org/ecc-jsbn/download/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "optional": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "echarts": { + "version": "4.7.0", + "resolved": "https://registry.npm.taobao.org/echarts/download/echarts-4.7.0.tgz", + "integrity": "sha1-Wzh1pML5HjkpQl+rq56s5+QJiz8=", + "dev": true, + "requires": { + "zrender": "4.3.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.124", + "resolved": "http://registry.npm.taobao.org/electron-to-chromium/download/electron-to-chromium-1.3.124.tgz", + "integrity": "sha1-hh/AFIdIoRs+XM69+LeV/1E/oR8=", + "dev": true + }, + "elliptic": { + "version": "6.4.1", + "resolved": "http://registry.npm.taobao.org/elliptic/download/elliptic-6.4.1.tgz", + "integrity": "sha1-wtC3d2kRuGcixjLDwGxg8vgZk5o=", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/emojis-list/download/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "encoding": { + "version": "0.1.12", + "resolved": "http://registry.npm.taobao.org/encoding/download/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "dev": true, + "requires": { + "iconv-lite": "~0.4.13" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "http://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.1.tgz", + "integrity": "sha1-7SljTRm6ukY7bOa4CjchPqtx7EM=", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "http://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.1.0.tgz", + "integrity": "sha1-Qcfgv9/nSsH/4eV61qXGyfN0Kn8=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" + } + }, + "enquire.js": { + "version": "2.1.6", + "resolved": "http://registry.npm.taobao.org/enquire.js/download/enquire.js-2.1.6.tgz", + "integrity": "sha1-PoeAybi4NQhMP2DhZtvDwqPImBQ=", + "dev": true + }, + "entities": { + "version": "1.1.2", + "resolved": "http://registry.npm.taobao.org/entities/download/entities-1.1.2.tgz", + "integrity": "sha1-vfpzUplmTfr9NFKe1PhSKidf6lY=", + "dev": true + }, + "errno": { + "version": "0.1.7", + "resolved": "http://registry.npm.taobao.org/errno/download/errno-0.1.7.tgz", + "integrity": "sha1-RoTXF3mtOa8Xfj8AeZb3xnyFJhg=", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "http://registry.npm.taobao.org/error-ex/download/error-ex-1.3.2.tgz", + "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.13.0", + "resolved": "http://registry.npm.taobao.org/es-abstract/download/es-abstract-1.13.0.tgz", + "integrity": "sha1-rIYUX91QmdjdSVWMy6Lq+biOJOk=", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.0", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-keys": "^1.0.12" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.0.tgz", + "integrity": "sha1-7fckeAM0VujdqO8J4ArZZQcH83c=", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escape-html": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "http://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "http://registry.npm.taobao.org/eslint-scope/download/eslint-scope-4.0.3.tgz", + "integrity": "sha1-ygODMxD2iJoyZHgaqC5j65z+eEg=", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz", + "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=", + "dev": true + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "http://registry.npm.taobao.org/esrecurse/download/esrecurse-4.2.1.tgz", + "integrity": "sha1-AHo7n9vCs7uH5IeeoZyS/b05Qs8=", + "dev": true, + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "http://registry.npm.taobao.org/estraverse/download/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/esutils/download/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "http://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "eventemitter3": { + "version": "3.1.0", + "resolved": "http://registry.npm.taobao.org/eventemitter3/download/eventemitter3-3.1.0.tgz", + "integrity": "sha1-CQtNbNvWRe0Qv3UNS1QHlC17oWM=", + "dev": true + }, + "eventlistener": { + "version": "0.0.1", + "resolved": "http://registry.npm.taobao.org/eventlistener/download/eventlistener-0.0.1.tgz", + "integrity": "sha1-7Suqu4UiJ68rz4iRUscsY8pTLrg=", + "dev": true + }, + "events": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/events/download/events-3.0.0.tgz", + "integrity": "sha1-mgoN+vYok9krh1uPJpjKQRSXPog=", + "dev": true + }, + "eventsource": { + "version": "1.0.7", + "resolved": "http://registry.npm.taobao.org/eventsource/download/eventsource-1.0.7.tgz", + "integrity": "sha1-j7xyyT/NNAiAkLwKTmT0tc7m2NA=", + "dev": true, + "requires": { + "original": "^1.0.0" + } + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/evp_bytestokey/download/evp_bytestokey-1.0.3.tgz", + "integrity": "sha1-f8vbGY3HGVlDLv4ThCaE4FJaywI=", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/execa/download/execa-1.0.0.tgz", + "integrity": "sha1-xiNqW7TfbW8V6I5/AXeYIWdJ3dg=", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/exit-on-epipe/download/exit-on-epipe-1.0.1.tgz", + "integrity": "sha1-C92S6H1ShdJn2qgXHQ6wYVlolpI=", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "http://registry.npm.taobao.org/expand-brackets/download/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "expand-tilde": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/expand-tilde/download/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "express": { + "version": "4.16.4", + "resolved": "http://registry.npm.taobao.org/express/download/express-4.16.4.tgz", + "integrity": "sha1-/d72GSYQniTFFeqX/S8b2/Yt8S4=", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "array-flatten": "1.1.1", + "body-parser": "1.18.3", + "content-disposition": "0.5.2", + "content-type": "~1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.1.1", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.4", + "qs": "6.5.2", + "range-parser": "~1.2.0", + "safe-buffer": "5.1.2", + "send": "0.16.2", + "serve-static": "1.13.2", + "setprototypeof": "1.1.0", + "statuses": "~1.4.0", + "type-is": "~1.6.16", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "array-flatten": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/array-flatten/download/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "http://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npm.taobao.org/serve-static/download/serve-static-1.13.2.tgz", + "integrity": "sha1-CV6Ecv1bRiN9tQzkhqQ/S4bGzsE=", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", + "send": "0.16.2" + } + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "http://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz", + "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo=", + "dev": true, + "optional": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "http://registry.npm.taobao.org/extglob/download/extglob-2.0.4.tgz", + "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "http://registry.npm.taobao.org/extsprintf/download/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "http://registry.npm.taobao.org/fast-levenshtein/download/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "faye-websocket": { + "version": "0.10.0", + "resolved": "http://registry.npm.taobao.org/faye-websocket/download/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "fbjs": { + "version": "0.8.17", + "resolved": "http://registry.npm.taobao.org/fbjs/download/fbjs-0.8.17.tgz", + "integrity": "sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=", + "dev": true, + "requires": { + "core-js": "^1.0.0", + "isomorphic-fetch": "^2.1.1", + "loose-envify": "^1.0.0", + "object-assign": "^4.1.0", + "promise": "^7.1.1", + "setimmediate": "^1.0.5", + "ua-parser-js": "^0.7.18" + }, + "dependencies": { + "core-js": { + "version": "1.2.7", + "resolved": "http://registry.npm.taobao.org/core-js/download/core-js-1.2.7.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=", + "dev": true + } + } + }, + "figgy-pudding": { + "version": "3.5.1", + "resolved": "http://registry.npm.taobao.org/figgy-pudding/download/figgy-pudding-3.5.1.tgz", + "integrity": "sha1-hiRwESkBxyeg5JWoB0S9W6odZ5A=", + "dev": true + }, + "file-loader": { + "version": "5.0.2", + "resolved": "https://registry.npm.taobao.org/file-loader/download/file-loader-5.0.2.tgz?cache=0&sync_timestamp=1574689264559&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-loader%2Fdownload%2Ffile-loader-5.0.2.tgz", + "integrity": "sha1-fz2LSshaXo32EzjP7JXXQF+XHKo=", + "dev": true, + "requires": { + "loader-utils": "^1.2.3", + "schema-utils": "^2.5.0" + }, + "dependencies": { + "ajv": { + "version": "6.10.2", + "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-6.10.2.tgz", + "integrity": "sha1-086gTWsBeyiUrWkED+yLYj60vVI=", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.4.1", + "resolved": "https://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-3.4.1.tgz", + "integrity": "sha1-75FuJxxkrBIXH9g4TqrmsjRYVNo=", + "dev": true + }, + "schema-utils": { + "version": "2.6.1", + "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.6.1.tgz?cache=0&sync_timestamp=1574946791935&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.6.1.tgz", + "integrity": "sha1-63jwuUXHvPoggrNWXo2zVIAR3E8=", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "http://registry.npm.taobao.org/fill-range/download/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "finalhandler": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/finalhandler/download/finalhandler-1.1.1.tgz", + "integrity": "sha1-7r9O2EAHnIP0JJA4ydcDAIMBsQU=", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.4.0", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-2.1.0.tgz", + "integrity": "sha1-jQ+UzRP+Q8bHwmGg2GEVypGMBfc=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz", + "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "findup-sync": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/findup-sync/download/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "http://registry.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/flush-write-stream/download/flush-write-stream-1.1.1.tgz", + "integrity": "sha1-jdfYc6G6vCB9lOrQwuDkQnbr8ug=", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "follow-redirects": { + "version": "1.7.0", + "resolved": "http://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.7.0.tgz", + "integrity": "sha1-SJ68GY3A5/ZBZ70jsDxMGbV4THY=", + "dev": true, + "requires": { + "debug": "^3.2.6" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/for-in/download/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/forever-agent/download/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true, + "optional": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "http://registry.npm.taobao.org/form-data/download/form-data-2.3.3.tgz", + "integrity": "sha1-3M5SwF9kTymManq5Nr1yTO/786Y=", + "dev": true, + "optional": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "http://registry.npm.taobao.org/forwarded/download/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true + }, + "frac": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/frac/download/frac-1.1.2.tgz", + "integrity": "sha1-PXT39keMiKG1AgMG10fcYxPHTQs=", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "http://registry.npm.taobao.org/fragment-cache/download/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "http://registry.npm.taobao.org/fresh/download/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "from2": { + "version": "2.3.0", + "resolved": "http://registry.npm.taobao.org/from2/download/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "http://registry.npm.taobao.org/fs-write-stream-atomic/download/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "1.2.8", + "resolved": "http://registry.npm.taobao.org/fsevents/download/fsevents-1.2.8.tgz", + "integrity": "sha1-V+pTIPdizUaW5ejocSDszIsRys8=", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "resolved": false, + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": false, + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "aproba": { + "version": "1.2.0", + "resolved": false, + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": false, + "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": false, + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": false, + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "resolved": false, + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": false, + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": false, + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": false, + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true, + "optional": true + }, + "debug": { + "version": "4.1.1", + "resolved": false, + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": false, + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "resolved": false, + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "resolved": false, + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "resolved": false, + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": false, + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "resolved": false, + "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": false, + "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": false, + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": false, + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "resolved": false, + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": false, + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": false, + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "ini": { + "version": "1.3.5", + "resolved": false, + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": false, + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": false, + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": false, + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": false, + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "minipass": { + "version": "2.3.5", + "resolved": false, + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "resolved": false, + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": false, + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "resolved": false, + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true, + "optional": true + }, + "needle": { + "version": "2.3.0", + "resolved": false, + "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": false, + "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": false, + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "resolved": false, + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.1", + "resolved": false, + "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": false, + "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": false, + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": false, + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "resolved": false, + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "resolved": false, + "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": false, + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": false, + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "resolved": false, + "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": false, + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": false, + "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": false, + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": false, + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": false, + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "resolved": false, + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.0", + "resolved": false, + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": false, + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": false, + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "resolved": false, + "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": false, + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": false, + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": false, + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "resolved": false, + "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": false, + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": false, + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "yallist": { + "version": "3.0.3", + "resolved": false, + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true + } + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz", + "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=", + "dev": true + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/get-caller-file/download/get-caller-file-1.0.3.tgz", + "integrity": "sha1-+Xj6TJDR3+f/LWvtoqUV5xO9z0o=", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "http://registry.npm.taobao.org/get-stream/download/get-stream-4.1.0.tgz", + "integrity": "sha1-wbJVV189wh1Zv8ec09K0axw6VLU=", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "http://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "http://registry.npm.taobao.org/getpass/download/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "optional": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "http://registry.npm.taobao.org/glob/download/glob-7.1.3.tgz", + "integrity": "sha1-OWCDLT8VdBCDQtr9OmezMsCWnfE=", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "http://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": "http://registry.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "global": { + "version": "4.3.2", + "resolved": "http://registry.npm.taobao.org/global/download/global-4.3.2.tgz", + "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", + "dev": true, + "requires": { + "min-document": "^2.19.0", + "process": "~0.5.1" + } + }, + "global-modules": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/global-modules/download/global-modules-1.0.0.tgz", + "integrity": "sha1-bXcPDrUjrHgWTXK15xqIdyZcw+o=", + "dev": true, + "requires": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + } + }, + "global-prefix": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/global-prefix/download/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + } + }, + "globby": { + "version": "6.1.0", + "resolved": "http://registry.npm.taobao.org/globby/download/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "http://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npm.taobao.org/good-listener/download/good-listener-1.2.2.tgz", + "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", + "dev": true, + "requires": { + "delegate": "^3.1.2" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "http://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.1.15.tgz", + "integrity": "sha1-/7cD4QZuig7qpMi4C6klPu77+wA=", + "dev": true + }, + "gud": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/gud/download/gud-1.0.0.tgz", + "integrity": "sha1-pIlYGxfmpwvsqavjrlfeekmYUsA=", + "dev": true + }, + "hammerjs": { + "version": "2.0.8", + "resolved": "http://registry.npm.taobao.org/hammerjs/download/hammerjs-2.0.8.tgz", + "integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE=", + "dev": true + }, + "handle-thing": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/handle-thing/download/handle-thing-2.0.0.tgz", + "integrity": "sha1-DgOWlf9QyT/CiFV9aW88HcZ3Z1Q=", + "dev": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/har-schema/download/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true, + "optional": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "http://registry.npm.taobao.org/har-validator/download/har-validator-5.1.3.tgz", + "integrity": "sha1-HvievT5JllV2de7ZiTEQ3DUPoIA=", + "dev": true, + "optional": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/has/download/has-1.0.3.tgz", + "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/has-flag/download/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/has-value/download/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/has-values/download/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hash-base": { + "version": "3.0.4", + "resolved": "http://registry.npm.taobao.org/hash-base/download/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "http://registry.npm.taobao.org/hash.js/download/hash.js-1.1.7.tgz", + "integrity": "sha1-C6vKU46NTuSg+JiNaIZlN6ADz0I=", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "he": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/he/download/he-1.2.0.tgz", + "integrity": "sha1-hK5l+n6vsWX922FWauFLrwVmTw8=", + "dev": true + }, + "hex-color-regex": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/hex-color-regex/download/hex-color-regex-1.1.0.tgz", + "integrity": "sha1-TAb8y0YC/iYCs8k9+C1+fb8aio4=", + "dev": true + }, + "history": { + "version": "4.9.0", + "resolved": "http://registry.npm.taobao.org/history/download/history-4.9.0.tgz", + "integrity": "sha1-hFh8IGgDnq2K92np1qaGChT6G8o=", + "dev": true, + "requires": { + "@babel/runtime": "^7.1.2", + "loose-envify": "^1.2.0", + "resolve-pathname": "^2.2.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0", + "value-equal": "^0.4.0" + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/hmac-drbg/download/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "hoist-non-react-statics": { + "version": "3.3.0", + "resolved": "http://registry.npm.taobao.org/hoist-non-react-statics/download/hoist-non-react-statics-3.3.0.tgz", + "integrity": "sha1-sJF48BIhhPuVrPUl2q7LTY9FlYs=", + "dev": true, + "requires": { + "react-is": "^16.7.0" + } + }, + "homedir-polyfill": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/homedir-polyfill/download/homedir-polyfill-1.0.3.tgz", + "integrity": "sha1-dDKYzvTlrz4ZQWH7rcwhUdOgWOg=", + "dev": true, + "requires": { + "parse-passwd": "^1.0.0" + } + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "http://registry.npm.taobao.org/hpack.js/download/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "hsl-regex": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/hsl-regex/download/hsl-regex-1.0.0.tgz", + "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=", + "dev": true + }, + "hsla-regex": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/hsla-regex/download/hsla-regex-1.0.0.tgz", + "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=", + "dev": true + }, + "html-comment-regex": { + "version": "1.1.2", + "resolved": "http://registry.npm.taobao.org/html-comment-regex/download/html-comment-regex-1.1.2.tgz", + "integrity": "sha1-l9RoiutcgYhqNk+qDK0d2hTUM6c=", + "dev": true + }, + "html-entities": { + "version": "1.2.1", + "resolved": "http://registry.npm.taobao.org/html-entities/download/html-entities-1.2.1.tgz", + "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "dev": true + }, + "html-minifier": { + "version": "3.5.21", + "resolved": "http://registry.npm.taobao.org/html-minifier/download/html-minifier-3.5.21.tgz", + "integrity": "sha1-0AQOBUcw41TbAIRjWTGUAVIS0gw=", + "dev": true, + "requires": { + "camel-case": "3.0.x", + "clean-css": "4.2.x", + "commander": "2.17.x", + "he": "1.2.x", + "param-case": "2.1.x", + "relateurl": "0.2.x", + "uglify-js": "3.4.x" + } + }, + "html-webpack-plugin": { + "version": "3.2.0", + "resolved": "http://registry.npm.taobao.org/html-webpack-plugin/download/html-webpack-plugin-3.2.0.tgz", + "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", + "dev": true, + "requires": { + "html-minifier": "^3.2.3", + "loader-utils": "^0.2.16", + "lodash": "^4.17.3", + "pretty-error": "^2.0.2", + "tapable": "^1.0.0", + "toposort": "^1.0.0", + "util.promisify": "1.0.0" + }, + "dependencies": { + "big.js": { + "version": "3.2.0", + "resolved": "http://registry.npm.taobao.org/big.js/download/big.js-3.2.0.tgz", + "integrity": "sha1-pfwpi4G54Nyi5FiCR4S2XFK6WI4=", + "dev": true + }, + "json5": { + "version": "0.5.1", + "resolved": "http://registry.npm.taobao.org/json5/download/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "loader-utils": { + "version": "0.2.17", + "resolved": "http://registry.npm.taobao.org/loader-utils/download/loader-utils-0.2.17.tgz", + "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", + "dev": true, + "requires": { + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0", + "object-assign": "^4.0.1" + } + } + } + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "http://registry.npm.taobao.org/htmlparser2/download/htmlparser2-3.10.1.tgz", + "integrity": "sha1-vWedw/WYl7ajS7EHSchVu1OpOS8=", + "dev": true, + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "http://registry.npm.taobao.org/http-deceiver/download/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "http-errors": { + "version": "1.6.3", + "resolved": "http://registry.npm.taobao.org/http-errors/download/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "http-parser-js": { + "version": "0.5.0", + "resolved": "http://registry.npm.taobao.org/http-parser-js/download/http-parser-js-0.5.0.tgz", + "integrity": "sha1-1l7b7ehDSdDcMDIIFaFdOcw8u9g=", + "dev": true + }, + "http-proxy": { + "version": "1.17.0", + "resolved": "http://registry.npm.taobao.org/http-proxy/download/http-proxy-1.17.0.tgz", + "integrity": "sha1-etOElGWPhGBeL220Q230EPTlvpo=", + "dev": true, + "requires": { + "eventemitter3": "^3.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "http-proxy-middleware": { + "version": "0.19.1", + "resolved": "http://registry.npm.taobao.org/http-proxy-middleware/download/http-proxy-middleware-0.19.1.tgz", + "integrity": "sha1-GDx9xKoUeRUDBkmMIQza+WCApDo=", + "dev": true, + "requires": { + "http-proxy": "^1.17.0", + "is-glob": "^4.0.0", + "lodash": "^4.17.11", + "micromatch": "^3.1.10" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/http-signature/download/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "optional": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/https-browserify/download/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "http://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz", + "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "icss-replace-symbols": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/icss-replace-symbols/download/icss-replace-symbols-1.1.0.tgz", + "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", + "dev": true + }, + "icss-utils": { + "version": "4.1.0", + "resolved": "http://registry.npm.taobao.org/icss-utils/download/icss-utils-4.1.0.tgz", + "integrity": "sha1-M527/7n4cpokO3AeHCnUzFjFLw4=", + "dev": true, + "requires": { + "postcss": "^7.0.14" + } + }, + "ieee754": { + "version": "1.1.13", + "resolved": "http://registry.npm.taobao.org/ieee754/download/ieee754-1.1.13.tgz", + "integrity": "sha1-7BaFWOlaoYH9h9N/VcMrvLZwi4Q=", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "http://registry.npm.taobao.org/iferr/download/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "image-size": { + "version": "0.5.5", + "resolved": "http://registry.npm.taobao.org/image-size/download/image-size-0.5.5.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fimage-size%2Fdownload%2Fimage-size-0.5.5.tgz", + "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "dev": true, + "optional": true + }, + "immutable": { + "version": "3.7.6", + "resolved": "https://registry.npm.taobao.org/immutable/download/immutable-3.7.6.tgz", + "integrity": "sha1-E7TTyxK++hVIKib+Gy665kAHHks=", + "dev": true + }, + "import-fresh": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/import-fresh/download/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, + "import-local": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/import-local/download/import-local-2.0.0.tgz", + "integrity": "sha1-VQcL44pZk88Y72236WH1vuXFoJ0=", + "dev": true, + "requires": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "http://registry.npm.taobao.org/imurmurhash/download/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/indexes-of/download/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, + "indexof": { + "version": "0.0.1", + "resolved": "http://registry.npm.taobao.org/indexof/download/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "http://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "http://registry.npm.taobao.org/inherits/download/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "ini": { + "version": "1.3.5", + "resolved": "http://registry.npm.taobao.org/ini/download/ini-1.3.5.tgz", + "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=", + "dev": true + }, + "internal-ip": { + "version": "4.3.0", + "resolved": "http://registry.npm.taobao.org/internal-ip/download/internal-ip-4.3.0.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Finternal-ip%2Fdownload%2Finternal-ip-4.3.0.tgz", + "integrity": "sha1-hFRSuq2dLKO2nGNaE3rLmg2tCQc=", + "dev": true, + "requires": { + "default-gateway": "^4.2.0", + "ipaddr.js": "^1.9.0" + } + }, + "interpret": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/interpret/download/interpret-1.2.0.tgz", + "integrity": "sha1-1QYaYiS+WOgIOYX1AU2EQ1lXYpY=", + "dev": true + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "http://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": "http://registry.npm.taobao.org/ip/download/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ip-regex": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/ip-regex/download/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true + }, + "ipaddr.js": { + "version": "1.9.0", + "resolved": "http://registry.npm.taobao.org/ipaddr.js/download/ipaddr.js-1.9.0.tgz", + "integrity": "sha1-N9905DCg5HVQ/lSi3v4w2KzZX2U=", + "dev": true + }, + "is-absolute-url": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-2.1.0.tgz", + "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "http://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": "http://registry.npm.taobao.org/is-binary-path/download/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", + "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", + "dev": true + }, + "is-callable": { + "version": "1.1.4", + "resolved": "http://registry.npm.taobao.org/is-callable/download/is-callable-1.1.4.tgz", + "integrity": "sha1-HhrfIZ4e62hNaR+dagX/DTCiTXU=", + "dev": true + }, + "is-color-stop": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/is-color-stop/download/is-color-stop-1.1.0.tgz", + "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=", + "dev": true, + "requires": { + "css-color-names": "^0.0.4", + "hex-color-regex": "^1.1.0", + "hsl-regex": "^1.0.0", + "hsla-regex": "^1.0.0", + "rgb-regex": "^1.0.1", + "rgba-regex": "^1.0.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/is-date-object/download/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz", + "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-5.1.0.tgz", + "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=", + "dev": true + } + } + }, + "is-directory": { + "version": "0.3.1", + "resolved": "http://registry.npm.taobao.org/is-directory/download/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/is-glob/download/is-glob-4.0.1.tgz", + "integrity": "sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw=", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-mobile": { + "version": "2.2.1", + "resolved": "https://registry.npm.taobao.org/is-mobile/download/is-mobile-2.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-mobile%2Fdownload%2Fis-mobile-2.2.1.tgz", + "integrity": "sha1-EPIyABLEEMwoX+7LE0Br1Ybxsvg=", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/is-obj/download/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-path-cwd": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/is-path-cwd/download/is-path-cwd-2.0.0.tgz", + "integrity": "sha1-1Hd6jiJ6AAlqMfAw2zdw+EsRbAI=", + "dev": true + }, + "is-path-in-cwd": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/is-path-in-cwd/download/is-path-in-cwd-2.0.0.tgz", + "integrity": "sha1-aORSpu7CYFAM7CHgKcCkTMDc0uo=", + "dev": true, + "requires": { + "is-path-inside": "^1.0.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/is-path-inside/download/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "http://registry.npm.taobao.org/is-plain-object/download/is-plain-object-2.0.4.tgz", + "integrity": "sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-regex": { + "version": "1.0.4", + "resolved": "http://registry.npm.taobao.org/is-regex/download/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, + "is-resolvable": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/is-resolvable/download/is-resolvable-1.1.0.tgz", + "integrity": "sha1-+xj4fOH+uSUWnJpAfBkxijIG7Yg=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/is-stream/download/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-svg": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/is-svg/download/is-svg-3.0.0.tgz", + "integrity": "sha1-kyHb0pwhLlypnE+peUxxS8r6L3U=", + "dev": true, + "requires": { + "html-comment-regex": "^1.1.0" + } + }, + "is-symbol": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.2.tgz", + "integrity": "sha1-oFX2rlcZLK7jKeeoYBGLSXqVDzg=", + "dev": true, + "requires": { + "has-symbols": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-typedarray/download/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true, + "optional": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz", + "integrity": "sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0=", + "dev": true + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/is-wsl/download/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "http://registry.npm.taobao.org/isobject/download/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "http://registry.npm.taobao.org/isomorphic-fetch/download/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "dev": true, + "requires": { + "node-fetch": "^1.0.1", + "whatwg-fetch": ">=0.10.0" + } + }, + "isstream": { + "version": "0.1.2", + "resolved": "http://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true, + "optional": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "http://registry.npm.taobao.org/js-tokens/download/js-tokens-4.0.0.tgz", + "integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk=", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "http://registry.npm.taobao.org/js-yaml/download/js-yaml-3.13.1.tgz", + "integrity": "sha1-r/FRswv9+o5J4F2iLnQV6d+jeEc=", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "http://registry.npm.taobao.org/jsbn/download/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/json-parse-better-errors/download/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk=", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "http://registry.npm.taobao.org/json-schema/download/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true, + "optional": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "http://registry.npm.taobao.org/json-schema-traverse/download/json-schema-traverse-0.4.1.tgz", + "integrity": "sha1-afaofZUTq4u4/mO9sJecRI5oRmA=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "http://registry.npm.taobao.org/json-stringify-safe/download/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true, + "optional": true + }, + "json2mq": { + "version": "0.2.0", + "resolved": "http://registry.npm.taobao.org/json2mq/download/json2mq-0.2.0.tgz", + "integrity": "sha1-tje9O6nqvhIsg+lyBIOusQ0skEo=", + "dev": true, + "requires": { + "string-convert": "^0.2.0" + } + }, + "json3": { + "version": "3.3.2", + "resolved": "http://registry.npm.taobao.org/json3/download/json3-3.3.2.tgz", + "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", + "dev": true + }, + "json5": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/json5/download/json5-1.0.1.tgz", + "integrity": "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "jsprim": { + "version": "1.4.1", + "resolved": "http://registry.npm.taobao.org/jsprim/download/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "killable": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/killable/download/killable-1.0.1.tgz", + "integrity": "sha1-TIzkQRh6Bhx0dPuHygjipjgZSJI=", + "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=", + "dev": true + }, + "last-call-webpack-plugin": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/last-call-webpack-plugin/download/last-call-webpack-plugin-3.0.0.tgz", + "integrity": "sha1-l0LfDhDjz0blwDgcLekNOnotdVU=", + "dev": true, + "requires": { + "lodash": "^4.17.5", + "webpack-sources": "^1.1.0" + } + }, + "lcid": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/lcid/download/lcid-2.0.0.tgz", + "integrity": "sha1-bvXS32DlL4LrIopMNz6NHzlyU88=", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "less": { + "version": "3.9.0", + "resolved": "http://registry.npm.taobao.org/less/download/less-3.9.0.tgz", + "integrity": "sha1-t1EcQ/N89X3Iff/ZiD7BISibFHQ=", + "dev": true, + "requires": { + "clone": "^2.1.2", + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "mime": "^1.4.1", + "mkdirp": "^0.5.0", + "promise": "^7.1.1", + "request": "^2.83.0", + "source-map": "~0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true, + "optional": true + } + } + }, + "less-loader": { + "version": "4.1.0", + "resolved": "http://registry.npm.taobao.org/less-loader/download/less-loader-4.1.0.tgz", + "integrity": "sha1-LBNSxbCaT4QQFJAnT9UWdN5BNj4=", + "dev": true, + "requires": { + "clone": "^2.1.1", + "loader-utils": "^1.1.0", + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "loader-runner": { + "version": "2.4.0", + "resolved": "http://registry.npm.taobao.org/loader-runner/download/loader-runner-2.4.0.tgz", + "integrity": "sha1-7UcGa/5TTX6ExMe5mYwqdWB9k1c=", + "dev": true + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "http://registry.npm.taobao.org/loader-utils/download/loader-utils-1.2.3.tgz", + "integrity": "sha1-H/XcaRHJ8KBiUxpMBLYJQGEIwsc=", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/locate-path/download/locate-path-3.0.0.tgz", + "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.11", + "resolved": "http://registry.npm.taobao.org/lodash/download/lodash-4.17.11.tgz", + "integrity": "sha1-s56mIp72B+zYniyN8SU2iRysm40=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npm.taobao.org/lodash.debounce/download/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "http://registry.npm.taobao.org/lodash.memoize/download/lodash.memoize-4.1.2.tgz", + "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", + "dev": true + }, + "lodash.throttle": { + "version": "4.1.1", + "resolved": "http://registry.npm.taobao.org/lodash.throttle/download/lodash.throttle-4.1.1.tgz", + "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", + "dev": true + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "http://registry.npm.taobao.org/lodash.uniq/download/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true + }, + "loglevel": { + "version": "1.6.1", + "resolved": "http://registry.npm.taobao.org/loglevel/download/loglevel-1.6.1.tgz", + "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "http://registry.npm.taobao.org/loose-envify/download/loose-envify-1.4.0.tgz", + "integrity": "sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8=", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lower-case": { + "version": "1.1.4", + "resolved": "http://registry.npm.taobao.org/lower-case/download/lower-case-1.1.4.tgz", + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", + "dev": true + }, + "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" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/make-dir/download/make-dir-2.1.0.tgz", + "integrity": "sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU=", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "mamacro": { + "version": "0.0.3", + "resolved": "http://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": "http://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", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/map-visit/download/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "md5.js": { + "version": "1.3.5", + "resolved": "http://registry.npm.taobao.org/md5.js/download/md5.js-1.3.5.tgz", + "integrity": "sha1-tdB7jjIW4+J81yjXL3DR5qNCAF8=", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdn-data": { + "version": "1.1.4", + "resolved": "http://registry.npm.taobao.org/mdn-data/download/mdn-data-1.1.4.tgz", + "integrity": "sha1-ULXU/8RXUnZXPE7tuHgIEqhBnwE=", + "dev": true + }, + "media-typer": { + "version": "0.3.0", + "resolved": "http://registry.npm.taobao.org/media-typer/download/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "mem": { + "version": "4.3.0", + "resolved": "http://registry.npm.taobao.org/mem/download/mem-4.3.0.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fmem%2Fdownload%2Fmem-4.3.0.tgz", + "integrity": "sha1-Rhr0l7xK4JYIzbLmDu+2m/90QXg=", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "http://registry.npm.taobao.org/memory-fs/download/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/merge-descriptors/download/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "http://registry.npm.taobao.org/methods/download/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "http://registry.npm.taobao.org/micromatch/download/micromatch-3.1.10.tgz", + "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/miller-rabin/download/miller-rabin-4.0.1.tgz", + "integrity": "sha1-8IA1HIZbDcViqEYpZtqlNUPHik0=", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "http://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz", + "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=", + "dev": true, + "optional": true + }, + "mime-db": { + "version": "1.39.0", + "resolved": "http://registry.npm.taobao.org/mime-db/download/mime-db-1.39.0.tgz", + "integrity": "sha1-+VogJ1dC99KtBCms/kD0IzVDeA4=", + "dev": true + }, + "mime-types": { + "version": "2.1.23", + "resolved": "http://registry.npm.taobao.org/mime-types/download/mime-types-2.1.23.tgz", + "integrity": "sha1-1OrNh96ZNIpoWP4eR5qth3OI2Xc=", + "dev": true, + "requires": { + "mime-db": "~1.39.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/mimic-fn/download/mimic-fn-2.1.0.tgz", + "integrity": "sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs=", + "dev": true + }, + "min-document": { + "version": "2.19.0", + "resolved": "http://registry.npm.taobao.org/min-document/download/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "dev": true, + "requires": { + "dom-walk": "^0.1.0" + } + }, + "mini-css-extract-plugin": { + "version": "0.6.0", + "resolved": "http://registry.npm.taobao.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.6.0.tgz", + "integrity": "sha1-o/Ezctb83pEvPuTNA5ZlcEgB47k=", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "normalize-url": "^2.0.1", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.0" + } + }, + "mini-store": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/mini-store/download/mini-store-2.0.0.tgz", + "integrity": "sha1-CEPASNaULOVePnixtn/AYwIrVIg=", + "dev": true, + "requires": { + "hoist-non-react-statics": "^2.3.1", + "prop-types": "^15.6.0", + "react-lifecycles-compat": "^3.0.4", + "shallowequal": "^1.0.2" + }, + "dependencies": { + "hoist-non-react-statics": { + "version": "2.5.5", + "resolved": "http://registry.npm.taobao.org/hoist-non-react-statics/download/hoist-non-react-statics-2.5.5.tgz", + "integrity": "sha1-xZA89AnA39kI84jmGdhrnBF0y0c=", + "dev": true + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/minimalistic-assert/download/minimalistic-assert-1.0.1.tgz", + "integrity": "sha1-LhlN4ERibUoQ5/f7wAznPoPk1cc=", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/minimalistic-crypto-utils/download/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "http://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz", + "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "mississippi": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/mississippi/download/mississippi-3.0.0.tgz", + "integrity": "sha1-6goykfl+C16HdrNj1fChLZTGcCI=", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "http://registry.npm.taobao.org/mixin-deep/download/mixin-deep-1.3.1.tgz", + "integrity": "sha1-pJ5yaNzhoNlpjkUybFYm3zVD0P4=", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", + "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "http://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "mobx": { + "version": "5.9.4", + "resolved": "http://registry.npm.taobao.org/mobx/download/mobx-5.9.4.tgz", + "integrity": "sha1-He6Sq6M/Z7e67rZ54703ahLlWBI=", + "dev": true + }, + "mobx-react": { + "version": "5.4.3", + "resolved": "http://registry.npm.taobao.org/mobx-react/download/mobx-react-5.4.3.tgz", + "integrity": "sha1-Zwm33YlnDEDpgVkUrCyknMAr+0c=", + "dev": true, + "requires": { + "hoist-non-react-statics": "^3.0.0", + "react-lifecycles-compat": "^3.0.2" + } + }, + "moment": { + "version": "2.24.0", + "resolved": "http://registry.npm.taobao.org/moment/download/moment-2.24.0.tgz", + "integrity": "sha1-DQVdU/UFKqZTyfbraLtdEr9cK1s=", + "dev": true + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz", + "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=", + "dev": true + }, + "multicast-dns": { + "version": "6.2.3", + "resolved": "http://registry.npm.taobao.org/multicast-dns/download/multicast-dns-6.2.3.tgz", + "integrity": "sha1-oOx72QVcQoL3kMPIL04o2zsxsik=", + "dev": true, + "requires": { + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" + } + }, + "multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/multicast-dns-service-types/download/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true + }, + "mutationobserver-shim": { + "version": "0.3.5", + "resolved": "https://registry.npm.taobao.org/mutationobserver-shim/download/mutationobserver-shim-0.3.5.tgz?cache=0&sync_timestamp=1585656350833&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmutationobserver-shim%2Fdownload%2Fmutationobserver-shim-0.3.5.tgz", + "integrity": "sha1-bzXOhYZ7IaoeWPeIktCrTu6ULA4=", + "dev": true + }, + "nan": { + "version": "2.13.2", + "resolved": "http://registry.npm.taobao.org/nan/download/nan-2.13.2.tgz", + "integrity": "sha1-9R3Hrma6fV1V4ebU2AkugCya7+c=", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "http://registry.npm.taobao.org/nanomatch/download/nanomatch-1.2.13.tgz", + "integrity": "sha1-uHqKpPwN6P5r6IiVs4mD/yZb0Rk=", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "negotiator": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/negotiator/download/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "dev": true + }, + "neo-async": { + "version": "2.6.0", + "resolved": "http://registry.npm.taobao.org/neo-async/download/neo-async-2.6.0.tgz", + "integrity": "sha1-udFeTXHGdikIZUtRg+04t1M0CDU=", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "resolved": "http://registry.npm.taobao.org/nice-try/download/nice-try-1.0.5.tgz", + "integrity": "sha1-ozeKdpbOfSI+iPybdkvX7xCJ42Y=", + "dev": true + }, + "no-case": { + "version": "2.3.2", + "resolved": "http://registry.npm.taobao.org/no-case/download/no-case-2.3.2.tgz", + "integrity": "sha1-YLgTOWvjmz8SiKTB7V0efSi0ZKw=", + "dev": true, + "requires": { + "lower-case": "^1.1.1" + } + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "http://registry.npm.taobao.org/node-fetch/download/node-fetch-1.7.3.tgz", + "integrity": "sha1-mA9vcthSEaU0fGsrwYxbhMPrR+8=", + "dev": true, + "requires": { + "encoding": "^0.1.11", + "is-stream": "^1.0.1" + } + }, + "node-forge": { + "version": "0.7.5", + "resolved": "http://registry.npm.taobao.org/node-forge/download/node-forge-0.7.5.tgz", + "integrity": "sha1-bBUsNFzhHFL0ZcKr2VfoY5zWdN8=", + "dev": true + }, + "node-libs-browser": { + "version": "2.2.0", + "resolved": "http://registry.npm.taobao.org/node-libs-browser/download/node-libs-browser-2.2.0.tgz", + "integrity": "sha1-xy9g2dRt4IqUDe27JfP/ovm7qnc=", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.0", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "0.0.4" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "process": { + "version": "0.11.10", + "resolved": "http://registry.npm.taobao.org/process/download/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "http://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + }, + "dependencies": { + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + } + } + }, + "node-releases": { + "version": "1.1.15", + "resolved": "http://registry.npm.taobao.org/node-releases/download/node-releases-1.1.15.tgz", + "integrity": "sha1-nnanOw7KO/eAGt2qDmzpDHlfK5o=", + "dev": true, + "requires": { + "semver": "^5.3.0" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/normalize-path/download/normalize-path-3.0.0.tgz", + "integrity": "sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU=", + "dev": true + }, + "normalize-url": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/normalize-url/download/normalize-url-2.0.1.tgz", + "integrity": "sha1-g1qdoVUfom9w6SMpBpojqmV01+Y=", + "dev": true, + "requires": { + "prepend-http": "^2.0.0", + "query-string": "^5.0.1", + "sort-keys": "^2.0.0" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/npm-run-path/download/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/nth-check/download/nth-check-1.0.2.tgz", + "integrity": "sha1-sr0pXDfj3VijvwcAN2Zjuk2c8Fw=", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/number-is-nan/download/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "http://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz", + "integrity": "sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU=", + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "http://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "http://registry.npm.taobao.org/object-copy/download/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/object-keys/download/object-keys-1.1.1.tgz", + "integrity": "sha1-HEfyct8nfzsdrwYWd9nILiMixg4=", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "http://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "http://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "object.values": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/object.values/download/object.values-1.1.0.tgz", + "integrity": "sha1-v2gQ712j5TJXkOqqK+IT6oRiTak=", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.12.0", + "function-bind": "^1.1.1", + "has": "^1.0.3" + } + }, + "obuf": { + "version": "1.1.2", + "resolved": "http://registry.npm.taobao.org/obuf/download/obuf-1.1.2.tgz", + "integrity": "sha1-Cb6jND1BhZ69RGKS0RydTbYZCE4=", + "dev": true + }, + "omit.js": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/omit.js/download/omit.js-1.0.2.tgz", + "integrity": "sha1-kaFPDrqEBm36AVvzDkdMR/MLyFg=", + "dev": true, + "requires": { + "babel-runtime": "^6.23.0" + } + }, + "on-finished": { + "version": "2.3.0", + "resolved": "http://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/on-headers/download/on-headers-1.0.2.tgz", + "integrity": "sha1-dysK5qqlJcOZ5Imt+tkMQD6zwo8=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "http://registry.npm.taobao.org/once/download/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "opn": { + "version": "5.5.0", + "resolved": "http://registry.npm.taobao.org/opn/download/opn-5.5.0.tgz", + "integrity": "sha1-/HFk+rVtI1kExRw7J9pnWMo7m/w=", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "optimize-css-assets-webpack-plugin": { + "version": "5.0.1", + "resolved": "http://registry.npm.taobao.org/optimize-css-assets-webpack-plugin/download/optimize-css-assets-webpack-plugin-5.0.1.tgz", + "integrity": "sha1-nrUAcR01FltF5/1gui30DLPrkVk=", + "dev": true, + "requires": { + "cssnano": "^4.1.0", + "last-call-webpack-plugin": "^3.0.0" + } + }, + "original": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/original/download/original-1.0.2.tgz", + "integrity": "sha1-5EKmHP/hxf0gpl8yYcJmY7MD8l8=", + "dev": true, + "requires": { + "url-parse": "^1.4.3" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "http://registry.npm.taobao.org/os-browserify/download/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "http://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" + } + }, + "p-defer": { + "version": "1.0.0", + "resolved": "http://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": "http://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": "http://registry.npm.taobao.org/p-is-promise/download/p-is-promise-2.1.0.tgz", + "integrity": "sha1-kYzrrqJIpiz3/6uOO8qMX4gvxC4=", + "dev": true + }, + "p-limit": { + "version": "2.2.0", + "resolved": "http://registry.npm.taobao.org/p-limit/download/p-limit-2.2.0.tgz", + "integrity": "sha1-QXyZQeYCepq8ulCS3SkE4lW1+8I=", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/p-locate/download/p-locate-3.0.0.tgz", + "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-map": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/p-map/download/p-map-2.1.0.tgz", + "integrity": "sha1-MQko/u+cnsxltosXaTAYpmXOoXU=", + "dev": true + }, + "p-try": { + "version": "2.2.0", + "resolved": "http://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz", + "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", + "dev": true + }, + "pako": { + "version": "1.0.10", + "resolved": "http://registry.npm.taobao.org/pako/download/pako-1.0.10.tgz", + "integrity": "sha1-Qyi621CGpCaqkPVBl31JVdpclzI=", + "dev": true + }, + "parallel-transform": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/parallel-transform/download/parallel-transform-1.1.0.tgz", + "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "dev": true, + "requires": { + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "param-case": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/param-case/download/param-case-2.1.1.tgz", + "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "dev": true, + "requires": { + "no-case": "^2.2.0" + } + }, + "parse-asn1": { + "version": "5.1.4", + "resolved": "http://registry.npm.taobao.org/parse-asn1/download/parse-asn1-5.1.4.tgz", + "integrity": "sha1-N/Zij4I/vesic7TVQENKIvPvH8w=", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "http://registry.npm.taobao.org/parse-json/download/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse-passwd": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/parse-passwd/download/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "dev": true + }, + "parseurl": { + "version": "1.3.3", + "resolved": "http://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz", + "integrity": "sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "http://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-browserify": { + "version": "0.0.0", + "resolved": "http://registry.npm.taobao.org/path-browserify/download/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/path-dirname/download/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/path-exists/download/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "http://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": "http://registry.npm.taobao.org/path-key/download/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "http://registry.npm.taobao.org/path-parse/download/path-parse-1.0.6.tgz", + "integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw=", + "dev": true + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "http://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + } + }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "http://registry.npm.taobao.org/pbkdf2/download/pbkdf2-3.0.17.tgz", + "integrity": "sha1-l2wgZTBhexTrsyEUI597CTNuk6Y=", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/performance-now/download/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/pify/download/pify-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", + "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", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/pkg-dir/download/pkg-dir-3.0.0.tgz", + "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "portfinder": { + "version": "1.0.20", + "resolved": "http://registry.npm.taobao.org/portfinder/download/portfinder-1.0.20.tgz", + "integrity": "sha1-vqaGMuVLLhOrewxHdem0G/Jw5Eo=", + "dev": true, + "requires": { + "async": "^1.5.2", + "debug": "^2.2.0", + "mkdirp": "0.5.x" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "http://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.14", + "resolved": "http://registry.npm.taobao.org/postcss/download/postcss-7.0.14.tgz", + "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "http://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz", + "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-calc": { + "version": "7.0.1", + "resolved": "http://registry.npm.taobao.org/postcss-calc/download/postcss-calc-7.0.1.tgz", + "integrity": "sha1-Ntd7qwI7Dsu5eJ2E3LI8SUEUVDY=", + "dev": true, + "requires": { + "css-unit-converter": "^1.1.1", + "postcss": "^7.0.5", + "postcss-selector-parser": "^5.0.0-rc.4", + "postcss-value-parser": "^3.3.1" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/cssesc/download/cssesc-2.0.0.tgz", + "integrity": "sha1-OxO9G7HLNuG8taTc0n9UxdyzVwM=", + "dev": true + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha1-JJBENWaXsztk8aj3yAki3d7nGVw=", + "dev": true, + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-colormin": { + "version": "4.0.3", + "resolved": "http://registry.npm.taobao.org/postcss-colormin/download/postcss-colormin-4.0.3.tgz", + "integrity": "sha1-rgYLzpPteUrHEmTwgTLVUJVr04E=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "color": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-convert-values": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/postcss-convert-values/download/postcss-convert-values-4.0.1.tgz", + "integrity": "sha1-yjgT7U2g+BL51DcDWE5Enr4Ymn8=", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-discard-comments": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-discard-comments/download/postcss-discard-comments-4.0.2.tgz", + "integrity": "sha1-H7q9LCRr/2qq15l7KwkY9NevQDM=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-duplicates": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-discard-duplicates/download/postcss-discard-duplicates-4.0.2.tgz", + "integrity": "sha1-P+EzzTyCKC5VD8myORdqkge3hOs=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-empty": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/postcss-discard-empty/download/postcss-discard-empty-4.0.1.tgz", + "integrity": "sha1-yMlR6fc+2UKAGUWERKAq2Qu592U=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-overridden": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/postcss-discard-overridden/download/postcss-discard-overridden-4.0.1.tgz", + "integrity": "sha1-ZSrvipZybwKfXj4AFG7npOdV/1c=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-merge-longhand": { + "version": "4.0.11", + "resolved": "http://registry.npm.taobao.org/postcss-merge-longhand/download/postcss-merge-longhand-4.0.11.tgz", + "integrity": "sha1-YvSaE+Sg7gTnuY9CuxYGLKJUniQ=", + "dev": true, + "requires": { + "css-color-names": "0.0.4", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "stylehacks": "^4.0.0" + } + }, + "postcss-merge-rules": { + "version": "4.0.3", + "resolved": "http://registry.npm.taobao.org/postcss-merge-rules/download/postcss-merge-rules-4.0.3.tgz", + "integrity": "sha1-NivqT/Wh+Y5AdacTxsslrv75plA=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "cssnano-util-same-parent": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0", + "vendors": "^1.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.1", + "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", + "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "dev": true, + "requires": { + "dot-prop": "^4.1.1", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-minify-font-values": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-minify-font-values/download/postcss-minify-font-values-4.0.2.tgz", + "integrity": "sha1-zUw0TM5HQ0P6xdgiBqssvLiv1aY=", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-minify-gradients": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-minify-gradients/download/postcss-minify-gradients-4.0.2.tgz", + "integrity": "sha1-k7KcL/UJnFNe7NpWxKpuZlpmNHE=", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "is-color-stop": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-minify-params": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-minify-params/download/postcss-minify-params-4.0.2.tgz", + "integrity": "sha1-a5zvAwwR41Jh+V9hjJADbWgNuHQ=", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "browserslist": "^4.0.0", + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "uniqs": "^2.0.0" + } + }, + "postcss-minify-selectors": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-minify-selectors/download/postcss-minify-selectors-4.0.2.tgz", + "integrity": "sha1-4uXrQL/uUA0M2SQ1APX46kJi+9g=", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.1", + "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", + "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "dev": true, + "requires": { + "dot-prop": "^4.1.1", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/postcss-modules-extract-imports/download/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha1-gYcZoa4doyX5gyRGsBE27rSTzX4=", + "dev": true, + "requires": { + "postcss": "^7.0.5" + } + }, + "postcss-modules-local-by-default": { + "version": "2.0.6", + "resolved": "http://registry.npm.taobao.org/postcss-modules-local-by-default/download/postcss-modules-local-by-default-2.0.6.tgz", + "integrity": "sha1-3ZlT9t1Ha1/R7y2IMMiSl2C1bmM=", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0", + "postcss-value-parser": "^3.3.1" + } + }, + "postcss-modules-scope": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/postcss-modules-scope/download/postcss-modules-scope-2.1.0.tgz", + "integrity": "sha1-rT9b94VhFPb8q5AbBQLiorw51Os=", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + } + }, + "postcss-modules-values": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/postcss-modules-values/download/postcss-modules-values-2.0.0.tgz", + "integrity": "sha1-R5tG3Axco9x/pScIUYNrnscVL2Q=", + "dev": true, + "requires": { + "icss-replace-symbols": "^1.1.0", + "postcss": "^7.0.6" + } + }, + "postcss-normalize-charset": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/postcss-normalize-charset/download/postcss-normalize-charset-4.0.1.tgz", + "integrity": "sha1-izWt067oOhNrBHHg1ZvlilAoXdQ=", + "dev": true, + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-normalize-display-values": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-normalize-display-values/download/postcss-normalize-display-values-4.0.2.tgz", + "integrity": "sha1-Db4EpM6QY9RmftK+R2u4MMglk1o=", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-normalize-positions": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-normalize-positions/download/postcss-normalize-positions-4.0.2.tgz", + "integrity": "sha1-BfdX+E8mBDc3g2ipH4ky1LECkX8=", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-normalize-repeat-style": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-normalize-repeat-style/download/postcss-normalize-repeat-style-4.0.2.tgz", + "integrity": "sha1-xOu8KJ85kaAo1EdRy90RkYsXkQw=", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-normalize-string": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-normalize-string/download/postcss-normalize-string-4.0.2.tgz", + "integrity": "sha1-zUTECrB6DHo23F6Zqs4eyk7CaQw=", + "dev": true, + "requires": { + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-normalize-timing-functions": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-normalize-timing-functions/download/postcss-normalize-timing-functions-4.0.2.tgz", + "integrity": "sha1-jgCcoqOUnNr4rSPmtquZy159KNk=", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-normalize-unicode": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/postcss-normalize-unicode/download/postcss-normalize-unicode-4.0.1.tgz", + "integrity": "sha1-hBvUj9zzAZrUuqdJOj02O1KuHPs=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-normalize-url": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/postcss-normalize-url/download/postcss-normalize-url-4.0.1.tgz", + "integrity": "sha1-EOQ3+GvHx+WPe5ZS7YeNqqlfquE=", + "dev": true, + "requires": { + "is-absolute-url": "^2.0.0", + "normalize-url": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "normalize-url": { + "version": "3.3.0", + "resolved": "http://registry.npm.taobao.org/normalize-url/download/normalize-url-3.3.0.tgz", + "integrity": "sha1-suHE3E98bVd0PfczpPWXjRhlBVk=", + "dev": true + } + } + }, + "postcss-normalize-whitespace": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-normalize-whitespace/download/postcss-normalize-whitespace-4.0.2.tgz", + "integrity": "sha1-vx1AcP5Pzqh9E0joJdjMDF+qfYI=", + "dev": true, + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-ordered-values": { + "version": "4.1.2", + "resolved": "http://registry.npm.taobao.org/postcss-ordered-values/download/postcss-ordered-values-4.1.2.tgz", + "integrity": "sha1-DPdcgg7H1cTSgBiVWeC1ceusDu4=", + "dev": true, + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-reduce-initial": { + "version": "4.0.3", + "resolved": "http://registry.npm.taobao.org/postcss-reduce-initial/download/postcss-reduce-initial-4.0.3.tgz", + "integrity": "sha1-f9QuvqXpyBRgljniwuhK4nC6SN8=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-reduce-transforms/download/postcss-reduce-transforms-4.0.2.tgz", + "integrity": "sha1-F++kBerMbge+NBSlyi0QdGgdTik=", + "dev": true, + "requires": { + "cssnano-util-get-match": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + } + }, + "postcss-selector-parser": { + "version": "6.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-6.0.2.tgz", + "integrity": "sha1-k0z3mdAWyDQRhZ4J3Oyt4BKG7Fw=", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "postcss-svgo": { + "version": "4.0.2", + "resolved": "http://registry.npm.taobao.org/postcss-svgo/download/postcss-svgo-4.0.2.tgz", + "integrity": "sha1-F7mXvHEbMzurFDqu07jT1uPTglg=", + "dev": true, + "requires": { + "is-svg": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "svgo": "^1.0.0" + } + }, + "postcss-unique-selectors": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/postcss-unique-selectors/download/postcss-unique-selectors-4.0.1.tgz", + "integrity": "sha1-lEaRHzKJv9ZMbWgPBzwDsfnuS6w=", + "dev": true, + "requires": { + "alphanum-sort": "^1.0.0", + "postcss": "^7.0.0", + "uniqs": "^2.0.0" + } + }, + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "http://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", + "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", + "dev": true + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/prepend-http/download/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true + }, + "pretty-error": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/pretty-error/download/pretty-error-2.1.1.tgz", + "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", + "dev": true, + "requires": { + "renderkid": "^2.0.1", + "utila": "~0.4" + } + }, + "printj": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/printj/download/printj-1.1.2.tgz", + "integrity": "sha1-2Q3rKXWoufYA+zoclOP0xTx4oiI=", + "dev": true + }, + "process": { + "version": "0.5.2", + "resolved": "http://registry.npm.taobao.org/process/download/process-0.5.2.tgz", + "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.0.tgz", + "integrity": "sha1-o31zL0JxtKsa0HDTVQjoKQeI/6o=", + "dev": true + }, + "promise": { + "version": "7.3.1", + "resolved": "http://registry.npm.taobao.org/promise/download/promise-7.3.1.tgz", + "integrity": "sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078=", + "dev": true, + "requires": { + "asap": "~2.0.3" + } + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/promise-inflight/download/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "prop-types": { + "version": "15.7.2", + "resolved": "http://registry.npm.taobao.org/prop-types/download/prop-types-15.7.2.tgz", + "integrity": "sha1-UsQedbjIfnK52TYOAga5ncv/psU=", + "dev": true, + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } + }, + "proxy-addr": { + "version": "2.0.5", + "resolved": "http://registry.npm.taobao.org/proxy-addr/download/proxy-addr-2.0.5.tgz", + "integrity": "sha1-NMvWSi2B9LH9IedvnwbIpFKZ7jQ=", + "dev": true, + "requires": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.9.0" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/prr/download/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "psl": { + "version": "1.1.31", + "resolved": "http://registry.npm.taobao.org/psl/download/psl-1.1.31.tgz", + "integrity": "sha1-6aqG0BAbWxBcvpOsa3hM1UcnYYQ=", + "dev": true, + "optional": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "http://registry.npm.taobao.org/public-encrypt/download/public-encrypt-4.0.3.tgz", + "integrity": "sha1-T8ydd6B+SLp1J+fL4N4z0HATMeA=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/pump/download/pump-3.0.0.tgz", + "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "http://registry.npm.taobao.org/pumpify/download/pumpify-1.5.1.tgz", + "integrity": "sha1-NlE74karJ1cLGjdKXOJ4v9dDcM4=", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/pump/download/pump-2.0.1.tgz", + "integrity": "sha1-Ejma3W5M91Jtlzy8i1zi4pCLOQk=", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/punycode/download/punycode-2.1.1.tgz", + "integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew=", + "dev": true + }, + "q": { + "version": "1.5.1", + "resolved": "http://registry.npm.taobao.org/q/download/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "http://registry.npm.taobao.org/qs/download/qs-6.5.2.tgz", + "integrity": "sha1-yzroBuh0BERYTvFUzo7pjUA/PjY=", + "dev": true + }, + "query-string": { + "version": "5.1.1", + "resolved": "http://registry.npm.taobao.org/query-string/download/query-string-5.1.1.tgz", + "integrity": "sha1-p4wBK3HBfgXy4/ojGd0zBoLvs8s=", + "dev": true, + "requires": { + "decode-uri-component": "^0.2.0", + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + } + }, + "querystring": { + "version": "0.2.0", + "resolved": "http://registry.npm.taobao.org/querystring/download/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "http://registry.npm.taobao.org/querystring-es3/download/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "querystringify": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/querystringify/download/querystringify-2.1.1.tgz", + "integrity": "sha1-YOWl/WSn+L+k0qsu1v30yFutFU4=", + "dev": true + }, + "raf": { + "version": "3.4.1", + "resolved": "http://registry.npm.taobao.org/raf/download/raf-3.4.1.tgz", + "integrity": "sha1-B0LpmkplUvRF1z4+4DKK8P8e3jk=", + "dev": true, + "requires": { + "performance-now": "^2.1.0" + } + }, + "randombytes": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/randombytes/download/randombytes-2.1.0.tgz", + "integrity": "sha1-32+ENy8CcNxlzfYpE0mrekc9Tyo=", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "http://registry.npm.taobao.org/randomfill/download/randomfill-1.0.4.tgz", + "integrity": "sha1-ySGW/IarQr6YPxvzF3giSTHWFFg=", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/range-parser/download/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "dev": true + }, + "raw-body": { + "version": "2.3.3", + "resolved": "http://registry.npm.taobao.org/raw-body/download/raw-body-2.3.3.tgz", + "integrity": "sha1-GzJOzmtXBuFThVvBFIxlu39uoMM=", + "dev": true, + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.3", + "iconv-lite": "0.4.23", + "unpipe": "1.0.0" + }, + "dependencies": { + "iconv-lite": { + "version": "0.4.23", + "resolved": "http://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.23.tgz", + "integrity": "sha1-KXhx9jvlB63Pv8pxXQzQ7thOmmM=", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + } + } + }, + "rc-align": { + "version": "2.4.5", + "resolved": "http://registry.npm.taobao.org/rc-align/download/rc-align-2.4.5.tgz", + "integrity": "sha1-yUGlhvWdEBfyOkKPC0aGY/txAqs=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "dom-align": "^1.7.0", + "prop-types": "^15.5.8", + "rc-util": "^4.0.4" + } + }, + "rc-animate": { + "version": "2.10.3", + "resolved": "https://registry.npm.taobao.org/rc-animate/download/rc-animate-2.10.3.tgz?cache=0&sync_timestamp=1582632991064&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-animate%2Fdownload%2Frc-animate-2.10.3.tgz", + "integrity": "sha1-Fj1eKSgaT/gtU+55GO7qyFa3Vvk=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.6", + "css-animation": "^1.3.2", + "prop-types": "15.x", + "raf": "^3.4.0", + "rc-util": "^4.15.3", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-calendar": { + "version": "9.15.10", + "resolved": "https://registry.npm.taobao.org/rc-calendar/download/rc-calendar-9.15.10.tgz?cache=0&sync_timestamp=1584081756536&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-calendar%2Fdownload%2Frc-calendar-9.15.10.tgz", + "integrity": "sha1-Ic+HuqeJ5YWrF7Ys93GEZXp9A28=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "2.x", + "moment": "2.x", + "prop-types": "^15.5.8", + "rc-trigger": "^2.2.0", + "rc-util": "^4.1.1", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-cascader": { + "version": "0.17.5", + "resolved": "https://registry.npm.taobao.org/rc-cascader/download/rc-cascader-0.17.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-cascader%2Fdownload%2Frc-cascader-0.17.5.tgz", + "integrity": "sha1-T96R0jt2CMQgJjw47unAaH+A99w=", + "dev": true, + "requires": { + "array-tree-filter": "^2.1.0", + "prop-types": "^15.5.8", + "rc-trigger": "^2.2.0", + "rc-util": "^4.0.4", + "react-lifecycles-compat": "^3.0.4", + "shallow-equal": "^1.0.0", + "warning": "^4.0.1" + } + }, + "rc-checkbox": { + "version": "2.1.8", + "resolved": "https://registry.npm.taobao.org/rc-checkbox/download/rc-checkbox-2.1.8.tgz", + "integrity": "sha1-7t2e+cLzr1s7jlzeUlSqia0aiAo=", + "dev": true, + "requires": { + "babel-runtime": "^6.23.0", + "classnames": "2.x", + "prop-types": "15.x", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-collapse": { + "version": "1.11.8", + "resolved": "https://registry.npm.taobao.org/rc-collapse/download/rc-collapse-1.11.8.tgz?cache=0&sync_timestamp=1577417359659&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-collapse%2Fdownload%2Frc-collapse-1.11.8.tgz", + "integrity": "sha1-ZqQAidRpUZ6UJACasckn4hQEHYA=", + "dev": true, + "requires": { + "classnames": "2.x", + "css-animation": "1.x", + "prop-types": "^15.5.6", + "rc-animate": "2.x", + "react-is": "^16.7.0", + "react-lifecycles-compat": "^3.0.4", + "shallowequal": "^1.1.0" + } + }, + "rc-dialog": { + "version": "7.6.1", + "resolved": "https://registry.npm.taobao.org/rc-dialog/download/rc-dialog-7.6.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-dialog%2Fdownload%2Frc-dialog-7.6.1.tgz", + "integrity": "sha1-EVRczAuUWTT6dgeXJuDYU+UtcF8=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "rc-animate": "2.x", + "rc-util": "^4.16.1" + } + }, + "rc-drawer": { + "version": "3.1.3", + "resolved": "https://registry.npm.taobao.org/rc-drawer/download/rc-drawer-3.1.3.tgz", + "integrity": "sha1-y8sE1MB/C2by7OEdhH9KG9gOoLc=", + "dev": true, + "requires": { + "classnames": "^2.2.6", + "rc-util": "^4.16.1", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-dropdown": { + "version": "2.4.1", + "resolved": "http://registry.npm.taobao.org/rc-dropdown/download/rc-dropdown-2.4.1.tgz", + "integrity": "sha1-qu9us6UVLN2ZgolcKnjZtfBGzew=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "classnames": "^2.2.6", + "prop-types": "^15.5.8", + "rc-trigger": "^2.5.1", + "react-lifecycles-compat": "^3.0.2" + } + }, + "rc-editor-core": { + "version": "0.8.10", + "resolved": "https://registry.npm.taobao.org/rc-editor-core/download/rc-editor-core-0.8.10.tgz", + "integrity": "sha1-byFbxd+cM/+p9sWzDKc6favoq3w=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "classnames": "^2.2.5", + "draft-js": "^0.10.0", + "immutable": "^3.7.4", + "lodash": "^4.16.5", + "prop-types": "^15.5.8", + "setimmediate": "^1.0.5" + } + }, + "rc-editor-mention": { + "version": "1.1.13", + "resolved": "https://registry.npm.taobao.org/rc-editor-mention/download/rc-editor-mention-1.1.13.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-editor-mention%2Fdownload%2Frc-editor-mention-1.1.13.tgz", + "integrity": "sha1-nxyrEGX4awFSOEAyF5DCqxKsXos=", + "dev": true, + "requires": { + "babel-runtime": "^6.23.0", + "classnames": "^2.2.5", + "dom-scroll-into-view": "^1.2.0", + "draft-js": "~0.10.0", + "immutable": "~3.7.4", + "prop-types": "^15.5.8", + "rc-animate": "^2.3.0", + "rc-editor-core": "~0.8.3" + } + }, + "rc-form": { + "version": "2.4.11", + "resolved": "https://registry.npm.taobao.org/rc-form/download/rc-form-2.4.11.tgz?cache=0&sync_timestamp=1574150698207&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-form%2Fdownload%2Frc-form-2.4.11.tgz", + "integrity": "sha1-Ye465XklloSuMPLEj1Xw8jpdPQg=", + "dev": true, + "requires": { + "async-validator": "~1.11.3", + "babel-runtime": "6.x", + "create-react-class": "^15.5.3", + "dom-scroll-into-view": "1.x", + "hoist-non-react-statics": "^3.3.0", + "lodash": "^4.17.4", + "rc-util": "^4.15.3", + "warning": "^4.0.3" + } + }, + "rc-hammerjs": { + "version": "0.6.9", + "resolved": "http://registry.npm.taobao.org/rc-hammerjs/download/rc-hammerjs-0.6.9.tgz", + "integrity": "sha1-mk3b2hsuyPm5WWCRpqmJhCokOQc=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "hammerjs": "^2.0.8", + "prop-types": "^15.5.9" + } + }, + "rc-input-number": { + "version": "4.5.6", + "resolved": "https://registry.npm.taobao.org/rc-input-number/download/rc-input-number-4.5.6.tgz?cache=0&sync_timestamp=1582780870430&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-input-number%2Fdownload%2Frc-input-number-4.5.6.tgz", + "integrity": "sha1-DVJ2KwrDlDIlbixsXINhAvl5fEY=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.0", + "prop-types": "^15.5.7", + "rc-util": "^4.5.1", + "rmc-feedback": "^2.0.0" + } + }, + "rc-mentions": { + "version": "0.4.2", + "resolved": "https://registry.npm.taobao.org/rc-mentions/download/rc-mentions-0.4.2.tgz?cache=0&sync_timestamp=1586401354443&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-mentions%2Fdownload%2Frc-mentions-0.4.2.tgz", + "integrity": "sha1-wYq3Ae+55LdbOFGgwNLdaYZA4kY=", + "dev": true, + "requires": { + "@ant-design/create-react-context": "^0.2.4", + "classnames": "^2.2.6", + "rc-menu": "^7.4.22", + "rc-trigger": "^2.6.2", + "rc-util": "^4.6.0", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-menu": { + "version": "7.5.5", + "resolved": "https://registry.npm.taobao.org/rc-menu/download/rc-menu-7.5.5.tgz", + "integrity": "sha1-eM3IF9hvw1OhQwuGTT2Wx0iWAMo=", + "dev": true, + "requires": { + "classnames": "2.x", + "dom-scroll-into-view": "1.x", + "mini-store": "^2.0.0", + "mutationobserver-shim": "^0.3.2", + "rc-animate": "^2.10.1", + "rc-trigger": "^2.3.0", + "rc-util": "^4.13.0", + "resize-observer-polyfill": "^1.5.0", + "shallowequal": "^1.1.0" + } + }, + "rc-notification": { + "version": "3.3.1", + "resolved": "http://registry.npm.taobao.org/rc-notification/download/rc-notification-3.3.1.tgz", + "integrity": "sha1-C6o+cPjUCrAVzo+njCYMSQ/HvrQ=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "2.x", + "prop-types": "^15.5.8", + "rc-animate": "2.x", + "rc-util": "^4.0.4" + } + }, + "rc-pagination": { + "version": "1.20.14", + "resolved": "https://registry.npm.taobao.org/rc-pagination/download/rc-pagination-1.20.14.tgz", + "integrity": "sha1-mBwSXr7b5/5ngr0xH4u5yZ6wze0=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.6", + "prop-types": "^15.5.7", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-progress": { + "version": "2.5.2", + "resolved": "https://registry.npm.taobao.org/rc-progress/download/rc-progress-2.5.2.tgz", + "integrity": "sha1-qwG6Tl0vo2/J9vBYsQtyDnMVVgw=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "prop-types": "^15.5.8" + } + }, + "rc-rate": { + "version": "2.5.1", + "resolved": "https://registry.npm.taobao.org/rc-rate/download/rc-rate-2.5.1.tgz?cache=0&sync_timestamp=1587022171938&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-rate%2Fdownload%2Frc-rate-2.5.1.tgz", + "integrity": "sha1-Vfxf0j6p3MciULmoiYA0efSEKWE=", + "dev": true, + "requires": { + "classnames": "^2.2.5", + "prop-types": "^15.5.8", + "rc-util": "^4.3.0", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-resize-observer": { + "version": "0.1.3", + "resolved": "https://registry.npm.taobao.org/rc-resize-observer/download/rc-resize-observer-0.1.3.tgz", + "integrity": "sha1-CXGR+cOrGG7ZB7VTum71Zd8Rwkk=", + "dev": true, + "requires": { + "classnames": "^2.2.1", + "rc-util": "^4.13.0", + "resize-observer-polyfill": "^1.5.1" + } + }, + "rc-select": { + "version": "9.2.3", + "resolved": "https://registry.npm.taobao.org/rc-select/download/rc-select-9.2.3.tgz?cache=0&sync_timestamp=1587198113515&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-select%2Fdownload%2Frc-select-9.2.3.tgz", + "integrity": "sha1-ZDQOLW72TovDz8b0aP/ShiVYmsI=", + "dev": true, + "requires": { + "babel-runtime": "^6.23.0", + "classnames": "2.x", + "component-classes": "1.x", + "dom-scroll-into-view": "1.x", + "prop-types": "^15.5.8", + "raf": "^3.4.0", + "rc-animate": "2.x", + "rc-menu": "^7.3.0", + "rc-trigger": "^2.5.4", + "rc-util": "^4.0.4", + "react-lifecycles-compat": "^3.0.2", + "warning": "^4.0.2" + } + }, + "rc-slider": { + "version": "8.7.1", + "resolved": "https://registry.npm.taobao.org/rc-slider/download/rc-slider-8.7.1.tgz", + "integrity": "sha1-ntBzYtyTSJo45lSyG4EirXD9PEI=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.5", + "prop-types": "^15.5.4", + "rc-tooltip": "^3.7.0", + "rc-util": "^4.0.4", + "react-lifecycles-compat": "^3.0.4", + "shallowequal": "^1.1.0", + "warning": "^4.0.3" + } + }, + "rc-steps": { + "version": "3.5.0", + "resolved": "https://registry.npm.taobao.org/rc-steps/download/rc-steps-3.5.0.tgz", + "integrity": "sha1-NrKn8fSZB7DZA2OISxhiPK+ftgA=", + "dev": true, + "requires": { + "babel-runtime": "^6.23.0", + "classnames": "^2.2.3", + "lodash": "^4.17.5", + "prop-types": "^15.5.7" + } + }, + "rc-switch": { + "version": "1.9.0", + "resolved": "http://registry.npm.taobao.org/rc-switch/download/rc-switch-1.9.0.tgz", + "integrity": "sha1-qyuHjycTxoE1ikUzkZdsm5WykPc=", + "dev": true, + "requires": { + "classnames": "^2.2.1", + "prop-types": "^15.5.6", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-table": { + "version": "6.10.14", + "resolved": "https://registry.npm.taobao.org/rc-table/download/rc-table-6.10.14.tgz", + "integrity": "sha1-Eunbbxk16BSRyryFb/aA3iHdRR8=", + "dev": true, + "requires": { + "classnames": "^2.2.5", + "component-classes": "^1.2.6", + "lodash": "^4.17.5", + "mini-store": "^2.0.0", + "prop-types": "^15.5.8", + "rc-util": "^4.13.0", + "react-lifecycles-compat": "^3.0.2", + "shallowequal": "^1.0.2" + } + }, + "rc-tabs": { + "version": "9.7.0", + "resolved": "https://registry.npm.taobao.org/rc-tabs/download/rc-tabs-9.7.0.tgz?cache=0&sync_timestamp=1584515941101&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-tabs%2Fdownload%2Frc-tabs-9.7.0.tgz", + "integrity": "sha1-rglpW+9ZY9bmTnvBBSHHbf3YRIs=", + "dev": true, + "requires": { + "@ant-design/create-react-context": "^0.2.4", + "babel-runtime": "6.x", + "classnames": "2.x", + "lodash": "^4.17.5", + "prop-types": "15.x", + "raf": "^3.4.1", + "rc-hammerjs": "~0.6.0", + "rc-util": "^4.0.4", + "react-lifecycles-compat": "^3.0.4", + "resize-observer-polyfill": "^1.5.1", + "warning": "^4.0.3" + } + }, + "rc-time-picker": { + "version": "3.7.3", + "resolved": "https://registry.npm.taobao.org/rc-time-picker/download/rc-time-picker-3.7.3.tgz", + "integrity": "sha1-ZajekECTJQrpyCsCpJBeD5leI+I=", + "dev": true, + "requires": { + "classnames": "2.x", + "moment": "2.x", + "prop-types": "^15.5.8", + "raf": "^3.4.1", + "rc-trigger": "^2.2.0", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-tooltip": { + "version": "3.7.3", + "resolved": "http://registry.npm.taobao.org/rc-tooltip/download/rc-tooltip-3.7.3.tgz", + "integrity": "sha1-KArsavyqROjf8EgPuv+eh/wArsw=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "prop-types": "^15.5.8", + "rc-trigger": "^2.2.2" + } + }, + "rc-tree": { + "version": "2.1.3", + "resolved": "https://registry.npm.taobao.org/rc-tree/download/rc-tree-2.1.3.tgz", + "integrity": "sha1-UhSrGyGhhI65ot3LkZ47xG1tOQs=", + "dev": true, + "requires": { + "@ant-design/create-react-context": "^0.2.4", + "classnames": "2.x", + "prop-types": "^15.5.8", + "rc-animate": "^2.6.0", + "rc-util": "^4.5.1", + "react-lifecycles-compat": "^3.0.4", + "warning": "^4.0.3" + } + }, + "rc-tree-select": { + "version": "2.9.4", + "resolved": "https://registry.npm.taobao.org/rc-tree-select/download/rc-tree-select-2.9.4.tgz", + "integrity": "sha1-aqeU4fDmXGbEBqoKKg50/QpVewk=", + "dev": true, + "requires": { + "classnames": "^2.2.1", + "dom-scroll-into-view": "^1.2.1", + "prop-types": "^15.5.8", + "raf": "^3.4.0", + "rc-animate": "^2.8.2", + "rc-tree": "~2.1.0", + "rc-trigger": "^3.0.0", + "rc-util": "^4.5.0", + "react-lifecycles-compat": "^3.0.4", + "shallowequal": "^1.0.2", + "warning": "^4.0.1" + }, + "dependencies": { + "rc-trigger": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/rc-trigger/download/rc-trigger-3.0.0.tgz", + "integrity": "sha1-9tmx2oomsrLR2RKgaHbBpIb1mA8=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.6", + "prop-types": "15.x", + "raf": "^3.4.0", + "rc-align": "^2.4.1", + "rc-animate": "^3.0.0-rc.1", + "rc-util": "^4.15.7" + }, + "dependencies": { + "rc-animate": { + "version": "3.0.0-rc.6", + "resolved": "https://registry.npm.taobao.org/rc-animate/download/rc-animate-3.0.0-rc.6.tgz?cache=0&sync_timestamp=1582632991064&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-animate%2Fdownload%2Frc-animate-3.0.0-rc.6.tgz", + "integrity": "sha1-BCiO76EY4MriFFNsipA/+qwbw/s=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.5", + "component-classes": "^1.2.6", + "fbjs": "^0.8.16", + "prop-types": "15.x", + "raf": "^3.4.0", + "rc-util": "^4.5.0", + "react-lifecycles-compat": "^3.0.4" + } + } + } + } + } + }, + "rc-trigger": { + "version": "2.6.5", + "resolved": "https://registry.npm.taobao.org/rc-trigger/download/rc-trigger-2.6.5.tgz", + "integrity": "sha1-FAqFfPKL0PoBua7LHialCnAOmIU=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.6", + "prop-types": "15.x", + "rc-align": "^2.4.0", + "rc-animate": "2.x", + "rc-util": "^4.4.0", + "react-lifecycles-compat": "^3.0.4" + } + }, + "rc-upload": { + "version": "2.9.4", + "resolved": "https://registry.npm.taobao.org/rc-upload/download/rc-upload-2.9.4.tgz", + "integrity": "sha1-jjSnOkaNeQf+MZgsOBAORZOFfTI=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.5", + "prop-types": "^15.5.7", + "warning": "4.x" + } + }, + "rc-util": { + "version": "4.20.3", + "resolved": "https://registry.npm.taobao.org/rc-util/download/rc-util-4.20.3.tgz", + "integrity": "sha1-xNTuYXHPaF3HVXJ1KnZDEDJYiNM=", + "dev": true, + "requires": { + "add-dom-event-listener": "^1.1.0", + "prop-types": "^15.5.10", + "react-is": "^16.12.0", + "react-lifecycles-compat": "^3.0.4", + "shallowequal": "^1.1.0" + }, + "dependencies": { + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npm.taobao.org/react-is/download/react-is-16.13.1.tgz?cache=0&sync_timestamp=1586484576689&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freact-is%2Fdownload%2Freact-is-16.13.1.tgz", + "integrity": "sha1-eJcppNw23imZ3BVt1sHZwYzqVqQ=", + "dev": true + } + } + }, + "react": { + "version": "16.8.6", + "resolved": "http://registry.npm.taobao.org/react/download/react-16.8.6.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Freact%2Fdownload%2Freact-16.8.6.tgz", + "integrity": "sha1-rWw6lhT9Ok6e9REX9U2IjaAfK74=", + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2", + "scheduler": "^0.13.6" + } + }, + "react-hot-loader": { + "version": "4.8.4", + "resolved": "http://registry.npm.taobao.org/react-hot-loader/download/react-hot-loader-4.8.4.tgz", + "integrity": "sha1-NXujQuNn/ULWqHCpwGAcI/oHMMY=", + "dev": true, + "requires": { + "fast-levenshtein": "^2.0.6", + "global": "^4.3.0", + "hoist-non-react-statics": "^3.3.0", + "loader-utils": "^1.1.0", + "lodash": "^4.17.11", + "prop-types": "^15.6.1", + "react-lifecycles-compat": "^3.0.4", + "shallowequal": "^1.0.2", + "source-map": "^0.7.3" + } + }, + "react-is": { + "version": "16.8.6", + "resolved": "http://registry.npm.taobao.org/react-is/download/react-is-16.8.6.tgz", + "integrity": "sha1-W7weLSkUHJ+9/tRWND/ivEMKahY=", + "dev": true + }, + "react-lazy-load": { + "version": "3.0.13", + "resolved": "http://registry.npm.taobao.org/react-lazy-load/download/react-lazy-load-3.0.13.tgz", + "integrity": "sha1-OwqS0zbUPT8Nc8vm81sXBQsIuCQ=", + "dev": true, + "requires": { + "eventlistener": "0.0.1", + "lodash.debounce": "^4.0.0", + "lodash.throttle": "^4.0.0", + "prop-types": "^15.5.8" + } + }, + "react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "http://registry.npm.taobao.org/react-lifecycles-compat/download/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha1-TxonOv38jzSIqMUWv9p4+HI1I2I=", + "dev": true + }, + "react-router": { + "version": "5.0.0", + "resolved": "http://registry.npm.taobao.org/react-router/download/react-router-5.0.0.tgz", + "integrity": "sha1-NJhj92n/wvoQ7nMxpCluhrwSh50=", + "dev": true, + "requires": { + "@babel/runtime": "^7.1.2", + "create-react-context": "^0.2.2", + "history": "^4.9.0", + "hoist-non-react-statics": "^3.1.0", + "loose-envify": "^1.3.1", + "path-to-regexp": "^1.7.0", + "prop-types": "^15.6.2", + "react-is": "^16.6.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + } + }, + "react-router-dom": { + "version": "5.0.0", + "resolved": "http://registry.npm.taobao.org/react-router-dom/download/react-router-dom-5.0.0.tgz", + "integrity": "sha1-VCqbhq8mmjfwuHIYxMJeqNzwwHM=", + "dev": true, + "requires": { + "@babel/runtime": "^7.1.2", + "history": "^4.9.0", + "loose-envify": "^1.3.1", + "prop-types": "^15.6.2", + "react-router": "5.0.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + } + }, + "react-slick": { + "version": "0.25.2", + "resolved": "https://registry.npm.taobao.org/react-slick/download/react-slick-0.25.2.tgz", + "integrity": "sha1-VjMbZ9R9i8/i3OtqyrHI/VvR9rw=", + "dev": true, + "requires": { + "classnames": "^2.2.5", + "enquire.js": "^2.1.6", + "json2mq": "^0.2.0", + "lodash.debounce": "^4.0.8", + "resize-observer-polyfill": "^1.5.0" + } + }, + "readable-stream": { + "version": "3.3.0", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-3.3.0.tgz", + "integrity": "sha1-y4ARqtAC63F78EApH+uoVpyYb7k=", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "http://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" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "http://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.11.1.tgz", + "integrity": "sha1-vgWtf5v30i4Fb5cmzuUBf78Z4uk=", + "dev": true + }, + "regex-not": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz", + "integrity": "sha1-H07OJ+ALC2XgJHpoEOaoXYOldSw=", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "http://registry.npm.taobao.org/relateurl/download/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/remove-trailing-separator/download/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "renderkid": { + "version": "2.0.3", + "resolved": "http://registry.npm.taobao.org/renderkid/download/renderkid-2.0.3.tgz", + "integrity": "sha1-OAF5wv9a4TZcUivy/Pz/AcW3QUk=", + "dev": true, + "requires": { + "css-select": "^1.1.0", + "dom-converter": "^0.2", + "htmlparser2": "^3.3.0", + "strip-ansi": "^3.0.0", + "utila": "^0.4.0" + } + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "http://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", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "request": { + "version": "2.88.0", + "resolved": "http://registry.npm.taobao.org/request/download/request-2.88.0.tgz", + "integrity": "sha1-nC/KT301tZLv5Xx/ClXoEFIST+8=", + "dev": true, + "optional": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/require-directory/download/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/require-main-filename/download/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "requires-port": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/requires-port/download/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "http://registry.npm.taobao.org/resize-observer-polyfill/download/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha1-DpAg3T0hAkRY1OvSfiPkAmmBBGQ=", + "dev": true + }, + "resolve": { + "version": "1.10.0", + "resolved": "http://registry.npm.taobao.org/resolve/download/resolve-1.10.0.tgz", + "integrity": "sha1-O9qur0XMB/N1ZW39LlTtCBCxAbo=", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/resolve-cwd/download/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-dir": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/resolve-dir/download/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/resolve-from/download/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-pathname": { + "version": "2.2.0", + "resolved": "http://registry.npm.taobao.org/resolve-pathname/download/resolve-pathname-2.2.0.tgz", + "integrity": "sha1-fpriHtgV/WOrGJre7mTcgx7vqHk=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "http://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "ret": { + "version": "0.1.15", + "resolved": "http://registry.npm.taobao.org/ret/download/ret-0.1.15.tgz", + "integrity": "sha1-uKSCXVvbH8P29Twrwz+BOIaBx7w=", + "dev": true + }, + "rgb-regex": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/rgb-regex/download/rgb-regex-1.0.1.tgz", + "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=", + "dev": true + }, + "rgba-regex": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/rgba-regex/download/rgba-regex-1.0.0.tgz", + "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=", + "dev": true + }, + "rimraf": { + "version": "2.6.3", + "resolved": "http://registry.npm.taobao.org/rimraf/download/rimraf-2.6.3.tgz", + "integrity": "sha1-stEE/g2Psnz54KHNqCYt04M8bKs=", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/ripemd160/download/ripemd160-2.0.2.tgz", + "integrity": "sha1-ocGm9iR1FXe6XQeRTLyShQWFiQw=", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rmc-feedback": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/rmc-feedback/download/rmc-feedback-2.0.0.tgz", + "integrity": "sha1-y8bLOuY8emNe7w4l5PuvWsNm7qo=", + "dev": true, + "requires": { + "babel-runtime": "6.x", + "classnames": "^2.2.5" + } + }, + "run-queue": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/run-queue/download/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "http://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz", + "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/safe-regex/download/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "http://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz", + "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=", + "dev": true + }, + "sax": { + "version": "1.2.4", + "resolved": "http://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz", + "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=", + "dev": true + }, + "scheduler": { + "version": "0.13.6", + "resolved": "http://registry.npm.taobao.org/scheduler/download/scheduler-0.13.6.tgz", + "integrity": "sha1-RmpOwzJGezGpG5v3TlNHBy5M2Ik=", + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz", + "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "select": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/select/download/select-1.1.2.tgz", + "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=", + "dev": true + }, + "select-hose": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/select-hose/download/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true + }, + "selfsigned": { + "version": "1.10.4", + "resolved": "http://registry.npm.taobao.org/selfsigned/download/selfsigned-1.10.4.tgz", + "integrity": "sha1-zdfsz8pO12NdR6CL8tXTB0CS4s0=", + "dev": true, + "requires": { + "node-forge": "0.7.5" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "http://registry.npm.taobao.org/semver/download/semver-5.7.0.tgz", + "integrity": "sha1-eQp89v6lRZuslhELKbYEEtyP+Ws=", + "dev": true + }, + "send": { + "version": "0.16.2", + "resolved": "http://registry.npm.taobao.org/send/download/send-0.16.2.tgz", + "integrity": "sha1-bsyh4PjBVtFBWXVZhI32RzCmu8E=", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "mime": { + "version": "1.4.1", + "resolved": "http://registry.npm.taobao.org/mime/download/mime-1.4.1.tgz", + "integrity": "sha1-Eh+evEnjdm8xGnbh+hyAA8SwOqY=", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "serialize-javascript": { + "version": "1.7.0", + "resolved": "http://registry.npm.taobao.org/serialize-javascript/download/serialize-javascript-1.7.0.tgz", + "integrity": "sha1-1uDfsqODKoyURo5usduX5VoZKmU=", + "dev": true + }, + "serve-index": { + "version": "1.9.1", + "resolved": "http://registry.npm.taobao.org/serve-index/download/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/set-blocking/download/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/set-value/download/set-value-2.0.0.tgz", + "integrity": "sha1-ca5KiPD+77v1LR6mBPP7MV67YnQ=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "http://registry.npm.taobao.org/setimmediate/download/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.0.tgz", + "integrity": "sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY=", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "http://registry.npm.taobao.org/sha.js/download/sha.js-2.4.11.tgz", + "integrity": "sha1-N6XPC4HsvGlD3hCbopYNGyZYSuc=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shallow-equal": { + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/shallow-equal/download/shallow-equal-1.2.1.tgz?cache=0&sync_timestamp=1575627899561&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fshallow-equal%2Fdownload%2Fshallow-equal-1.2.1.tgz", + "integrity": "sha1-TBar+lYEOqINBQMk76aJQLDaedo=", + "dev": true + }, + "shallowequal": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/shallowequal/download/shallowequal-1.1.0.tgz", + "integrity": "sha1-GI1SHelbkIdAT9TctosT3wrk5/g=", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/shebang-command/download/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/shebang-regex/download/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "http://registry.npm.taobao.org/signal-exit/download/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "http://registry.npm.taobao.org/simple-swizzle/download/simple-swizzle-0.2.2.tgz", + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "dev": true, + "requires": { + "is-arrayish": "^0.3.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.3.2", + "resolved": "http://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.3.2.tgz", + "integrity": "sha1-RXSirlb3qyBolvtDHq7tBm/fjwM=", + "dev": true + } + } + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "http://registry.npm.taobao.org/snapdragon/download/snapdragon-0.8.2.tgz", + "integrity": "sha1-ZJIufFZbDhQgS6GqfWlkJ40lGC0=", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "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=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/snapdragon-node/download/snapdragon-node-2.1.1.tgz", + "integrity": "sha1-bBdfhv8UvbByRWPo88GwIaKGhTs=", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", + "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", + "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "http://registry.npm.taobao.org/snapdragon-util/download/snapdragon-util-3.0.1.tgz", + "integrity": "sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI=", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "sockjs": { + "version": "0.3.19", + "resolved": "http://registry.npm.taobao.org/sockjs/download/sockjs-0.3.19.tgz", + "integrity": "sha1-2Xa76ACve9IK4IWY1YI5NQiZPA0=", + "dev": true, + "requires": { + "faye-websocket": "^0.10.0", + "uuid": "^3.0.1" + } + }, + "sockjs-client": { + "version": "1.3.0", + "resolved": "http://registry.npm.taobao.org/sockjs-client/download/sockjs-client-1.3.0.tgz", + "integrity": "sha1-EvydbLZj2lc509xftuhofalcsXc=", + "dev": true, + "requires": { + "debug": "^3.2.5", + "eventsource": "^1.0.7", + "faye-websocket": "~0.11.1", + "inherits": "^2.0.3", + "json3": "^3.3.2", + "url-parse": "^1.4.3" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", + "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "faye-websocket": { + "version": "0.11.1", + "resolved": "http://registry.npm.taobao.org/faye-websocket/download/faye-websocket-0.11.1.tgz", + "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + } + } + }, + "sort-keys": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/sort-keys/download/sort-keys-2.0.0.tgz", + "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "dev": true, + "requires": { + "is-plain-obj": "^1.0.0" + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/source-list-map/download/source-list-map-2.0.1.tgz", + "integrity": "sha1-OZO9hzv8SEecyp6jpUeDXHwVSzQ=", + "dev": true + }, + "source-map": { + "version": "0.7.3", + "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.7.3.tgz", + "integrity": "sha1-UwL4FpAxc1ImVECS5kmB91F1A4M=", + "dev": true + }, + "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=", + "dev": true, + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.12", + "resolved": "http://registry.npm.taobao.org/source-map-support/download/source-map-support-0.5.12.tgz", + "integrity": "sha1-tPOxDVGFelrwE4086AA7IBYT1Zk=", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "http://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.1", + "resolved": "https://registry.npm.taobao.org/spark-md5/download/spark-md5-3.0.1.tgz", + "integrity": "sha1-g6DiVXNPKrTlxGblos/JuiqiEk0=", + "dev": true + }, + "spdy": { + "version": "4.0.0", + "resolved": "http://registry.npm.taobao.org/spdy/download/spdy-4.0.0.tgz", + "integrity": "sha1-gfIitadDoymqEs6mo5DmDpthPFI=", + "dev": true, + "requires": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + } + }, + "spdy-transport": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/spdy-transport/download/spdy-transport-3.0.0.tgz", + "integrity": "sha1-ANSGOmQArXXfkzYaFghgXl3NzzE=", + "dev": true, + "requires": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "split-string": { + "version": "3.1.0", + "resolved": "http://registry.npm.taobao.org/split-string/download/split-string-3.1.0.tgz", + "integrity": "sha1-fLCd2jqGWFcFxks5pkZgOGguj+I=", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "ssf": { + "version": "0.10.3", + "resolved": "https://registry.npm.taobao.org/ssf/download/ssf-0.10.3.tgz?cache=0&sync_timestamp=1589000555952&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssf%2Fdownload%2Fssf-0.10.3.tgz", + "integrity": "sha1-jq4fwpyQpVLnkhII+BiS1vd6yys=", + "dev": true, + "requires": { + "frac": "~1.1.2" + } + }, + "sshpk": { + "version": "1.16.1", + "resolved": "http://registry.npm.taobao.org/sshpk/download/sshpk-1.16.1.tgz", + "integrity": "sha1-+2YcC+8ps520B2nuOfpwCT1vaHc=", + "dev": true, + "optional": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "ssri": { + "version": "6.0.1", + "resolved": "http://registry.npm.taobao.org/ssri/download/ssri-6.0.1.tgz", + "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "stable": { + "version": "0.1.8", + "resolved": "http://registry.npm.taobao.org/stable/download/stable-0.1.8.tgz", + "integrity": "sha1-g26zyDgv4pNv6vVEYxAXzn1Ho88=", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "http://registry.npm.taobao.org/static-extend/download/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "statuses": { + "version": "1.4.0", + "resolved": "http://registry.npm.taobao.org/statuses/download/statuses-1.4.0.tgz", + "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic=", + "dev": true + }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/stream-browserify/download/stream-browserify-2.0.2.tgz", + "integrity": "sha1-h1IdOKRKp+6RzhzSpH3wy0ndZgs=", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "http://registry.npm.taobao.org/stream-each/download/stream-each-1.2.3.tgz", + "integrity": "sha1-6+J6DDibBPvMIzZClS4Qcxr6m64=", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "http://registry.npm.taobao.org/stream-http/download/stream-http-2.8.3.tgz", + "integrity": "sha1-stJCRpKIpaJ+xP6JM6z2I95lFPw=", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "dev": true + }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "http://registry.npm.taobao.org/strict-uri-encode/download/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", + "dev": true + }, + "string-convert": { + "version": "0.2.1", + "resolved": "http://registry.npm.taobao.org/string-convert/download/string-convert-0.2.1.tgz", + "integrity": "sha1-aYLMMEn7tM2F+LJFaLnZvznu/5c=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/string-width/download/string-width-2.1.1.tgz", + "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "http://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": "http://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "string_decoder": { + "version": "1.2.0", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.2.0.tgz", + "integrity": "sha1-/obnOLGVRK/nBGkkOyoe6SQOro0=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "http://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/strip-bom/download/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/strip-eof/download/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "style-loader": { + "version": "0.23.1", + "resolved": "http://registry.npm.taobao.org/style-loader/download/style-loader-0.23.1.tgz", + "integrity": "sha1-y5FUYG8+dxq2xKtjcCahBJF02SU=", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0" + } + }, + "stylehacks": { + "version": "4.0.3", + "resolved": "http://registry.npm.taobao.org/stylehacks/download/stylehacks-4.0.3.tgz", + "integrity": "sha1-Zxj8r00eB9ihMYaQiB6NlnJqcdU=", + "dev": true, + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.1", + "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", + "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "dev": true, + "requires": { + "dot-prop": "^4.1.1", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "http://registry.npm.taobao.org/supports-color/download/supports-color-5.5.0.tgz", + "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "svgo": { + "version": "1.2.2", + "resolved": "http://registry.npm.taobao.org/svgo/download/svgo-1.2.2.tgz", + "integrity": "sha1-AlPTTszyrtStTyg+Ee51GY+dcxY=", + "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.28", + "css-url-regex": "^1.1.0", + "csso": "^3.5.1", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" + }, + "dependencies": { + "css-select": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/css-select/download/css-select-2.0.2.tgz", + "integrity": "sha1-q0OGzsnh9miFVWSxfDcztDsqXt4=", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^2.1.2", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "domutils": { + "version": "1.7.0", + "resolved": "http://registry.npm.taobao.org/domutils/download/domutils-1.7.0.tgz", + "integrity": "sha1-Vuo0HoNOBuZ0ivehyyXaZ+qfjCo=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + } + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "http://registry.npm.taobao.org/tapable/download/tapable-1.1.3.tgz", + "integrity": "sha1-ofzMBrWNth/XpF2i2kT186Pme6I=", + "dev": true + }, + "terser": { + "version": "3.17.0", + "resolved": "http://registry.npm.taobao.org/terser/download/terser-3.17.0.tgz", + "integrity": "sha1-+I/77aDetWN/nSSw2mb04VqxDLI=", + "dev": true, + "requires": { + "commander": "^2.19.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.10" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "http://registry.npm.taobao.org/commander/download/commander-2.20.0.tgz", + "integrity": "sha1-1YuytcHuj4ew00ACfp6U4iLFpCI=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "1.2.3", + "resolved": "http://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-1.2.3.tgz", + "integrity": "sha1-P5i8kC+sPl0N5zCGn1BmhWEmLsg=", + "dev": true, + "requires": { + "cacache": "^11.0.2", + "find-cache-dir": "^2.0.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "terser": "^3.16.1", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "through2": { + "version": "2.0.5", + "resolved": "http://registry.npm.taobao.org/through2/download/through2-2.0.5.tgz", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", + "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "thunky": { + "version": "1.0.3", + "resolved": "http://registry.npm.taobao.org/thunky/download/thunky-1.0.3.tgz", + "integrity": "sha1-9d9zJFNAewkZHa5z4qjMc/OBqCY=", + "dev": true + }, + "timers-browserify": { + "version": "2.0.10", + "resolved": "http://registry.npm.taobao.org/timers-browserify/download/timers-browserify-2.0.10.tgz", + "integrity": "sha1-HSjj0qrfHVpZlsTp+VYBzQU0gK4=", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } + }, + "timsort": { + "version": "0.3.0", + "resolved": "http://registry.npm.taobao.org/timsort/download/timsort-0.3.0.tgz", + "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", + "dev": true + }, + "tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/tiny-emitter/download/tiny-emitter-2.1.0.tgz", + "integrity": "sha1-HRpW7fxRxD6GPLtTgqcjMONVVCM=", + "dev": true + }, + "tiny-invariant": { + "version": "1.0.4", + "resolved": "http://registry.npm.taobao.org/tiny-invariant/download/tiny-invariant-1.0.4.tgz", + "integrity": "sha1-NGtUFf2Ty2lrDE6Klml/9ZD5JGM=", + "dev": true + }, + "tiny-warning": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/tiny-warning/download/tiny-warning-1.0.2.tgz", + "integrity": "sha1-Hfrnce4aBDlr394no63OvGtkiyg=", + "dev": true + }, + "tinycolor2": { + "version": "1.4.1", + "resolved": "http://registry.npm.taobao.org/tinycolor2/download/tinycolor2-1.4.1.tgz", + "integrity": "sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g=", + "dev": true + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/to-arraybuffer/download/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "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", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "http://registry.npm.taobao.org/to-regex/download/to-regex-3.0.2.tgz", + "integrity": "sha1-E8/dmzNlUvMLUfM6iuG0Knp1mc4=", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "http://registry.npm.taobao.org/to-regex-range/download/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "toggle-selection": { + "version": "1.0.6", + "resolved": "http://registry.npm.taobao.org/toggle-selection/download/toggle-selection-1.0.6.tgz", + "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=", + "dev": true + }, + "toposort": { + "version": "1.0.7", + "resolved": "http://registry.npm.taobao.org/toposort/download/toposort-1.0.7.tgz", + "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", + "dev": true + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "http://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.4.3.tgz", + "integrity": "sha1-U/Nto/R3g7CSWvoG/587FlKA94E=", + "dev": true, + "optional": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "http://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true, + "optional": true + } + } + }, + "ts-loader": { + "version": "5.4.5", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-5.4.5.tgz", + "integrity": "sha512-XYsjfnRQCBum9AMRZpk2rTYSVpdZBpZK+kDh0TeT3kxmQNBDVIeUjdPjY5RZry4eIAb8XHc4gYSUiUWPYvzSRw==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "enhanced-resolve": "^4.0.0", + "loader-utils": "^1.0.2", + "micromatch": "^3.1.4", + "semver": "^5.0.1" + } + }, + "tsconfig-paths": { + "version": "3.8.0", + "resolved": "http://registry.npm.taobao.org/tsconfig-paths/download/tsconfig-paths-3.8.0.tgz", + "integrity": "sha1-TjQgLVtBlY8mnPVrAe2VuFPVn3I=", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "deepmerge": "^2.0.1", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + } + }, + "tsconfig-paths-webpack-plugin": { + "version": "3.2.0", + "resolved": "http://registry.npm.taobao.org/tsconfig-paths-webpack-plugin/download/tsconfig-paths-webpack-plugin-3.2.0.tgz", + "integrity": "sha1-bnC9QpFa0O+2TTOFFj8MEnDz4E0=", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "enhanced-resolve": "^4.0.0", + "tsconfig-paths": "^3.4.0" + } + }, + "tslib": { + "version": "1.9.3", + "resolved": "http://registry.npm.taobao.org/tslib/download/tslib-1.9.3.tgz", + "integrity": "sha1-1+TdeSRdhUKMTX5IIqeZF5VMooY=", + "dev": true + }, + "tslint": { + "version": "5.16.0", + "resolved": "http://registry.npm.taobao.org/tslint/download/tslint-5.16.0.tgz", + "integrity": "sha1-rmH5xamNKVuaT0VTsbHoMcGYTWc=", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "builtin-modules": "^1.1.1", + "chalk": "^2.3.0", + "commander": "^2.12.1", + "diff": "^3.2.0", + "glob": "^7.1.1", + "js-yaml": "^3.13.0", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "resolve": "^1.3.2", + "semver": "^5.3.0", + "tslib": "^1.8.0", + "tsutils": "^2.29.0" + } + }, + "tslint-react": { + "version": "3.6.0", + "resolved": "http://registry.npm.taobao.org/tslint-react/download/tslint-react-3.6.0.tgz", + "integrity": "sha1-f0YslcSgr6roJQfwZRf/ApQhlqE=", + "dev": true, + "requires": { + "tsutils": "^2.13.1" + } + }, + "tsutils": { + "version": "2.29.0", + "resolved": "http://registry.npm.taobao.org/tsutils/download/tsutils-2.29.0.tgz", + "integrity": "sha1-MrSIUBRnrL7dS4VJhnOggSrKC5k=", + "dev": true, + "requires": { + "tslib": "^1.8.1" + } + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "http://registry.npm.taobao.org/tty-browserify/download/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "http://registry.npm.taobao.org/tunnel-agent/download/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "http://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "type-is": { + "version": "1.6.16", + "resolved": "http://registry.npm.taobao.org/type-is/download/type-is-1.6.16.tgz", + "integrity": "sha1-+JzjQVQcZysl7nrjxz3uOyvlAZQ=", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.18" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "http://registry.npm.taobao.org/typedarray/download/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "typescript": { + "version": "3.4.4", + "resolved": "http://registry.npm.taobao.org/typescript/download/typescript-3.4.4.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Ftypescript%2Fdownload%2Ftypescript-3.4.4.tgz", + "integrity": "sha1-qsSgir7KuAkadfEIQv+gYxgY94U=", + "dev": true + }, + "ua-parser-js": { + "version": "0.7.19", + "resolved": "http://registry.npm.taobao.org/ua-parser-js/download/ua-parser-js-0.7.19.tgz", + "integrity": "sha1-lBUb5MCn+x0AGvcCL9rKRkJlnks=", + "dev": true + }, + "uglify-js": { + "version": "3.4.10", + "resolved": "http://registry.npm.taobao.org/uglify-js/download/uglify-js-3.4.10.tgz", + "integrity": "sha1-mtlWPY6zrN+404WX0q8dgV9qdV8=", + "dev": true, + "requires": { + "commander": "~2.19.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.19.0", + "resolved": "http://registry.npm.taobao.org/commander/download/commander-2.19.0.tgz", + "integrity": "sha1-9hmKqE5bg8RgVLlN3tv+1e6f8So=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "union-value": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/union-value/download/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "http://registry.npm.taobao.org/set-value/download/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } + } + }, + "uniq": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/uniq/download/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, + "uniqs": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/uniqs/download/uniqs-2.0.0.tgz", + "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", + "dev": true + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/unique-filename/download/unique-filename-1.1.1.tgz", + "integrity": "sha1-HWl2k2mtoFgxA6HmrodoG1ZXMjA=", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.1", + "resolved": "http://registry.npm.taobao.org/unique-slug/download/unique-slug-2.0.1.tgz", + "integrity": "sha1-Xp7cbRzo+yZNsYpQfvm9hURFHKY=", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "unquote": { + "version": "1.1.1", + "resolved": "http://registry.npm.taobao.org/unquote/download/unquote-1.1.1.tgz", + "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/unset-value/download/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "http://registry.npm.taobao.org/has-value/download/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/isobject/download/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "http://registry.npm.taobao.org/has-values/download/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + } + } + }, + "upath": { + "version": "1.1.2", + "resolved": "http://registry.npm.taobao.org/upath/download/upath-1.1.2.tgz", + "integrity": "sha1-PbZYYA7a7sy+bbXmhNZ+6MKs0Gg=", + "dev": true + }, + "upper-case": { + "version": "1.1.3", + "resolved": "http://registry.npm.taobao.org/upper-case/download/upper-case-1.1.3.tgz", + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", + "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "http://registry.npm.taobao.org/uri-js/download/uri-js-4.2.2.tgz", + "integrity": "sha1-lMVA4f93KVbiKZUHwBCupsiDjrA=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "http://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url": { + "version": "0.11.0", + "resolved": "http://registry.npm.taobao.org/url/download/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "http://registry.npm.taobao.org/punycode/download/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "url-parse": { + "version": "1.4.6", + "resolved": "http://registry.npm.taobao.org/url-parse/download/url-parse-1.4.6.tgz", + "integrity": "sha1-uvkdbmeDyKeV60dokv/vJzf8BFY=", + "dev": true, + "requires": { + "querystringify": "^2.0.0", + "requires-port": "^1.0.0" + } + }, + "use": { + "version": "3.1.1", + "resolved": "http://registry.npm.taobao.org/use/download/use-3.1.1.tgz", + "integrity": "sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8=", + "dev": true + }, + "util": { + "version": "0.11.1", + "resolved": "http://registry.npm.taobao.org/util/download/util-0.11.1.tgz", + "integrity": "sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE=", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "http://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" + } + }, + "utila": { + "version": "0.4.0", + "resolved": "http://registry.npm.taobao.org/utila/download/utila-0.4.0.tgz", + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", + "dev": true + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "http://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true + }, + "uuid": { + "version": "3.3.2", + "resolved": "http://registry.npm.taobao.org/uuid/download/uuid-3.3.2.tgz", + "integrity": "sha1-G0r0lV6zB3xQHCOHL8ZROBFYcTE=", + "dev": true + }, + "v8-compile-cache": { + "version": "2.0.2", + "resolved": "http://registry.npm.taobao.org/v8-compile-cache/download/v8-compile-cache-2.0.2.tgz", + "integrity": "sha1-pCiyi7JnkHNMT8i8n6EG/M6/amw=", + "dev": true + }, + "value-equal": { + "version": "0.4.0", + "resolved": "http://registry.npm.taobao.org/value-equal/download/value-equal-0.4.0.tgz", + "integrity": "sha1-xb3S9U7gk8BIOdcc4uR1imiQq8c=", + "dev": true + }, + "vary": { + "version": "1.1.2", + "resolved": "http://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true + }, + "vendors": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/vendors/download/vendors-1.0.2.tgz", + "integrity": "sha1-f8te759WI7FWvOqJ7DfWNnbyGAE=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "http://registry.npm.taobao.org/verror/download/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "optional": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vm-browserify": { + "version": "0.0.4", + "resolved": "http://registry.npm.taobao.org/vm-browserify/download/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "dev": true, + "requires": { + "indexof": "0.0.1" + } + }, + "warning": { + "version": "4.0.3", + "resolved": "http://registry.npm.taobao.org/warning/download/warning-4.0.3.tgz", + "integrity": "sha1-Fungd+uKhtavfWSqHgX9hbRnjKM=", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "watchpack": { + "version": "1.6.0", + "resolved": "http://registry.npm.taobao.org/watchpack/download/watchpack-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" + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "http://registry.npm.taobao.org/wbuf/download/wbuf-1.7.3.tgz", + "integrity": "sha1-wdjRSTFtPqhShIiVy2oL/oh7h98=", + "dev": true, + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "webpack": { + "version": "4.30.0", + "resolved": "http://registry.npm.taobao.org/webpack/download/webpack-4.30.0.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack%2Fdownload%2Fwebpack-4.30.0.tgz", + "integrity": "sha1-rKdu91YwoixJ/MI1s5tMV1kdM6k=", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/wasm-edit": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "acorn": "^6.0.5", + "acorn-dynamic-import": "^4.0.0", + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0", + "chrome-trace-event": "^1.0.0", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.0", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.3.0", + "loader-utils": "^1.1.0", + "memory-fs": "~0.4.1", + "micromatch": "^3.1.8", + "mkdirp": "~0.5.0", + "neo-async": "^2.5.0", + "node-libs-browser": "^2.0.0", + "schema-utils": "^1.0.0", + "tapable": "^1.1.0", + "terser-webpack-plugin": "^1.1.0", + "watchpack": "^1.5.0", + "webpack-sources": "^1.3.0" + } + }, + "webpack-cli": { + "version": "3.3.0", + "resolved": "http://registry.npm.taobao.org/webpack-cli/download/webpack-cli-3.3.0.tgz", + "integrity": "sha1-VcinTK4eiBF/ndo6gBxycuk8oxg=", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "enhanced-resolve": "^4.1.0", + "findup-sync": "^2.0.0", + "global-modules": "^1.0.0", + "import-local": "^2.0.0", + "interpret": "^1.1.0", + "loader-utils": "^1.1.0", + "supports-color": "^5.5.0", + "v8-compile-cache": "^2.0.2", + "yargs": "^12.0.5" + } + }, + "webpack-dev-middleware": { + "version": "3.6.2", + "resolved": "http://registry.npm.taobao.org/webpack-dev-middleware/download/webpack-dev-middleware-3.6.2.tgz", + "integrity": "sha1-83onrXwJzX3GfNl2VUE6uqH1WUI=", + "dev": true, + "requires": { + "memory-fs": "^0.4.1", + "mime": "^2.3.1", + "range-parser": "^1.0.3", + "webpack-log": "^2.0.0" + }, + "dependencies": { + "mime": { + "version": "2.4.2", + "resolved": "http://registry.npm.taobao.org/mime/download/mime-2.4.2.tgz", + "integrity": "sha1-zlIppemf/DE6usgGtILBDnumrHg=", + "dev": true + } + } + }, + "webpack-dev-server": { + "version": "3.3.1", + "resolved": "http://registry.npm.taobao.org/webpack-dev-server/download/webpack-dev-server-3.3.1.tgz", + "integrity": "sha1-cEbkne1cElWoLF2UK83aVStypi0=", + "dev": true, + "requires": { + "ansi-html": "0.0.7", + "bonjour": "^3.5.0", + "chokidar": "^2.1.5", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "debug": "^4.1.1", + "del": "^4.1.0", + "express": "^4.16.4", + "html-entities": "^1.2.1", + "http-proxy-middleware": "^0.19.1", + "import-local": "^2.0.0", + "internal-ip": "^4.2.0", + "ip": "^1.1.5", + "killable": "^1.0.1", + "loglevel": "^1.6.1", + "opn": "^5.5.0", + "portfinder": "^1.0.20", + "schema-utils": "^1.0.0", + "selfsigned": "^1.10.4", + "semver": "^6.0.0", + "serve-index": "^1.9.1", + "sockjs": "0.3.19", + "sockjs-client": "1.3.0", + "spdy": "^4.0.0", + "strip-ansi": "^3.0.1", + "supports-color": "^6.1.0", + "url": "^0.11.0", + "webpack-dev-middleware": "^3.6.2", + "webpack-log": "^2.0.0", + "yargs": "12.0.5" + }, + "dependencies": { + "semver": { + "version": "6.0.0", + "resolved": "http://registry.npm.taobao.org/semver/download/semver-6.0.0.tgz", + "integrity": "sha1-BeNZ7lceWtftZBpu7B5Ue6Ut6mU=", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "http://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz", + "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "webpack-log": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/webpack-log/download/webpack-log-2.0.0.tgz", + "integrity": "sha1-W3ko4GN1k/EZ0y9iJ8HgrDHhtH8=", + "dev": true, + "requires": { + "ansi-colors": "^3.0.0", + "uuid": "^3.3.2" + } + }, + "webpack-sources": { + "version": "1.3.0", + "resolved": "http://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.3.0.tgz", + "integrity": "sha1-KijcufH0X+lg2PFJMlK17mUw+oU=", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "dev": true + } + } + }, + "websocket-driver": { + "version": "0.7.0", + "resolved": "http://registry.npm.taobao.org/websocket-driver/download/websocket-driver-0.7.0.tgz", + "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", + "dev": true, + "requires": { + "http-parser-js": ">=0.4.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.3", + "resolved": "http://registry.npm.taobao.org/websocket-extensions/download/websocket-extensions-0.1.3.tgz", + "integrity": "sha1-XS/yKXcAPsaHpLhwc9+7rBRszyk=", + "dev": true + }, + "whatwg-fetch": { + "version": "3.0.0", + "resolved": "http://registry.npm.taobao.org/whatwg-fetch/download/whatwg-fetch-3.0.0.tgz", + "integrity": "sha1-/IBORYzEYACbGiuWa8iBfSV4rvs=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "http://registry.npm.taobao.org/which/download/which-1.3.1.tgz", + "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "http://registry.npm.taobao.org/which-module/download/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wmf": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/wmf/download/wmf-1.0.2.tgz", + "integrity": "sha1-fRnWIQcaCMK9xrfmiKnENSmMwto=", + "dev": true + }, + "worker-farm": { + "version": "1.6.0", + "resolved": "http://registry.npm.taobao.org/worker-farm/download/worker-farm-1.6.0.tgz", + "integrity": "sha1-rsxAWXb6talVJhgIRvDboojzpKA=", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "http://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-2.1.0.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fwrap-ansi%2Fdownload%2Fwrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "http://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "http://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" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "http://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "xlsx": { + "version": "0.16.1", + "resolved": "https://registry.npm.taobao.org/xlsx/download/xlsx-0.16.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxlsx%2Fdownload%2Fxlsx-0.16.1.tgz", + "integrity": "sha1-+xpZ0sSlQKCFVkkux4b5j5c/EmA=", + "dev": true, + "requires": { + "adler-32": "~1.2.0", + "cfb": "^1.1.4", + "codepage": "~1.14.0", + "commander": "~2.17.1", + "crc-32": "~1.2.0", + "exit-on-epipe": "~1.0.1", + "ssf": "~0.10.3", + "wmf": "~1.0.1" + } + }, + "xtend": { + "version": "4.0.1", + "resolved": "http://registry.npm.taobao.org/xtend/download/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "http://registry.npm.taobao.org/y18n/download/y18n-4.0.0.tgz", + "integrity": "sha1-le+U+F7MgdAHwmThkKEg8KPIVms=", + "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 + }, + "yargs": { + "version": "12.0.5", + "resolved": "http://registry.npm.taobao.org/yargs/download/yargs-12.0.5.tgz", + "integrity": "sha1-BfWZe2CWR7ZPZrgeO0sQo2jnrRM=", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "http://registry.npm.taobao.org/yargs-parser/download/yargs-parser-11.1.1.tgz", + "integrity": "sha1-h5oIZZc7yp9rq1y987HGfsfTvPQ=", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "zrender": { + "version": "4.3.0", + "resolved": "https://registry.npm.taobao.org/zrender/download/zrender-4.3.0.tgz", + "integrity": "sha1-nwVhIbILuuREFNKHv2oRn/cEJmE=", + "dev": true + } + } +} diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/cache/PhysicalClusterMetadataManager.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/cache/PhysicalClusterMetadataManager.java index a56b0ab3..a37b95e2 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/cache/PhysicalClusterMetadataManager.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/cache/PhysicalClusterMetadataManager.java @@ -14,6 +14,7 @@ import com.xiaojukeji.kafka.manager.common.zookeeper.ZkConfigImpl; import com.xiaojukeji.kafka.manager.dao.ControllerDao; import com.xiaojukeji.kafka.manager.common.utils.jmx.JmxConnectorWrap; import com.xiaojukeji.kafka.manager.service.service.JmxService; +import com.xiaojukeji.kafka.manager.service.utils.ConfigUtils; import com.xiaojukeji.kafka.manager.service.zookeeper.*; import com.xiaojukeji.kafka.manager.service.service.ClusterService; import com.xiaojukeji.kafka.manager.common.zookeeper.ZkPathUtil; @@ -44,6 +45,9 @@ public class PhysicalClusterMetadataManager { @Autowired private ClusterService clusterService; + @Autowired + private ConfigUtils configUtils; + private final static Map CLUSTER_MAP = new ConcurrentHashMap<>(); private final static Map CONTROLLER_DATA_MAP = new ConcurrentHashMap<>(); @@ -89,7 +93,7 @@ public class PhysicalClusterMetadataManager { BROKER_METADATA_MAP.put(clusterDO.getId(), new ConcurrentHashMap<>()); JMX_CONNECTOR_MAP.put(clusterDO.getId(), new ConcurrentHashMap<>()); KAFKA_VERSION_MAP.put(clusterDO.getId(), new ConcurrentHashMap<>()); - BrokerStateListener brokerListener = new BrokerStateListener(clusterDO.getId(), zkConfig); + BrokerStateListener brokerListener = new BrokerStateListener(clusterDO.getId(), zkConfig, configUtils.getJmxMaxConn()); brokerListener.init(); zkConfig.watchChildren(ZkPathUtil.BROKER_IDS_ROOT, brokerListener); @@ -255,7 +259,7 @@ public class PhysicalClusterMetadataManager { //---------------------------Broker元信息相关-------------- - public static void putBrokerMetadata(Long clusterId, Integer brokerId, BrokerMetadata brokerMetadata) { + public static void putBrokerMetadata(Long clusterId, Integer brokerId, BrokerMetadata brokerMetadata, Integer jmxMaxConn) { Map metadataMap = BROKER_METADATA_MAP.get(clusterId); if (metadataMap == null) { return; @@ -263,7 +267,7 @@ public class PhysicalClusterMetadataManager { metadataMap.put(brokerId, brokerMetadata); Map jmxMap = JMX_CONNECTOR_MAP.getOrDefault(clusterId, new ConcurrentHashMap<>()); - jmxMap.put(brokerId, new JmxConnectorWrap(brokerMetadata.getHost(), brokerMetadata.getJmxPort())); + jmxMap.put(brokerId, new JmxConnectorWrap(brokerMetadata.getHost(), brokerMetadata.getJmxPort(), jmxMaxConn)); JMX_CONNECTOR_MAP.put(clusterId, jmxMap); Map versionMap = KAFKA_VERSION_MAP.getOrDefault(clusterId, new ConcurrentHashMap<>()); diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/GatewayConfigServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/GatewayConfigServiceImpl.java index ecda75e9..8dfb26c4 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/GatewayConfigServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/GatewayConfigServiceImpl.java @@ -38,10 +38,10 @@ public class GatewayConfigServiceImpl implements GatewayConfigService { } Long maxVersion = Long.MIN_VALUE; - Map> clusterIdBootstrapServersMap = new HashMap<>(doList.size()); + Map> clusterIdBootstrapServersMap = new HashMap<>(doList.size()); for (GatewayConfigDO configDO: doList) { clusterIdBootstrapServersMap.put( - Long.valueOf(configDO.getName()), + configDO.getName().trim(), ListUtils.string2StrList(configDO.getValue()) ); if (configDO.getVersion().compareTo(maxVersion) > 0) { diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConfigServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConfigServiceImpl.java index 8616d689..5ffc4729 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConfigServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConfigServiceImpl.java @@ -2,7 +2,6 @@ package com.xiaojukeji.kafka.manager.service.service.impl; import com.alibaba.fastjson.JSON; import com.xiaojukeji.kafka.manager.common.constant.ConfigConstant; -import com.xiaojukeji.kafka.manager.common.constant.SystemCodeConstant; import com.xiaojukeji.kafka.manager.common.constant.TopicCreationConstant; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.ao.config.*; @@ -11,7 +10,6 @@ import com.xiaojukeji.kafka.manager.common.entity.pojo.ClusterDO; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.common.entity.pojo.ConfigDO; import com.xiaojukeji.kafka.manager.dao.ConfigDao; -import com.xiaojukeji.kafka.manager.service.cache.PhysicalClusterMetadataManager; import com.xiaojukeji.kafka.manager.service.service.ConfigService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -166,11 +164,6 @@ public class ConfigServiceImpl implements ConfigService { @Override public CreateTopicElemConfig getCreateTopicConfig(Long clusterId, String systemCode) { String configKey = TopicCreationConstant.INNER_CREATE_TOPIC_CONFIG_KEY; - if (SystemCodeConstant.LOG_X.equals(systemCode)) { - configKey = TopicCreationConstant.LOG_X_CREATE_TOPIC_CONFIG_KEY_NAME; - } else if (SystemCodeConstant.CHORUS.equals(systemCode)) { - configKey = TopicCreationConstant.CHORUS_CREATE_TOPIC_CONFIG_KEY_NAME; - } CreateTopicConfig configValue = this.getByKey( configKey, CreateTopicConfig.class diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConsumerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConsumerServiceImpl.java index edba7af0..7f905275 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConsumerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConsumerServiceImpl.java @@ -390,7 +390,7 @@ public class ConsumerServiceImpl implements ConsumerService { @Override public boolean checkConsumerGroupExist(OffsetLocationEnum offsetLocation, Long clusterId, String topicName, String consumerGroup) { List consumerGroupList = getConsumerGroupList(clusterId, topicName).stream() - .filter(group -> offsetLocation.location.equals(group.getOffsetStoreLocation()) && consumerGroup.equals(group.getConsumerGroup())) + .filter(group -> offsetLocation.location.equals(group.getOffsetStoreLocation().location) && consumerGroup.equals(group.getConsumerGroup())) .collect(Collectors.toList()); return !ValidateUtils.isEmptyList(consumerGroupList); } diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ExpertServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ExpertServiceImpl.java index 8b9e0132..d0b34e3d 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ExpertServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ExpertServiceImpl.java @@ -186,7 +186,7 @@ public class ExpertServiceImpl implements ExpertService { continue; } Integer suggestedPartitionNum = (int) Math.round( - bytesIn / topicMetadata.getPartitionNum() / config.getMaxBytesInPerPartitionUnitB() + bytesIn / config.getMaxBytesInPerPartitionUnitB() ); if (suggestedPartitionNum - topicMetadata.getPartitionNum() < 1) { continue; diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ConfigUtils.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ConfigUtils.java index b805d3ca..2440e78d 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ConfigUtils.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ConfigUtils.java @@ -13,6 +13,9 @@ public class ConfigUtils { @Value(value = "${custom.idc}") private String idc; + @Value("${custom.jmx.max-conn}") + private Integer jmxMaxConn; + @Value(value = "${spring.profiles.active}") private String kafkaManagerEnv; @@ -24,6 +27,14 @@ public class ConfigUtils { this.idc = idc; } + public Integer getJmxMaxConn() { + return jmxMaxConn; + } + + public void setJmxMaxConn(Integer jmxMaxConn) { + this.jmxMaxConn = jmxMaxConn; + } + public String getKafkaManagerEnv() { return kafkaManagerEnv; } diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/zookeeper/BrokerStateListener.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/zookeeper/BrokerStateListener.java index 494e7542..16a185e0 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/zookeeper/BrokerStateListener.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/zookeeper/BrokerStateListener.java @@ -22,9 +22,12 @@ public class BrokerStateListener implements StateChangeListener { private ZkConfigImpl zkConfig; - public BrokerStateListener(Long clusterId, ZkConfigImpl zkConfig) { + private Integer jmxMaxConn; + + public BrokerStateListener(Long clusterId, ZkConfigImpl zkConfig, Integer jmxMaxConn) { this.clusterId = clusterId; this.zkConfig = zkConfig; + this.jmxMaxConn = jmxMaxConn; } @Override @@ -81,7 +84,7 @@ public class BrokerStateListener implements StateChangeListener { } brokerMetadata.setClusterId(clusterId); brokerMetadata.setBrokerId(brokerId); - PhysicalClusterMetadataManager.putBrokerMetadata(clusterId, brokerId, brokerMetadata); + PhysicalClusterMetadataManager.putBrokerMetadata(clusterId, brokerId, brokerMetadata, jmxMaxConn); } catch (Exception e) { LOGGER.error("add broker failed, clusterId:{} brokerMetadata:{}.", clusterId, brokerMetadata, e); } diff --git a/kafka-manager-dao/src/main/resources/mapper/ClusterDao.xml b/kafka-manager-dao/src/main/resources/mapper/ClusterDao.xml index e5b1747b..a03eb6e0 100644 --- a/kafka-manager-dao/src/main/resources/mapper/ClusterDao.xml +++ b/kafka-manager-dao/src/main/resources/mapper/ClusterDao.xml @@ -38,6 +38,10 @@ SELECT * FROM cluster where id=#{id} + + DELETE FROM cluster where id=#{id} + + diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eResult.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eResult.java new file mode 100644 index 00000000..5988d654 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eResult.java @@ -0,0 +1,35 @@ +package com.xiaojukeji.kafka.manager.account.common.entry; + +/** + * @author zengqiao + * @date 20/9/7 + */ +public class N9eResult { + private T dat; + + private String err; + + public T getDat() { + return dat; + } + + public void setDat(T dat) { + this.dat = dat; + } + + public String getErr() { + return err; + } + + public void setErr(String err) { + this.err = err; + } + + @Override + public String toString() { + return "N9eResult{" + + "dat=" + dat + + ", err='" + err + '\'' + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eUserData.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eUserData.java new file mode 100644 index 00000000..f952b55d --- /dev/null +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eUserData.java @@ -0,0 +1,134 @@ +package com.xiaojukeji.kafka.manager.account.common.entry; + +/** + * @author zengqiao + * @date 20/9/7 + */ +public class N9eUserData { + private Long id; + + private String uuid; + + private String username; + + private String dispname; + + private String phone; + + private String email; + + private String im; + + private String portrait; + + private Integer is_root; + + private Integer leader_id; + + private String leader_name; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getUuid() { + return uuid; + } + + public void setUuid(String uuid) { + this.uuid = uuid; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getDispname() { + return dispname; + } + + public void setDispname(String dispname) { + this.dispname = dispname; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getIm() { + return im; + } + + public void setIm(String im) { + this.im = im; + } + + public String getPortrait() { + return portrait; + } + + public void setPortrait(String portrait) { + this.portrait = portrait; + } + + public Integer getIs_root() { + return is_root; + } + + public void setIs_root(Integer is_root) { + this.is_root = is_root; + } + + public Integer getLeader_id() { + return leader_id; + } + + public void setLeader_id(Integer leader_id) { + this.leader_id = leader_id; + } + + public String getLeader_name() { + return leader_name; + } + + public void setLeader_name(String leader_name) { + this.leader_name = leader_name; + } + + @Override + public String toString() { + return "EPRIResult{" + + "id=" + id + + ", uuid='" + uuid + '\'' + + ", username='" + username + '\'' + + ", dispname='" + dispname + '\'' + + ", phone='" + phone + '\'' + + ", email='" + email + '\'' + + ", im='" + im + '\'' + + ", portrait='" + portrait + '\'' + + ", is_root=" + is_root + + ", leader_id=" + leader_id + + ", leader_name='" + leader_name + '\'' + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/account/BaseEnterpriseStaffService.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/account/BaseEnterpriseStaffService.java index c40a97b1..b931eecd 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/account/BaseEnterpriseStaffService.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/account/BaseEnterpriseStaffService.java @@ -55,4 +55,4 @@ public class BaseEnterpriseStaffService extends AbstractEnterpriseStaffService { } return new ArrayList<>(); } -} \ No newline at end of file +} diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/N9e.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/N9e.java index 160118f3..e71175f7 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/N9e.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/N9e.java @@ -30,19 +30,19 @@ import java.util.Map; public class N9e extends AbstractAgent { private static final Logger LOGGER = LoggerFactory.getLogger(N9e.class); - @Value("${agent.n9e.base-url}") + @Value("${kcm.n9e.base-url}") private String baseUrl; - @Value("${agent.n9e.username}") + @Value("${kcm.n9e.username}") private String username; - @Value("${agent.n9e.user-token}") + @Value("${kcm.n9e.user-token}") private String userToken; - @Value("${agent.n9e.tpl-id}") + @Value("${kcm.n9e.tpl-id}") private Integer tplId; - @Value("${agent.n9e.timeout}") + @Value("${kcm.n9e.timeout}") private Integer timeout; /** diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/resources/application-kcm-dev.yml b/kafka-manager-extends/kafka-manager-kcm/src/main/resources/application-kcm-dev.yml deleted file mode 100644 index 8ed8b846..00000000 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/resources/application-kcm-dev.yml +++ /dev/null @@ -1,7 +0,0 @@ -agent: - n9e: - base-url: http://127.0.0.1/api - username: admin - user-token: admin - tpl-id: 123456 - timeout: 30 \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/N9eConverter.java b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/N9eConverter.java index ea18377c..d7691a85 100644 --- a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/N9eConverter.java +++ b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/N9eConverter.java @@ -1,9 +1,11 @@ package com.xiaojukeji.kafka.manager.monitor.component.n9e; -import com.xiaojukeji.kafka.manager.monitor.common.entry.MetricSinkPoint; -import com.xiaojukeji.kafka.manager.monitor.component.n9e.entry.N9eMetricSinkPoint; +import com.xiaojukeji.kafka.manager.common.utils.ListUtils; +import com.xiaojukeji.kafka.manager.monitor.common.entry.*; +import com.xiaojukeji.kafka.manager.monitor.component.n9e.entry.*; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; /** @@ -27,4 +29,127 @@ public class N9eConverter { } return n9ePointList; } + + public static N9eStrategy convert2N9eStrategy(Strategy strategy, Integer monitorN9eNid) { + if (strategy == null) { + return null; + } + + N9eStrategy n9eStrategy = new N9eStrategy(); + n9eStrategy.setId(strategy.getId().intValue()); + n9eStrategy.setCategory(1); + n9eStrategy.setName(strategy.getName()); + n9eStrategy.setNid(monitorN9eNid); + n9eStrategy.setExcl_nid(new ArrayList<>()); + n9eStrategy.setPriority(strategy.getPriority()); + n9eStrategy.setAlert_dur(60); + + List exprs = new ArrayList<>(); + for (StrategyExpression strategyExpression: strategy.getStrategyExpressionList()) { + N9eStrategyExpression n9eStrategyExpression = new N9eStrategyExpression(); + n9eStrategyExpression.setMetric(strategyExpression.getMetric()); + n9eStrategyExpression.setFunc(strategyExpression.getFunc()); + n9eStrategyExpression.setEopt(strategyExpression.getEopt()); + n9eStrategyExpression.setThreshold(strategyExpression.getThreshold().intValue()); + n9eStrategyExpression.setParams(ListUtils.string2IntList(strategyExpression.getParams())); + exprs.add(n9eStrategyExpression); + } + n9eStrategy.setExprs(exprs); + + List tags = new ArrayList<>(); + for (StrategyFilter strategyFilter: strategy.getStrategyFilterList()) { + N9eStrategyFilter n9eStrategyFilter = new N9eStrategyFilter(); + n9eStrategyFilter.setTkey(strategyFilter.getTkey()); + n9eStrategyFilter.setTopt(strategyFilter.getTopt()); + n9eStrategyFilter.setTval(Arrays.asList(strategyFilter.getTval())); + tags.add(n9eStrategyFilter); + } + n9eStrategy.setTags(tags); + + n9eStrategy.setRecovery_dur(0); + n9eStrategy.setRecovery_notify(0); + + StrategyAction strategyAction = strategy.getStrategyActionList().get(0); + n9eStrategy.setConverge(ListUtils.string2IntList(strategyAction.getConverge())); + n9eStrategy.setNotify_group(ListUtils.string2StrList(strategyAction.getNotifyGroup())); + n9eStrategy.setNotify_user(new ArrayList<>()); + n9eStrategy.setCallback(strategyAction.getCallback()); + n9eStrategy.setEnable_stime("00:00"); + n9eStrategy.setEnable_etime("23:59"); + n9eStrategy.setEnable_days_of_week(ListUtils.string2IntList(strategy.getPeriodDaysOfWeek())); + + n9eStrategy.setNeed_upgrade(0); + n9eStrategy.setAlert_upgrade(new ArrayList<>()); + return n9eStrategy; + } + + public static List convert2StrategyList(List n9eStrategyList) { + if (n9eStrategyList == null || n9eStrategyList.isEmpty()) { + return new ArrayList<>(); + } + + List strategyList = new ArrayList<>(); + for (N9eStrategy n9eStrategy: n9eStrategyList) { + strategyList.add(convert2Strategy(n9eStrategy)); + } + return strategyList; + } + + public static Strategy convert2Strategy(N9eStrategy n9eStrategy) { + if (n9eStrategy == null) { + return null; + } + Strategy strategy = new Strategy(); + strategy.setId(n9eStrategy.getId().longValue()); + strategy.setName(n9eStrategy.getName()); + strategy.setPriority(n9eStrategy.getPriority()); + strategy.setPeriodHoursOfDay("0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23"); + strategy.setPeriodDaysOfWeek(ListUtils.intList2String(n9eStrategy.getEnable_days_of_week())); + + List strategyExpressionList = new ArrayList<>(); + for (N9eStrategyExpression n9eStrategyExpression: n9eStrategy.getExprs()) { + StrategyExpression strategyExpression = new StrategyExpression(); + strategyExpression.setMetric(n9eStrategyExpression.getMetric()); + strategyExpression.setFunc(n9eStrategyExpression.getFunc()); + strategyExpression.setEopt(n9eStrategyExpression.getEopt()); + strategyExpression.setThreshold(n9eStrategyExpression.getThreshold().longValue()); + strategyExpression.setParams(ListUtils.intList2String(n9eStrategyExpression.getParams())); + strategyExpressionList.add(strategyExpression); + } + strategy.setStrategyExpressionList(strategyExpressionList); + + List strategyFilterList = new ArrayList<>(); + for (N9eStrategyFilter n9eStrategyFilter: n9eStrategy.getTags()) { + StrategyFilter strategyFilter = new StrategyFilter(); + strategyFilter.setTkey(n9eStrategyFilter.getTkey()); + strategyFilter.setTopt(n9eStrategyFilter.getTopt()); + strategyFilter.setTval(ListUtils.strList2String(n9eStrategyFilter.getTval())); + strategyFilterList.add(strategyFilter); + } + strategy.setStrategyFilterList(strategyFilterList); + + StrategyAction strategyAction = new StrategyAction(); + strategyAction.setNotifyGroup(ListUtils.strList2String(n9eStrategy.getNotify_group())); + strategyAction.setConverge(ListUtils.intList2String(n9eStrategy.getConverge())); + strategyAction.setCallback(n9eStrategy.getCallback()); + strategy.setStrategyActionList(Arrays.asList(strategyAction)); + + return strategy; + } + + public static List convert2NotifyGroupList(N9eNotifyGroup n9eNotifyGroup) { + if (n9eNotifyGroup == null || n9eNotifyGroup.getList() == null) { + return new ArrayList<>(); + } + + List notifyGroupList = new ArrayList<>(); + for (N9eNotifyGroupElem n9eNotifyGroupElem: n9eNotifyGroup.getList()) { + NotifyGroup notifyGroup = new NotifyGroup(); + notifyGroup.setId(n9eNotifyGroupElem.getId().longValue()); + notifyGroup.setName(n9eNotifyGroupElem.getName()); + notifyGroup.setComment(n9eNotifyGroupElem.getNote()); + notifyGroupList.add(notifyGroup); + } + return notifyGroupList; + } } \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/N9eService.java b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/N9eService.java index fce7ea45..df2e430c 100644 --- a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/N9eService.java +++ b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/N9eService.java @@ -2,17 +2,18 @@ package com.xiaojukeji.kafka.manager.monitor.component.n9e; import com.alibaba.fastjson.JSON; import com.xiaojukeji.kafka.manager.common.utils.HttpUtils; +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.monitor.component.AbstractMonitorService; import com.xiaojukeji.kafka.manager.monitor.common.entry.*; +import com.xiaojukeji.kafka.manager.monitor.component.n9e.entry.N9eNotifyGroup; import com.xiaojukeji.kafka.manager.monitor.component.n9e.entry.N9eResult; +import com.xiaojukeji.kafka.manager.monitor.component.n9e.entry.N9eStrategy; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Properties; +import java.util.*; /** * 夜莺 @@ -23,21 +24,28 @@ import java.util.Properties; public class N9eService extends AbstractMonitorService { private static final Logger LOGGER = LoggerFactory.getLogger(N9eService.class); + @Value("${monitor.n9e.nid}") + private Integer monitorN9eNid; + + @Value("${monitor.n9e.user-token}") + private String monitorN9eToken; + @Value("${monitor.n9e.base-url}") private String monitorN9eBaseUrl; /** * 告警策略 */ - private static final String STRATEGY_ADD_URL = "/auth/v1/strategy/add"; + private static final String STRATEGY_ADD_URL = "/api/mon/stra"; - private static final String STRATEGY_DEL_URL = "/auth/v1/strategy/del"; + private static final String STRATEGY_DEL_URL = "/api/mon/stra"; - private static final String STRATEGY_MODIFY_URL = "/auth/v1/strategy/modify"; + private static final String STRATEGY_MODIFY_URL = "/api/mon/stra"; - private static final String STRATEGY_QUERY_BY_NS_URL = "/auth/v1/strategy/query/ns"; + private static final String STRATEGY_QUERY_BY_NS_URL = "/api/mon/stra"; + + private static final String STRATEGY_QUERY_BY_ID_URL = "/api/mon/stra"; - private static final String STRATEGY_QUERY_BY_ID_URL = "/auth/v1/strategy/query/id"; private static final String ALERT_QUERY_BY_NS_AND_PERIOD_URL = "/auth/v1/event/query/ns/period"; @@ -57,41 +65,121 @@ public class N9eService extends AbstractMonitorService { /** * 指标数据 */ - private static final String COLLECTOR_SINK_DATA_URL = "/api/collector/push"; + private static final String COLLECTOR_SINK_DATA_URL = "/api/transfer/push"; private static final String COLLECTOR_DOWNLOAD_DATA_URL = "/data/query/graph/dashboard/history"; /** * 告警组 */ - private static final String ALL_NOTIFY_GROUP_URL = "/auth/v1/usergroup/group/all"; + private static final String ALL_NOTIFY_GROUP_URL = "/api/mon/teams/all"; /** * 监控策略的增删改查 */ @Override public Integer createStrategy(Strategy strategy) { - return 0; + String response = null; + try { + response = HttpUtils.postForString( + monitorN9eBaseUrl + STRATEGY_ADD_URL, + JSON.toJSONString(N9eConverter.convert2N9eStrategy(strategy, monitorN9eNid)), + buildHeader() + ); + N9eResult n9eResult = JSON.parseObject(response, N9eResult.class); + if (!ValidateUtils.isBlank(n9eResult.getErr())) { + LOGGER.error("create strategy failed, strategy:{} response:{}.", strategy, response); + return null; + } + return (Integer) n9eResult.getDat(); + } catch (Exception e) { + LOGGER.error("create strategy failed, strategy:{} response:{}.", strategy, response, e); + } + return null; } @Override public Boolean deleteStrategyById(Long strategyId) { - return true; + Map> params = new HashMap<>(1); + params.put("ids", Arrays.asList(strategyId)); + + String response = null; + try { + response = HttpUtils.deleteForString( + monitorN9eBaseUrl + STRATEGY_DEL_URL, + JSON.toJSONString(params), + buildHeader() + ); + N9eResult n9eResult = JSON.parseObject(response, N9eResult.class); + if (!ValidateUtils.isBlank(n9eResult.getErr())) { + LOGGER.error("delete strategy failed, strategyId:{} response:{}.", strategyId, response); + return Boolean.FALSE; + } + return Boolean.TRUE; + } catch (Exception e) { + LOGGER.error("delete strategy failed, strategyId:{} response:{}.", strategyId, response, e); + } + return Boolean.FALSE; } @Override public Boolean modifyStrategy(Strategy strategy) { - return true; + String response = null; + try { + response = HttpUtils.putForString( + monitorN9eBaseUrl + STRATEGY_MODIFY_URL, + JSON.toJSONString(N9eConverter.convert2N9eStrategy(strategy, monitorN9eNid)), + buildHeader() + ); + N9eResult n9eResult = JSON.parseObject(response, N9eResult.class); + if (!ValidateUtils.isBlank(n9eResult.getErr())) { + LOGGER.error("modify strategy failed, strategy:{} response:{}.", strategy, response); + return Boolean.FALSE; + } + return Boolean.TRUE; + } catch (Exception e) { + LOGGER.error("modify strategy failed, strategy:{} response:{}.", strategy, response, e); + } + return Boolean.FALSE; } @Override public List getStrategies() { + Map params = new HashMap<>(); + params.put("nid", String.valueOf(monitorN9eNid)); + + String response = null; + try { + response = HttpUtils.get(monitorN9eBaseUrl + STRATEGY_QUERY_BY_NS_URL, params, buildHeader()); + N9eResult n9eResult = JSON.parseObject(response, N9eResult.class); + if (!ValidateUtils.isBlank(n9eResult.getErr())) { + LOGGER.error("get monitor strategies failed, response:{}.", response); + return new ArrayList<>(); + } + return N9eConverter.convert2StrategyList(JSON.parseArray(JSON.toJSONString(n9eResult.getDat()), N9eStrategy.class)); + } catch (Exception e) { + LOGGER.error("get monitor strategies failed, response:{}.", response, e); + } return new ArrayList<>(); } @Override public Strategy getStrategyById(Long strategyId) { - return new Strategy(); + String uri = STRATEGY_QUERY_BY_ID_URL + "/" + String.valueOf(strategyId); + + String response = null; + try { + response = HttpUtils.get(monitorN9eBaseUrl + uri, new HashMap<>(0), buildHeader()); + N9eResult n9eResult = JSON.parseObject(response, N9eResult.class); + if (!ValidateUtils.isBlank(n9eResult.getErr())) { + LOGGER.error("get monitor strategy failed, response:{}.", response); + return null; + } + return N9eConverter.convert2Strategy(JSON.parseObject(JSON.toJSONString(n9eResult.getDat()), N9eStrategy.class)); + } catch (Exception e) { + LOGGER.error("get monitor strategy failed, response:{}.", response, e); + } + return null; } @Override @@ -161,6 +249,26 @@ public class N9eService extends AbstractMonitorService { @Override public List getNotifyGroups() { + String response = null; + try { + response = HttpUtils.get(monitorN9eBaseUrl + ALL_NOTIFY_GROUP_URL, new HashMap<>(0), buildHeader()); + N9eResult n9eResult = JSON.parseObject(response, N9eResult.class); + if (!ValidateUtils.isBlank(n9eResult.getErr())) { + LOGGER.error("get notify group failed, response:{}.", response); + return new ArrayList<>(); + } + return N9eConverter.convert2NotifyGroupList(JSON.parseObject(JSON.toJSONString(n9eResult.getDat()), N9eNotifyGroup.class)); + } catch (Exception e) { + LOGGER.error("get notify group failed, response:{}.", response, e); + } return new ArrayList<>(); } -} \ No newline at end of file + + private Map buildHeader() { + Map header = new HashMap<>(2); + header.put("Content-Type", "application/json"); + header.put("X-User-Token", monitorN9eToken); + return header; + } + +} diff --git a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eNotifyGroup.java b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eNotifyGroup.java new file mode 100644 index 00000000..9e1061e0 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eNotifyGroup.java @@ -0,0 +1,26 @@ +package com.xiaojukeji.kafka.manager.monitor.component.n9e.entry; + +import java.util.List; + +/** + * @author zengqiao + * @date 20/10/19 + */ +public class N9eNotifyGroup { + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + @Override + public String toString() { + return "N9eNotifyGroup{" + + "list=" + list + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eNotifyGroupElem.java b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eNotifyGroupElem.java new file mode 100644 index 00000000..9bd246c6 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eNotifyGroupElem.java @@ -0,0 +1,90 @@ +package com.xiaojukeji.kafka.manager.monitor.component.n9e.entry; + +/** + * @author zengqiao + * @date 20/10/19 + */ +public class N9eNotifyGroupElem { + private Integer creator; + + private Integer id; + + private String ident; + + private String last_updated; + + private Integer mgmt; + + private String name; + + private String note; + + public Integer getCreator() { + return creator; + } + + public void setCreator(Integer creator) { + this.creator = creator; + } + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getIdent() { + return ident; + } + + public void setIdent(String ident) { + this.ident = ident; + } + + public String getLast_updated() { + return last_updated; + } + + public void setLast_updated(String last_updated) { + this.last_updated = last_updated; + } + + public Integer getMgmt() { + return mgmt; + } + + public void setMgmt(Integer mgmt) { + this.mgmt = mgmt; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getNote() { + return note; + } + + public void setNote(String note) { + this.note = note; + } + + @Override + public String toString() { + return "N9eNotifyGroupElem{" + + "creator=" + creator + + ", id=" + id + + ", ident='" + ident + '\'' + + ", last_updated='" + last_updated + '\'' + + ", mgmt=" + mgmt + + ", name='" + name + '\'' + + ", note='" + note + '\'' + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategy.java b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategy.java new file mode 100644 index 00000000..420b825c --- /dev/null +++ b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategy.java @@ -0,0 +1,242 @@ +package com.xiaojukeji.kafka.manager.monitor.component.n9e.entry; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author zengqiao + * @date 20/10/18 + */ +public class N9eStrategy { + private Integer id; + + private Integer category = 1; + + /** + * 策略名称 + */ + private String name; + + /** + * 策略关联的对象树节点id + */ + private Integer nid; + + private List excl_nid = new ArrayList<>(); + + private Integer priority; + + private Integer alert_dur = 60; + + private List exprs; + + private List tags; + + private Integer recovery_dur; + + private Integer recovery_notify; + + private List alert_upgrade = new ArrayList<>(); + + private List converge; + + private List notify_group; + + private List notify_user; + + private String callback; + + private String enable_stime; + + private String enable_etime; + + private List enable_days_of_week; + + private Integer need_upgrade; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getCategory() { + return category; + } + + public void setCategory(Integer category) { + this.category = category; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Integer getNid() { + return nid; + } + + public void setNid(Integer nid) { + this.nid = nid; + } + + public List getExcl_nid() { + return excl_nid; + } + + public void setExcl_nid(List excl_nid) { + this.excl_nid = excl_nid; + } + + public Integer getPriority() { + return priority; + } + + public void setPriority(Integer priority) { + this.priority = priority; + } + + public Integer getAlert_dur() { + return alert_dur; + } + + public void setAlert_dur(Integer alert_dur) { + this.alert_dur = alert_dur; + } + + public List getExprs() { + return exprs; + } + + public void setExprs(List exprs) { + this.exprs = exprs; + } + + public List getTags() { + return tags; + } + + public void setTags(List tags) { + this.tags = tags; + } + + public Integer getRecovery_dur() { + return recovery_dur; + } + + public void setRecovery_dur(Integer recovery_dur) { + this.recovery_dur = recovery_dur; + } + + public Integer getRecovery_notify() { + return recovery_notify; + } + + public void setRecovery_notify(Integer recovery_notify) { + this.recovery_notify = recovery_notify; + } + + public List getAlert_upgrade() { + return alert_upgrade; + } + + public void setAlert_upgrade(List alert_upgrade) { + this.alert_upgrade = alert_upgrade; + } + + public List getConverge() { + return converge; + } + + public void setConverge(List converge) { + this.converge = converge; + } + + public List getNotify_group() { + return notify_group; + } + + public void setNotify_group(List notify_group) { + this.notify_group = notify_group; + } + + public List getNotify_user() { + return notify_user; + } + + public void setNotify_user(List notify_user) { + this.notify_user = notify_user; + } + + public String getCallback() { + return callback; + } + + public void setCallback(String callback) { + this.callback = callback; + } + + public String getEnable_stime() { + return enable_stime; + } + + public void setEnable_stime(String enable_stime) { + this.enable_stime = enable_stime; + } + + public String getEnable_etime() { + return enable_etime; + } + + public void setEnable_etime(String enable_etime) { + this.enable_etime = enable_etime; + } + + public List getEnable_days_of_week() { + return enable_days_of_week; + } + + public void setEnable_days_of_week(List enable_days_of_week) { + this.enable_days_of_week = enable_days_of_week; + } + + public Integer getNeed_upgrade() { + return need_upgrade; + } + + public void setNeed_upgrade(Integer need_upgrade) { + this.need_upgrade = need_upgrade; + } + + @Override + public String toString() { + return "N9eStrategy{" + + "id=" + id + + ", category=" + category + + ", name='" + name + '\'' + + ", nid=" + nid + + ", excl_nid=" + excl_nid + + ", priority=" + priority + + ", alert_dur=" + alert_dur + + ", exprs=" + exprs + + ", tags=" + tags + + ", recovery_dur=" + recovery_dur + + ", recovery_notify=" + recovery_notify + + ", alert_upgrade=" + alert_upgrade + + ", converge=" + converge + + ", notify_group=" + notify_group + + ", notify_user=" + notify_user + + ", callback='" + callback + '\'' + + ", enable_stime='" + enable_stime + '\'' + + ", enable_etime='" + enable_etime + '\'' + + ", enable_days_of_week=" + enable_days_of_week + + ", need_upgrade=" + need_upgrade + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyAlertUpgrade.java b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyAlertUpgrade.java new file mode 100644 index 00000000..594c4762 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyAlertUpgrade.java @@ -0,0 +1,59 @@ +package com.xiaojukeji.kafka.manager.monitor.component.n9e.entry; + +import java.util.List; + +/** + * @author zengqiao + * @date 20/10/19 + */ +public class N9eStrategyAlertUpgrade { + private Integer duration; + + private Integer level; + + private List users; + + private List groups; + + public Integer getDuration() { + return duration; + } + + public void setDuration(Integer duration) { + this.duration = duration; + } + + public Integer getLevel() { + return level; + } + + public void setLevel(Integer level) { + this.level = level; + } + + public List getUsers() { + return users; + } + + public void setUsers(List users) { + this.users = users; + } + + public List getGroups() { + return groups; + } + + public void setGroups(List groups) { + this.groups = groups; + } + + @Override + public String toString() { + return "N9eStrategyAlertUpgrade{" + + "duration=" + duration + + ", level=" + level + + ", users=" + users + + ", groups=" + groups + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyExpression.java b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyExpression.java new file mode 100644 index 00000000..c72f002a --- /dev/null +++ b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyExpression.java @@ -0,0 +1,70 @@ +package com.xiaojukeji.kafka.manager.monitor.component.n9e.entry; + +import java.util.List; + +/** + * @author zengqiao + * @date 20/10/18 + */ +public class N9eStrategyExpression { + private String metric; + + private String func; + + private String eopt; + + private Integer threshold; + + private List params; + + public String getMetric() { + return metric; + } + + public void setMetric(String metric) { + this.metric = metric; + } + + public String getFunc() { + return func; + } + + public void setFunc(String func) { + this.func = func; + } + + public String getEopt() { + return eopt; + } + + public void setEopt(String eopt) { + this.eopt = eopt; + } + + public Integer getThreshold() { + return threshold; + } + + public void setThreshold(Integer threshold) { + this.threshold = threshold; + } + + public List getParams() { + return params; + } + + public void setParams(List params) { + this.params = params; + } + + @Override + public String toString() { + return "N9eStrategyExpression{" + + "metric='" + metric + '\'' + + ", func='" + func + '\'' + + ", eopt='" + eopt + '\'' + + ", threshold=" + threshold + + ", params=" + params + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyFilter.java b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyFilter.java new file mode 100644 index 00000000..6ee26f37 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-monitor/src/main/java/com/xiaojukeji/kafka/manager/monitor/component/n9e/entry/N9eStrategyFilter.java @@ -0,0 +1,48 @@ +package com.xiaojukeji.kafka.manager.monitor.component.n9e.entry; + +import java.util.List; + +/** + * @author zengqiao + * @date 20/10/18 + */ +public class N9eStrategyFilter { + private String topt; + + private String tkey; + + private List tval; + + public String getTopt() { + return topt; + } + + public void setTopt(String topt) { + this.topt = topt; + } + + public String getTkey() { + return tkey; + } + + public void setTkey(String tkey) { + this.tkey = tkey; + } + + public List getTval() { + return tval; + } + + public void setTval(List tval) { + this.tval = tval; + } + + @Override + public String toString() { + return "N9eStrategyFilter{" + + "topt='" + topt + '\'' + + ", tkey='" + tkey + '\'' + + ", tval=" + tval + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-monitor/src/main/resources/application-monitor-dev.yml b/kafka-manager-extends/kafka-manager-monitor/src/main/resources/application-monitor-dev.yml deleted file mode 100644 index c5815ba1..00000000 --- a/kafka-manager-extends/kafka-manager-monitor/src/main/resources/application-monitor-dev.yml +++ /dev/null @@ -1,3 +0,0 @@ -monitor: - n9e: - base-url: http://127.0.0.1/api diff --git a/kafka-manager-extends/kafka-manager-notify/src/main/java/com/xiaojukeji/kafka/manager/notify/notifyer/KafkaNotifierService.java b/kafka-manager-extends/kafka-manager-notify/src/main/java/com/xiaojukeji/kafka/manager/notify/notifyer/KafkaNotifierService.java index 5ed7c73f..73867a4f 100644 --- a/kafka-manager-extends/kafka-manager-notify/src/main/java/com/xiaojukeji/kafka/manager/notify/notifyer/KafkaNotifierService.java +++ b/kafka-manager-extends/kafka-manager-notify/src/main/java/com/xiaojukeji/kafka/manager/notify/notifyer/KafkaNotifierService.java @@ -10,10 +10,10 @@ import org.springframework.stereotype.Service; */ @Service("notifyService") public class KafkaNotifierService extends AbstractNotifyService { - @Value("${kafka.cluster-id:}") + @Value("${notify.kafka.cluster-id:}") private Long clusterId; - @Value("${notify.topic-name:}") + @Value("${notify.kafka.topic-name:}") private String topicName; @Override diff --git a/kafka-manager-extends/kafka-manager-notify/src/main/resources/application-notify-dev.yml b/kafka-manager-extends/kafka-manager-notify/src/main/resources/application-notify-dev.yml deleted file mode 100644 index 1c047583..00000000 --- a/kafka-manager-extends/kafka-manager-notify/src/main/resources/application-notify-dev.yml +++ /dev/null @@ -1,8 +0,0 @@ -notify: - order: - detail-url: http://127.0.0.1 - -kafka: - cluster-id: 12 - topic-name: 123 - diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/ThirdPartService.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/ThirdPartService.java new file mode 100644 index 00000000..4d320d3a --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/ThirdPartService.java @@ -0,0 +1,20 @@ +package com.xiaojukeji.kafka.manager.openapi; + +import com.xiaojukeji.kafka.manager.common.bizenum.ConsumeHealthEnum; +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.openapi.common.dto.*; +import com.xiaojukeji.kafka.manager.common.entity.pojo.ClusterDO; + +import java.util.List; + +/** + * @author zengqiao + * @date 20/5/22 + */ +public interface ThirdPartService { + Result checkConsumeHealth(Long clusterId, + String topicName, + String consumerGroup, + Long maxDelayTime); + + List resetOffsets(ClusterDO clusterDO, OffsetResetDTO dto);} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/ThirdPartUtils.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/ThirdPartUtils.java new file mode 100644 index 00000000..f8143a4b --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/ThirdPartUtils.java @@ -0,0 +1,15 @@ +package com.xiaojukeji.kafka.manager.openapi; + +import com.xiaojukeji.kafka.manager.bpm.common.OrderTypeEnum; + +/** + * @author zhongyuankai + * @date 2020/08/31 + */ +public class ThirdPartUtils { + + public static String getOrderLimitKey(OrderTypeEnum orderTypeEnum, String systemCode) { + return orderTypeEnum.getOrderName() + "_" + systemCode; + } + +} diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/constant/ThirdPartConstant.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/constant/ThirdPartConstant.java new file mode 100644 index 00000000..76c2b811 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/constant/ThirdPartConstant.java @@ -0,0 +1,18 @@ +package com.xiaojukeji.kafka.manager.openapi.common.constant; + +import java.util.Arrays; +import java.util.List; + +/** + * @author zengqiao + * @date 20/10/26 + */ +public class ThirdPartConstant { + public final static List QUOTA_MODIFY_WHITE_CLUSTER_LIST = Arrays.asList(70L, 46L); + + public final static Integer DATA_DREAM_MAX_APP_NUM = 20; + + public final static Integer DATA_DREAM_MAX_AUTHORITY_NUM = 500; + + public final static String SELF_SYSTEM_CODE = "kafkamanager"; +} diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/dto/ConsumeHealthDTO.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/dto/ConsumeHealthDTO.java new file mode 100644 index 00000000..fb8c1bb3 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/dto/ConsumeHealthDTO.java @@ -0,0 +1,83 @@ +package com.xiaojukeji.kafka.manager.openapi.common.dto; + +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +import java.util.List; + +/** + * @author zengqiao + * @date 20/6/2 + */ +@ApiModel(description = "消费健康") +public class ConsumeHealthDTO { + @ApiModelProperty(value = "集群ID") + private Long clusterId; + + @ApiModelProperty(value = "Topic名称") + private List topicNameList; + + @ApiModelProperty(value = "消费组") + private String consumerGroup; + + @ApiModelProperty(value = "允许最大延迟(ms)") + private Long maxDelayTime; + + public Long getClusterId() { + return clusterId; + } + + public void setClusterId(Long clusterId) { + this.clusterId = clusterId; + } + + public List getTopicNameList() { + return topicNameList; + } + + public void setTopicNameList(List topicNameList) { + this.topicNameList = topicNameList; + } + + public String getConsumerGroup() { + return consumerGroup; + } + + public void setConsumerGroup(String consumerGroup) { + this.consumerGroup = consumerGroup; + } + + public Long getMaxDelayTime() { + return maxDelayTime; + } + + public void setMaxDelayTime(Long maxDelayTime) { + this.maxDelayTime = maxDelayTime; + } + + @Override + public String toString() { + return "ConsumeHealthDTO{" + + "clusterId=" + clusterId + + ", topicNameList=" + topicNameList + + ", consumerGroup='" + consumerGroup + '\'' + + ", maxDelayTime=" + maxDelayTime + + '}'; + } + + public boolean paramLegal() { + if (ValidateUtils.isNull(clusterId) + || ValidateUtils.isEmptyList(topicNameList) + || ValidateUtils.isBlank(consumerGroup) + || ValidateUtils.isNullOrLessThanZero(maxDelayTime)) { + return false; + } + for (String topicName: topicNameList) { + if (ValidateUtils.isExistBlank(topicName)) { + return false; + } + } + return true; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/dto/OffsetResetDTO.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/dto/OffsetResetDTO.java new file mode 100644 index 00000000..60c0aa39 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/dto/OffsetResetDTO.java @@ -0,0 +1,208 @@ +package com.xiaojukeji.kafka.manager.openapi.common.dto; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.xiaojukeji.kafka.manager.common.bizenum.OffsetResetTypeEnum; +import com.xiaojukeji.kafka.manager.common.entity.ao.PartitionOffsetDTO; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import org.springframework.util.StringUtils; + +import java.util.List; + +@JsonIgnoreProperties(ignoreUnknown = true) +@ApiModel(description = "重置消费偏移") +public class OffsetResetDTO { + @ApiModelProperty(value = "集群ID") + private Long clusterId; + + @ApiModelProperty(value = "Topic名称") + private String topicName; + + @ApiModelProperty(value = "消费组") + private String consumerGroup; + + @ApiModelProperty(value = "消费组位置") + private String location; + + @ApiModelProperty(value = "重置的方式[0:依据时间进行重置, 1:指定分区offset进行重置]") + private Integer offsetResetType; + + @ApiModelProperty(value = "依据时间进行重置时, 传的参数, 13位时间戳") + private Long timestamp; + + @ApiModelProperty(value = "指定分区进行重置时, 传的参数") + private List partitionOffsetDTOList; + + @ApiModelProperty(value = "如果消费组不存在则创建") + private Boolean createIfAbsent = Boolean.FALSE; + + @ApiModelProperty(value = "使用的AppID") + private String appId; + + @ApiModelProperty(value = "App密码") + private String password; + + @ApiModelProperty(value = "操作人") + private String operator; + + @ApiModelProperty(value = "系统code") + private String systemCode; + + /** + * 默认使用assign的方式进行重置, + * 但是使用assign方式对于多个Topic的消费使用同一个消费组的场景, 需要停掉所有的client才可以重置成功, 否则重置失败 + * + * 使用subscribe重置offset, 针对上面的场景可以重置成功, 但是涉及到poll函数调用, 所以默认是关闭的 + */ + private Boolean subscribeReset = Boolean.FALSE; // 订阅重置, 默认是assign方式重置 + + public Long getClusterId() { + return clusterId; + } + + public void setClusterId(Long clusterId) { + this.clusterId = clusterId; + } + + public String getTopicName() { + return topicName; + } + + public void setTopicName(String topicName) { + this.topicName = topicName; + } + + public String getConsumerGroup() { + return consumerGroup; + } + + public void setConsumerGroup(String consumerGroup) { + this.consumerGroup = consumerGroup; + } + + public String getLocation() { + return location; + } + + public void setLocation(String location) { + this.location = location; + } + + public Integer getOffsetResetType() { + return offsetResetType; + } + + public void setOffsetResetType(Integer offsetResetType) { + this.offsetResetType = offsetResetType; + } + + public Long getTimestamp() { + return timestamp; + } + + public void setTimestamp(Long timestamp) { + this.timestamp = timestamp; + } + + public List getPartitionOffsetDTOList() { + return partitionOffsetDTOList; + } + + public void setPartitionOffsetDTOList(List partitionOffsetDTOList) { + this.partitionOffsetDTOList = partitionOffsetDTOList; + } + + public Boolean getCreateIfAbsent() { + return createIfAbsent; + } + + public void setCreateIfAbsent(Boolean createIfAbsent) { + this.createIfAbsent = createIfAbsent; + } + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + public String getSystemCode() { + return systemCode; + } + + public void setSystemCode(String systemCode) { + this.systemCode = systemCode; + } + + public Boolean getSubscribeReset() { + return subscribeReset; + } + + public void setSubscribeReset(Boolean subscribeReset) { + this.subscribeReset = subscribeReset; + } + + @Override + public String toString() { + return "OffsetResetModel{" + + "clusterId=" + clusterId + + ", topicName='" + topicName + '\'' + + ", consumerGroup='" + consumerGroup + '\'' + + ", location='" + location + '\'' + + ", offsetResetType=" + offsetResetType + + ", timestamp=" + timestamp + + ", partitionOffsetDTOList=" + partitionOffsetDTOList + + ", createIfAbsent=" + createIfAbsent + + ", appId='" + appId + '\'' + + ", password='" + password + '\'' + + ", operator='" + operator + '\'' + + ", systemCode='" + systemCode + '\'' + + ", subscribeReset=" + subscribeReset + + '}'; + } + + public boolean legal() { + if (clusterId == null + || StringUtils.isEmpty(topicName) + || StringUtils.isEmpty(consumerGroup) + || StringUtils.isEmpty(location) + || offsetResetType == null + || StringUtils.isEmpty(operator)) { + return false; + } + appId = (appId == null? "": appId); + password = (password == null? "": password); + if (createIfAbsent == null) { + createIfAbsent = false; + } + if (subscribeReset == null) { + subscribeReset = false; + } + + // 只能依据时间或者offset中的一个进行重置 + if (OffsetResetTypeEnum.RESET_BY_TIME.getCode().equals(offsetResetType)) { + return timestamp != null; + } else if (OffsetResetTypeEnum.RESET_BY_OFFSET.getCode().equals(offsetResetType)) { + return partitionOffsetDTOList != null; + } + return false; + } +} diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/BrokerRegionVO.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/BrokerRegionVO.java new file mode 100644 index 00000000..40cc2a7b --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/BrokerRegionVO.java @@ -0,0 +1,57 @@ +package com.xiaojukeji.kafka.manager.openapi.common.vo; + +/** + * @author zengqiao + * @date 20/9/14 + */ +public class BrokerRegionVO { + private Long clusterId; + + private Integer brokerId; + + private String hostname; + + private String regionName; + + public Long getClusterId() { + return clusterId; + } + + public void setClusterId(Long clusterId) { + this.clusterId = clusterId; + } + + public Integer getBrokerId() { + return brokerId; + } + + public void setBrokerId(Integer brokerId) { + this.brokerId = brokerId; + } + + public String getHostname() { + return hostname; + } + + public void setHostname(String hostname) { + this.hostname = hostname; + } + + public String getRegionName() { + return regionName; + } + + public void setRegionName(String regionName) { + this.regionName = regionName; + } + + @Override + public String toString() { + return "BrokerRegionVO{" + + "clusterId=" + clusterId + + ", brokerId=" + brokerId + + ", hostname='" + hostname + '\'' + + ", regionName='" + regionName + '\'' + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/ConsumeHealthVO.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/ConsumeHealthVO.java new file mode 100644 index 00000000..3e36f8b1 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/ConsumeHealthVO.java @@ -0,0 +1,28 @@ +package com.xiaojukeji.kafka.manager.openapi.common.vo; + +/** + * @author zengqiao + * @date 20/10/26 + */ +public class ConsumeHealthVO { + private Integer healthCode; + + public ConsumeHealthVO(Integer healthCode) { + this.healthCode = healthCode; + } + + public Integer getHealthCode() { + return healthCode; + } + + public void setHealthCode(Integer healthCode) { + this.healthCode = healthCode; + } + + @Override + public String toString() { + return "ConsumeHealthVO{" + + "healthCode=" + healthCode + + '}'; + } +} diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/ThirdPartBrokerOverviewVO.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/ThirdPartBrokerOverviewVO.java new file mode 100644 index 00000000..595e6878 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/ThirdPartBrokerOverviewVO.java @@ -0,0 +1,59 @@ +package com.xiaojukeji.kafka.manager.openapi.common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * @author zengqiao + * @date 20/9/9 + */ +@ApiModel(description="第三方-Broker概览") +public class ThirdPartBrokerOverviewVO { + @ApiModelProperty(value = "集群ID") + private Long clusterId; + + @ApiModelProperty(value = "BrokerId") + private Integer brokerId; + + @ApiModelProperty(value = "处于同步状态 false:已同步, true:未同步") + private Boolean underReplicated; + + public ThirdPartBrokerOverviewVO(Long clusterId, Integer brokerId, Boolean underReplicated) { + this.clusterId = clusterId; + this.brokerId = brokerId; + this.underReplicated = underReplicated; + } + + public Long getClusterId() { + return clusterId; + } + + public void setClusterId(Long clusterId) { + this.clusterId = clusterId; + } + + public Integer getBrokerId() { + return brokerId; + } + + public void setBrokerId(Integer brokerId) { + this.brokerId = brokerId; + } + + public Boolean getUnderReplicated() { + return underReplicated; + } + + public void setUnderReplicated(Boolean underReplicated) { + this.underReplicated = underReplicated; + } + + @Override + public String toString() { + return "ThirdPartBrokerOverviewVO{" + + "clusterId=" + clusterId + + ", brokerId=" + brokerId + + ", underReplicated=" + underReplicated + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/TopicOffsetChangedVO.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/TopicOffsetChangedVO.java new file mode 100644 index 00000000..3238691f --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/TopicOffsetChangedVO.java @@ -0,0 +1,33 @@ +package com.xiaojukeji.kafka.manager.openapi.common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * @author zengqiao + * @date 20/8/24 + */ +@ApiModel(description="TopicOffset变化") +public class TopicOffsetChangedVO { + @ApiModelProperty(value="Offset是否变化, 0:否, 1:是, -1:未知") + private Integer offsetChanged; + + public TopicOffsetChangedVO(Integer offsetChanged) { + this.offsetChanged = offsetChanged; + } + + public Integer getOffsetChanged() { + return offsetChanged; + } + + public void setOffsetChanged(Integer offsetChanged) { + this.offsetChanged = offsetChanged; + } + + @Override + public String toString() { + return "TopicOffsetChangedVO{" + + "offsetChanged=" + offsetChanged + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/TopicStatisticMetricsVO.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/TopicStatisticMetricsVO.java new file mode 100644 index 00000000..3665b7ac --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/common/vo/TopicStatisticMetricsVO.java @@ -0,0 +1,34 @@ +package com.xiaojukeji.kafka.manager.openapi.common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * @author zengqiao + * @date 20/8/14 + */ +@ApiModel(description="Topic流量统计信息") +public class TopicStatisticMetricsVO { + @ApiModelProperty(value="峰值流入流量(B/s)") + private Double peakBytesIn; + + public TopicStatisticMetricsVO(Double peakBytesIn) { + this.peakBytesIn = peakBytesIn; + + } + + public Double getPeakBytesIn() { + return peakBytesIn; + } + + public void setPeakBytesIn(Double peakBytesIn) { + this.peakBytesIn = peakBytesIn; + } + + @Override + public String toString() { + return "TopicStatisticMetricsVO{" + + "peakBytesIn=" + peakBytesIn + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/impl/ThirdPartServiceImpl.java b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/impl/ThirdPartServiceImpl.java new file mode 100644 index 00000000..10e0bfdf --- /dev/null +++ b/kafka-manager-extends/kafka-manager-openapi/src/main/java/com/xiaojukeji/kafka/manager/openapi/impl/ThirdPartServiceImpl.java @@ -0,0 +1,200 @@ +package com.xiaojukeji.kafka.manager.openapi.impl; + +import com.xiaojukeji.kafka.manager.common.bizenum.*; +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; +import com.xiaojukeji.kafka.manager.common.entity.ao.PartitionOffsetDTO; +import com.xiaojukeji.kafka.manager.common.entity.ao.consumer.ConsumerGroupDTO; +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; +import com.xiaojukeji.kafka.manager.common.zookeeper.znode.brokers.TopicMetadata; +import com.xiaojukeji.kafka.manager.common.entity.pojo.ClusterDO; +import com.xiaojukeji.kafka.manager.openapi.ThirdPartService; +import com.xiaojukeji.kafka.manager.openapi.common.dto.*; +import com.xiaojukeji.kafka.manager.service.cache.KafkaClientPool; +import com.xiaojukeji.kafka.manager.service.cache.PhysicalClusterMetadataManager; +import com.xiaojukeji.kafka.manager.service.service.*; +import kafka.admin.AdminClient; +import org.apache.kafka.clients.consumer.KafkaConsumer; +import org.apache.kafka.clients.consumer.OffsetAndTimestamp; +import org.apache.kafka.common.TopicPartition; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import scala.collection.JavaConversions; + +import java.util.*; + +/** + * @author zengqiao + * @date 20/5/22 + */ +@Service("thirdPartService") +public class ThirdPartServiceImpl implements ThirdPartService { + private static Logger LOGGER = LoggerFactory.getLogger(ThirdPartServiceImpl.class); + + @Autowired + private ClusterService clusterService; + + @Autowired + private TopicService topicService; + + @Autowired + private ConsumerService consumerService; + + @Override + public Result checkConsumeHealth(Long clusterId, + String topicName, + String consumerGroup, + Long maxDelayTime) { + ClusterDO clusterDO = clusterService.getById(clusterId); + if (ValidateUtils.isNull(clusterDO)) { + return Result.buildFrom(ResultStatus.CLUSTER_NOT_EXIST); + } + TopicMetadata topicMetadata = PhysicalClusterMetadataManager.getTopicMetadata(clusterId, topicName); + if (ValidateUtils.isNull(topicMetadata)) { + return Result.buildFrom(ResultStatus.TOPIC_NOT_EXIST); + } + + // 获取消费组当前的offset + Map consumeOffsetMap = listGroupOffsets(clusterId, consumerGroup); + if (ValidateUtils.isNull(consumeOffsetMap)) { + return new Result<>(ConsumeHealthEnum.UNKNOWN); + } + if (consumeOffsetMap.isEmpty()) { + return Result.buildFrom(ResultStatus.CONSUMER_GROUP_NOT_EXIST); + } + + Long delayTimestamp = System.currentTimeMillis() - maxDelayTime; + + // 获取指定时间的offset + Map offsetAndTimeMap = + offsetsForTimes(clusterDO, topicMetadata, delayTimestamp); + if (ValidateUtils.isNull(offsetAndTimeMap)) { + return new Result<>(ConsumeHealthEnum.UNKNOWN); + } + + for (TopicPartition tp : offsetAndTimeMap.keySet()) { + OffsetAndTimestamp offsetAndTimestamp = offsetAndTimeMap.get(tp); + Long consumeOffset = (Long) consumeOffsetMap.get(tp); + if (ValidateUtils.isNull(consumeOffset)) { + return new Result<>(ConsumeHealthEnum.UNKNOWN); + } + + if (offsetAndTimestamp.offset() <= consumeOffset) { + // 健康的 + continue; + } + + return new Result<>(ConsumeHealthEnum.UNHEALTH); + } + return new Result<>(ConsumeHealthEnum.HEALTH); + } + + private Map listGroupOffsets(Long clusterId, String consumerGroup) { + AdminClient client = KafkaClientPool.getAdminClient(clusterId); + if (ValidateUtils.isNull(client)) { + return null; + } + try { + return JavaConversions.asJavaMap(client.listGroupOffsets(consumerGroup)); + } catch (Exception e) { + LOGGER.error("list group offsets failed, clusterId:{}, consumerGroup:{}.", clusterId, consumerGroup, e); + } + return null; + } + + private Map offsetsForTimes(ClusterDO clusterDO, + TopicMetadata topicMetadata, + Long timestamp) { + KafkaConsumer kafkaConsumer = null; + try { + kafkaConsumer = KafkaClientPool.borrowKafkaConsumerClient(clusterDO); + if (ValidateUtils.isNull(kafkaConsumer)) { + return null; + } + Map timestampsToSearch = new HashMap<>(); + for (Integer partitionId : topicMetadata.getPartitionMap().getPartitions().keySet()) { + timestampsToSearch.put(new TopicPartition(topicMetadata.getTopic(), partitionId), timestamp); + } + return kafkaConsumer.offsetsForTimes(timestampsToSearch); + } catch (Exception e) { + LOGGER.error("get offset for time failed, clusterDO:{} topicMetadata:{} timestamp:{}.", + clusterDO, topicMetadata, timestamp, e); + } finally { + KafkaClientPool.returnKafkaConsumerClient(clusterDO.getId(), kafkaConsumer); + } + return null; + } + + @Override + public List resetOffsets(ClusterDO clusterDO, OffsetResetDTO dto) { + if (ValidateUtils.isNull(dto)) { + return null; + } + List offsetDTOList = dto.getPartitionOffsetDTOList(); + if (ValidateUtils.isEmptyList(offsetDTOList)) { + offsetDTOList = topicService.getPartitionOffsetList( + clusterDO, dto.getTopicName(), dto.getTimestamp()); + } + if (ValidateUtils.isEmptyList(offsetDTOList)) { + return null; + } + OffsetLocationEnum offsetLocation = dto.getLocation().equals( + OffsetLocationEnum.ZOOKEEPER.location) ? OffsetLocationEnum.ZOOKEEPER : OffsetLocationEnum.BROKER; + ResultStatus result = checkConsumerGroupExist(clusterDO, dto.getTopicName(), dto.getConsumerGroup(), offsetLocation, dto.getCreateIfAbsent()); + if (ResultStatus.SUCCESS.getCode() != result.getCode()) { + return null; + } + ConsumerGroupDTO consumerGroupDTO = new ConsumerGroupDTO( + clusterDO.getId(), + dto.getConsumerGroup(), + new ArrayList<>(), + OffsetLocationEnum.getOffsetStoreLocation(dto.getLocation()) + ); + return consumerService.resetConsumerOffset( + clusterDO, + dto.getTopicName(), + consumerGroupDTO, + offsetDTOList + ); + } + + private ResultStatus checkConsumerGroupExist(ClusterDO clusterDO, + String topicName, + String consumerGroup, + OffsetLocationEnum offsetLocation, + Boolean createIfAbsent) { + if (createIfAbsent) { + // 如果不存在, 则直接创建 + return isCreateIfAbsentOverflow(clusterDO, topicName); + } + if (!consumerService.checkConsumerGroupExist(offsetLocation, clusterDO.getId(), topicName, consumerGroup)) { + return ResultStatus.PARAM_ILLEGAL; + } + return ResultStatus.SUCCESS; + + } + + /** + * 限制单天单集群的重置次数不能超过20个 + * + */ + private static final Map createIfAbsentCountMap = new HashMap<>(); + + private synchronized ResultStatus isCreateIfAbsentOverflow(ClusterDO clusterDO, String topicName) { + String key = clusterDO.getId() + "_" + topicName; + Long timestampAndCount = createIfAbsentCountMap.get(key); + if (ValidateUtils.isNull(timestampAndCount) || + (System.currentTimeMillis() - (timestampAndCount / 100) >= (24 *60 * 60 * 1000))) { + // 24小时卫触发, 统计归0 + timestampAndCount = System.currentTimeMillis() * 100L + 1; + } else if (timestampAndCount % 100 > 20) { + return ResultStatus.OPERATION_FORBIDDEN; + } else { + timestampAndCount += 1; + } + createIfAbsentCountMap.put(key, timestampAndCount); + return ResultStatus.SUCCESS; + } +} \ No newline at end of file diff --git a/kafka-manager-task/src/main/java/com/xiaojukeji/kafka/manager/task/dispatch/metrics/delete/DeleteMetrics.java b/kafka-manager-task/src/main/java/com/xiaojukeji/kafka/manager/task/dispatch/metrics/delete/DeleteMetrics.java index 0e4eb6ab..6a37edd2 100644 --- a/kafka-manager-task/src/main/java/com/xiaojukeji/kafka/manager/task/dispatch/metrics/delete/DeleteMetrics.java +++ b/kafka-manager-task/src/main/java/com/xiaojukeji/kafka/manager/task/dispatch/metrics/delete/DeleteMetrics.java @@ -1,7 +1,6 @@ package com.xiaojukeji.kafka.manager.task.dispatch.metrics.delete; import com.xiaojukeji.kafka.manager.common.constant.LogConstant; -import com.xiaojukeji.kafka.manager.common.entity.metrics.BrokerMetrics; import com.xiaojukeji.kafka.manager.dao.*; import com.xiaojukeji.kafka.manager.service.utils.ConfigUtils; import com.xiaojukeji.kafka.manager.task.component.AbstractScheduledTask; diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/MainApplication.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/MainApplication.java index 334daf27..106d15f5 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/MainApplication.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/MainApplication.java @@ -1,5 +1,7 @@ package com.xiaojukeji.kafka.manager.web; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -18,10 +20,13 @@ import org.springframework.scheduling.annotation.EnableScheduling; @EnableAutoConfiguration @SpringBootApplication(scanBasePackages = {"com.xiaojukeji.kafka.manager"}) public class MainApplication { + private static final Logger LOGGER = LoggerFactory.getLogger(MainApplication.class); + public static void main(String[] args) { try { SpringApplication sa = new SpringApplication(MainApplication.class); sa.run(args); + LOGGER.info("MainApplication started"); } catch (Exception e) { e.printStackTrace(); } diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayHeartbeatController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayHeartbeatController.java index d2f7fa9c..3008a9ea 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayHeartbeatController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayHeartbeatController.java @@ -3,7 +3,7 @@ package com.xiaojukeji.kafka.manager.web.api.versionone.gateway; import com.alibaba.fastjson.JSON; import com.xiaojukeji.kafka.manager.common.annotations.ApiLevel; import com.xiaojukeji.kafka.manager.common.constant.ApiLevelContent; -import com.xiaojukeji.kafka.manager.common.entity.DeprecatedResponseResult; +import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.dto.gateway.TopicConnectionDTO; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.service.service.gateway.TopicConnectionService; @@ -34,19 +34,19 @@ public class GatewayHeartbeatController { @ApiOperation(value = "连接信息上报入口", notes = "Broker主动上报信息") @RequestMapping(value = "heartbeat/survive-user", method = RequestMethod.POST) @ResponseBody - public DeprecatedResponseResult receiveTopicConnections(@RequestParam("clusterId") String clusterId, - @RequestParam("brokerId") String brokerId, - @RequestBody List dtoList) { + public Result receiveTopicConnections(@RequestParam("clusterId") String clusterId, + @RequestParam("brokerId") String brokerId, + @RequestBody List dtoList) { try { if (ValidateUtils.isEmptyList(dtoList)) { - return DeprecatedResponseResult.success("success"); + return Result.buildSuc(); } topicConnectionService.batchAdd(dtoList); - return DeprecatedResponseResult.success("success"); + return Result.buildSuc(); } catch (Exception e) { LOGGER.error("receive topic connections failed, clusterId:{} brokerId:{} req:{}", clusterId, brokerId, JSON.toJSONString(dtoList), e); } - return DeprecatedResponseResult.failure("fail"); + return Result.buildFailure("fail"); } } \ No newline at end of file diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayReportController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayReportController.java index 3c5a1945..4a394756 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayReportController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayReportController.java @@ -2,7 +2,7 @@ package com.xiaojukeji.kafka.manager.web.api.versionone.gateway; import com.xiaojukeji.kafka.manager.common.annotations.ApiLevel; import com.xiaojukeji.kafka.manager.common.constant.ApiLevelContent; -import com.xiaojukeji.kafka.manager.common.entity.DeprecatedResponseResult; +import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.utils.ListUtils; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.common.entity.pojo.gateway.TopicReportDO; @@ -35,15 +35,15 @@ public class GatewayReportController { @ApiOperation(value = "查询开启JMX采集的Topic", notes = "") @RequestMapping(value = "report/jmx/topics", method = RequestMethod.GET) @ResponseBody - public DeprecatedResponseResult getJmxReportTopics(@RequestParam("clusterId") Long clusterId) { + public Result getJmxReportTopics(@RequestParam("clusterId") Long clusterId) { List doList = topicReportService.getNeedReportTopic(clusterId); - if (ValidateUtils.isEmptyList(doList)) { - return DeprecatedResponseResult.success(); + if (ValidateUtils.isNull(doList)) { + doList = new ArrayList<>(); } List topicNameList = new ArrayList<>(); for (TopicReportDO elem: doList) { topicNameList.add(elem.getTopicName()); } - return DeprecatedResponseResult.success(ListUtils.strList2String(topicNameList)); + return Result.buildSuc(ListUtils.strList2String(topicNameList)); } } \ No newline at end of file diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewaySecurityController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewaySecurityController.java index 4f6633f3..8d3c4740 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewaySecurityController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewaySecurityController.java @@ -3,7 +3,8 @@ package com.xiaojukeji.kafka.manager.web.api.versionone.gateway; import com.alibaba.fastjson.JSON; import com.xiaojukeji.kafka.manager.common.annotations.ApiLevel; import com.xiaojukeji.kafka.manager.common.constant.ApiLevelContent; -import com.xiaojukeji.kafka.manager.common.entity.DeprecatedResponseResult; +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.dto.gateway.KafkaAclSearchDTO; import com.xiaojukeji.kafka.manager.common.entity.dto.gateway.KafkaUserSearchDTO; import com.xiaojukeji.kafka.manager.common.entity.vo.gateway.KafkaSecurityVO; @@ -40,9 +41,9 @@ public class GatewaySecurityController { @ApiOperation(value = "Kafka用户查询", notes = "") @RequestMapping(value = "security/users", method = RequestMethod.POST) @ResponseBody - public DeprecatedResponseResult getKafkaUsers(@RequestBody KafkaUserSearchDTO dto) { + public Result getKafkaUsers(@RequestBody KafkaUserSearchDTO dto) { if (ValidateUtils.isNull(dto) || !dto.paramLegal()) { - return DeprecatedResponseResult.failure("invalid request"); + return Result.buildFrom(ResultStatus.GATEWAY_INVALID_REQUEST); } try { @@ -50,16 +51,16 @@ public class GatewaySecurityController { dto.getStart(), dto.getEnd().equals(0L)? System.currentTimeMillis(): dto.getEnd() ); - if (ValidateUtils.isEmptyList(doList)) { - return DeprecatedResponseResult.success(); + if (ValidateUtils.isNull(doList)) { + doList = new ArrayList<>(); } KafkaSecurityVO vo = new KafkaSecurityVO(); vo.setRows(new ArrayList<>(GatewayModelConverter.convert2KafkaUserVOList(doList))); - return DeprecatedResponseResult.success(JSON.toJSONString(vo)); + return Result.buildSuc(JSON.toJSONString(vo)); } catch (Exception e) { LOGGER.error("get kafka users failed, req:{}.", dto, e); - return DeprecatedResponseResult.failure("get kafka users exception"); + return Result.buildFrom(ResultStatus.MYSQL_ERROR); } } @@ -67,9 +68,9 @@ public class GatewaySecurityController { @ApiOperation(value = "Kafka用户权限查询", notes = "") @RequestMapping(value = "security/acls", method = RequestMethod.POST) @ResponseBody - public DeprecatedResponseResult getKafkaAcls(@RequestBody KafkaAclSearchDTO dto) { + public Result getKafkaAcls(@RequestBody KafkaAclSearchDTO dto) { if (ValidateUtils.isNull(dto) || !dto.paramLegal()) { - return DeprecatedResponseResult.failure("invalid request"); + return Result.buildFrom(ResultStatus.GATEWAY_INVALID_REQUEST); } try { @@ -78,16 +79,16 @@ public class GatewaySecurityController { dto.getStart(), dto.getEnd().equals(0L)? System.currentTimeMillis(): dto.getEnd() ); - if (ValidateUtils.isEmptyList(doList)) { - return DeprecatedResponseResult.success(); + if (ValidateUtils.isNull(doList)) { + doList = new ArrayList<>(); } KafkaSecurityVO vo = new KafkaSecurityVO(); vo.setRows(new ArrayList<>(GatewayModelConverter.convert2KafkaAclVOList(doList))); - return DeprecatedResponseResult.success(JSON.toJSONString(vo)); + return Result.buildSuc(JSON.toJSONString(vo)); } catch (Exception e) { LOGGER.error("get kafka acls failed, req:{}.", dto, e); - return DeprecatedResponseResult.failure("get kafka acls exception"); + return Result.buildFrom(ResultStatus.MYSQL_ERROR); } } } \ No newline at end of file diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayServiceDiscoveryController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayServiceDiscoveryController.java index b30b1e6e..699b30f0 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayServiceDiscoveryController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayServiceDiscoveryController.java @@ -4,7 +4,7 @@ import com.alibaba.fastjson.JSON; import com.xiaojukeji.kafka.manager.common.annotations.ApiLevel; import com.xiaojukeji.kafka.manager.common.bizenum.gateway.GatewayConfigKeyEnum; import com.xiaojukeji.kafka.manager.common.constant.ApiLevelContent; -import com.xiaojukeji.kafka.manager.common.entity.DeprecatedResponseResult; +import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ao.gateway.*; import com.xiaojukeji.kafka.manager.common.entity.pojo.gateway.GatewayConfigDO; import com.xiaojukeji.kafka.manager.common.entity.vo.gateway.GatewayConfigVO; @@ -54,33 +54,27 @@ public class GatewayServiceDiscoveryController { @ApiOperation(value = "获取集群服务地址", notes = "") @RequestMapping(value = "discovery/init", method = RequestMethod.GET) @ResponseBody - public DeprecatedResponseResult getAllKafkaBootstrapServers() { + public Result getAllKafkaBootstrapServers() { KafkaBootstrapServerConfig config = gatewayConfigService.getKafkaBootstrapServersConfig(Long.MIN_VALUE); if (ValidateUtils.isNull(config) || ValidateUtils.isNull(config.getClusterIdBootstrapServersMap())) { - return DeprecatedResponseResult.failure("call init kafka bootstrap servers failed"); + return Result.buildFailure("call init kafka bootstrap servers failed"); } - if (config.getClusterIdBootstrapServersMap().isEmpty()) { - return DeprecatedResponseResult.success(); - } - return DeprecatedResponseResult.success(JSON.toJSONString(config.getClusterIdBootstrapServersMap())); + return Result.buildSuc(JSON.toJSONString(config.getClusterIdBootstrapServersMap())); } @ApiLevel(level = ApiLevelContent.LEVEL_IMPORTANT_2) @ApiOperation(value = "获取集群服务地址", notes = "") @RequestMapping(value = "discovery/update", method = RequestMethod.GET) @ResponseBody - public DeprecatedResponseResult getBootstrapServersIfNeeded(@RequestParam("versionNumber") long versionNumber) { + public Result getBootstrapServersIfNeeded(@RequestParam("versionNumber") long versionNumber) { KafkaBootstrapServerConfig config = gatewayConfigService.getKafkaBootstrapServersConfig(versionNumber); if (ValidateUtils.isNull(config) || ValidateUtils.isNull(config.getClusterIdBootstrapServersMap())) { - return DeprecatedResponseResult.failure("call update kafka bootstrap servers failed"); + return Result.buildFailure("call update kafka bootstrap servers failed"); } - if (config.getClusterIdBootstrapServersMap().isEmpty()) { - return DeprecatedResponseResult.success(); - } - return DeprecatedResponseResult.success(JSON.toJSONString(new GatewayConfigVO( + return Result.buildSuc(JSON.toJSONString(new GatewayConfigVO( String.valueOf(config.getVersion()), JSON.toJSONString(config.getClusterIdBootstrapServersMap()) ))); @@ -90,15 +84,13 @@ public class GatewayServiceDiscoveryController { @ApiOperation(value = "最大并发请求数", notes = "") @RequestMapping(value = "discovery/max-request-num", method = RequestMethod.GET) @ResponseBody - public DeprecatedResponseResult getMaxRequestNum(@RequestParam("versionNumber") long versionNumber) { + public Result getMaxRequestNum(@RequestParam("versionNumber") long versionNumber) { RequestQueueConfig config = gatewayConfigService.getRequestQueueConfig(versionNumber); if (ValidateUtils.isNull(config)) { - return DeprecatedResponseResult.failure("call get request queue size config failed"); + return Result.buildFailure("call get request queue size config failed"); } - if (ValidateUtils.isNull(config.getMaxRequestQueueSize())) { - return DeprecatedResponseResult.success(); - } - return DeprecatedResponseResult.success(JSON.toJSONString( + + return Result.buildSuc(JSON.toJSONString( new GatewayConfigVO( String.valueOf(config.getVersion()), String.valueOf(config.getMaxRequestQueueSize()) @@ -110,15 +102,13 @@ public class GatewayServiceDiscoveryController { @ApiOperation(value = "最大APP请求速率", notes = "") @RequestMapping(value = "discovery/appId-rate", method = RequestMethod.GET) @ResponseBody - public DeprecatedResponseResult getAppIdRate(@RequestParam("versionNumber") long versionNumber) { + public Result getAppIdRate(@RequestParam("versionNumber") long versionNumber) { AppRateConfig config = gatewayConfigService.getAppRateConfig(versionNumber); if (ValidateUtils.isNull(config)) { - return DeprecatedResponseResult.failure("call get app rate config failed"); + return Result.buildFailure("call get app rate config failed"); } - if (ValidateUtils.isNull(config.getAppRateLimit())) { - return DeprecatedResponseResult.success(); - } - return DeprecatedResponseResult.success(JSON.toJSONString( + + return Result.buildSuc(JSON.toJSONString( new GatewayConfigVO( String.valueOf(config.getVersion()), String.valueOf(config.getAppRateLimit()) @@ -130,15 +120,12 @@ public class GatewayServiceDiscoveryController { @ApiOperation(value = "最大IP请求速率", notes = "") @RequestMapping(value = "discovery/ip-rate", method = RequestMethod.GET) @ResponseBody - public DeprecatedResponseResult getIpRate(@RequestParam("versionNumber") long versionNumber) { + public Result getIpRate(@RequestParam("versionNumber") long versionNumber) { IpRateConfig config = gatewayConfigService.getIpRateConfig(versionNumber); if (ValidateUtils.isNull(config)) { - return DeprecatedResponseResult.failure("call get ip rate config failed"); + return Result.buildFailure("call get ip rate config failed"); } - if (ValidateUtils.isNull(config.getIpRateLimit())) { - return DeprecatedResponseResult.success(); - } - return DeprecatedResponseResult.success(JSON.toJSONString( + return Result.buildSuc(JSON.toJSONString( new GatewayConfigVO( String.valueOf(config.getVersion()), String.valueOf(config.getIpRateLimit()) @@ -150,15 +137,11 @@ public class GatewayServiceDiscoveryController { @ApiOperation(value = "最大SP请求速率", notes = "") @RequestMapping(value = "discovery/sp-limit", method = RequestMethod.GET) @ResponseBody - public DeprecatedResponseResult getSpLimit(@RequestParam("versionNumber") long versionNumber) { + public Result getSpLimit(@RequestParam("versionNumber") long versionNumber) { SpRateConfig config = gatewayConfigService.getSpRateConfig(versionNumber); if (ValidateUtils.isNull(config) || ValidateUtils.isNull(config.getSpRateMap())) { - return DeprecatedResponseResult.failure("call update kafka bootstrap servers failed"); - } - - if (config.getSpRateMap().isEmpty()) { - return DeprecatedResponseResult.success(); + return Result.buildFailure("call update kafka bootstrap servers failed"); } List strList = new ArrayList<>(); @@ -166,7 +149,7 @@ public class GatewayServiceDiscoveryController { strList.add(entry.getKey() + "#" + String.valueOf(entry.getValue())); } - return DeprecatedResponseResult.success(JSON.toJSONString(new GatewayConfigVO( + return Result.buildSuc(JSON.toJSONString(new GatewayConfigVO( String.valueOf(config.getVersion()), ListUtils.strList2String(strList) ))); diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartAppController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartAppController.java new file mode 100644 index 00000000..c9969438 --- /dev/null +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartAppController.java @@ -0,0 +1,49 @@ +package com.xiaojukeji.kafka.manager.web.api.versionone.thirdpart; + +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; +import com.xiaojukeji.kafka.manager.common.constant.SystemCodeConstant; +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; +import com.xiaojukeji.kafka.manager.common.entity.vo.normal.app.AppVO; +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; +import com.xiaojukeji.kafka.manager.service.service.gateway.AppService; +import com.xiaojukeji.kafka.manager.web.converters.AppConverter; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @author zengqiao + * @date 20/9/23 + */ +@Api(tags = "开放接口-App相关接口(REST)") +@RestController +@RequestMapping(ApiPrefix.API_V1_THIRD_PART_PREFIX) +public class ThirdPartAppController { + private final static Logger LOGGER = LoggerFactory.getLogger(ThirdPartAppController.class); + + @Autowired + private AppService appService; + + @ApiOperation(value = "查询负责的应用", notes = "") + @RequestMapping(value = "principal-apps/{principal}/basic-info", method = RequestMethod.GET) + @ResponseBody + public Result> searchPrincipalApps(@PathVariable("principal") String principal, + @RequestParam("system-code") String systemCode) { + LOGGER.info("search principal-apps, principal:{} systemCode:{}.", principal, systemCode); + if (ValidateUtils.isBlank(principal) || ValidateUtils.isBlank(systemCode)) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + if (!SystemCodeConstant.KAFKA_MANAGER.equals(systemCode)) { + return Result.buildFrom(ResultStatus.OPERATION_FORBIDDEN); + } + return new Result<>(AppConverter.convert2AppVOList( + appService.getByPrincipal(principal) + )); + } +} \ No newline at end of file diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartBrokerController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartBrokerController.java new file mode 100644 index 00000000..e324be01 --- /dev/null +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartBrokerController.java @@ -0,0 +1,109 @@ +package com.xiaojukeji.kafka.manager.web.api.versionone.thirdpart; + +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; +import com.xiaojukeji.kafka.manager.common.constant.KafkaMetricsCollections; +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; +import com.xiaojukeji.kafka.manager.common.entity.metrics.BrokerMetrics; +import com.xiaojukeji.kafka.manager.common.entity.pojo.ClusterDO; +import com.xiaojukeji.kafka.manager.common.entity.pojo.RegionDO; +import com.xiaojukeji.kafka.manager.openapi.common.vo.ThirdPartBrokerOverviewVO; +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; +import com.xiaojukeji.kafka.manager.common.zookeeper.znode.brokers.BrokerMetadata; +import com.xiaojukeji.kafka.manager.openapi.common.vo.BrokerRegionVO; +import com.xiaojukeji.kafka.manager.service.cache.PhysicalClusterMetadataManager; +import com.xiaojukeji.kafka.manager.service.service.BrokerService; +import com.xiaojukeji.kafka.manager.service.service.ClusterService; +import com.xiaojukeji.kafka.manager.service.service.RegionService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + + +/** + * @author zengqiao + * @date 20/9/9 + */ +@Api(tags = "开放接口-Broker相关接口(REST)") +@RestController +@RequestMapping(ApiPrefix.API_V1_THIRD_PART_PREFIX) +public class ThirdPartBrokerController { + @Autowired + private BrokerService brokerService; + + @Autowired + private RegionService regionService; + + @Autowired + private ClusterService clusterService; + + @ApiOperation(value = "Broker信息概览", notes = "") + @RequestMapping(value = "{clusterId}/brokers/{brokerId}/overview", method = RequestMethod.GET) + @ResponseBody + public Result getBrokerOverview(@PathVariable Long clusterId, + @PathVariable Integer brokerId) { + BrokerMetadata brokerMetadata = PhysicalClusterMetadataManager.getBrokerMetadata(clusterId, brokerId); + if (ValidateUtils.isNull(brokerMetadata)) { + return Result.buildFrom(ResultStatus.BROKER_NOT_EXIST); + } + + BrokerMetrics brokerMetrics = brokerService.getBrokerMetricsFromJmx( + clusterId, + brokerId, + KafkaMetricsCollections.BROKER_STATUS_PAGE_METRICS + ); + if (ValidateUtils.isNull(brokerMetrics)) { + return Result.buildFrom(ResultStatus.OPERATION_FAILED); + } + Integer underReplicated = brokerMetrics.getSpecifiedMetrics("UnderReplicatedPartitionsValue", Integer.class); + if (ValidateUtils.isNull(underReplicated)) { + return Result.buildFrom(ResultStatus.OPERATION_FAILED); + } + + return new Result<>(new ThirdPartBrokerOverviewVO(clusterId, brokerId, underReplicated.equals(0))); + } + + @ApiOperation(value = "BrokerRegion信息", notes = "所有集群的") + @RequestMapping(value = "broker-regions", method = RequestMethod.GET) + @ResponseBody + public Result> getBrokerRegions() { + List clusterDOList = clusterService.list(); + if (ValidateUtils.isNull(clusterDOList)) { + clusterDOList = new ArrayList<>(); + } + + List regionDOList = regionService.listAll(); + if (ValidateUtils.isNull(regionDOList)) { + regionDOList = new ArrayList<>(); + } + + List voList = new ArrayList<>(); + for (ClusterDO clusterDO: clusterDOList) { + Map brokerIdRegionMap = regionService.convert2BrokerIdRegionMap( + regionDOList.stream().filter(elem -> clusterDO.getId().equals(elem.getClusterId())).collect(Collectors.toList()) + ); + for (Integer brokerId: PhysicalClusterMetadataManager.getBrokerIdList(clusterDO.getId())) { + BrokerRegionVO vo = new BrokerRegionVO(); + vo.setClusterId(clusterDO.getId()); + vo.setBrokerId(brokerId); + + BrokerMetadata metadata = PhysicalClusterMetadataManager.getBrokerMetadata(clusterDO.getId(), brokerId); + if (!ValidateUtils.isNull(metadata)) { + vo.setHostname(metadata.getHost()); + } + RegionDO regionDO = brokerIdRegionMap.get(brokerId); + if (!ValidateUtils.isNull(regionDO)) { + vo.setRegionName(regionDO.getName()); + } + voList.add(vo); + } + } + return new Result<>(voList); + } +} \ No newline at end of file diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartConsumeController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartConsumeController.java new file mode 100644 index 00000000..e14ed81d --- /dev/null +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartConsumeController.java @@ -0,0 +1,171 @@ +package com.xiaojukeji.kafka.manager.web.api.versionone.thirdpart; + +import com.xiaojukeji.kafka.manager.common.bizenum.ConsumeHealthEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.OffsetLocationEnum; +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; +import com.xiaojukeji.kafka.manager.common.constant.Constant; +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; +import com.xiaojukeji.kafka.manager.common.entity.ao.consumer.ConsumeDetailDTO; +import com.xiaojukeji.kafka.manager.common.entity.ao.consumer.ConsumerGroupDTO; +import com.xiaojukeji.kafka.manager.openapi.common.dto.ConsumeHealthDTO; +import com.xiaojukeji.kafka.manager.openapi.common.dto.OffsetResetDTO; +import com.xiaojukeji.kafka.manager.common.entity.pojo.ClusterDO; +import com.xiaojukeji.kafka.manager.common.entity.pojo.gateway.AuthorityDO; +import com.xiaojukeji.kafka.manager.common.entity.vo.normal.consumer.ConsumerGroupDetailVO; +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; +import com.xiaojukeji.kafka.manager.openapi.ThirdPartService; +import com.xiaojukeji.kafka.manager.openapi.common.vo.ConsumeHealthVO; +import com.xiaojukeji.kafka.manager.service.service.ClusterService; +import com.xiaojukeji.kafka.manager.service.service.ConsumerService; +import com.xiaojukeji.kafka.manager.service.service.gateway.AppService; +import com.xiaojukeji.kafka.manager.service.service.gateway.AuthorityService; +import com.xiaojukeji.kafka.manager.web.converters.ConsumerModelConverter; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author zengqiao + * @date 20/10/12 + */ +@Api(tags = "开放接口-Consumer相关接口(REST)") +@RestController +@RequestMapping(ApiPrefix.API_V1_THIRD_PART_PREFIX) +public class ThirdPartConsumeController { + private final static Logger LOGGER = LoggerFactory.getLogger(ThirdPartConsumeController.class); + + @Autowired + private AppService appService; + + @Autowired + private ClusterService clusterService; + + @Autowired + private ConsumerService consumerService; + + @Autowired + private AuthorityService authorityService; + + @Autowired + private ThirdPartService thirdPartService; + + @ApiOperation(value = "消费组健康", notes = "消费组是否健康") + @RequestMapping(value = "clusters/consumer-health", method = RequestMethod.POST) + @ResponseBody + public Result checkConsumeHealth(@RequestBody ConsumeHealthDTO dto) { + LOGGER.info(""); + if (ValidateUtils.isNull(dto) || !dto.paramLegal()) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + + Result subEnumResult = null; + for (String topicName: dto.getTopicNameList()) { + subEnumResult = thirdPartService.checkConsumeHealth( + dto.getClusterId(), + topicName, + dto.getConsumerGroup(), + dto.getMaxDelayTime() + ); + if (!Constant.SUCCESS.equals(subEnumResult.getCode())) { + return new Result<>(subEnumResult.getCode(), subEnumResult.getMessage()); + } + } + if (ValidateUtils.isNull(subEnumResult)) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + return new Result<>(new ConsumeHealthVO(subEnumResult.getData().getCode())); + } + + @ApiOperation(value = "重置消费组", notes = "") + @RequestMapping(value = "consumers/offsets", method = RequestMethod.PUT) + @ResponseBody + public Result> resetOffsets(@RequestBody OffsetResetDTO dto) { + LOGGER.info("rest offset, req:{}.", dto); + if (ValidateUtils.isNull(dto) || !dto.legal()) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + + ClusterDO clusterDO = clusterService.getById(dto.getClusterId()); + if (ValidateUtils.isNull(clusterDO)) { + return Result.buildFrom(ResultStatus.CLUSTER_NOT_EXIST); + } + + // 检查AppID权限 + if (!appService.verifyAppIdByPassword(dto.getAppId(), dto.getPassword())) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + // 检查权限 + AuthorityDO authority = + authorityService.getAuthority(dto.getClusterId(), dto.getTopicName(), dto.getAppId()); + if (ValidateUtils.isNull(authority) || (authority.getAccess() & 1) <= 0) { + authority = authorityService.getAuthority(dto.getClusterId(), "*", dto.getAppId()); + } + if (authority == null || (authority.getAccess() & 1) <= 0) { + return Result.buildFrom(ResultStatus.USER_WITHOUT_AUTHORITY); + } + + List resultList = thirdPartService.resetOffsets(clusterDO, dto); + if (ValidateUtils.isNull(resultList)) { + return Result.buildFrom(ResultStatus.OPERATION_FAILED); + } + for (Result result: resultList) { + if (!Constant.SUCCESS.equals(result.getCode())) { + return Result.buildFrom(ResultStatus.OPERATION_FAILED); + } + } + return new Result<>(resultList); + } + + @ApiOperation(value = "查询消费组的消费详情", notes = "") + @RequestMapping(value = "{physicalClusterId}/consumers/{consumerGroup}/topics/{topicName}/consume-details", + method = RequestMethod.GET) + @ResponseBody + public Result> getConsumeDetail(@PathVariable Long physicalClusterId, + @PathVariable String consumerGroup, + @PathVariable String topicName, + @RequestParam("location") String location) { + if (ValidateUtils.isNull(location)) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + + ClusterDO clusterDO = clusterService.getById(physicalClusterId); + if (ValidateUtils.isNull(clusterDO)) { + return Result.buildFrom(ResultStatus.CLUSTER_NOT_EXIST); + } + + location = location.toLowerCase(); + OffsetLocationEnum offsetStoreLocation = OffsetLocationEnum.getOffsetStoreLocation(location); + if (ValidateUtils.isNull(offsetStoreLocation)) { + return Result.buildFrom(ResultStatus.CG_LOCATION_ILLEGAL); + } + + ConsumerGroupDTO consumeGroupDTO = new ConsumerGroupDTO( + clusterDO.getId(), + consumerGroup, + new ArrayList<>(), + offsetStoreLocation + ); + try { + List consumeDetailDTOList = + consumerService.getConsumeDetail(clusterDO, topicName, consumeGroupDTO); + return new Result<>( + ConsumerModelConverter.convert2ConsumerGroupDetailVO( + topicName, + consumerGroup, + location, + consumeDetailDTOList + ) + ); + } catch (Exception e) { + LOGGER.error("get consume detail failed, consumerGroup:{}.", consumeGroupDTO, e); + } + return Result.buildFrom(ResultStatus.OPERATION_FAILED); + } +} \ No newline at end of file diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartTopicController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartTopicController.java new file mode 100644 index 00000000..4d029fb6 --- /dev/null +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/thirdpart/ThirdPartTopicController.java @@ -0,0 +1,160 @@ +package com.xiaojukeji.kafka.manager.web.api.versionone.thirdpart; + +import com.xiaojukeji.kafka.manager.common.bizenum.TopicOffsetChangedEnum; +import com.xiaojukeji.kafka.manager.common.constant.Constant; +import com.xiaojukeji.kafka.manager.common.constant.KafkaMetricsCollections; +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; +import com.xiaojukeji.kafka.manager.common.entity.metrics.BaseMetrics; +import com.xiaojukeji.kafka.manager.common.entity.vo.common.RealTimeMetricsVO; +import com.xiaojukeji.kafka.manager.common.entity.vo.normal.cluster.TopicMetadataVO; +import com.xiaojukeji.kafka.manager.common.entity.vo.normal.consumer.ConsumerGroupVO; +import com.xiaojukeji.kafka.manager.common.entity.vo.normal.topic.TopicAuthorizedAppVO; +import com.xiaojukeji.kafka.manager.common.entity.vo.normal.topic.TopicRequestTimeDetailVO; +import com.xiaojukeji.kafka.manager.common.zookeeper.znode.brokers.TopicMetadata; +import com.xiaojukeji.kafka.manager.openapi.common.vo.TopicOffsetChangedVO; +import com.xiaojukeji.kafka.manager.openapi.common.vo.TopicStatisticMetricsVO; +import com.xiaojukeji.kafka.manager.common.utils.DateUtils; +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; +import com.xiaojukeji.kafka.manager.common.entity.pojo.ClusterDO; +import com.xiaojukeji.kafka.manager.service.cache.PhysicalClusterMetadataManager; +import com.xiaojukeji.kafka.manager.service.service.*; +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; +import com.xiaojukeji.kafka.manager.web.converters.CommonModelConverter; +import com.xiaojukeji.kafka.manager.web.converters.ConsumerModelConverter; +import com.xiaojukeji.kafka.manager.web.converters.TopicModelConverter; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.Date; +import java.util.List; + +/** + * @author zengqiao + * @date 20/7/24 + */ +@Api(tags = "开放接口-Topic相关接口(REST)") +@RestController +@RequestMapping(ApiPrefix.API_V1_THIRD_PART_PREFIX) +public class ThirdPartTopicController { + private final static Logger LOGGER = LoggerFactory.getLogger(ThirdPartTopicController.class); + + @Autowired + private TopicService topicService; + + @Autowired + private ClusterService clusterService; + + @Autowired + private ConsumerService consumerService; + + @Autowired + private TopicManagerService topicManagerService; + + @ApiOperation(value = "Topic元信息", notes = "LogX调用") + @RequestMapping(value = "clusters/{clusterId}/topics/{topicName}/metadata", method = RequestMethod.GET) + @ResponseBody + public Result getTopicMetadata(@PathVariable Long clusterId, @PathVariable String topicName) { + TopicMetadata topicMetadata = PhysicalClusterMetadataManager.getTopicMetadata(clusterId, topicName); + if (ValidateUtils.isNull(topicMetadata)) { + return Result.buildFrom(ResultStatus.TOPIC_NOT_EXIST); + } + TopicMetadataVO vo = new TopicMetadataVO(); + vo.setTopicName(topicMetadata.getTopic()); + vo.setPartitionNum(topicMetadata.getPartitionNum()); + return new Result<>(vo); + } + + @ApiOperation(value = "Topic流量统计信息", notes = "") + @RequestMapping(value = "{physicalClusterId}/topics/{topicName}/statistic-metrics", method = RequestMethod.GET) + @ResponseBody + public Result getTopicStatisticMetrics(@PathVariable Long physicalClusterId, + @PathVariable String topicName, + @RequestParam("latest-day") Integer latestDay) { + try { + return new Result<>(new TopicStatisticMetricsVO(topicManagerService.getTopicMaxAvgBytesIn( + physicalClusterId, + topicName, + new Date(DateUtils.getDayStarTime(-1 * latestDay)), + new Date(), + 1 + ))); + } catch (Exception e) { + LOGGER.error("get topic statistic metrics failed, clusterId:{} topicName:{} latestDay:{}." + , physicalClusterId, topicName, latestDay, e); + } + return Result.buildFrom(ResultStatus.MYSQL_ERROR); + } + + @ApiOperation(value = "Topic是否有流量", notes = "") + @RequestMapping(value = "{physicalClusterId}/topics/{topicName}/offset-changed", method = RequestMethod.GET) + @ResponseBody + public Result checkTopicExpired(@PathVariable Long physicalClusterId, + @PathVariable String topicName, + @RequestParam("latest-time") Long latestTime) { + Result enumResult = + topicService.checkTopicOffsetChanged(physicalClusterId, topicName, latestTime); + if (!Constant.SUCCESS.equals(enumResult.getCode())) { + return new Result<>(enumResult.getCode(), enumResult.getMessage()); + } + return new Result<>(new TopicOffsetChangedVO(enumResult.getData().getCode())); + } + + @ApiOperation(value = "Topic实时流量信息", notes = "") + @RequestMapping(value = "{physicalClusterId}/topics/{topicName}/metrics", method = RequestMethod.GET) + @ResponseBody + public Result getTopicMetrics(@PathVariable Long physicalClusterId, + @PathVariable String topicName) { + return new Result<>(CommonModelConverter.convert2RealTimeMetricsVO( + topicService.getTopicMetricsFromJMX( + physicalClusterId, + topicName, + KafkaMetricsCollections.COMMON_DETAIL_METRICS, + true + ) + )); + } + + @ApiOperation(value = "Topic实时请求耗时信息", notes = "") + @RequestMapping(value = "{physicalClusterId}/topics/{topicName}/request-time", method = RequestMethod.GET) + @ResponseBody + public Result> getTopicRequestMetrics(@PathVariable Long physicalClusterId, + @PathVariable String topicName) { + BaseMetrics metrics = topicService.getTopicMetricsFromJMX( + physicalClusterId, + topicName, + KafkaMetricsCollections.TOPIC_REQUEST_TIME_DETAIL_PAGE_METRICS, + false + ); + return new Result<>(TopicModelConverter.convert2TopicRequestTimeDetailVOList(metrics)); + } + + @ApiOperation(value = "查询Topic的消费组列表", notes = "") + @RequestMapping(value = "{physicalClusterId}/topics/{topicName}/consumer-groups", method = RequestMethod.GET) + @ResponseBody + public Result> getConsumeDetail(@PathVariable Long physicalClusterId, + @PathVariable String topicName) { + ClusterDO clusterDO = clusterService.getById(physicalClusterId); + if (ValidateUtils.isNull(clusterDO)) { + return Result.buildFrom(ResultStatus.CLUSTER_NOT_EXIST); + } + + return new Result<>(ConsumerModelConverter.convert2ConsumerGroupVOList( + consumerService.getConsumerGroupList(physicalClusterId, topicName) + )); + } + + @ApiOperation(value = "Topic应用信息", notes = "") + @RequestMapping(value = "{physicalClusterId}/topics/{topicName}/apps", method = RequestMethod.GET) + @ResponseBody + public Result> getTopicAppIds(@PathVariable Long physicalClusterId, + @PathVariable String topicName) { + return new Result<>(TopicModelConverter.convert2TopicAuthorizedAppVOList( + topicManagerService.getTopicAuthorizedApps(physicalClusterId, topicName)) + ); + } +} \ No newline at end of file diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/config/WebMvcConfig.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/config/WebMvcConfig.java index f8aa607a..9f2aedf6 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/config/WebMvcConfig.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/config/WebMvcConfig.java @@ -1,5 +1,6 @@ package com.xiaojukeji.kafka.manager.web.config; +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import com.xiaojukeji.kafka.manager.web.inteceptor.PermissionInterceptor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringBootConfiguration; @@ -31,7 +32,7 @@ public class WebMvcConfig implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { - registry.addInterceptor(permissionInterceptor).addPathPatterns("/api/v1/**"); + registry.addInterceptor(permissionInterceptor).addPathPatterns(ApiPrefix.API_PREFIX + "**"); } @Override diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/inteceptor/WebMetricsInterceptor.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/inteceptor/WebMetricsInterceptor.java index 0cf83b66..bf8bc1e1 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/inteceptor/WebMetricsInterceptor.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/inteceptor/WebMetricsInterceptor.java @@ -3,7 +3,7 @@ package com.xiaojukeji.kafka.manager.web.inteceptor; import com.codahale.metrics.Timer; import com.xiaojukeji.kafka.manager.common.annotations.ApiLevel; import com.xiaojukeji.kafka.manager.common.constant.ApiLevelContent; -import com.xiaojukeji.kafka.manager.common.entity.DeprecatedResponseResult; +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.ao.api.ApiCount; @@ -118,8 +118,8 @@ public class WebMetricsInterceptor { ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); String uri = attributes.getRequest().getRequestURI(); - if (uri.contains("gateway/api/v1")) { - return DeprecatedResponseResult.failure("api limited"); + if (uri.contains(ApiPrefix.GATEWAY_API_V1_PREFIX)) { + return Result.buildFailure("api limited"); } return new Result<>(ResultStatus.OPERATION_FORBIDDEN); } diff --git a/kafka-manager-web/src/main/resources/application.yml b/kafka-manager-web/src/main/resources/application.yml index 58038837..dbfe215a 100644 --- a/kafka-manager-web/src/main/resources/application.yml +++ b/kafka-manager-web/src/main/resources/application.yml @@ -30,8 +30,13 @@ logging: custom: idc: cn + jmx: + max-conn: 10 -agent: +account: + ldap: + +kcm: n9e: base-url: http://127.0.0.1/api username: admin @@ -42,11 +47,13 @@ agent: monitor: n9e: base-url: http://127.0.0.1/api + username: admin + user-token: admin + nid: 10 notify: + kafka: + cluster-id: 95 + topic-name: didi-kafka-notify order: detail-url: http://127.0.0.1 - -kafka: - cluster-id: 12 - topic-name: 123 \ No newline at end of file From 108d705f097a3f68208018fa8aaf3ab019976ff9 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Mon, 26 Oct 2020 11:20:34 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A0=E6=95=88?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kafka-manager-console/package-lock.json | 9699 ----------------- .../account/common/entry/N9eResult.java | 35 - .../account/common/entry/N9eUserData.java | 134 - 3 files changed, 9868 deletions(-) delete mode 100644 kafka-manager-console/package-lock.json delete mode 100644 kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eResult.java delete mode 100644 kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eUserData.java diff --git a/kafka-manager-console/package-lock.json b/kafka-manager-console/package-lock.json deleted file mode 100644 index 903081c3..00000000 --- a/kafka-manager-console/package-lock.json +++ /dev/null @@ -1,9699 +0,0 @@ -{ - "name": "mobx-ts-example", - "version": "1.0.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@ant-design/colors": { - "version": "3.2.2", - "resolved": "https://registry.npm.taobao.org/@ant-design/colors/download/@ant-design/colors-3.2.2.tgz?cache=0&sync_timestamp=1582896948217&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40ant-design%2Fcolors%2Fdownload%2F%40ant-design%2Fcolors-3.2.2.tgz", - "integrity": "sha1-WtQ9YZ6RHzSI66wwPWBuZqhCOQM=", - "dev": true, - "requires": { - "tinycolor2": "^1.4.1" - } - }, - "@ant-design/create-react-context": { - "version": "0.2.5", - "resolved": "https://registry.npm.taobao.org/@ant-design/create-react-context/download/@ant-design/create-react-context-0.2.5.tgz", - "integrity": "sha1-9fWpFjtHcgl3EoNzl60w4i55+Fg=", - "dev": true, - "requires": { - "gud": "^1.0.0", - "warning": "^4.0.3" - } - }, - "@ant-design/icons": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/@ant-design/icons/download/@ant-design/icons-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40ant-design%2Ficons%2Fdownload%2F%40ant-design%2Ficons-2.1.1.tgz", - "integrity": "sha1-e5wI3/1PXUHbZn2dvl4BB9C9mko=", - "dev": true - }, - "@ant-design/icons-react": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/@ant-design/icons-react/download/@ant-design/icons-react-2.0.1.tgz", - "integrity": "sha1-F6JRNXGrMXrKKSfljOol3THlNvs=", - "dev": true, - "requires": { - "@ant-design/colors": "^3.1.0", - "babel-runtime": "^6.26.0" - } - }, - "@babel/code-frame": { - "version": "7.0.0", - "resolved": "http://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.0.0.tgz", - "integrity": "sha1-BuKrGb21NThVWaq7W6WXKUgoAPg=", - "dev": true, - "requires": { - "@babel/highlight": "^7.0.0" - } - }, - "@babel/highlight": { - "version": "7.0.0", - "resolved": "http://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.0.0.tgz", - "integrity": "sha1-9xDDjI1Fjm3ZogGvtjf8t4HOmeQ=", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/runtime": { - "version": "7.4.3", - "resolved": "http://registry.npm.taobao.org/@babel/runtime/download/@babel/runtime-7.4.3.tgz", - "integrity": "sha1-eYiORSA0IjrZYJGHoK0f4NKtS9w=", - "dev": true, - "requires": { - "regenerator-runtime": "^0.13.2" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.13.2", - "resolved": "http://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.2.tgz", - "integrity": "sha1-MuWcmm+5saSv8JtJMMotRHc0NEc=", - "dev": true - } - } - }, - "@hot-loader/react-dom": { - "version": "16.8.6", - "resolved": "http://registry.npm.taobao.org/@hot-loader/react-dom/download/@hot-loader/react-dom-16.8.6.tgz", - "integrity": "sha1-eSO6J9sVY6fMSNTgsoeaFA30Yeo=", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.13.6" - } - }, - "@types/anymatch": { - "version": "1.3.1", - "resolved": "https://registry.npm.taobao.org/@types/anymatch/download/@types/anymatch-1.3.1.tgz?cache=0&sync_timestamp=1580841236934&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fanymatch%2Fdownload%2F%40types%2Fanymatch-1.3.1.tgz", - "integrity": "sha1-M2utwb7sudrMOL6izzKt9ieoQho=", - "dev": true - }, - "@types/clipboard": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/@types/clipboard/download/@types/clipboard-2.0.1.tgz", - "integrity": "sha1-dadAhsKT11sSvJP/E7x3l/7wWkA=", - "dev": true - }, - "@types/echarts": { - "version": "4.6.2", - "resolved": "https://registry.npm.taobao.org/@types/echarts/download/@types/echarts-4.6.2.tgz", - "integrity": "sha1-9muHNuKlVPQy1Y7ANhv5ydkIzPw=", - "dev": true, - "requires": { - "@types/zrender": "*" - } - }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/@types/events/download/@types/events-3.0.0.tgz?cache=0&sync_timestamp=1580841806837&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fevents%2Fdownload%2F%40types%2Fevents-3.0.0.tgz", - "integrity": "sha1-KGLz9Yqaf3w+eNefEw3U1xwlwqc=", - "dev": true - }, - "@types/glob": { - "version": "7.1.1", - "resolved": "https://registry.npm.taobao.org/@types/glob/download/@types/glob-7.1.1.tgz", - "integrity": "sha1-qlmhxuP7xCHgfM0xqUTDDrpSFXU=", - "dev": true, - "requires": { - "@types/events": "*", - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/history": { - "version": "4.7.2", - "resolved": "http://registry.npm.taobao.org/@types/history/download/@types/history-4.7.2.tgz", - "integrity": "sha1-DmcOolTVWSQbbus4lPh1SZHnMiA=", - "dev": true - }, - "@types/json5": { - "version": "0.0.29", - "resolved": "http://registry.npm.taobao.org/@types/json5/download/@types/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true - }, - "@types/lodash": { - "version": "4.14.149", - "resolved": "https://registry.npm.taobao.org/@types/lodash/download/@types/lodash-4.14.149.tgz", - "integrity": "sha1-E0LWPZSMYGKDj7+WEBL3TU5jhEA=", - "dev": true - }, - "@types/lodash.debounce": { - "version": "4.0.6", - "resolved": "https://registry.npm.taobao.org/@types/lodash.debounce/download/@types/lodash.debounce-4.0.6.tgz", - "integrity": "sha1-xaIybNPvxGVmxH5MCqJI3A7lfWA=", - "dev": true, - "requires": { - "@types/lodash": "*" - } - }, - "@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", - "integrity": "sha1-PcoOPzOyAPx9ETnAzZbBJoyt/Z0=", - "dev": true - }, - "@types/node": { - "version": "13.13.2", - "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-13.13.2.tgz", - "integrity": "sha1-Fg2CYjYQ21kKZOjKgXhOERF+WlQ=", - "dev": true - }, - "@types/prop-types": { - "version": "15.7.1", - "resolved": "http://registry.npm.taobao.org/@types/prop-types/download/@types/prop-types-15.7.1.tgz", - "integrity": "sha1-8aEee6uww8rWgQC+OB0eBkxo8fY=", - "dev": true - }, - "@types/q": { - "version": "1.5.2", - "resolved": "http://registry.npm.taobao.org/@types/q/download/@types/q-1.5.2.tgz", - "integrity": "sha1-aQoUdbhPKohP0HzXl8APXzE1bqg=", - "dev": true - }, - "@types/react": { - "version": "16.8.13", - "resolved": "http://registry.npm.taobao.org/@types/react/download/@types/react-16.8.13.tgz", - "integrity": "sha1-qCsVqtmrkcQO3KDWiJt3Ra4k8FM=", - "dev": true, - "requires": { - "@types/prop-types": "*", - "csstype": "^2.2.0" - } - }, - "@types/react-dom": { - "version": "16.8.4", - "resolved": "http://registry.npm.taobao.org/@types/react-dom/download/@types/react-dom-16.8.4.tgz", - "integrity": "sha1-f7e6NohXx6oPTkURxHEMosWhKog=", - "dev": true, - "requires": { - "@types/react": "*" - } - }, - "@types/react-router": { - "version": "4.4.5", - "resolved": "http://registry.npm.taobao.org/@types/react-router/download/@types/react-router-4.4.5.tgz", - "integrity": "sha1-EWaZfcfu8pF7XrzokOvssy7lwbM=", - "dev": true, - "requires": { - "@types/history": "*", - "@types/react": "*" - } - }, - "@types/react-router-dom": { - "version": "4.3.2", - "resolved": "http://registry.npm.taobao.org/@types/react-router-dom/download/@types/react-router-dom-4.3.2.tgz", - "integrity": "sha1-UsF8NoJZdjjzHBfEJiBAPcXCo/U=", - "dev": true, - "requires": { - "@types/history": "*", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "@types/react-slick": { - "version": "0.23.4", - "resolved": "https://registry.npm.taobao.org/@types/react-slick/download/@types/react-slick-0.23.4.tgz?cache=0&sync_timestamp=1580865947659&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Freact-slick%2Fdownload%2F%40types%2Freact-slick-0.23.4.tgz", - "integrity": "sha1-yX4qnn49GTPGhZO46CdS+rHozlM=", - "dev": true, - "requires": { - "@types/react": "*" - } - }, - "@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npm.taobao.org/@types/source-list-map/download/@types/source-list-map-0.1.2.tgz", - "integrity": "sha1-AHiDYGP/rxdBI0m7o2QIfgrALsk=", - "dev": true - }, - "@types/spark-md5": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/@types/spark-md5/download/@types/spark-md5-3.0.2.tgz", - "integrity": "sha1-2i6Kd4ogM1/E9AtkccSw2Gtw2lU=", - "dev": true - }, - "@types/tapable": { - "version": "1.0.5", - "resolved": "https://registry.npm.taobao.org/@types/tapable/download/@types/tapable-1.0.5.tgz?cache=0&sync_timestamp=1580844951142&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Ftapable%2Fdownload%2F%40types%2Ftapable-1.0.5.tgz", - "integrity": "sha1-mtvBKVBYKqZerXa//fOf4MJ6PAI=", - "dev": true - }, - "@types/uglify-js": { - "version": "3.9.0", - "resolved": "https://registry.npm.taobao.org/@types/uglify-js/download/@types/uglify-js-3.9.0.tgz", - "integrity": "sha1-RJChQMqCqoVa1oCTgp5/1q6U6oc=", - "dev": true, - "requires": { - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "@types/webpack": { - "version": "4.41.12", - "resolved": "https://registry.npm.taobao.org/@types/webpack/download/@types/webpack-4.41.12.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fwebpack%2Fdownload%2F%40types%2Fwebpack-4.41.12.tgz", - "integrity": "sha1-A4buKigUNo4vI5ersDbAvxc/9sM=", - "dev": true, - "requires": { - "@types/anymatch": "*", - "@types/node": "*", - "@types/tapable": "*", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "@types/webpack-sources": { - "version": "0.1.7", - "resolved": "https://registry.npm.taobao.org/@types/webpack-sources/download/@types/webpack-sources-0.1.7.tgz?cache=0&sync_timestamp=1584978716401&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fwebpack-sources%2Fdownload%2F%40types%2Fwebpack-sources-0.1.7.tgz", - "integrity": "sha1-CjMKlFYRNBDHSl1kGArwy8oAcUE=", - "dev": true, - "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "@types/zrender": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/@types/zrender/download/@types/zrender-4.0.0.tgz", - "integrity": "sha1-poBvEuxOzKrr2bDYFvBJrKYYj70=", - "dev": true - }, - "@webassemblyjs/ast": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/ast/download/@webassemblyjs/ast-1.8.5.tgz", - "integrity": "sha1-UbHF/mV2o0lTv0slPfnw1JDZ41k=", - "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/floating-point-hex-parser/download/@webassemblyjs/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha1-G6kmopI2E+3OSW/VsC6M6KX0lyE=", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-api-error/download/@webassemblyjs/helper-api-error-1.8.5.tgz", - "integrity": "sha1-xJ2tIvZFInxe22EL25aX8aq3Ifc=", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-buffer/download/@webassemblyjs/helper-buffer-1.8.5.tgz", - "integrity": "sha1-/qk+Qphj3V5DOFVfQikjhaZT8gQ=", - "dev": true - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-code-frame/download/@webassemblyjs/helper-code-frame-1.8.5.tgz", - "integrity": "sha1-mnQP9I4/qjAisd/1RCPfmqKTwl4=", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/helper-fsm": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-fsm/download/@webassemblyjs/helper-fsm-1.8.5.tgz", - "integrity": "sha1-ugt9Oz9+RzPaYFnJMyJ12GBwJFI=", - "dev": true - }, - "@webassemblyjs/helper-module-context": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-module-context/download/@webassemblyjs/helper-module-context-1.8.5.tgz", - "integrity": "sha1-3vS5knsBAdyMu9jR7bW3ucguskU=", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-wasm-bytecode/download/@webassemblyjs/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha1-U3p1Dt31weky83RCBlUckcG5PmE=", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/helper-wasm-section/download/@webassemblyjs/helper-wasm-section-1.8.5.tgz", - "integrity": "sha1-dMpqa8vhnlCjtrRihH5pUD5r/L8=", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/ieee754/download/@webassemblyjs/ieee754-1.8.5.tgz", - "integrity": "sha1-cSMp2+8kDza/V70ve4+5v0FUQh4=", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/leb128/download/@webassemblyjs/leb128-1.8.5.tgz", - "integrity": "sha1-BE7es06mefPgTNT9mCTV41dnrhA=", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/utf8/download/@webassemblyjs/utf8-1.8.5.tgz", - "integrity": "sha1-qL87XY/+mGx8Hjc8y9wqCRXwztw=", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wasm-edit/download/@webassemblyjs/wasm-edit-1.8.5.tgz", - "integrity": "sha1-li2hKqWswcExyBxCMpkcgs5W4Bo=", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/helper-wasm-section": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-opt": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wasm-gen/download/@webassemblyjs/wasm-gen-1.8.5.tgz", - "integrity": "sha1-VIQHZsLBAC62TtGr5yCt7XFPmLw=", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wasm-opt/download/@webassemblyjs/wasm-opt-1.8.5.tgz", - "integrity": "sha1-sk2fa6UDlK8TSfUQr6j/y4pj0mQ=", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wasm-parser/download/@webassemblyjs/wasm-parser-1.8.5.tgz", - "integrity": "sha1-IVdvDsiLkUJzV7hTY4NmjvfGa40=", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wast-parser/download/@webassemblyjs/wast-parser-1.8.5.tgz", - "integrity": "sha1-4Q7s1ULQ5705T2gnxJ899tTu+4w=", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/floating-point-hex-parser": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-code-frame": "1.8.5", - "@webassemblyjs/helper-fsm": "1.8.5", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.8.5", - "resolved": "http://registry.npm.taobao.org/@webassemblyjs/wast-printer/download/@webassemblyjs/wast-printer-1.8.5.tgz", - "integrity": "sha1-EUu8SB/RDKDiOzVg+oEnSLC65bw=", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", - "@xtuc/long": "4.2.2" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/@xtuc/ieee754/download/@xtuc/ieee754-1.2.0.tgz", - "integrity": "sha1-7vAUoxRa5Hehy8AM0eVSM23Ot5A=", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "http://registry.npm.taobao.org/@xtuc/long/download/@xtuc/long-4.2.2.tgz", - "integrity": "sha1-0pHGpOl5ibXGHZrPOWrk/hM6cY0=", - "dev": true - }, - "accepts": { - "version": "1.3.5", - "resolved": "http://registry.npm.taobao.org/accepts/download/accepts-1.3.5.tgz", - "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", - "dev": true, - "requires": { - "mime-types": "~2.1.18", - "negotiator": "0.6.1" - } - }, - "acorn": { - "version": "6.1.1", - "resolved": "http://registry.npm.taobao.org/acorn/download/acorn-6.1.1.tgz", - "integrity": "sha1-fSWuBbuK0fm2mRCOEJTs14hK3B8=", - "dev": true - }, - "acorn-dynamic-import": { - "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/acorn-dynamic-import/download/acorn-dynamic-import-4.0.0.tgz", - "integrity": "sha1-SCIQFAWCo2uDw+NC4c/ryqkkCUg=", - "dev": true - }, - "add-dom-event-listener": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/add-dom-event-listener/download/add-dom-event-listener-1.1.0.tgz", - "integrity": "sha1-apLbOg3Qq8JU4JXA8dwUrLuq4xA=", - "dev": true, - "requires": { - "object-assign": "4.x" - } - }, - "adler-32": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/adler-32/download/adler-32-1.2.0.tgz", - "integrity": "sha1-aj5r8KY5ALoVZSgIyxXGgT0aXyU=", - "dev": true, - "requires": { - "exit-on-epipe": "~1.0.1", - "printj": "~1.1.0" - } - }, - "ajv": { - "version": "6.10.0", - "resolved": "http://registry.npm.taobao.org/ajv/download/ajv-6.10.0.tgz", - "integrity": "sha1-kNDVRDnaWHzX6EO/twRfUL0ivfE=", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/ajv-errors/download/ajv-errors-1.0.1.tgz", - "integrity": "sha1-81mGrOuRr63sQQL72FAUlQzvpk0=", - "dev": true - }, - "ajv-keywords": { - "version": "3.4.0", - "resolved": "http://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-3.4.0.tgz", - "integrity": "sha1-S4Mee1MUFafMUYzUBOc/YZPGNJ0=", - "dev": true - }, - "alphanum-sort": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/alphanum-sort/download/alphanum-sort-1.0.2.tgz", - "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", - "dev": true - }, - "ansi-colors": { - "version": "3.2.4", - "resolved": "http://registry.npm.taobao.org/ansi-colors/download/ansi-colors-3.2.4.tgz", - "integrity": "sha1-46PaS/uubIapwoViXeEkojQCb78=", - "dev": true - }, - "ansi-html": { - "version": "0.0.7", - "resolved": "http://registry.npm.taobao.org/ansi-html/download/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/ansi-regex/download/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "http://registry.npm.taobao.org/ansi-styles/download/ansi-styles-3.2.1.tgz", - "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "antd": { - "version": "3.26.15", - "resolved": "https://registry.npm.taobao.org/antd/download/antd-3.26.15.tgz?cache=0&sync_timestamp=1587231303053&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fantd%2Fdownload%2Fantd-3.26.15.tgz", - "integrity": "sha1-xfTlYoUC+c37DDUccTINXA4kIb4=", - "dev": true, - "requires": { - "@ant-design/create-react-context": "^0.2.4", - "@ant-design/icons": "~2.1.1", - "@ant-design/icons-react": "~2.0.1", - "@types/react-slick": "^0.23.4", - "array-tree-filter": "^2.1.0", - "babel-runtime": "6.x", - "classnames": "~2.2.6", - "copy-to-clipboard": "^3.2.0", - "css-animation": "^1.5.0", - "dom-closest": "^0.2.0", - "enquire.js": "^2.1.6", - "is-mobile": "^2.1.0", - "lodash": "^4.17.13", - "moment": "^2.24.0", - "omit.js": "^1.0.2", - "prop-types": "^15.7.2", - "raf": "^3.4.1", - "rc-animate": "^2.10.2", - "rc-calendar": "~9.15.7", - "rc-cascader": "~0.17.4", - "rc-checkbox": "~2.1.6", - "rc-collapse": "~1.11.3", - "rc-dialog": "~7.6.0", - "rc-drawer": "~3.1.1", - "rc-dropdown": "~2.4.1", - "rc-editor-mention": "^1.1.13", - "rc-form": "^2.4.10", - "rc-input-number": "~4.5.0", - "rc-mentions": "~0.4.0", - "rc-menu": "~7.5.1", - "rc-notification": "~3.3.1", - "rc-pagination": "~1.20.11", - "rc-progress": "~2.5.0", - "rc-rate": "~2.5.0", - "rc-resize-observer": "^0.1.0", - "rc-select": "~9.2.0", - "rc-slider": "~8.7.1", - "rc-steps": "~3.5.0", - "rc-switch": "~1.9.0", - "rc-table": "~6.10.5", - "rc-tabs": "~9.7.0", - "rc-time-picker": "~3.7.1", - "rc-tooltip": "~3.7.3", - "rc-tree": "~2.1.0", - "rc-tree-select": "~2.9.1", - "rc-trigger": "^2.6.2", - "rc-upload": "~2.9.1", - "rc-util": "^4.16.1", - "react-lazy-load": "^3.0.13", - "react-lifecycles-compat": "^3.0.4", - "react-slick": "~0.25.2", - "resize-observer-polyfill": "^1.5.1", - "shallowequal": "^1.1.0", - "warning": "~4.0.3" - }, - "dependencies": { - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npm.taobao.org/lodash/download/lodash-4.17.15.tgz", - "integrity": "sha1-tEf2ZwoEVbv+7dETku/zMOoJdUg=", - "dev": true - } - } - }, - "anymatch": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz", - "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "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" - } - } - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/aproba/download/aproba-1.2.0.tgz", - "integrity": "sha1-aALmJk79GMeQobDVF/DyYnvyyUo=", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "http://registry.npm.taobao.org/argparse/download/argparse-1.0.10.tgz", - "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "http://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", - "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", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "http://registry.npm.taobao.org/array-flatten/download/array-flatten-2.1.2.tgz", - "integrity": "sha1-JO+AoowaiTYX4hSbDG0NeIKTsJk=", - "dev": true - }, - "array-tree-filter": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/array-tree-filter/download/array-tree-filter-2.1.0.tgz", - "integrity": "sha1-hzrAD+yDdJ8lWsjdCDgUtPYykZA=", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/array-union/download/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/array-uniq/download/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "http://registry.npm.taobao.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "asap": { - "version": "2.0.6", - "resolved": "http://registry.npm.taobao.org/asap/download/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "http://registry.npm.taobao.org/asn1/download/asn1-0.2.4.tgz", - "integrity": "sha1-jSR136tVO7M+d7VOWeiAu4ziMTY=", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "asn1.js": { - "version": "4.10.1", - "resolved": "http://registry.npm.taobao.org/asn1.js/download/asn1.js-4.10.1.tgz", - "integrity": "sha1-ucK/WAXx5kqt7tbfOiv6+1pz9aA=", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "assert": { - "version": "1.4.1", - "resolved": "http://registry.npm.taobao.org/assert/download/assert-1.4.1.tgz", - "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", - "dev": true, - "requires": { - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/inherits/download/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "http://registry.npm.taobao.org/util/download/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/assert-plus/download/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/assign-symbols/download/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "async": { - "version": "1.5.2", - "resolved": "http://registry.npm.taobao.org/async/download/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true - }, - "async-each": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/async-each/download/async-each-1.0.3.tgz", - "integrity": "sha1-tyfb+H12UWAvBvTUrDh/R9kbDL8=", - "dev": true - }, - "async-validator": { - "version": "1.11.5", - "resolved": "https://registry.npm.taobao.org/async-validator/download/async-validator-1.11.5.tgz", - "integrity": "sha1-nUPPSe9rt2vlRCOI0Z+5puR1l+o=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "http://registry.npm.taobao.org/asynckit/download/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true, - "optional": true - }, - "atob": { - "version": "2.1.2", - "resolved": "http://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz", - "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "http://registry.npm.taobao.org/aws-sign2/download/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true, - "optional": true - }, - "aws4": { - "version": "1.8.0", - "resolved": "http://registry.npm.taobao.org/aws4/download/aws4-1.8.0.tgz", - "integrity": "sha1-8OAD2cqef1nHpQiUXXsu+aBKVC8=", - "dev": true, - "optional": true - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "http://registry.npm.taobao.org/babel-runtime/download/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "base": { - "version": "0.11.2", - "resolved": "http://registry.npm.taobao.org/base/download/base-0.11.2.tgz", - "integrity": "sha1-e95c7RRbbVUakNuH+DxVi060io8=", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "base64-js": { - "version": "1.3.0", - "resolved": "http://registry.npm.taobao.org/base64-js/download/base64-js-1.3.0.tgz", - "integrity": "sha1-yrHmEY8FEJXli1KBrqjBzSK/wOM=", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/batch/download/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "optional": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "big.js": { - "version": "5.2.2", - "resolved": "http://registry.npm.taobao.org/big.js/download/big.js-5.2.2.tgz", - "integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=", - "dev": true - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "http://registry.npm.taobao.org/binary-extensions/download/binary-extensions-1.13.1.tgz", - "integrity": "sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U=", - "dev": true - }, - "bluebird": { - "version": "3.5.4", - "resolved": "http://registry.npm.taobao.org/bluebird/download/bluebird-3.5.4.tgz", - "integrity": "sha1-1sxmFZXeMNWzr1/O3TwLPvbsVxQ=", - "dev": true - }, - "bn.js": { - "version": "4.11.8", - "resolved": "http://registry.npm.taobao.org/bn.js/download/bn.js-4.11.8.tgz", - "integrity": "sha1-LN4J617jQfSEdGuwMJsyU7GxRC8=", - "dev": true - }, - "body-parser": { - "version": "1.18.3", - "resolved": "http://registry.npm.taobao.org/body-parser/download/body-parser-1.18.3.tgz", - "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", - "dev": true, - "requires": { - "bytes": "3.0.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "~1.6.3", - "iconv-lite": "0.4.23", - "on-finished": "~2.3.0", - "qs": "6.5.2", - "raw-body": "2.3.3", - "type-is": "~1.6.16" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.23", - "resolved": "http://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.23.tgz", - "integrity": "sha1-KXhx9jvlB63Pv8pxXQzQ7thOmmM=", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "bonjour": { - "version": "3.5.0", - "resolved": "http://registry.npm.taobao.org/bonjour/download/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", - "dev": true, - "requires": { - "array-flatten": "^2.1.0", - "deep-equal": "^1.0.1", - "dns-equal": "^1.0.0", - "dns-txt": "^2.0.2", - "multicast-dns": "^6.0.1", - "multicast-dns-service-types": "^1.1.0" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/boolbase/download/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "http://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz", - "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "http://registry.npm.taobao.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/brorand/download/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/browserify-aes/download/browserify-aes-1.2.0.tgz", - "integrity": "sha1-Mmc0ZC9APavDADIJhTu3CtQo70g=", - "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/browserify-cipher/download/browserify-cipher-1.0.1.tgz", - "integrity": "sha1-jWR0wbhwv9q807z8wZNKEOlPFfA=", - "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/browserify-des/download/browserify-des-1.0.2.tgz", - "integrity": "sha1-OvTx9Zg5QDVy8cZiBDdfen9wPpw=", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/browserify-rsa/download/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" - } - }, - "browserify-sign": { - "version": "4.0.4", - "resolved": "http://registry.npm.taobao.org/browserify-sign/download/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", - "dev": true, - "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" - } - }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "http://registry.npm.taobao.org/browserify-zlib/download/browserify-zlib-0.2.0.tgz", - "integrity": "sha1-KGlFnZqjviRf6P4sofRuLn9U1z8=", - "dev": true, - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.5.5", - "resolved": "http://registry.npm.taobao.org/browserslist/download/browserslist-4.5.5.tgz", - "integrity": "sha1-/ho1IzDSSQ1XNVdMFJqFvBjvm4I=", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30000960", - "electron-to-chromium": "^1.3.124", - "node-releases": "^1.1.14" - } - }, - "buffer": { - "version": "4.9.1", - "resolved": "http://registry.npm.taobao.org/buffer/download/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - } - } - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/buffer-from/download/buffer-from-1.1.1.tgz", - "integrity": "sha1-MnE7wCj3XAL9txDXx7zsHyxgcO8=", - "dev": true - }, - "buffer-indexof": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/buffer-indexof/download/buffer-indexof-1.1.1.tgz", - "integrity": "sha1-Uvq8xqYG0aADAoAmSO9o9jnaJow=", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/buffer-xor/download/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/builtin-modules/download/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/builtin-status-codes/download/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true - }, - "bytes": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/bytes/download/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true - }, - "cacache": { - "version": "11.3.2", - "resolved": "http://registry.npm.taobao.org/cacache/download/cacache-11.3.2.tgz", - "integrity": "sha1-LYHjCOPSWMo4Eltna5iyrJzmm/o=", - "dev": true, - "requires": { - "bluebird": "^3.5.3", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.3", - "graceful-fs": "^4.1.15", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.2", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "cache-base": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/cache-base/download/cache-base-1.0.1.tgz", - "integrity": "sha1-Cn9GQWgxyLZi7jb+TnxZ129marI=", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "caller-callsite": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/caller-callsite/download/caller-callsite-2.0.0.tgz", - "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", - "dev": true, - "requires": { - "callsites": "^2.0.0" - } - }, - "caller-path": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/caller-path/download/caller-path-2.0.0.tgz", - "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", - "dev": true, - "requires": { - "caller-callsite": "^2.0.0" - } - }, - "callsites": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/callsites/download/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", - "dev": true - }, - "camel-case": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/camel-case/download/camel-case-3.0.0.tgz", - "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", - "dev": true, - "requires": { - "no-case": "^2.2.0", - "upper-case": "^1.1.1" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "http://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz", - "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=", - "dev": true - }, - "caniuse-api": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/caniuse-api/download/caniuse-api-3.0.0.tgz", - "integrity": "sha1-Xk2Q4idJYdRikZl99Znj7QCO5MA=", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } - }, - "caniuse-lite": { - "version": "1.0.30000962", - "resolved": "http://registry.npm.taobao.org/caniuse-lite/download/caniuse-lite-1.0.30000962.tgz", - "integrity": "sha1-bBDDqzBLib6pBeZq35jAkFCI7kQ=", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "http://registry.npm.taobao.org/caseless/download/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true, - "optional": true - }, - "cfb": { - "version": "1.1.4", - "resolved": "https://registry.npm.taobao.org/cfb/download/cfb-1.1.4.tgz?cache=0&sync_timestamp=1584080716545&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcfb%2Fdownload%2Fcfb-1.1.4.tgz", - "integrity": "sha1-gf017eTJGdjwliqUWC4d+vcFHio=", - "dev": true, - "requires": { - "adler-32": "~1.2.0", - "commander": "^2.16.0", - "crc-32": "~1.2.0", - "printj": "~1.1.2" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "http://registry.npm.taobao.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chokidar": { - "version": "2.1.5", - "resolved": "http://registry.npm.taobao.org/chokidar/download/chokidar-2.1.5.tgz", - "integrity": "sha1-CuhDTZYigaX1bHKGnnnLbZ2GrU0=", - "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" - } - }, - "chownr": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/chownr/download/chownr-1.1.1.tgz", - "integrity": "sha1-VHJri4//TfBTxCGH6AH7RBLfFJQ=", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/chrome-trace-event/download/chrome-trace-event-1.0.0.tgz", - "integrity": "sha1-Rakb0sIMlBHwljtarrmhuV4JzEg=", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "http://registry.npm.taobao.org/cipher-base/download/cipher-base-1.0.4.tgz", - "integrity": "sha1-h2Dk7MJy9MNjUy+SbYdKriwTl94=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "class-utils": { - "version": "0.3.6", - "resolved": "http://registry.npm.taobao.org/class-utils/download/class-utils-0.3.6.tgz", - "integrity": "sha1-+TNprouafOAv1B+q0MqDAzGQxGM=", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "classnames": { - "version": "2.2.6", - "resolved": "http://registry.npm.taobao.org/classnames/download/classnames-2.2.6.tgz", - "integrity": "sha1-Q5Nb/90pHzJtrQogUwmzjQD2UM4=", - "dev": true - }, - "clean-css": { - "version": "4.2.1", - "resolved": "http://registry.npm.taobao.org/clean-css/download/clean-css-4.2.1.tgz", - "integrity": "sha1-LUEe92uFabbQyEBo2r6FsKpeXBc=", - "dev": true, - "requires": { - "source-map": "~0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "clean-webpack-plugin": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/clean-webpack-plugin/download/clean-webpack-plugin-3.0.0.tgz", - "integrity": "sha1-qZ2Ow0wcYopFQVZ6p7RXRGRgxis=", - "dev": true, - "requires": { - "@types/webpack": "^4.4.31", - "del": "^4.1.1" - }, - "dependencies": { - "del": { - "version": "4.1.1", - "resolved": "https://registry.npm.taobao.org/del/download/del-4.1.1.tgz", - "integrity": "sha1-no8RciLqRKMf86FWwEm5kFKp8LQ=", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" - } - } - } - }, - "clipboard": { - "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=", - "dev": true, - "requires": { - "good-listener": "^1.2.2", - "select": "^1.1.2", - "tiny-emitter": "^2.0.0" - } - }, - "cliui": { - "version": "4.1.0", - "resolved": "http://registry.npm.taobao.org/cliui/download/cliui-4.1.0.tgz", - "integrity": "sha1-NIQi2+gtgAswIu709qwQvy5NG0k=", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "http://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": "http://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "clone": { - "version": "2.1.2", - "resolved": "http://registry.npm.taobao.org/clone/download/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, - "coa": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/coa/download/coa-2.0.2.tgz", - "integrity": "sha1-Q/bCEVG07yv1cYfbDXPeIp4+fsM=", - "dev": true, - "requires": { - "@types/q": "^1.5.1", - "chalk": "^2.4.1", - "q": "^1.1.2" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/code-point-at/download/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "codepage": { - "version": "1.14.0", - "resolved": "https://registry.npm.taobao.org/codepage/download/codepage-1.14.0.tgz", - "integrity": "sha1-jL4lSBMjVZ19MHVxsP/5HnodL5k=", - "dev": true, - "requires": { - "commander": "~2.14.1", - "exit-on-epipe": "~1.0.1" - }, - "dependencies": { - "commander": { - "version": "2.14.1", - "resolved": "https://registry.npm.taobao.org/commander/download/commander-2.14.1.tgz", - "integrity": "sha1-IjUSPjevjKPGXfRbAm29NXsBuao=", - "dev": true - } - } - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color": { - "version": "3.1.0", - "resolved": "http://registry.npm.taobao.org/color/download/color-3.1.0.tgz", - "integrity": "sha1-2On7CWcyh1d0yEv5IoFd8DCND/w=", - "dev": true, - "requires": { - "color-convert": "^1.9.1", - "color-string": "^1.5.2" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "http://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz", - "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "http://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "color-string": { - "version": "1.5.3", - "resolved": "http://registry.npm.taobao.org/color-string/download/color-string-1.5.3.tgz", - "integrity": "sha1-ybvF8BtYtUkvPWhXRZy2WQziBMw=", - "dev": true, - "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "combined-stream": { - "version": "1.0.7", - "resolved": "http://registry.npm.taobao.org/combined-stream/download/combined-stream-1.0.7.tgz", - "integrity": "sha1-LR0kMXr7ir6V1tLAsHtXgTU52Cg=", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.17.1", - "resolved": "http://registry.npm.taobao.org/commander/download/commander-2.17.1.tgz", - "integrity": "sha1-vXerfebelCBc6sxy8XFtKfIKd78=", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/commondir/download/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-classes": { - "version": "1.2.6", - "resolved": "http://registry.npm.taobao.org/component-classes/download/component-classes-1.2.6.tgz", - "integrity": "sha1-xkI5TDYYpNiwuJGe/Mu9kw5c1pE=", - "dev": true, - "requires": { - "component-indexof": "0.0.3" - } - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "http://registry.npm.taobao.org/component-emitter/download/component-emitter-1.3.0.tgz", - "integrity": "sha1-FuQHD7qK4ptnnyIVhT7hgasuq8A=", - "dev": true - }, - "component-indexof": { - "version": "0.0.3", - "resolved": "http://registry.npm.taobao.org/component-indexof/download/component-indexof-0.0.3.tgz", - "integrity": "sha1-EdCRMSI5648yyPJa6csAL/6NPCQ=", - "dev": true - }, - "compressible": { - "version": "2.0.16", - "resolved": "http://registry.npm.taobao.org/compressible/download/compressible-2.0.16.tgz", - "integrity": "sha1-pJv5hY84IbZM4b4Clq/HOARmp38=", - "dev": true, - "requires": { - "mime-db": ">= 1.38.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "http://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz", - "integrity": "sha1-lVI+/xcMpXwpoMpB5v4TH0Hlu48=", - "dev": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "http://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "http://registry.npm.taobao.org/concat-stream/download/concat-stream-1.6.2.tgz", - "integrity": "sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ=", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "http://registry.npm.taobao.org/connect-history-api-fallback/download/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha1-izIIk1kwjRERFdgcrT/Oq4iPl7w=", - "dev": true - }, - "console-browserify": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/console-browserify/download/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", - "dev": true, - "requires": { - "date-now": "^0.1.4" - } - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/constants-browserify/download/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "http://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", - "dev": true - }, - "content-type": { - "version": "1.0.4", - "resolved": "http://registry.npm.taobao.org/content-type/download/content-type-1.0.4.tgz", - "integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js=", - "dev": true - }, - "cookie": { - "version": "0.3.1", - "resolved": "http://registry.npm.taobao.org/cookie/download/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "http://registry.npm.taobao.org/cookie-signature/download/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "http://registry.npm.taobao.org/copy-concurrently/download/copy-concurrently-1.0.5.tgz", - "integrity": "sha1-kilzmMrjSTf8r9bsgTnBgFHwteA=", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "copy-to-clipboard": { - "version": "3.3.1", - "resolved": "https://registry.npm.taobao.org/copy-to-clipboard/download/copy-to-clipboard-3.3.1.tgz", - "integrity": "sha1-EVqhqZmP+rYZb5MHatbaO5E2Yq4=", - "dev": true, - "requires": { - "toggle-selection": "^1.0.6" - } - }, - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npm.taobao.org/core-js/download/core-js-2.6.11.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-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", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "cosmiconfig": { - "version": "5.2.0", - "resolved": "http://registry.npm.taobao.org/cosmiconfig/download/cosmiconfig-5.2.0.tgz", - "integrity": "sha1-RQOOTSin/nhyA67enCW8pKCLEsg=", - "dev": true, - "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.0", - "parse-json": "^4.0.0" - } - }, - "crc-32": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/crc-32/download/crc-32-1.2.0.tgz", - "integrity": "sha1-yy224puIUI4y2d0OwWk+e0Ghggg=", - "dev": true, - "requires": { - "exit-on-epipe": "~1.0.1", - "printj": "~1.1.0" - } - }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "http://registry.npm.taobao.org/create-ecdh/download/create-ecdh-4.0.3.tgz", - "integrity": "sha1-yREbbzMEXEaX8UR4f5JUzcd8Rf8=", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/create-hash/download/create-hash-1.2.0.tgz", - "integrity": "sha1-iJB4rxGmN1a8+1m9IhmWvjqe8ZY=", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "http://registry.npm.taobao.org/create-hmac/download/create-hmac-1.1.7.tgz", - "integrity": "sha1-aRcMeLOrlXFHsriwRXLkfq0iQ/8=", - "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "create-react-class": { - "version": "15.6.3", - "resolved": "http://registry.npm.taobao.org/create-react-class/download/create-react-class-15.6.3.tgz", - "integrity": "sha1-LXMjf7P5cK5uvgEanmb0bbyoADY=", - "dev": true, - "requires": { - "fbjs": "^0.8.9", - "loose-envify": "^1.3.1", - "object-assign": "^4.1.1" - } - }, - "create-react-context": { - "version": "0.2.2", - "resolved": "http://registry.npm.taobao.org/create-react-context/download/create-react-context-0.2.2.tgz", - "integrity": "sha1-mDZUL5qqIoaM19Sm+CZn3zgBnco=", - "dev": true, - "requires": { - "fbjs": "^0.8.0", - "gud": "^1.0.0" - } - }, - "cross-env": { - "version": "7.0.2", - "resolved": "https://registry.npm.taobao.org/cross-env/download/cross-env-7.0.2.tgz?cache=0&sync_timestamp=1583443602692&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcross-env%2Fdownload%2Fcross-env-7.0.2.tgz", - "integrity": "sha1-vV7TEzmpOjQYrE88qco0Awgq5fk=", - "dev": true, - "requires": { - "cross-spawn": "^7.0.1" - }, - "dependencies": { - "cross-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-7.0.2.tgz", - "integrity": "sha1-0Nfc+nTokRXHYZ9PchqU4f23FtY=", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npm.taobao.org/path-key/download/path-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&sync_timestamp=1567781622888&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" - } - } - } - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "http://registry.npm.taobao.org/cross-spawn/download/cross-spawn-6.0.5.tgz", - "integrity": "sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q=", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "http://registry.npm.taobao.org/crypto-browserify/download/crypto-browserify-3.12.0.tgz", - "integrity": "sha1-OWz58xN/A+S45TLFj2mCVOAPgOw=", - "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "css-animation": { - "version": "1.6.1", - "resolved": "https://registry.npm.taobao.org/css-animation/download/css-animation-1.6.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss-animation%2Fdownload%2Fcss-animation-1.6.1.tgz", - "integrity": "sha1-FiBko7DVH5WLf/N7PW1N4Y4XA54=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "component-classes": "^1.2.5" - } - }, - "css-color-names": { - "version": "0.0.4", - "resolved": "http://registry.npm.taobao.org/css-color-names/download/css-color-names-0.0.4.tgz", - "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=", - "dev": true - }, - "css-declaration-sorter": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/css-declaration-sorter/download/css-declaration-sorter-4.0.1.tgz", - "integrity": "sha1-wZiUD2OnbX42wecQGLABchBUyyI=", - "dev": true, - "requires": { - "postcss": "^7.0.1", - "timsort": "^0.3.0" - } - }, - "css-loader": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/css-loader/download/css-loader-2.1.1.tgz", - "integrity": "sha1-2CVPcuQSuyI4u0TdZ0/770lzM+o=", - "dev": true, - "requires": { - "camelcase": "^5.2.0", - "icss-utils": "^4.1.0", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.14", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^2.0.6", - "postcss-modules-scope": "^2.1.0", - "postcss-modules-values": "^2.0.0", - "postcss-value-parser": "^3.3.0", - "schema-utils": "^1.0.0" - } - }, - "css-select": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/css-select/download/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "dev": true, - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "css-select-base-adapter": { - "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/css-select-base-adapter/download/css-select-base-adapter-0.1.1.tgz", - "integrity": "sha1-Oy/0lyzDYquIVhUHqVQIoUMhNdc=", - "dev": true - }, - "css-tree": { - "version": "1.0.0-alpha.28", - "resolved": "http://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.28.tgz", - "integrity": "sha1-joloGQ2IbJR3vI1h6W9hrz9/+n8=", - "dev": true, - "requires": { - "mdn-data": "~1.1.0", - "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 - } - } - }, - "css-unit-converter": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/css-unit-converter/download/css-unit-converter-1.1.1.tgz", - "integrity": "sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY=", - "dev": true - }, - "css-url-regex": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/css-url-regex/download/css-url-regex-1.1.0.tgz", - "integrity": "sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w=", - "dev": true - }, - "css-what": { - "version": "2.1.3", - "resolved": "http://registry.npm.taobao.org/css-what/download/css-what-2.1.3.tgz", - "integrity": "sha1-ptdgRXM2X+dGhsPzEcVlE9iChfI=", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/cssesc/download/cssesc-3.0.0.tgz", - "integrity": "sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4=", - "dev": true - }, - "cssnano": { - "version": "4.1.10", - "resolved": "http://registry.npm.taobao.org/cssnano/download/cssnano-4.1.10.tgz", - "integrity": "sha1-CsQfCxPRPUZUh+ERt3jULaYxuLI=", - "dev": true, - "requires": { - "cosmiconfig": "^5.0.0", - "cssnano-preset-default": "^4.0.7", - "is-resolvable": "^1.0.0", - "postcss": "^7.0.0" - } - }, - "cssnano-preset-default": { - "version": "4.0.7", - "resolved": "http://registry.npm.taobao.org/cssnano-preset-default/download/cssnano-preset-default-4.0.7.tgz", - "integrity": "sha1-UexmLM/KD4izltzZZ5zbkxvhf3Y=", - "dev": true, - "requires": { - "css-declaration-sorter": "^4.0.1", - "cssnano-util-raw-cache": "^4.0.1", - "postcss": "^7.0.0", - "postcss-calc": "^7.0.1", - "postcss-colormin": "^4.0.3", - "postcss-convert-values": "^4.0.1", - "postcss-discard-comments": "^4.0.2", - "postcss-discard-duplicates": "^4.0.2", - "postcss-discard-empty": "^4.0.1", - "postcss-discard-overridden": "^4.0.1", - "postcss-merge-longhand": "^4.0.11", - "postcss-merge-rules": "^4.0.3", - "postcss-minify-font-values": "^4.0.2", - "postcss-minify-gradients": "^4.0.2", - "postcss-minify-params": "^4.0.2", - "postcss-minify-selectors": "^4.0.2", - "postcss-normalize-charset": "^4.0.1", - "postcss-normalize-display-values": "^4.0.2", - "postcss-normalize-positions": "^4.0.2", - "postcss-normalize-repeat-style": "^4.0.2", - "postcss-normalize-string": "^4.0.2", - "postcss-normalize-timing-functions": "^4.0.2", - "postcss-normalize-unicode": "^4.0.1", - "postcss-normalize-url": "^4.0.1", - "postcss-normalize-whitespace": "^4.0.2", - "postcss-ordered-values": "^4.1.2", - "postcss-reduce-initial": "^4.0.3", - "postcss-reduce-transforms": "^4.0.2", - "postcss-svgo": "^4.0.2", - "postcss-unique-selectors": "^4.0.1" - } - }, - "cssnano-util-get-arguments": { - "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/cssnano-util-get-arguments/download/cssnano-util-get-arguments-4.0.0.tgz", - "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=", - "dev": true - }, - "cssnano-util-get-match": { - "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/cssnano-util-get-match/download/cssnano-util-get-match-4.0.0.tgz", - "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=", - "dev": true - }, - "cssnano-util-raw-cache": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/cssnano-util-raw-cache/download/cssnano-util-raw-cache-4.0.1.tgz", - "integrity": "sha1-sm1f1fcqEd/np4RvtMZyYPlr8oI=", - "dev": true, - "requires": { - "postcss": "^7.0.0" - } - }, - "cssnano-util-same-parent": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/cssnano-util-same-parent/download/cssnano-util-same-parent-4.0.1.tgz", - "integrity": "sha1-V0CC+yhZ0ttDOFWDXZqEVuoYu/M=", - "dev": true - }, - "csso": { - "version": "3.5.1", - "resolved": "http://registry.npm.taobao.org/csso/download/csso-3.5.1.tgz", - "integrity": "sha1-e564vmFiiXPBsmHhadLwJACOdYs=", - "dev": true, - "requires": { - "css-tree": "1.0.0-alpha.29" - }, - "dependencies": { - "css-tree": { - "version": "1.0.0-alpha.29", - "resolved": "http://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.29.tgz", - "integrity": "sha1-P6nU7zFCy9HDAedmTB81K9gvWjk=", - "dev": true, - "requires": { - "mdn-data": "~1.1.0", - "source-map": "^0.5.3" - } - }, - "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 - } - } - }, - "csstype": { - "version": "2.6.4", - "resolved": "http://registry.npm.taobao.org/csstype/download/csstype-2.6.4.tgz", - "integrity": "sha1-1YWmBiCW4yTnGH+A4E+SvQ8A438=", - "dev": true - }, - "cyclist": { - "version": "0.2.2", - "resolved": "http://registry.npm.taobao.org/cyclist/download/cyclist-0.2.2.tgz", - "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "http://registry.npm.taobao.org/dashdash/download/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "optional": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "date-now": { - "version": "0.1.4", - "resolved": "http://registry.npm.taobao.org/date-now/download/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", - "dev": true - }, - "debug": { - "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz", - "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/decamelize/download/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "http://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": "http://registry.npm.taobao.org/deep-equal/download/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true - }, - "deepmerge": { - "version": "2.2.1", - "resolved": "http://registry.npm.taobao.org/deepmerge/download/deepmerge-2.2.1.tgz", - "integrity": "sha1-XT/yKgHAD2RUBaL7wX0HeKGAEXA=", - "dev": true - }, - "default-gateway": { - "version": "4.2.0", - "resolved": "http://registry.npm.taobao.org/default-gateway/download/default-gateway-4.2.0.tgz", - "integrity": "sha1-FnEEx1AMIRX23WmwpTa7jtcgVSs=", - "dev": true, - "requires": { - "execa": "^1.0.0", - "ip-regex": "^2.1.0" - } - }, - "define-properties": { - "version": "1.1.3", - "resolved": "http://registry.npm.taobao.org/define-properties/download/define-properties-1.1.3.tgz", - "integrity": "sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz", - "integrity": "sha1-1Flono1lS6d+AqgX+HENcCyxbp0=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "del": { - "version": "4.1.0", - "resolved": "http://registry.npm.taobao.org/del/download/del-4.1.0.tgz", - "integrity": "sha1-BJVDuCkOGpKT4r0VCrOgb2NzIrg=", - "dev": true, - "requires": { - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/delayed-stream/download/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegate": { - "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/delegate/download/delegate-3.2.0.tgz", - "integrity": "sha1-tmtxwxWFIuirV0T3INjKDCr1kWY=", - "dev": true - }, - "depd": { - "version": "1.1.2", - "resolved": "http://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true - }, - "des.js": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/des.js/download/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "destroy": { - "version": "1.0.4", - "resolved": "http://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true - }, - "detect-file": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/detect-file/download/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", - "dev": true - }, - "detect-node": { - "version": "2.0.4", - "resolved": "http://registry.npm.taobao.org/detect-node/download/detect-node-2.0.4.tgz", - "integrity": "sha1-AU7o+PZpxcWAI9pkuBecCDooxGw=", - "dev": true - }, - "diff": { - "version": "3.5.0", - "resolved": "http://registry.npm.taobao.org/diff/download/diff-3.5.0.tgz", - "integrity": "sha1-gAwN0eCov7yVg1wgKtIg/jF+WhI=", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "http://registry.npm.taobao.org/diffie-hellman/download/diffie-hellman-5.0.3.tgz", - "integrity": "sha1-QOjumPVaIUlgcUaSHGPhrl89KHU=", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/dns-equal/download/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", - "dev": true - }, - "dns-packet": { - "version": "1.3.1", - "resolved": "http://registry.npm.taobao.org/dns-packet/download/dns-packet-1.3.1.tgz", - "integrity": "sha1-EqpCaYEHW+UAuRDu3NC0fdfe2lo=", - "dev": true, - "requires": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" - } - }, - "dns-txt": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/dns-txt/download/dns-txt-2.0.2.tgz", - "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", - "dev": true, - "requires": { - "buffer-indexof": "^1.0.0" - } - }, - "dom-align": { - "version": "1.11.1", - "resolved": "https://registry.npm.taobao.org/dom-align/download/dom-align-1.11.1.tgz?cache=0&sync_timestamp=1584441192594&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdom-align%2Fdownload%2Fdom-align-1.11.1.tgz", - "integrity": "sha1-dZK+maZgo2ze3B1u6yK4EJ11jK4=", - "dev": true - }, - "dom-closest": { - "version": "0.2.0", - "resolved": "http://registry.npm.taobao.org/dom-closest/download/dom-closest-0.2.0.tgz", - "integrity": "sha1-69n5HRvyLo1vR3h2u80+yQIWwM8=", - "dev": true, - "requires": { - "dom-matches": ">=1.0.1" - } - }, - "dom-converter": { - "version": "0.2.0", - "resolved": "http://registry.npm.taobao.org/dom-converter/download/dom-converter-0.2.0.tgz", - "integrity": "sha1-ZyGp2u4uKTaClVtq/kFncWJ7t2g=", - "dev": true, - "requires": { - "utila": "~0.4" - } - }, - "dom-matches": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/dom-matches/download/dom-matches-2.0.0.tgz", - "integrity": "sha1-0nKLQWqHUzmA6wibhI0lPPI6dYw=", - "dev": true - }, - "dom-scroll-into-view": { - "version": "1.2.1", - "resolved": "http://registry.npm.taobao.org/dom-scroll-into-view/download/dom-scroll-into-view-1.2.1.tgz", - "integrity": "sha1-6PNnMt0ImwIBqI14Fdw/iObWbH4=", - "dev": true - }, - "dom-serializer": { - "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/dom-serializer/download/dom-serializer-0.1.1.tgz", - "integrity": "sha1-HsQFnihLq+027sKUHUqXChic58A=", - "dev": true, - "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" - } - }, - "dom-walk": { - "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/dom-walk/download/dom-walk-0.1.1.tgz", - "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=", - "dev": true - }, - "domain-browser": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/domain-browser/download/domain-browser-1.2.0.tgz", - "integrity": "sha1-PTH1AZGmdJ3RN1p/Ui6CPULlTto=", - "dev": true - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "http://registry.npm.taobao.org/domelementtype/download/domelementtype-1.3.1.tgz", - "integrity": "sha1-0EjESzew0Qp/Kj1f7j9DM9eQSB8=", - "dev": true - }, - "domhandler": { - "version": "2.4.2", - "resolved": "http://registry.npm.taobao.org/domhandler/download/domhandler-2.4.2.tgz", - "integrity": "sha1-iAUJfpM9ZehVRvcm1g9euItE+AM=", - "dev": true, - "requires": { - "domelementtype": "1" - } - }, - "domutils": { - "version": "1.5.1", - "resolved": "http://registry.npm.taobao.org/domutils/download/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "dev": true, - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "dot-prop": { - "version": "4.2.0", - "resolved": "http://registry.npm.taobao.org/dot-prop/download/dot-prop-4.2.0.tgz", - "integrity": "sha1-HxngwuGqDjJ5fEl5nyg3rGr2nFc=", - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "draft-js": { - "version": "0.10.5", - "resolved": "http://registry.npm.taobao.org/draft-js/download/draft-js-0.10.5.tgz", - "integrity": "sha1-v6m+sBj+BTPbsI1mdcNxprCPp0I=", - "dev": true, - "requires": { - "fbjs": "^0.8.15", - "immutable": "~3.7.4", - "object-assign": "^4.1.0" - } - }, - "duplexify": { - "version": "3.7.1", - "resolved": "http://registry.npm.taobao.org/duplexify/download/duplexify-3.7.1.tgz", - "integrity": "sha1-Kk31MX9sz9kfhtb9JdjYoQO4gwk=", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "http://registry.npm.taobao.org/ecc-jsbn/download/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "optional": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "echarts": { - "version": "4.7.0", - "resolved": "https://registry.npm.taobao.org/echarts/download/echarts-4.7.0.tgz", - "integrity": "sha1-Wzh1pML5HjkpQl+rq56s5+QJiz8=", - "dev": true, - "requires": { - "zrender": "4.3.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true - }, - "electron-to-chromium": { - "version": "1.3.124", - "resolved": "http://registry.npm.taobao.org/electron-to-chromium/download/electron-to-chromium-1.3.124.tgz", - "integrity": "sha1-hh/AFIdIoRs+XM69+LeV/1E/oR8=", - "dev": true - }, - "elliptic": { - "version": "6.4.1", - "resolved": "http://registry.npm.taobao.org/elliptic/download/elliptic-6.4.1.tgz", - "integrity": "sha1-wtC3d2kRuGcixjLDwGxg8vgZk5o=", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - } - }, - "emojis-list": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/emojis-list/download/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true - }, - "encoding": { - "version": "0.1.12", - "resolved": "http://registry.npm.taobao.org/encoding/download/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", - "dev": true, - "requires": { - "iconv-lite": "~0.4.13" - } - }, - "end-of-stream": { - "version": "1.4.1", - "resolved": "http://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.1.tgz", - "integrity": "sha1-7SljTRm6ukY7bOa4CjchPqtx7EM=", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "enhanced-resolve": { - "version": "4.1.0", - "resolved": "http://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.1.0.tgz", - "integrity": "sha1-Qcfgv9/nSsH/4eV61qXGyfN0Kn8=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "tapable": "^1.0.0" - } - }, - "enquire.js": { - "version": "2.1.6", - "resolved": "http://registry.npm.taobao.org/enquire.js/download/enquire.js-2.1.6.tgz", - "integrity": "sha1-PoeAybi4NQhMP2DhZtvDwqPImBQ=", - "dev": true - }, - "entities": { - "version": "1.1.2", - "resolved": "http://registry.npm.taobao.org/entities/download/entities-1.1.2.tgz", - "integrity": "sha1-vfpzUplmTfr9NFKe1PhSKidf6lY=", - "dev": true - }, - "errno": { - "version": "0.1.7", - "resolved": "http://registry.npm.taobao.org/errno/download/errno-0.1.7.tgz", - "integrity": "sha1-RoTXF3mtOa8Xfj8AeZb3xnyFJhg=", - "dev": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "http://registry.npm.taobao.org/error-ex/download/error-ex-1.3.2.tgz", - "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.13.0", - "resolved": "http://registry.npm.taobao.org/es-abstract/download/es-abstract-1.13.0.tgz", - "integrity": "sha1-rIYUX91QmdjdSVWMy6Lq+biOJOk=", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.0", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", - "object-keys": "^1.0.12" - } - }, - "es-to-primitive": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.0.tgz", - "integrity": "sha1-7fckeAM0VujdqO8J4ArZZQcH83c=", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "escape-html": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "http://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "http://registry.npm.taobao.org/eslint-scope/download/eslint-scope-4.0.3.tgz", - "integrity": "sha1-ygODMxD2iJoyZHgaqC5j65z+eEg=", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz", - "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=", - "dev": true - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "http://registry.npm.taobao.org/esrecurse/download/esrecurse-4.2.1.tgz", - "integrity": "sha1-AHo7n9vCs7uH5IeeoZyS/b05Qs8=", - "dev": true, - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.2.0", - "resolved": "http://registry.npm.taobao.org/estraverse/download/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true - }, - "esutils": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/esutils/download/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "http://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true - }, - "eventemitter3": { - "version": "3.1.0", - "resolved": "http://registry.npm.taobao.org/eventemitter3/download/eventemitter3-3.1.0.tgz", - "integrity": "sha1-CQtNbNvWRe0Qv3UNS1QHlC17oWM=", - "dev": true - }, - "eventlistener": { - "version": "0.0.1", - "resolved": "http://registry.npm.taobao.org/eventlistener/download/eventlistener-0.0.1.tgz", - "integrity": "sha1-7Suqu4UiJ68rz4iRUscsY8pTLrg=", - "dev": true - }, - "events": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/events/download/events-3.0.0.tgz", - "integrity": "sha1-mgoN+vYok9krh1uPJpjKQRSXPog=", - "dev": true - }, - "eventsource": { - "version": "1.0.7", - "resolved": "http://registry.npm.taobao.org/eventsource/download/eventsource-1.0.7.tgz", - "integrity": "sha1-j7xyyT/NNAiAkLwKTmT0tc7m2NA=", - "dev": true, - "requires": { - "original": "^1.0.0" - } - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/evp_bytestokey/download/evp_bytestokey-1.0.3.tgz", - "integrity": "sha1-f8vbGY3HGVlDLv4ThCaE4FJaywI=", - "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "execa": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/execa/download/execa-1.0.0.tgz", - "integrity": "sha1-xiNqW7TfbW8V6I5/AXeYIWdJ3dg=", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "exit-on-epipe": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/exit-on-epipe/download/exit-on-epipe-1.0.1.tgz", - "integrity": "sha1-C92S6H1ShdJn2qgXHQ6wYVlolpI=", - "dev": true - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "http://registry.npm.taobao.org/expand-brackets/download/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "expand-tilde": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/expand-tilde/download/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "express": { - "version": "4.16.4", - "resolved": "http://registry.npm.taobao.org/express/download/express-4.16.4.tgz", - "integrity": "sha1-/d72GSYQniTFFeqX/S8b2/Yt8S4=", - "dev": true, - "requires": { - "accepts": "~1.3.5", - "array-flatten": "1.1.1", - "body-parser": "1.18.3", - "content-disposition": "0.5.2", - "content-type": "~1.0.4", - "cookie": "0.3.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.1.1", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.4", - "qs": "6.5.2", - "range-parser": "~1.2.0", - "safe-buffer": "5.1.2", - "send": "0.16.2", - "serve-static": "1.13.2", - "setprototypeof": "1.1.0", - "statuses": "~1.4.0", - "type-is": "~1.6.16", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/array-flatten/download/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "http://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", - "dev": true - }, - "serve-static": { - "version": "1.13.2", - "resolved": "https://registry.npm.taobao.org/serve-static/download/serve-static-1.13.2.tgz", - "integrity": "sha1-CV6Ecv1bRiN9tQzkhqQ/S4bGzsE=", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.2", - "send": "0.16.2" - } - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz", - "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo=", - "dev": true, - "optional": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", - "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "http://registry.npm.taobao.org/extglob/download/extglob-2.0.4.tgz", - "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "http://registry.npm.taobao.org/extsprintf/download/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "http://registry.npm.taobao.org/fast-levenshtein/download/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "http://registry.npm.taobao.org/faye-websocket/download/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "fbjs": { - "version": "0.8.17", - "resolved": "http://registry.npm.taobao.org/fbjs/download/fbjs-0.8.17.tgz", - "integrity": "sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=", - "dev": true, - "requires": { - "core-js": "^1.0.0", - "isomorphic-fetch": "^2.1.1", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^0.7.18" - }, - "dependencies": { - "core-js": { - "version": "1.2.7", - "resolved": "http://registry.npm.taobao.org/core-js/download/core-js-1.2.7.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-1.2.7.tgz", - "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=", - "dev": true - } - } - }, - "figgy-pudding": { - "version": "3.5.1", - "resolved": "http://registry.npm.taobao.org/figgy-pudding/download/figgy-pudding-3.5.1.tgz", - "integrity": "sha1-hiRwESkBxyeg5JWoB0S9W6odZ5A=", - "dev": true - }, - "file-loader": { - "version": "5.0.2", - "resolved": "https://registry.npm.taobao.org/file-loader/download/file-loader-5.0.2.tgz?cache=0&sync_timestamp=1574689264559&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-loader%2Fdownload%2Ffile-loader-5.0.2.tgz", - "integrity": "sha1-fz2LSshaXo32EzjP7JXXQF+XHKo=", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.5.0" - }, - "dependencies": { - "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-6.10.2.tgz", - "integrity": "sha1-086gTWsBeyiUrWkED+yLYj60vVI=", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.4.1", - "resolved": "https://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-3.4.1.tgz", - "integrity": "sha1-75FuJxxkrBIXH9g4TqrmsjRYVNo=", - "dev": true - }, - "schema-utils": { - "version": "2.6.1", - "resolved": "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.6.1.tgz?cache=0&sync_timestamp=1574946791935&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.6.1.tgz", - "integrity": "sha1-63jwuUXHvPoggrNWXo2zVIAR3E8=", - "dev": true, - "requires": { - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "finalhandler": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/finalhandler/download/finalhandler-1.1.1.tgz", - "integrity": "sha1-7r9O2EAHnIP0JJA4ydcDAIMBsQU=", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.4.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-2.1.0.tgz", - "integrity": "sha1-jQ+UzRP+Q8bHwmGg2GEVypGMBfc=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "findup-sync": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/findup-sync/download/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "http://registry.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/flush-write-stream/download/flush-write-stream-1.1.1.tgz", - "integrity": "sha1-jdfYc6G6vCB9lOrQwuDkQnbr8ug=", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "follow-redirects": { - "version": "1.7.0", - "resolved": "http://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.7.0.tgz", - "integrity": "sha1-SJ68GY3A5/ZBZ70jsDxMGbV4THY=", - "dev": true, - "requires": { - "debug": "^3.2.6" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/for-in/download/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/forever-agent/download/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true, - "optional": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "http://registry.npm.taobao.org/form-data/download/form-data-2.3.3.tgz", - "integrity": "sha1-3M5SwF9kTymManq5Nr1yTO/786Y=", - "dev": true, - "optional": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.1.2", - "resolved": "http://registry.npm.taobao.org/forwarded/download/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", - "dev": true - }, - "frac": { - "version": "1.1.2", - "resolved": "https://registry.npm.taobao.org/frac/download/frac-1.1.2.tgz", - "integrity": "sha1-PXT39keMiKG1AgMG10fcYxPHTQs=", - "dev": true - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "http://registry.npm.taobao.org/fragment-cache/download/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fresh": { - "version": "0.5.2", - "resolved": "http://registry.npm.taobao.org/fresh/download/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true - }, - "from2": { - "version": "2.3.0", - "resolved": "http://registry.npm.taobao.org/from2/download/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "http://registry.npm.taobao.org/fs-write-stream-atomic/download/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "1.2.8", - "resolved": "http://registry.npm.taobao.org/fsevents/download/fsevents-1.2.8.tgz", - "integrity": "sha1-V+pTIPdizUaW5ejocSDszIsRys8=", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": false, - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": false, - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "aproba": { - "version": "1.2.0", - "resolved": false, - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": false, - "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": false, - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": false, - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "resolved": false, - "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": false, - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": false, - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": false, - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true, - "optional": true - }, - "debug": { - "version": "4.1.1", - "resolved": false, - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": false, - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "resolved": false, - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "resolved": false, - "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "resolved": false, - "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": false, - "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": false, - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": false, - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "resolved": false, - "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": false, - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": false, - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ini": { - "version": "1.3.5", - "resolved": false, - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": false, - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": false, - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": false, - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - }, - "minipass": { - "version": "2.3.5", - "resolved": false, - "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "resolved": false, - "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": false, - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "resolved": false, - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.0", - "resolved": false, - "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": false, - "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": false, - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "resolved": false, - "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "resolved": false, - "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": false, - "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": false, - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": false, - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": false, - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "resolved": false, - "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": false, - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "resolved": false, - "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": false, - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": false, - "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": false, - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": false, - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": false, - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "resolved": false, - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.0", - "resolved": false, - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": false, - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": false, - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "resolved": false, - "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": false, - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": false, - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": false, - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "resolved": false, - "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": false, - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": false, - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": false, - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "yallist": { - "version": "3.0.3", - "resolved": false, - "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", - "dev": true - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz", - "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=", - "dev": true - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/get-caller-file/download/get-caller-file-1.0.3.tgz", - "integrity": "sha1-+Xj6TJDR3+f/LWvtoqUV5xO9z0o=", - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "resolved": "http://registry.npm.taobao.org/get-stream/download/get-stream-4.1.0.tgz", - "integrity": "sha1-wbJVV189wh1Zv8ec09K0axw6VLU=", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "http://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "http://registry.npm.taobao.org/getpass/download/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "optional": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "http://registry.npm.taobao.org/glob/download/glob-7.1.3.tgz", - "integrity": "sha1-OWCDLT8VdBCDQtr9OmezMsCWnfE=", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "http://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": "http://registry.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "global": { - "version": "4.3.2", - "resolved": "http://registry.npm.taobao.org/global/download/global-4.3.2.tgz", - "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", - "dev": true, - "requires": { - "min-document": "^2.19.0", - "process": "~0.5.1" - } - }, - "global-modules": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/global-modules/download/global-modules-1.0.0.tgz", - "integrity": "sha1-bXcPDrUjrHgWTXK15xqIdyZcw+o=", - "dev": true, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/global-prefix/download/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - } - }, - "globby": { - "version": "6.1.0", - "resolved": "http://registry.npm.taobao.org/globby/download/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "good-listener": { - "version": "1.2.2", - "resolved": "https://registry.npm.taobao.org/good-listener/download/good-listener-1.2.2.tgz", - "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", - "dev": true, - "requires": { - "delegate": "^3.1.2" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "http://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.1.15.tgz", - "integrity": "sha1-/7cD4QZuig7qpMi4C6klPu77+wA=", - "dev": true - }, - "gud": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/gud/download/gud-1.0.0.tgz", - "integrity": "sha1-pIlYGxfmpwvsqavjrlfeekmYUsA=", - "dev": true - }, - "hammerjs": { - "version": "2.0.8", - "resolved": "http://registry.npm.taobao.org/hammerjs/download/hammerjs-2.0.8.tgz", - "integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE=", - "dev": true - }, - "handle-thing": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/handle-thing/download/handle-thing-2.0.0.tgz", - "integrity": "sha1-DgOWlf9QyT/CiFV9aW88HcZ3Z1Q=", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/har-schema/download/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true, - "optional": true - }, - "har-validator": { - "version": "5.1.3", - "resolved": "http://registry.npm.taobao.org/har-validator/download/har-validator-5.1.3.tgz", - "integrity": "sha1-HvievT5JllV2de7ZiTEQ3DUPoIA=", - "dev": true, - "optional": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/has/download/has-1.0.3.tgz", - "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/has-flag/download/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-symbols": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "dev": true - }, - "has-value": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/has-value/download/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/has-values/download/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "hash-base": { - "version": "3.0.4", - "resolved": "http://registry.npm.taobao.org/hash-base/download/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "http://registry.npm.taobao.org/hash.js/download/hash.js-1.1.7.tgz", - "integrity": "sha1-C6vKU46NTuSg+JiNaIZlN6ADz0I=", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "he": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/he/download/he-1.2.0.tgz", - "integrity": "sha1-hK5l+n6vsWX922FWauFLrwVmTw8=", - "dev": true - }, - "hex-color-regex": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/hex-color-regex/download/hex-color-regex-1.1.0.tgz", - "integrity": "sha1-TAb8y0YC/iYCs8k9+C1+fb8aio4=", - "dev": true - }, - "history": { - "version": "4.9.0", - "resolved": "http://registry.npm.taobao.org/history/download/history-4.9.0.tgz", - "integrity": "sha1-hFh8IGgDnq2K92np1qaGChT6G8o=", - "dev": true, - "requires": { - "@babel/runtime": "^7.1.2", - "loose-envify": "^1.2.0", - "resolve-pathname": "^2.2.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0", - "value-equal": "^0.4.0" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/hmac-drbg/download/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hoist-non-react-statics": { - "version": "3.3.0", - "resolved": "http://registry.npm.taobao.org/hoist-non-react-statics/download/hoist-non-react-statics-3.3.0.tgz", - "integrity": "sha1-sJF48BIhhPuVrPUl2q7LTY9FlYs=", - "dev": true, - "requires": { - "react-is": "^16.7.0" - } - }, - "homedir-polyfill": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/homedir-polyfill/download/homedir-polyfill-1.0.3.tgz", - "integrity": "sha1-dDKYzvTlrz4ZQWH7rcwhUdOgWOg=", - "dev": true, - "requires": { - "parse-passwd": "^1.0.0" - } - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "http://registry.npm.taobao.org/hpack.js/download/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "hsl-regex": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/hsl-regex/download/hsl-regex-1.0.0.tgz", - "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=", - "dev": true - }, - "hsla-regex": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/hsla-regex/download/hsla-regex-1.0.0.tgz", - "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=", - "dev": true - }, - "html-comment-regex": { - "version": "1.1.2", - "resolved": "http://registry.npm.taobao.org/html-comment-regex/download/html-comment-regex-1.1.2.tgz", - "integrity": "sha1-l9RoiutcgYhqNk+qDK0d2hTUM6c=", - "dev": true - }, - "html-entities": { - "version": "1.2.1", - "resolved": "http://registry.npm.taobao.org/html-entities/download/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", - "dev": true - }, - "html-minifier": { - "version": "3.5.21", - "resolved": "http://registry.npm.taobao.org/html-minifier/download/html-minifier-3.5.21.tgz", - "integrity": "sha1-0AQOBUcw41TbAIRjWTGUAVIS0gw=", - "dev": true, - "requires": { - "camel-case": "3.0.x", - "clean-css": "4.2.x", - "commander": "2.17.x", - "he": "1.2.x", - "param-case": "2.1.x", - "relateurl": "0.2.x", - "uglify-js": "3.4.x" - } - }, - "html-webpack-plugin": { - "version": "3.2.0", - "resolved": "http://registry.npm.taobao.org/html-webpack-plugin/download/html-webpack-plugin-3.2.0.tgz", - "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", - "dev": true, - "requires": { - "html-minifier": "^3.2.3", - "loader-utils": "^0.2.16", - "lodash": "^4.17.3", - "pretty-error": "^2.0.2", - "tapable": "^1.0.0", - "toposort": "^1.0.0", - "util.promisify": "1.0.0" - }, - "dependencies": { - "big.js": { - "version": "3.2.0", - "resolved": "http://registry.npm.taobao.org/big.js/download/big.js-3.2.0.tgz", - "integrity": "sha1-pfwpi4G54Nyi5FiCR4S2XFK6WI4=", - "dev": true - }, - "json5": { - "version": "0.5.1", - "resolved": "http://registry.npm.taobao.org/json5/download/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "loader-utils": { - "version": "0.2.17", - "resolved": "http://registry.npm.taobao.org/loader-utils/download/loader-utils-0.2.17.tgz", - "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", - "dev": true, - "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0", - "object-assign": "^4.0.1" - } - } - } - }, - "htmlparser2": { - "version": "3.10.1", - "resolved": "http://registry.npm.taobao.org/htmlparser2/download/htmlparser2-3.10.1.tgz", - "integrity": "sha1-vWedw/WYl7ajS7EHSchVu1OpOS8=", - "dev": true, - "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - } - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "http://registry.npm.taobao.org/http-deceiver/download/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "http://registry.npm.taobao.org/http-errors/download/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "http-parser-js": { - "version": "0.5.0", - "resolved": "http://registry.npm.taobao.org/http-parser-js/download/http-parser-js-0.5.0.tgz", - "integrity": "sha1-1l7b7ehDSdDcMDIIFaFdOcw8u9g=", - "dev": true - }, - "http-proxy": { - "version": "1.17.0", - "resolved": "http://registry.npm.taobao.org/http-proxy/download/http-proxy-1.17.0.tgz", - "integrity": "sha1-etOElGWPhGBeL220Q230EPTlvpo=", - "dev": true, - "requires": { - "eventemitter3": "^3.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-middleware": { - "version": "0.19.1", - "resolved": "http://registry.npm.taobao.org/http-proxy-middleware/download/http-proxy-middleware-0.19.1.tgz", - "integrity": "sha1-GDx9xKoUeRUDBkmMIQza+WCApDo=", - "dev": true, - "requires": { - "http-proxy": "^1.17.0", - "is-glob": "^4.0.0", - "lodash": "^4.17.11", - "micromatch": "^3.1.10" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/http-signature/download/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "optional": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/https-browserify/download/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "http://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz", - "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-replace-symbols": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/icss-replace-symbols/download/icss-replace-symbols-1.1.0.tgz", - "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", - "dev": true - }, - "icss-utils": { - "version": "4.1.0", - "resolved": "http://registry.npm.taobao.org/icss-utils/download/icss-utils-4.1.0.tgz", - "integrity": "sha1-M527/7n4cpokO3AeHCnUzFjFLw4=", - "dev": true, - "requires": { - "postcss": "^7.0.14" - } - }, - "ieee754": { - "version": "1.1.13", - "resolved": "http://registry.npm.taobao.org/ieee754/download/ieee754-1.1.13.tgz", - "integrity": "sha1-7BaFWOlaoYH9h9N/VcMrvLZwi4Q=", - "dev": true - }, - "iferr": { - "version": "0.1.5", - "resolved": "http://registry.npm.taobao.org/iferr/download/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true - }, - "image-size": { - "version": "0.5.5", - "resolved": "http://registry.npm.taobao.org/image-size/download/image-size-0.5.5.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fimage-size%2Fdownload%2Fimage-size-0.5.5.tgz", - "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", - "dev": true, - "optional": true - }, - "immutable": { - "version": "3.7.6", - "resolved": "https://registry.npm.taobao.org/immutable/download/immutable-3.7.6.tgz", - "integrity": "sha1-E7TTyxK++hVIKib+Gy665kAHHks=", - "dev": true - }, - "import-fresh": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/import-fresh/download/import-fresh-2.0.0.tgz", - "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", - "dev": true, - "requires": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - } - }, - "import-local": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/import-local/download/import-local-2.0.0.tgz", - "integrity": "sha1-VQcL44pZk88Y72236WH1vuXFoJ0=", - "dev": true, - "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "http://registry.npm.taobao.org/imurmurhash/download/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indexes-of": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/indexes-of/download/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true - }, - "indexof": { - "version": "0.0.1", - "resolved": "http://registry.npm.taobao.org/indexof/download/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "http://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "http://registry.npm.taobao.org/inherits/download/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ini": { - "version": "1.3.5", - "resolved": "http://registry.npm.taobao.org/ini/download/ini-1.3.5.tgz", - "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=", - "dev": true - }, - "internal-ip": { - "version": "4.3.0", - "resolved": "http://registry.npm.taobao.org/internal-ip/download/internal-ip-4.3.0.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Finternal-ip%2Fdownload%2Finternal-ip-4.3.0.tgz", - "integrity": "sha1-hFRSuq2dLKO2nGNaE3rLmg2tCQc=", - "dev": true, - "requires": { - "default-gateway": "^4.2.0", - "ipaddr.js": "^1.9.0" - } - }, - "interpret": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/interpret/download/interpret-1.2.0.tgz", - "integrity": "sha1-1QYaYiS+WOgIOYX1AU2EQ1lXYpY=", - "dev": true - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "http://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": "http://registry.npm.taobao.org/ip/download/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true - }, - "ip-regex": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/ip-regex/download/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", - "dev": true - }, - "ipaddr.js": { - "version": "1.9.0", - "resolved": "http://registry.npm.taobao.org/ipaddr.js/download/ipaddr.js-1.9.0.tgz", - "integrity": "sha1-N9905DCg5HVQ/lSi3v4w2KzZX2U=", - "dev": true - }, - "is-absolute-url": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-2.1.0.tgz", - "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "http://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": "http://registry.npm.taobao.org/is-binary-path/download/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "http://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", - "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", - "dev": true - }, - "is-callable": { - "version": "1.1.4", - "resolved": "http://registry.npm.taobao.org/is-callable/download/is-callable-1.1.4.tgz", - "integrity": "sha1-HhrfIZ4e62hNaR+dagX/DTCiTXU=", - "dev": true - }, - "is-color-stop": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/is-color-stop/download/is-color-stop-1.1.0.tgz", - "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=", - "dev": true, - "requires": { - "css-color-names": "^0.0.4", - "hex-color-regex": "^1.1.0", - "hsl-regex": "^1.0.0", - "hsla-regex": "^1.0.0", - "rgb-regex": "^1.0.1", - "rgba-regex": "^1.0.0" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-date-object": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-date-object/download/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", - "dev": true - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=", - "dev": true - } - } - }, - "is-directory": { - "version": "0.3.1", - "resolved": "http://registry.npm.taobao.org/is-directory/download/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", - "dev": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "is-glob": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/is-glob/download/is-glob-4.0.1.tgz", - "integrity": "sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw=", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-mobile": { - "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/is-mobile/download/is-mobile-2.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-mobile%2Fdownload%2Fis-mobile-2.2.1.tgz", - "integrity": "sha1-EPIyABLEEMwoX+7LE0Br1Ybxsvg=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-obj/download/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "is-path-cwd": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/is-path-cwd/download/is-path-cwd-2.0.0.tgz", - "integrity": "sha1-1Hd6jiJ6AAlqMfAw2zdw+EsRbAI=", - "dev": true - }, - "is-path-in-cwd": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/is-path-in-cwd/download/is-path-in-cwd-2.0.0.tgz", - "integrity": "sha1-aORSpu7CYFAM7CHgKcCkTMDc0uo=", - "dev": true, - "requires": { - "is-path-inside": "^1.0.0" - } - }, - "is-path-inside": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-path-inside/download/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "http://registry.npm.taobao.org/is-plain-object/download/is-plain-object-2.0.4.tgz", - "integrity": "sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-regex": { - "version": "1.0.4", - "resolved": "http://registry.npm.taobao.org/is-regex/download/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "dev": true, - "requires": { - "has": "^1.0.1" - } - }, - "is-resolvable": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/is-resolvable/download/is-resolvable-1.1.0.tgz", - "integrity": "sha1-+xj4fOH+uSUWnJpAfBkxijIG7Yg=", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/is-stream/download/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-svg": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/is-svg/download/is-svg-3.0.0.tgz", - "integrity": "sha1-kyHb0pwhLlypnE+peUxxS8r6L3U=", - "dev": true, - "requires": { - "html-comment-regex": "^1.1.0" - } - }, - "is-symbol": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.2.tgz", - "integrity": "sha1-oFX2rlcZLK7jKeeoYBGLSXqVDzg=", - "dev": true, - "requires": { - "has-symbols": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-typedarray/download/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true, - "optional": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz", - "integrity": "sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0=", - "dev": true - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/is-wsl/download/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "isarray": { - "version": "0.0.1", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "http://registry.npm.taobao.org/isobject/download/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "isomorphic-fetch": { - "version": "2.2.1", - "resolved": "http://registry.npm.taobao.org/isomorphic-fetch/download/isomorphic-fetch-2.2.1.tgz", - "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", - "dev": true, - "requires": { - "node-fetch": "^1.0.1", - "whatwg-fetch": ">=0.10.0" - } - }, - "isstream": { - "version": "0.1.2", - "resolved": "http://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true, - "optional": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/js-tokens/download/js-tokens-4.0.0.tgz", - "integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk=", - "dev": true - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "http://registry.npm.taobao.org/js-yaml/download/js-yaml-3.13.1.tgz", - "integrity": "sha1-r/FRswv9+o5J4F2iLnQV6d+jeEc=", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/jsbn/download/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/json-parse-better-errors/download/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk=", - "dev": true - }, - "json-schema": { - "version": "0.2.3", - "resolved": "http://registry.npm.taobao.org/json-schema/download/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true, - "optional": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "http://registry.npm.taobao.org/json-schema-traverse/download/json-schema-traverse-0.4.1.tgz", - "integrity": "sha1-afaofZUTq4u4/mO9sJecRI5oRmA=", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "http://registry.npm.taobao.org/json-stringify-safe/download/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true, - "optional": true - }, - "json2mq": { - "version": "0.2.0", - "resolved": "http://registry.npm.taobao.org/json2mq/download/json2mq-0.2.0.tgz", - "integrity": "sha1-tje9O6nqvhIsg+lyBIOusQ0skEo=", - "dev": true, - "requires": { - "string-convert": "^0.2.0" - } - }, - "json3": { - "version": "3.3.2", - "resolved": "http://registry.npm.taobao.org/json3/download/json3-3.3.2.tgz", - "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/json5/download/json5-1.0.1.tgz", - "integrity": "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "jsprim": { - "version": "1.4.1", - "resolved": "http://registry.npm.taobao.org/jsprim/download/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "killable": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/killable/download/killable-1.0.1.tgz", - "integrity": "sha1-TIzkQRh6Bhx0dPuHygjipjgZSJI=", - "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=", - "dev": true - }, - "last-call-webpack-plugin": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/last-call-webpack-plugin/download/last-call-webpack-plugin-3.0.0.tgz", - "integrity": "sha1-l0LfDhDjz0blwDgcLekNOnotdVU=", - "dev": true, - "requires": { - "lodash": "^4.17.5", - "webpack-sources": "^1.1.0" - } - }, - "lcid": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/lcid/download/lcid-2.0.0.tgz", - "integrity": "sha1-bvXS32DlL4LrIopMNz6NHzlyU88=", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "less": { - "version": "3.9.0", - "resolved": "http://registry.npm.taobao.org/less/download/less-3.9.0.tgz", - "integrity": "sha1-t1EcQ/N89X3Iff/ZiD7BISibFHQ=", - "dev": true, - "requires": { - "clone": "^2.1.2", - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "mime": "^1.4.1", - "mkdirp": "^0.5.0", - "promise": "^7.1.1", - "request": "^2.83.0", - "source-map": "~0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true, - "optional": true - } - } - }, - "less-loader": { - "version": "4.1.0", - "resolved": "http://registry.npm.taobao.org/less-loader/download/less-loader-4.1.0.tgz", - "integrity": "sha1-LBNSxbCaT4QQFJAnT9UWdN5BNj4=", - "dev": true, - "requires": { - "clone": "^2.1.1", - "loader-utils": "^1.1.0", - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "loader-runner": { - "version": "2.4.0", - "resolved": "http://registry.npm.taobao.org/loader-runner/download/loader-runner-2.4.0.tgz", - "integrity": "sha1-7UcGa/5TTX6ExMe5mYwqdWB9k1c=", - "dev": true - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "http://registry.npm.taobao.org/loader-utils/download/loader-utils-1.2.3.tgz", - "integrity": "sha1-H/XcaRHJ8KBiUxpMBLYJQGEIwsc=", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/locate-path/download/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "http://registry.npm.taobao.org/lodash/download/lodash-4.17.11.tgz", - "integrity": "sha1-s56mIp72B+zYniyN8SU2iRysm40=", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npm.taobao.org/lodash.debounce/download/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "http://registry.npm.taobao.org/lodash.memoize/download/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", - "dev": true - }, - "lodash.throttle": { - "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/lodash.throttle/download/lodash.throttle-4.1.1.tgz", - "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", - "dev": true - }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "http://registry.npm.taobao.org/lodash.uniq/download/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true - }, - "loglevel": { - "version": "1.6.1", - "resolved": "http://registry.npm.taobao.org/loglevel/download/loglevel-1.6.1.tgz", - "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "http://registry.npm.taobao.org/loose-envify/download/loose-envify-1.4.0.tgz", - "integrity": "sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8=", - "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "lower-case": { - "version": "1.1.4", - "resolved": "http://registry.npm.taobao.org/lower-case/download/lower-case-1.1.4.tgz", - "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", - "dev": true - }, - "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" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/make-dir/download/make-dir-2.1.0.tgz", - "integrity": "sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU=", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "mamacro": { - "version": "0.0.3", - "resolved": "http://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": "http://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", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/map-visit/download/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "md5.js": { - "version": "1.3.5", - "resolved": "http://registry.npm.taobao.org/md5.js/download/md5.js-1.3.5.tgz", - "integrity": "sha1-tdB7jjIW4+J81yjXL3DR5qNCAF8=", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "mdn-data": { - "version": "1.1.4", - "resolved": "http://registry.npm.taobao.org/mdn-data/download/mdn-data-1.1.4.tgz", - "integrity": "sha1-ULXU/8RXUnZXPE7tuHgIEqhBnwE=", - "dev": true - }, - "media-typer": { - "version": "0.3.0", - "resolved": "http://registry.npm.taobao.org/media-typer/download/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true - }, - "mem": { - "version": "4.3.0", - "resolved": "http://registry.npm.taobao.org/mem/download/mem-4.3.0.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fmem%2Fdownload%2Fmem-4.3.0.tgz", - "integrity": "sha1-Rhr0l7xK4JYIzbLmDu+2m/90QXg=", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - } - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "http://registry.npm.taobao.org/memory-fs/download/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/merge-descriptors/download/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "http://registry.npm.taobao.org/methods/download/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true - }, - "micromatch": { - "version": "3.1.10", - "resolved": "http://registry.npm.taobao.org/micromatch/download/micromatch-3.1.10.tgz", - "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/miller-rabin/download/miller-rabin-4.0.1.tgz", - "integrity": "sha1-8IA1HIZbDcViqEYpZtqlNUPHik0=", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "http://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz", - "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=", - "dev": true, - "optional": true - }, - "mime-db": { - "version": "1.39.0", - "resolved": "http://registry.npm.taobao.org/mime-db/download/mime-db-1.39.0.tgz", - "integrity": "sha1-+VogJ1dC99KtBCms/kD0IzVDeA4=", - "dev": true - }, - "mime-types": { - "version": "2.1.23", - "resolved": "http://registry.npm.taobao.org/mime-types/download/mime-types-2.1.23.tgz", - "integrity": "sha1-1OrNh96ZNIpoWP4eR5qth3OI2Xc=", - "dev": true, - "requires": { - "mime-db": "~1.39.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/mimic-fn/download/mimic-fn-2.1.0.tgz", - "integrity": "sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs=", - "dev": true - }, - "min-document": { - "version": "2.19.0", - "resolved": "http://registry.npm.taobao.org/min-document/download/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", - "dev": true, - "requires": { - "dom-walk": "^0.1.0" - } - }, - "mini-css-extract-plugin": { - "version": "0.6.0", - "resolved": "http://registry.npm.taobao.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.6.0.tgz", - "integrity": "sha1-o/Ezctb83pEvPuTNA5ZlcEgB47k=", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "normalize-url": "^2.0.1", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" - } - }, - "mini-store": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/mini-store/download/mini-store-2.0.0.tgz", - "integrity": "sha1-CEPASNaULOVePnixtn/AYwIrVIg=", - "dev": true, - "requires": { - "hoist-non-react-statics": "^2.3.1", - "prop-types": "^15.6.0", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.0.2" - }, - "dependencies": { - "hoist-non-react-statics": { - "version": "2.5.5", - "resolved": "http://registry.npm.taobao.org/hoist-non-react-statics/download/hoist-non-react-statics-2.5.5.tgz", - "integrity": "sha1-xZA89AnA39kI84jmGdhrnBF0y0c=", - "dev": true - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/minimalistic-assert/download/minimalistic-assert-1.0.1.tgz", - "integrity": "sha1-LhlN4ERibUoQ5/f7wAznPoPk1cc=", - "dev": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/minimalistic-crypto-utils/download/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "http://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz", - "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "mississippi": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/mississippi/download/mississippi-3.0.0.tgz", - "integrity": "sha1-6goykfl+C16HdrNj1fChLZTGcCI=", - "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, - "mixin-deep": { - "version": "1.3.1", - "resolved": "http://registry.npm.taobao.org/mixin-deep/download/mixin-deep-1.3.1.tgz", - "integrity": "sha1-pJ5yaNzhoNlpjkUybFYm3zVD0P4=", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", - "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "http://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "http://registry.npm.taobao.org/minimist/download/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - } - } - }, - "mobx": { - "version": "5.9.4", - "resolved": "http://registry.npm.taobao.org/mobx/download/mobx-5.9.4.tgz", - "integrity": "sha1-He6Sq6M/Z7e67rZ54703ahLlWBI=", - "dev": true - }, - "mobx-react": { - "version": "5.4.3", - "resolved": "http://registry.npm.taobao.org/mobx-react/download/mobx-react-5.4.3.tgz", - "integrity": "sha1-Zwm33YlnDEDpgVkUrCyknMAr+0c=", - "dev": true, - "requires": { - "hoist-non-react-statics": "^3.0.0", - "react-lifecycles-compat": "^3.0.2" - } - }, - "moment": { - "version": "2.24.0", - "resolved": "http://registry.npm.taobao.org/moment/download/moment-2.24.0.tgz", - "integrity": "sha1-DQVdU/UFKqZTyfbraLtdEr9cK1s=", - "dev": true - }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz", - "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=", - "dev": true - }, - "multicast-dns": { - "version": "6.2.3", - "resolved": "http://registry.npm.taobao.org/multicast-dns/download/multicast-dns-6.2.3.tgz", - "integrity": "sha1-oOx72QVcQoL3kMPIL04o2zsxsik=", - "dev": true, - "requires": { - "dns-packet": "^1.3.1", - "thunky": "^1.0.2" - } - }, - "multicast-dns-service-types": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/multicast-dns-service-types/download/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", - "dev": true - }, - "mutationobserver-shim": { - "version": "0.3.5", - "resolved": "https://registry.npm.taobao.org/mutationobserver-shim/download/mutationobserver-shim-0.3.5.tgz?cache=0&sync_timestamp=1585656350833&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmutationobserver-shim%2Fdownload%2Fmutationobserver-shim-0.3.5.tgz", - "integrity": "sha1-bzXOhYZ7IaoeWPeIktCrTu6ULA4=", - "dev": true - }, - "nan": { - "version": "2.13.2", - "resolved": "http://registry.npm.taobao.org/nan/download/nan-2.13.2.tgz", - "integrity": "sha1-9R3Hrma6fV1V4ebU2AkugCya7+c=", - "dev": true, - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "http://registry.npm.taobao.org/nanomatch/download/nanomatch-1.2.13.tgz", - "integrity": "sha1-uHqKpPwN6P5r6IiVs4mD/yZb0Rk=", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "negotiator": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/negotiator/download/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", - "dev": true - }, - "neo-async": { - "version": "2.6.0", - "resolved": "http://registry.npm.taobao.org/neo-async/download/neo-async-2.6.0.tgz", - "integrity": "sha1-udFeTXHGdikIZUtRg+04t1M0CDU=", - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "resolved": "http://registry.npm.taobao.org/nice-try/download/nice-try-1.0.5.tgz", - "integrity": "sha1-ozeKdpbOfSI+iPybdkvX7xCJ42Y=", - "dev": true - }, - "no-case": { - "version": "2.3.2", - "resolved": "http://registry.npm.taobao.org/no-case/download/no-case-2.3.2.tgz", - "integrity": "sha1-YLgTOWvjmz8SiKTB7V0efSi0ZKw=", - "dev": true, - "requires": { - "lower-case": "^1.1.1" - } - }, - "node-fetch": { - "version": "1.7.3", - "resolved": "http://registry.npm.taobao.org/node-fetch/download/node-fetch-1.7.3.tgz", - "integrity": "sha1-mA9vcthSEaU0fGsrwYxbhMPrR+8=", - "dev": true, - "requires": { - "encoding": "^0.1.11", - "is-stream": "^1.0.1" - } - }, - "node-forge": { - "version": "0.7.5", - "resolved": "http://registry.npm.taobao.org/node-forge/download/node-forge-0.7.5.tgz", - "integrity": "sha1-bBUsNFzhHFL0ZcKr2VfoY5zWdN8=", - "dev": true - }, - "node-libs-browser": { - "version": "2.2.0", - "resolved": "http://registry.npm.taobao.org/node-libs-browser/download/node-libs-browser-2.2.0.tgz", - "integrity": "sha1-xy9g2dRt4IqUDe27JfP/ovm7qnc=", - "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.0", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "0.0.4" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "process": { - "version": "0.11.10", - "resolved": "http://registry.npm.taobao.org/process/download/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true - }, - "punycode": { - "version": "1.4.1", - "resolved": "http://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - }, - "dependencies": { - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - } - } - }, - "node-releases": { - "version": "1.1.15", - "resolved": "http://registry.npm.taobao.org/node-releases/download/node-releases-1.1.15.tgz", - "integrity": "sha1-nnanOw7KO/eAGt2qDmzpDHlfK5o=", - "dev": true, - "requires": { - "semver": "^5.3.0" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/normalize-path/download/normalize-path-3.0.0.tgz", - "integrity": "sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU=", - "dev": true - }, - "normalize-url": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/normalize-url/download/normalize-url-2.0.1.tgz", - "integrity": "sha1-g1qdoVUfom9w6SMpBpojqmV01+Y=", - "dev": true, - "requires": { - "prepend-http": "^2.0.0", - "query-string": "^5.0.1", - "sort-keys": "^2.0.0" - } - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/npm-run-path/download/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "nth-check": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/nth-check/download/nth-check-1.0.2.tgz", - "integrity": "sha1-sr0pXDfj3VijvwcAN2Zjuk2c8Fw=", - "dev": true, - "requires": { - "boolbase": "~1.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/number-is-nan/download/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "http://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz", - "integrity": "sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU=", - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "http://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "http://registry.npm.taobao.org/object-copy/download/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-keys": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/object-keys/download/object-keys-1.1.1.tgz", - "integrity": "sha1-HEfyct8nfzsdrwYWd9nILiMixg4=", - "dev": true - }, - "object-visit": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "http://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "http://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "object.values": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/object.values/download/object.values-1.1.0.tgz", - "integrity": "sha1-v2gQ712j5TJXkOqqK+IT6oRiTak=", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.12.0", - "function-bind": "^1.1.1", - "has": "^1.0.3" - } - }, - "obuf": { - "version": "1.1.2", - "resolved": "http://registry.npm.taobao.org/obuf/download/obuf-1.1.2.tgz", - "integrity": "sha1-Cb6jND1BhZ69RGKS0RydTbYZCE4=", - "dev": true - }, - "omit.js": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/omit.js/download/omit.js-1.0.2.tgz", - "integrity": "sha1-kaFPDrqEBm36AVvzDkdMR/MLyFg=", - "dev": true, - "requires": { - "babel-runtime": "^6.23.0" - } - }, - "on-finished": { - "version": "2.3.0", - "resolved": "http://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/on-headers/download/on-headers-1.0.2.tgz", - "integrity": "sha1-dysK5qqlJcOZ5Imt+tkMQD6zwo8=", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "http://registry.npm.taobao.org/once/download/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "opn": { - "version": "5.5.0", - "resolved": "http://registry.npm.taobao.org/opn/download/opn-5.5.0.tgz", - "integrity": "sha1-/HFk+rVtI1kExRw7J9pnWMo7m/w=", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "optimize-css-assets-webpack-plugin": { - "version": "5.0.1", - "resolved": "http://registry.npm.taobao.org/optimize-css-assets-webpack-plugin/download/optimize-css-assets-webpack-plugin-5.0.1.tgz", - "integrity": "sha1-nrUAcR01FltF5/1gui30DLPrkVk=", - "dev": true, - "requires": { - "cssnano": "^4.1.0", - "last-call-webpack-plugin": "^3.0.0" - } - }, - "original": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/original/download/original-1.0.2.tgz", - "integrity": "sha1-5EKmHP/hxf0gpl8yYcJmY7MD8l8=", - "dev": true, - "requires": { - "url-parse": "^1.4.3" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "http://registry.npm.taobao.org/os-browserify/download/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "os-locale": { - "version": "3.1.0", - "resolved": "http://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" - } - }, - "p-defer": { - "version": "1.0.0", - "resolved": "http://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": "http://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": "http://registry.npm.taobao.org/p-is-promise/download/p-is-promise-2.1.0.tgz", - "integrity": "sha1-kYzrrqJIpiz3/6uOO8qMX4gvxC4=", - "dev": true - }, - "p-limit": { - "version": "2.2.0", - "resolved": "http://registry.npm.taobao.org/p-limit/download/p-limit-2.2.0.tgz", - "integrity": "sha1-QXyZQeYCepq8ulCS3SkE4lW1+8I=", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/p-locate/download/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-map": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/p-map/download/p-map-2.1.0.tgz", - "integrity": "sha1-MQko/u+cnsxltosXaTAYpmXOoXU=", - "dev": true - }, - "p-try": { - "version": "2.2.0", - "resolved": "http://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz", - "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", - "dev": true - }, - "pako": { - "version": "1.0.10", - "resolved": "http://registry.npm.taobao.org/pako/download/pako-1.0.10.tgz", - "integrity": "sha1-Qyi621CGpCaqkPVBl31JVdpclzI=", - "dev": true - }, - "parallel-transform": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/parallel-transform/download/parallel-transform-1.1.0.tgz", - "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", - "dev": true, - "requires": { - "cyclist": "~0.2.2", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "param-case": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/param-case/download/param-case-2.1.1.tgz", - "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", - "dev": true, - "requires": { - "no-case": "^2.2.0" - } - }, - "parse-asn1": { - "version": "5.1.4", - "resolved": "http://registry.npm.taobao.org/parse-asn1/download/parse-asn1-5.1.4.tgz", - "integrity": "sha1-N/Zij4I/vesic7TVQENKIvPvH8w=", - "dev": true, - "requires": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/parse-json/download/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parse-passwd": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/parse-passwd/download/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": true - }, - "parseurl": { - "version": "1.3.3", - "resolved": "http://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz", - "integrity": "sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ=", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "http://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "path-browserify": { - "version": "0.0.0", - "resolved": "http://registry.npm.taobao.org/path-browserify/download/path-browserify-0.0.0.tgz", - "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/path-dirname/download/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/path-exists/download/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "http://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": "http://registry.npm.taobao.org/path-key/download/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "http://registry.npm.taobao.org/path-parse/download/path-parse-1.0.6.tgz", - "integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw=", - "dev": true - }, - "path-to-regexp": { - "version": "1.7.0", - "resolved": "http://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", - "dev": true, - "requires": { - "isarray": "0.0.1" - } - }, - "pbkdf2": { - "version": "3.0.17", - "resolved": "http://registry.npm.taobao.org/pbkdf2/download/pbkdf2-3.0.17.tgz", - "integrity": "sha1-l2wgZTBhexTrsyEUI597CTNuk6Y=", - "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/performance-now/download/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/pify/download/pify-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", - "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", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/pkg-dir/download/pkg-dir-3.0.0.tgz", - "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "portfinder": { - "version": "1.0.20", - "resolved": "http://registry.npm.taobao.org/portfinder/download/portfinder-1.0.20.tgz", - "integrity": "sha1-vqaGMuVLLhOrewxHdem0G/Jw5Eo=", - "dev": true, - "requires": { - "async": "^1.5.2", - "debug": "^2.2.0", - "mkdirp": "0.5.x" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "http://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.14", - "resolved": "http://registry.npm.taobao.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-calc": { - "version": "7.0.1", - "resolved": "http://registry.npm.taobao.org/postcss-calc/download/postcss-calc-7.0.1.tgz", - "integrity": "sha1-Ntd7qwI7Dsu5eJ2E3LI8SUEUVDY=", - "dev": true, - "requires": { - "css-unit-converter": "^1.1.1", - "postcss": "^7.0.5", - "postcss-selector-parser": "^5.0.0-rc.4", - "postcss-value-parser": "^3.3.1" - }, - "dependencies": { - "cssesc": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/cssesc/download/cssesc-2.0.0.tgz", - "integrity": "sha1-OxO9G7HLNuG8taTc0n9UxdyzVwM=", - "dev": true - }, - "postcss-selector-parser": { - "version": "5.0.0", - "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha1-JJBENWaXsztk8aj3yAki3d7nGVw=", - "dev": true, - "requires": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } - } - }, - "postcss-colormin": { - "version": "4.0.3", - "resolved": "http://registry.npm.taobao.org/postcss-colormin/download/postcss-colormin-4.0.3.tgz", - "integrity": "sha1-rgYLzpPteUrHEmTwgTLVUJVr04E=", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "color": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-convert-values": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/postcss-convert-values/download/postcss-convert-values-4.0.1.tgz", - "integrity": "sha1-yjgT7U2g+BL51DcDWE5Enr4Ymn8=", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-discard-comments": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-discard-comments/download/postcss-discard-comments-4.0.2.tgz", - "integrity": "sha1-H7q9LCRr/2qq15l7KwkY9NevQDM=", - "dev": true, - "requires": { - "postcss": "^7.0.0" - } - }, - "postcss-discard-duplicates": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-discard-duplicates/download/postcss-discard-duplicates-4.0.2.tgz", - "integrity": "sha1-P+EzzTyCKC5VD8myORdqkge3hOs=", - "dev": true, - "requires": { - "postcss": "^7.0.0" - } - }, - "postcss-discard-empty": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/postcss-discard-empty/download/postcss-discard-empty-4.0.1.tgz", - "integrity": "sha1-yMlR6fc+2UKAGUWERKAq2Qu592U=", - "dev": true, - "requires": { - "postcss": "^7.0.0" - } - }, - "postcss-discard-overridden": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/postcss-discard-overridden/download/postcss-discard-overridden-4.0.1.tgz", - "integrity": "sha1-ZSrvipZybwKfXj4AFG7npOdV/1c=", - "dev": true, - "requires": { - "postcss": "^7.0.0" - } - }, - "postcss-merge-longhand": { - "version": "4.0.11", - "resolved": "http://registry.npm.taobao.org/postcss-merge-longhand/download/postcss-merge-longhand-4.0.11.tgz", - "integrity": "sha1-YvSaE+Sg7gTnuY9CuxYGLKJUniQ=", - "dev": true, - "requires": { - "css-color-names": "0.0.4", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "stylehacks": "^4.0.0" - } - }, - "postcss-merge-rules": { - "version": "4.0.3", - "resolved": "http://registry.npm.taobao.org/postcss-merge-rules/download/postcss-merge-rules-4.0.3.tgz", - "integrity": "sha1-NivqT/Wh+Y5AdacTxsslrv75plA=", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "cssnano-util-same-parent": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0", - "vendors": "^1.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", - "dev": true, - "requires": { - "dot-prop": "^4.1.1", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } - } - }, - "postcss-minify-font-values": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-minify-font-values/download/postcss-minify-font-values-4.0.2.tgz", - "integrity": "sha1-zUw0TM5HQ0P6xdgiBqssvLiv1aY=", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-minify-gradients": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-minify-gradients/download/postcss-minify-gradients-4.0.2.tgz", - "integrity": "sha1-k7KcL/UJnFNe7NpWxKpuZlpmNHE=", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "is-color-stop": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-minify-params": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-minify-params/download/postcss-minify-params-4.0.2.tgz", - "integrity": "sha1-a5zvAwwR41Jh+V9hjJADbWgNuHQ=", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "browserslist": "^4.0.0", - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "uniqs": "^2.0.0" - } - }, - "postcss-minify-selectors": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-minify-selectors/download/postcss-minify-selectors-4.0.2.tgz", - "integrity": "sha1-4uXrQL/uUA0M2SQ1APX46kJi+9g=", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", - "dev": true, - "requires": { - "dot-prop": "^4.1.1", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } - } - }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/postcss-modules-extract-imports/download/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha1-gYcZoa4doyX5gyRGsBE27rSTzX4=", - "dev": true, - "requires": { - "postcss": "^7.0.5" - } - }, - "postcss-modules-local-by-default": { - "version": "2.0.6", - "resolved": "http://registry.npm.taobao.org/postcss-modules-local-by-default/download/postcss-modules-local-by-default-2.0.6.tgz", - "integrity": "sha1-3ZlT9t1Ha1/R7y2IMMiSl2C1bmM=", - "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0", - "postcss-value-parser": "^3.3.1" - } - }, - "postcss-modules-scope": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/postcss-modules-scope/download/postcss-modules-scope-2.1.0.tgz", - "integrity": "sha1-rT9b94VhFPb8q5AbBQLiorw51Os=", - "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - } - }, - "postcss-modules-values": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/postcss-modules-values/download/postcss-modules-values-2.0.0.tgz", - "integrity": "sha1-R5tG3Axco9x/pScIUYNrnscVL2Q=", - "dev": true, - "requires": { - "icss-replace-symbols": "^1.1.0", - "postcss": "^7.0.6" - } - }, - "postcss-normalize-charset": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/postcss-normalize-charset/download/postcss-normalize-charset-4.0.1.tgz", - "integrity": "sha1-izWt067oOhNrBHHg1ZvlilAoXdQ=", - "dev": true, - "requires": { - "postcss": "^7.0.0" - } - }, - "postcss-normalize-display-values": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-normalize-display-values/download/postcss-normalize-display-values-4.0.2.tgz", - "integrity": "sha1-Db4EpM6QY9RmftK+R2u4MMglk1o=", - "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-normalize-positions": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-normalize-positions/download/postcss-normalize-positions-4.0.2.tgz", - "integrity": "sha1-BfdX+E8mBDc3g2ipH4ky1LECkX8=", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-normalize-repeat-style": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-normalize-repeat-style/download/postcss-normalize-repeat-style-4.0.2.tgz", - "integrity": "sha1-xOu8KJ85kaAo1EdRy90RkYsXkQw=", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-normalize-string": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-normalize-string/download/postcss-normalize-string-4.0.2.tgz", - "integrity": "sha1-zUTECrB6DHo23F6Zqs4eyk7CaQw=", - "dev": true, - "requires": { - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-normalize-timing-functions": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-normalize-timing-functions/download/postcss-normalize-timing-functions-4.0.2.tgz", - "integrity": "sha1-jgCcoqOUnNr4rSPmtquZy159KNk=", - "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-normalize-unicode": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/postcss-normalize-unicode/download/postcss-normalize-unicode-4.0.1.tgz", - "integrity": "sha1-hBvUj9zzAZrUuqdJOj02O1KuHPs=", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-normalize-url": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/postcss-normalize-url/download/postcss-normalize-url-4.0.1.tgz", - "integrity": "sha1-EOQ3+GvHx+WPe5ZS7YeNqqlfquE=", - "dev": true, - "requires": { - "is-absolute-url": "^2.0.0", - "normalize-url": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "normalize-url": { - "version": "3.3.0", - "resolved": "http://registry.npm.taobao.org/normalize-url/download/normalize-url-3.3.0.tgz", - "integrity": "sha1-suHE3E98bVd0PfczpPWXjRhlBVk=", - "dev": true - } - } - }, - "postcss-normalize-whitespace": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-normalize-whitespace/download/postcss-normalize-whitespace-4.0.2.tgz", - "integrity": "sha1-vx1AcP5Pzqh9E0joJdjMDF+qfYI=", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-ordered-values": { - "version": "4.1.2", - "resolved": "http://registry.npm.taobao.org/postcss-ordered-values/download/postcss-ordered-values-4.1.2.tgz", - "integrity": "sha1-DPdcgg7H1cTSgBiVWeC1ceusDu4=", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-reduce-initial": { - "version": "4.0.3", - "resolved": "http://registry.npm.taobao.org/postcss-reduce-initial/download/postcss-reduce-initial-4.0.3.tgz", - "integrity": "sha1-f9QuvqXpyBRgljniwuhK4nC6SN8=", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0" - } - }, - "postcss-reduce-transforms": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-reduce-transforms/download/postcss-reduce-transforms-4.0.2.tgz", - "integrity": "sha1-F++kBerMbge+NBSlyi0QdGgdTik=", - "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - } - }, - "postcss-selector-parser": { - "version": "6.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-6.0.2.tgz", - "integrity": "sha1-k0z3mdAWyDQRhZ4J3Oyt4BKG7Fw=", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "postcss-svgo": { - "version": "4.0.2", - "resolved": "http://registry.npm.taobao.org/postcss-svgo/download/postcss-svgo-4.0.2.tgz", - "integrity": "sha1-F7mXvHEbMzurFDqu07jT1uPTglg=", - "dev": true, - "requires": { - "is-svg": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "svgo": "^1.0.0" - } - }, - "postcss-unique-selectors": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/postcss-unique-selectors/download/postcss-unique-selectors-4.0.1.tgz", - "integrity": "sha1-lEaRHzKJv9ZMbWgPBzwDsfnuS6w=", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "postcss": "^7.0.0", - "uniqs": "^2.0.0" - } - }, - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "http://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", - "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=", - "dev": true - }, - "prepend-http": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/prepend-http/download/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", - "dev": true - }, - "pretty-error": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/pretty-error/download/pretty-error-2.1.1.tgz", - "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", - "dev": true, - "requires": { - "renderkid": "^2.0.1", - "utila": "~0.4" - } - }, - "printj": { - "version": "1.1.2", - "resolved": "https://registry.npm.taobao.org/printj/download/printj-1.1.2.tgz", - "integrity": "sha1-2Q3rKXWoufYA+zoclOP0xTx4oiI=", - "dev": true - }, - "process": { - "version": "0.5.2", - "resolved": "http://registry.npm.taobao.org/process/download/process-0.5.2.tgz", - "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.0.tgz", - "integrity": "sha1-o31zL0JxtKsa0HDTVQjoKQeI/6o=", - "dev": true - }, - "promise": { - "version": "7.3.1", - "resolved": "http://registry.npm.taobao.org/promise/download/promise-7.3.1.tgz", - "integrity": "sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078=", - "dev": true, - "requires": { - "asap": "~2.0.3" - } - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/promise-inflight/download/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true - }, - "prop-types": { - "version": "15.7.2", - "resolved": "http://registry.npm.taobao.org/prop-types/download/prop-types-15.7.2.tgz", - "integrity": "sha1-UsQedbjIfnK52TYOAga5ncv/psU=", - "dev": true, - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "proxy-addr": { - "version": "2.0.5", - "resolved": "http://registry.npm.taobao.org/proxy-addr/download/proxy-addr-2.0.5.tgz", - "integrity": "sha1-NMvWSi2B9LH9IedvnwbIpFKZ7jQ=", - "dev": true, - "requires": { - "forwarded": "~0.1.2", - "ipaddr.js": "1.9.0" - } - }, - "prr": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/prr/download/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true - }, - "psl": { - "version": "1.1.31", - "resolved": "http://registry.npm.taobao.org/psl/download/psl-1.1.31.tgz", - "integrity": "sha1-6aqG0BAbWxBcvpOsa3hM1UcnYYQ=", - "dev": true, - "optional": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "http://registry.npm.taobao.org/public-encrypt/download/public-encrypt-4.0.3.tgz", - "integrity": "sha1-T8ydd6B+SLp1J+fL4N4z0HATMeA=", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "pump": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/pump/download/pump-3.0.0.tgz", - "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "http://registry.npm.taobao.org/pumpify/download/pumpify-1.5.1.tgz", - "integrity": "sha1-NlE74karJ1cLGjdKXOJ4v9dDcM4=", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/pump/download/pump-2.0.1.tgz", - "integrity": "sha1-Ejma3W5M91Jtlzy8i1zi4pCLOQk=", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/punycode/download/punycode-2.1.1.tgz", - "integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew=", - "dev": true - }, - "q": { - "version": "1.5.1", - "resolved": "http://registry.npm.taobao.org/q/download/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "http://registry.npm.taobao.org/qs/download/qs-6.5.2.tgz", - "integrity": "sha1-yzroBuh0BERYTvFUzo7pjUA/PjY=", - "dev": true - }, - "query-string": { - "version": "5.1.1", - "resolved": "http://registry.npm.taobao.org/query-string/download/query-string-5.1.1.tgz", - "integrity": "sha1-p4wBK3HBfgXy4/ojGd0zBoLvs8s=", - "dev": true, - "requires": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - } - }, - "querystring": { - "version": "0.2.0", - "resolved": "http://registry.npm.taobao.org/querystring/download/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "http://registry.npm.taobao.org/querystring-es3/download/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true - }, - "querystringify": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/querystringify/download/querystringify-2.1.1.tgz", - "integrity": "sha1-YOWl/WSn+L+k0qsu1v30yFutFU4=", - "dev": true - }, - "raf": { - "version": "3.4.1", - "resolved": "http://registry.npm.taobao.org/raf/download/raf-3.4.1.tgz", - "integrity": "sha1-B0LpmkplUvRF1z4+4DKK8P8e3jk=", - "dev": true, - "requires": { - "performance-now": "^2.1.0" - } - }, - "randombytes": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/randombytes/download/randombytes-2.1.0.tgz", - "integrity": "sha1-32+ENy8CcNxlzfYpE0mrekc9Tyo=", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "http://registry.npm.taobao.org/randomfill/download/randomfill-1.0.4.tgz", - "integrity": "sha1-ySGW/IarQr6YPxvzF3giSTHWFFg=", - "dev": true, - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/range-parser/download/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", - "dev": true - }, - "raw-body": { - "version": "2.3.3", - "resolved": "http://registry.npm.taobao.org/raw-body/download/raw-body-2.3.3.tgz", - "integrity": "sha1-GzJOzmtXBuFThVvBFIxlu39uoMM=", - "dev": true, - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.3", - "iconv-lite": "0.4.23", - "unpipe": "1.0.0" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.23", - "resolved": "http://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.23.tgz", - "integrity": "sha1-KXhx9jvlB63Pv8pxXQzQ7thOmmM=", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "rc-align": { - "version": "2.4.5", - "resolved": "http://registry.npm.taobao.org/rc-align/download/rc-align-2.4.5.tgz", - "integrity": "sha1-yUGlhvWdEBfyOkKPC0aGY/txAqs=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "dom-align": "^1.7.0", - "prop-types": "^15.5.8", - "rc-util": "^4.0.4" - } - }, - "rc-animate": { - "version": "2.10.3", - "resolved": "https://registry.npm.taobao.org/rc-animate/download/rc-animate-2.10.3.tgz?cache=0&sync_timestamp=1582632991064&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-animate%2Fdownload%2Frc-animate-2.10.3.tgz", - "integrity": "sha1-Fj1eKSgaT/gtU+55GO7qyFa3Vvk=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "css-animation": "^1.3.2", - "prop-types": "15.x", - "raf": "^3.4.0", - "rc-util": "^4.15.3", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-calendar": { - "version": "9.15.10", - "resolved": "https://registry.npm.taobao.org/rc-calendar/download/rc-calendar-9.15.10.tgz?cache=0&sync_timestamp=1584081756536&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-calendar%2Fdownload%2Frc-calendar-9.15.10.tgz", - "integrity": "sha1-Ic+HuqeJ5YWrF7Ys93GEZXp9A28=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "2.x", - "moment": "2.x", - "prop-types": "^15.5.8", - "rc-trigger": "^2.2.0", - "rc-util": "^4.1.1", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-cascader": { - "version": "0.17.5", - "resolved": "https://registry.npm.taobao.org/rc-cascader/download/rc-cascader-0.17.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-cascader%2Fdownload%2Frc-cascader-0.17.5.tgz", - "integrity": "sha1-T96R0jt2CMQgJjw47unAaH+A99w=", - "dev": true, - "requires": { - "array-tree-filter": "^2.1.0", - "prop-types": "^15.5.8", - "rc-trigger": "^2.2.0", - "rc-util": "^4.0.4", - "react-lifecycles-compat": "^3.0.4", - "shallow-equal": "^1.0.0", - "warning": "^4.0.1" - } - }, - "rc-checkbox": { - "version": "2.1.8", - "resolved": "https://registry.npm.taobao.org/rc-checkbox/download/rc-checkbox-2.1.8.tgz", - "integrity": "sha1-7t2e+cLzr1s7jlzeUlSqia0aiAo=", - "dev": true, - "requires": { - "babel-runtime": "^6.23.0", - "classnames": "2.x", - "prop-types": "15.x", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-collapse": { - "version": "1.11.8", - "resolved": "https://registry.npm.taobao.org/rc-collapse/download/rc-collapse-1.11.8.tgz?cache=0&sync_timestamp=1577417359659&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-collapse%2Fdownload%2Frc-collapse-1.11.8.tgz", - "integrity": "sha1-ZqQAidRpUZ6UJACasckn4hQEHYA=", - "dev": true, - "requires": { - "classnames": "2.x", - "css-animation": "1.x", - "prop-types": "^15.5.6", - "rc-animate": "2.x", - "react-is": "^16.7.0", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.1.0" - } - }, - "rc-dialog": { - "version": "7.6.1", - "resolved": "https://registry.npm.taobao.org/rc-dialog/download/rc-dialog-7.6.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-dialog%2Fdownload%2Frc-dialog-7.6.1.tgz", - "integrity": "sha1-EVRczAuUWTT6dgeXJuDYU+UtcF8=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "rc-animate": "2.x", - "rc-util": "^4.16.1" - } - }, - "rc-drawer": { - "version": "3.1.3", - "resolved": "https://registry.npm.taobao.org/rc-drawer/download/rc-drawer-3.1.3.tgz", - "integrity": "sha1-y8sE1MB/C2by7OEdhH9KG9gOoLc=", - "dev": true, - "requires": { - "classnames": "^2.2.6", - "rc-util": "^4.16.1", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-dropdown": { - "version": "2.4.1", - "resolved": "http://registry.npm.taobao.org/rc-dropdown/download/rc-dropdown-2.4.1.tgz", - "integrity": "sha1-qu9us6UVLN2ZgolcKnjZtfBGzew=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "classnames": "^2.2.6", - "prop-types": "^15.5.8", - "rc-trigger": "^2.5.1", - "react-lifecycles-compat": "^3.0.2" - } - }, - "rc-editor-core": { - "version": "0.8.10", - "resolved": "https://registry.npm.taobao.org/rc-editor-core/download/rc-editor-core-0.8.10.tgz", - "integrity": "sha1-byFbxd+cM/+p9sWzDKc6favoq3w=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "classnames": "^2.2.5", - "draft-js": "^0.10.0", - "immutable": "^3.7.4", - "lodash": "^4.16.5", - "prop-types": "^15.5.8", - "setimmediate": "^1.0.5" - } - }, - "rc-editor-mention": { - "version": "1.1.13", - "resolved": "https://registry.npm.taobao.org/rc-editor-mention/download/rc-editor-mention-1.1.13.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-editor-mention%2Fdownload%2Frc-editor-mention-1.1.13.tgz", - "integrity": "sha1-nxyrEGX4awFSOEAyF5DCqxKsXos=", - "dev": true, - "requires": { - "babel-runtime": "^6.23.0", - "classnames": "^2.2.5", - "dom-scroll-into-view": "^1.2.0", - "draft-js": "~0.10.0", - "immutable": "~3.7.4", - "prop-types": "^15.5.8", - "rc-animate": "^2.3.0", - "rc-editor-core": "~0.8.3" - } - }, - "rc-form": { - "version": "2.4.11", - "resolved": "https://registry.npm.taobao.org/rc-form/download/rc-form-2.4.11.tgz?cache=0&sync_timestamp=1574150698207&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-form%2Fdownload%2Frc-form-2.4.11.tgz", - "integrity": "sha1-Ye465XklloSuMPLEj1Xw8jpdPQg=", - "dev": true, - "requires": { - "async-validator": "~1.11.3", - "babel-runtime": "6.x", - "create-react-class": "^15.5.3", - "dom-scroll-into-view": "1.x", - "hoist-non-react-statics": "^3.3.0", - "lodash": "^4.17.4", - "rc-util": "^4.15.3", - "warning": "^4.0.3" - } - }, - "rc-hammerjs": { - "version": "0.6.9", - "resolved": "http://registry.npm.taobao.org/rc-hammerjs/download/rc-hammerjs-0.6.9.tgz", - "integrity": "sha1-mk3b2hsuyPm5WWCRpqmJhCokOQc=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "hammerjs": "^2.0.8", - "prop-types": "^15.5.9" - } - }, - "rc-input-number": { - "version": "4.5.6", - "resolved": "https://registry.npm.taobao.org/rc-input-number/download/rc-input-number-4.5.6.tgz?cache=0&sync_timestamp=1582780870430&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-input-number%2Fdownload%2Frc-input-number-4.5.6.tgz", - "integrity": "sha1-DVJ2KwrDlDIlbixsXINhAvl5fEY=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.0", - "prop-types": "^15.5.7", - "rc-util": "^4.5.1", - "rmc-feedback": "^2.0.0" - } - }, - "rc-mentions": { - "version": "0.4.2", - "resolved": "https://registry.npm.taobao.org/rc-mentions/download/rc-mentions-0.4.2.tgz?cache=0&sync_timestamp=1586401354443&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-mentions%2Fdownload%2Frc-mentions-0.4.2.tgz", - "integrity": "sha1-wYq3Ae+55LdbOFGgwNLdaYZA4kY=", - "dev": true, - "requires": { - "@ant-design/create-react-context": "^0.2.4", - "classnames": "^2.2.6", - "rc-menu": "^7.4.22", - "rc-trigger": "^2.6.2", - "rc-util": "^4.6.0", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-menu": { - "version": "7.5.5", - "resolved": "https://registry.npm.taobao.org/rc-menu/download/rc-menu-7.5.5.tgz", - "integrity": "sha1-eM3IF9hvw1OhQwuGTT2Wx0iWAMo=", - "dev": true, - "requires": { - "classnames": "2.x", - "dom-scroll-into-view": "1.x", - "mini-store": "^2.0.0", - "mutationobserver-shim": "^0.3.2", - "rc-animate": "^2.10.1", - "rc-trigger": "^2.3.0", - "rc-util": "^4.13.0", - "resize-observer-polyfill": "^1.5.0", - "shallowequal": "^1.1.0" - } - }, - "rc-notification": { - "version": "3.3.1", - "resolved": "http://registry.npm.taobao.org/rc-notification/download/rc-notification-3.3.1.tgz", - "integrity": "sha1-C6o+cPjUCrAVzo+njCYMSQ/HvrQ=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "2.x", - "prop-types": "^15.5.8", - "rc-animate": "2.x", - "rc-util": "^4.0.4" - } - }, - "rc-pagination": { - "version": "1.20.14", - "resolved": "https://registry.npm.taobao.org/rc-pagination/download/rc-pagination-1.20.14.tgz", - "integrity": "sha1-mBwSXr7b5/5ngr0xH4u5yZ6wze0=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "prop-types": "^15.5.7", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-progress": { - "version": "2.5.2", - "resolved": "https://registry.npm.taobao.org/rc-progress/download/rc-progress-2.5.2.tgz", - "integrity": "sha1-qwG6Tl0vo2/J9vBYsQtyDnMVVgw=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "prop-types": "^15.5.8" - } - }, - "rc-rate": { - "version": "2.5.1", - "resolved": "https://registry.npm.taobao.org/rc-rate/download/rc-rate-2.5.1.tgz?cache=0&sync_timestamp=1587022171938&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-rate%2Fdownload%2Frc-rate-2.5.1.tgz", - "integrity": "sha1-Vfxf0j6p3MciULmoiYA0efSEKWE=", - "dev": true, - "requires": { - "classnames": "^2.2.5", - "prop-types": "^15.5.8", - "rc-util": "^4.3.0", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-resize-observer": { - "version": "0.1.3", - "resolved": "https://registry.npm.taobao.org/rc-resize-observer/download/rc-resize-observer-0.1.3.tgz", - "integrity": "sha1-CXGR+cOrGG7ZB7VTum71Zd8Rwkk=", - "dev": true, - "requires": { - "classnames": "^2.2.1", - "rc-util": "^4.13.0", - "resize-observer-polyfill": "^1.5.1" - } - }, - "rc-select": { - "version": "9.2.3", - "resolved": "https://registry.npm.taobao.org/rc-select/download/rc-select-9.2.3.tgz?cache=0&sync_timestamp=1587198113515&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-select%2Fdownload%2Frc-select-9.2.3.tgz", - "integrity": "sha1-ZDQOLW72TovDz8b0aP/ShiVYmsI=", - "dev": true, - "requires": { - "babel-runtime": "^6.23.0", - "classnames": "2.x", - "component-classes": "1.x", - "dom-scroll-into-view": "1.x", - "prop-types": "^15.5.8", - "raf": "^3.4.0", - "rc-animate": "2.x", - "rc-menu": "^7.3.0", - "rc-trigger": "^2.5.4", - "rc-util": "^4.0.4", - "react-lifecycles-compat": "^3.0.2", - "warning": "^4.0.2" - } - }, - "rc-slider": { - "version": "8.7.1", - "resolved": "https://registry.npm.taobao.org/rc-slider/download/rc-slider-8.7.1.tgz", - "integrity": "sha1-ntBzYtyTSJo45lSyG4EirXD9PEI=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.5", - "prop-types": "^15.5.4", - "rc-tooltip": "^3.7.0", - "rc-util": "^4.0.4", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.1.0", - "warning": "^4.0.3" - } - }, - "rc-steps": { - "version": "3.5.0", - "resolved": "https://registry.npm.taobao.org/rc-steps/download/rc-steps-3.5.0.tgz", - "integrity": "sha1-NrKn8fSZB7DZA2OISxhiPK+ftgA=", - "dev": true, - "requires": { - "babel-runtime": "^6.23.0", - "classnames": "^2.2.3", - "lodash": "^4.17.5", - "prop-types": "^15.5.7" - } - }, - "rc-switch": { - "version": "1.9.0", - "resolved": "http://registry.npm.taobao.org/rc-switch/download/rc-switch-1.9.0.tgz", - "integrity": "sha1-qyuHjycTxoE1ikUzkZdsm5WykPc=", - "dev": true, - "requires": { - "classnames": "^2.2.1", - "prop-types": "^15.5.6", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-table": { - "version": "6.10.14", - "resolved": "https://registry.npm.taobao.org/rc-table/download/rc-table-6.10.14.tgz", - "integrity": "sha1-Eunbbxk16BSRyryFb/aA3iHdRR8=", - "dev": true, - "requires": { - "classnames": "^2.2.5", - "component-classes": "^1.2.6", - "lodash": "^4.17.5", - "mini-store": "^2.0.0", - "prop-types": "^15.5.8", - "rc-util": "^4.13.0", - "react-lifecycles-compat": "^3.0.2", - "shallowequal": "^1.0.2" - } - }, - "rc-tabs": { - "version": "9.7.0", - "resolved": "https://registry.npm.taobao.org/rc-tabs/download/rc-tabs-9.7.0.tgz?cache=0&sync_timestamp=1584515941101&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-tabs%2Fdownload%2Frc-tabs-9.7.0.tgz", - "integrity": "sha1-rglpW+9ZY9bmTnvBBSHHbf3YRIs=", - "dev": true, - "requires": { - "@ant-design/create-react-context": "^0.2.4", - "babel-runtime": "6.x", - "classnames": "2.x", - "lodash": "^4.17.5", - "prop-types": "15.x", - "raf": "^3.4.1", - "rc-hammerjs": "~0.6.0", - "rc-util": "^4.0.4", - "react-lifecycles-compat": "^3.0.4", - "resize-observer-polyfill": "^1.5.1", - "warning": "^4.0.3" - } - }, - "rc-time-picker": { - "version": "3.7.3", - "resolved": "https://registry.npm.taobao.org/rc-time-picker/download/rc-time-picker-3.7.3.tgz", - "integrity": "sha1-ZajekECTJQrpyCsCpJBeD5leI+I=", - "dev": true, - "requires": { - "classnames": "2.x", - "moment": "2.x", - "prop-types": "^15.5.8", - "raf": "^3.4.1", - "rc-trigger": "^2.2.0", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-tooltip": { - "version": "3.7.3", - "resolved": "http://registry.npm.taobao.org/rc-tooltip/download/rc-tooltip-3.7.3.tgz", - "integrity": "sha1-KArsavyqROjf8EgPuv+eh/wArsw=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "prop-types": "^15.5.8", - "rc-trigger": "^2.2.2" - } - }, - "rc-tree": { - "version": "2.1.3", - "resolved": "https://registry.npm.taobao.org/rc-tree/download/rc-tree-2.1.3.tgz", - "integrity": "sha1-UhSrGyGhhI65ot3LkZ47xG1tOQs=", - "dev": true, - "requires": { - "@ant-design/create-react-context": "^0.2.4", - "classnames": "2.x", - "prop-types": "^15.5.8", - "rc-animate": "^2.6.0", - "rc-util": "^4.5.1", - "react-lifecycles-compat": "^3.0.4", - "warning": "^4.0.3" - } - }, - "rc-tree-select": { - "version": "2.9.4", - "resolved": "https://registry.npm.taobao.org/rc-tree-select/download/rc-tree-select-2.9.4.tgz", - "integrity": "sha1-aqeU4fDmXGbEBqoKKg50/QpVewk=", - "dev": true, - "requires": { - "classnames": "^2.2.1", - "dom-scroll-into-view": "^1.2.1", - "prop-types": "^15.5.8", - "raf": "^3.4.0", - "rc-animate": "^2.8.2", - "rc-tree": "~2.1.0", - "rc-trigger": "^3.0.0", - "rc-util": "^4.5.0", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.0.2", - "warning": "^4.0.1" - }, - "dependencies": { - "rc-trigger": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/rc-trigger/download/rc-trigger-3.0.0.tgz", - "integrity": "sha1-9tmx2oomsrLR2RKgaHbBpIb1mA8=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "prop-types": "15.x", - "raf": "^3.4.0", - "rc-align": "^2.4.1", - "rc-animate": "^3.0.0-rc.1", - "rc-util": "^4.15.7" - }, - "dependencies": { - "rc-animate": { - "version": "3.0.0-rc.6", - "resolved": "https://registry.npm.taobao.org/rc-animate/download/rc-animate-3.0.0-rc.6.tgz?cache=0&sync_timestamp=1582632991064&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frc-animate%2Fdownload%2Frc-animate-3.0.0-rc.6.tgz", - "integrity": "sha1-BCiO76EY4MriFFNsipA/+qwbw/s=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.5", - "component-classes": "^1.2.6", - "fbjs": "^0.8.16", - "prop-types": "15.x", - "raf": "^3.4.0", - "rc-util": "^4.5.0", - "react-lifecycles-compat": "^3.0.4" - } - } - } - } - } - }, - "rc-trigger": { - "version": "2.6.5", - "resolved": "https://registry.npm.taobao.org/rc-trigger/download/rc-trigger-2.6.5.tgz", - "integrity": "sha1-FAqFfPKL0PoBua7LHialCnAOmIU=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.6", - "prop-types": "15.x", - "rc-align": "^2.4.0", - "rc-animate": "2.x", - "rc-util": "^4.4.0", - "react-lifecycles-compat": "^3.0.4" - } - }, - "rc-upload": { - "version": "2.9.4", - "resolved": "https://registry.npm.taobao.org/rc-upload/download/rc-upload-2.9.4.tgz", - "integrity": "sha1-jjSnOkaNeQf+MZgsOBAORZOFfTI=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.5", - "prop-types": "^15.5.7", - "warning": "4.x" - } - }, - "rc-util": { - "version": "4.20.3", - "resolved": "https://registry.npm.taobao.org/rc-util/download/rc-util-4.20.3.tgz", - "integrity": "sha1-xNTuYXHPaF3HVXJ1KnZDEDJYiNM=", - "dev": true, - "requires": { - "add-dom-event-listener": "^1.1.0", - "prop-types": "^15.5.10", - "react-is": "^16.12.0", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.1.0" - }, - "dependencies": { - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npm.taobao.org/react-is/download/react-is-16.13.1.tgz?cache=0&sync_timestamp=1586484576689&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freact-is%2Fdownload%2Freact-is-16.13.1.tgz", - "integrity": "sha1-eJcppNw23imZ3BVt1sHZwYzqVqQ=", - "dev": true - } - } - }, - "react": { - "version": "16.8.6", - "resolved": "http://registry.npm.taobao.org/react/download/react-16.8.6.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Freact%2Fdownload%2Freact-16.8.6.tgz", - "integrity": "sha1-rWw6lhT9Ok6e9REX9U2IjaAfK74=", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.13.6" - } - }, - "react-hot-loader": { - "version": "4.8.4", - "resolved": "http://registry.npm.taobao.org/react-hot-loader/download/react-hot-loader-4.8.4.tgz", - "integrity": "sha1-NXujQuNn/ULWqHCpwGAcI/oHMMY=", - "dev": true, - "requires": { - "fast-levenshtein": "^2.0.6", - "global": "^4.3.0", - "hoist-non-react-statics": "^3.3.0", - "loader-utils": "^1.1.0", - "lodash": "^4.17.11", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.0.2", - "source-map": "^0.7.3" - } - }, - "react-is": { - "version": "16.8.6", - "resolved": "http://registry.npm.taobao.org/react-is/download/react-is-16.8.6.tgz", - "integrity": "sha1-W7weLSkUHJ+9/tRWND/ivEMKahY=", - "dev": true - }, - "react-lazy-load": { - "version": "3.0.13", - "resolved": "http://registry.npm.taobao.org/react-lazy-load/download/react-lazy-load-3.0.13.tgz", - "integrity": "sha1-OwqS0zbUPT8Nc8vm81sXBQsIuCQ=", - "dev": true, - "requires": { - "eventlistener": "0.0.1", - "lodash.debounce": "^4.0.0", - "lodash.throttle": "^4.0.0", - "prop-types": "^15.5.8" - } - }, - "react-lifecycles-compat": { - "version": "3.0.4", - "resolved": "http://registry.npm.taobao.org/react-lifecycles-compat/download/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha1-TxonOv38jzSIqMUWv9p4+HI1I2I=", - "dev": true - }, - "react-router": { - "version": "5.0.0", - "resolved": "http://registry.npm.taobao.org/react-router/download/react-router-5.0.0.tgz", - "integrity": "sha1-NJhj92n/wvoQ7nMxpCluhrwSh50=", - "dev": true, - "requires": { - "@babel/runtime": "^7.1.2", - "create-react-context": "^0.2.2", - "history": "^4.9.0", - "hoist-non-react-statics": "^3.1.0", - "loose-envify": "^1.3.1", - "path-to-regexp": "^1.7.0", - "prop-types": "^15.6.2", - "react-is": "^16.6.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - } - }, - "react-router-dom": { - "version": "5.0.0", - "resolved": "http://registry.npm.taobao.org/react-router-dom/download/react-router-dom-5.0.0.tgz", - "integrity": "sha1-VCqbhq8mmjfwuHIYxMJeqNzwwHM=", - "dev": true, - "requires": { - "@babel/runtime": "^7.1.2", - "history": "^4.9.0", - "loose-envify": "^1.3.1", - "prop-types": "^15.6.2", - "react-router": "5.0.0", - "tiny-invariant": "^1.0.2", - "tiny-warning": "^1.0.0" - } - }, - "react-slick": { - "version": "0.25.2", - "resolved": "https://registry.npm.taobao.org/react-slick/download/react-slick-0.25.2.tgz", - "integrity": "sha1-VjMbZ9R9i8/i3OtqyrHI/VvR9rw=", - "dev": true, - "requires": { - "classnames": "^2.2.5", - "enquire.js": "^2.1.6", - "json2mq": "^0.2.0", - "lodash.debounce": "^4.0.8", - "resize-observer-polyfill": "^1.5.0" - } - }, - "readable-stream": { - "version": "3.3.0", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-3.3.0.tgz", - "integrity": "sha1-y4ARqtAC63F78EApH+uoVpyYb7k=", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "http://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" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "http://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.11.1.tgz", - "integrity": "sha1-vgWtf5v30i4Fb5cmzuUBf78Z4uk=", - "dev": true - }, - "regex-not": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz", - "integrity": "sha1-H07OJ+ALC2XgJHpoEOaoXYOldSw=", - "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "relateurl": { - "version": "0.2.7", - "resolved": "http://registry.npm.taobao.org/relateurl/download/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", - "dev": true - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/remove-trailing-separator/download/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "renderkid": { - "version": "2.0.3", - "resolved": "http://registry.npm.taobao.org/renderkid/download/renderkid-2.0.3.tgz", - "integrity": "sha1-OAF5wv9a4TZcUivy/Pz/AcW3QUk=", - "dev": true, - "requires": { - "css-select": "^1.1.0", - "dom-converter": "^0.2", - "htmlparser2": "^3.3.0", - "strip-ansi": "^3.0.0", - "utila": "^0.4.0" - } - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "http://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", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, - "request": { - "version": "2.88.0", - "resolved": "http://registry.npm.taobao.org/request/download/request-2.88.0.tgz", - "integrity": "sha1-nC/KT301tZLv5Xx/ClXoEFIST+8=", - "dev": true, - "optional": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/require-directory/download/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/require-main-filename/download/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/requires-port/download/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true - }, - "resize-observer-polyfill": { - "version": "1.5.1", - "resolved": "http://registry.npm.taobao.org/resize-observer-polyfill/download/resize-observer-polyfill-1.5.1.tgz", - "integrity": "sha1-DpAg3T0hAkRY1OvSfiPkAmmBBGQ=", - "dev": true - }, - "resolve": { - "version": "1.10.0", - "resolved": "http://registry.npm.taobao.org/resolve/download/resolve-1.10.0.tgz", - "integrity": "sha1-O9qur0XMB/N1ZW39LlTtCBCxAbo=", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/resolve-cwd/download/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - } - }, - "resolve-dir": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/resolve-dir/download/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - } - }, - "resolve-from": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/resolve-from/download/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - }, - "resolve-pathname": { - "version": "2.2.0", - "resolved": "http://registry.npm.taobao.org/resolve-pathname/download/resolve-pathname-2.2.0.tgz", - "integrity": "sha1-fpriHtgV/WOrGJre7mTcgx7vqHk=", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "http://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "ret": { - "version": "0.1.15", - "resolved": "http://registry.npm.taobao.org/ret/download/ret-0.1.15.tgz", - "integrity": "sha1-uKSCXVvbH8P29Twrwz+BOIaBx7w=", - "dev": true - }, - "rgb-regex": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/rgb-regex/download/rgb-regex-1.0.1.tgz", - "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=", - "dev": true - }, - "rgba-regex": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/rgba-regex/download/rgba-regex-1.0.0.tgz", - "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=", - "dev": true - }, - "rimraf": { - "version": "2.6.3", - "resolved": "http://registry.npm.taobao.org/rimraf/download/rimraf-2.6.3.tgz", - "integrity": "sha1-stEE/g2Psnz54KHNqCYt04M8bKs=", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/ripemd160/download/ripemd160-2.0.2.tgz", - "integrity": "sha1-ocGm9iR1FXe6XQeRTLyShQWFiQw=", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "rmc-feedback": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/rmc-feedback/download/rmc-feedback-2.0.0.tgz", - "integrity": "sha1-y8bLOuY8emNe7w4l5PuvWsNm7qo=", - "dev": true, - "requires": { - "babel-runtime": "6.x", - "classnames": "^2.2.5" - } - }, - "run-queue": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/run-queue/download/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, - "requires": { - "aproba": "^1.1.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "http://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz", - "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=", - "dev": true - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/safe-regex/download/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "http://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz", - "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=", - "dev": true - }, - "sax": { - "version": "1.2.4", - "resolved": "http://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz", - "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=", - "dev": true - }, - "scheduler": { - "version": "0.13.6", - "resolved": "http://registry.npm.taobao.org/scheduler/download/scheduler-0.13.6.tgz", - "integrity": "sha1-RmpOwzJGezGpG5v3TlNHBy5M2Ik=", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz", - "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - }, - "select": { - "version": "1.1.2", - "resolved": "https://registry.npm.taobao.org/select/download/select-1.1.2.tgz", - "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=", - "dev": true - }, - "select-hose": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/select-hose/download/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", - "dev": true - }, - "selfsigned": { - "version": "1.10.4", - "resolved": "http://registry.npm.taobao.org/selfsigned/download/selfsigned-1.10.4.tgz", - "integrity": "sha1-zdfsz8pO12NdR6CL8tXTB0CS4s0=", - "dev": true, - "requires": { - "node-forge": "0.7.5" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "http://registry.npm.taobao.org/semver/download/semver-5.7.0.tgz", - "integrity": "sha1-eQp89v6lRZuslhELKbYEEtyP+Ws=", - "dev": true - }, - "send": { - "version": "0.16.2", - "resolved": "http://registry.npm.taobao.org/send/download/send-0.16.2.tgz", - "integrity": "sha1-bsyh4PjBVtFBWXVZhI32RzCmu8E=", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "~1.6.2", - "mime": "1.4.1", - "ms": "2.0.0", - "on-finished": "~2.3.0", - "range-parser": "~1.2.0", - "statuses": "~1.4.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "mime": { - "version": "1.4.1", - "resolved": "http://registry.npm.taobao.org/mime/download/mime-1.4.1.tgz", - "integrity": "sha1-Eh+evEnjdm8xGnbh+hyAA8SwOqY=", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "serialize-javascript": { - "version": "1.7.0", - "resolved": "http://registry.npm.taobao.org/serialize-javascript/download/serialize-javascript-1.7.0.tgz", - "integrity": "sha1-1uDfsqODKoyURo5usduX5VoZKmU=", - "dev": true - }, - "serve-index": { - "version": "1.9.1", - "resolved": "http://registry.npm.taobao.org/serve-index/download/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/set-blocking/download/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "set-value": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/set-value/download/set-value-2.0.0.tgz", - "integrity": "sha1-ca5KiPD+77v1LR6mBPP7MV67YnQ=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "http://registry.npm.taobao.org/setimmediate/download/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.0.tgz", - "integrity": "sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY=", - "dev": true - }, - "sha.js": { - "version": "2.4.11", - "resolved": "http://registry.npm.taobao.org/sha.js/download/sha.js-2.4.11.tgz", - "integrity": "sha1-N6XPC4HsvGlD3hCbopYNGyZYSuc=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "shallow-equal": { - "version": "1.2.1", - "resolved": "https://registry.npm.taobao.org/shallow-equal/download/shallow-equal-1.2.1.tgz?cache=0&sync_timestamp=1575627899561&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fshallow-equal%2Fdownload%2Fshallow-equal-1.2.1.tgz", - "integrity": "sha1-TBar+lYEOqINBQMk76aJQLDaedo=", - "dev": true - }, - "shallowequal": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/shallowequal/download/shallowequal-1.1.0.tgz", - "integrity": "sha1-GI1SHelbkIdAT9TctosT3wrk5/g=", - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/shebang-command/download/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/shebang-regex/download/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/signal-exit/download/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true - }, - "simple-swizzle": { - "version": "0.2.2", - "resolved": "http://registry.npm.taobao.org/simple-swizzle/download/simple-swizzle-0.2.2.tgz", - "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", - "dev": true, - "requires": { - "is-arrayish": "^0.3.1" - }, - "dependencies": { - "is-arrayish": { - "version": "0.3.2", - "resolved": "http://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.3.2.tgz", - "integrity": "sha1-RXSirlb3qyBolvtDHq7tBm/fjwM=", - "dev": true - } - } - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "http://registry.npm.taobao.org/snapdragon/download/snapdragon-0.8.2.tgz", - "integrity": "sha1-ZJIufFZbDhQgS6GqfWlkJ40lGC0=", - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "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=", - "dev": true - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/snapdragon-node/download/snapdragon-node-2.1.1.tgz", - "integrity": "sha1-bBdfhv8UvbByRWPo88GwIaKGhTs=", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "http://registry.npm.taobao.org/snapdragon-util/download/snapdragon-util-3.0.1.tgz", - "integrity": "sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI=", - "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "sockjs": { - "version": "0.3.19", - "resolved": "http://registry.npm.taobao.org/sockjs/download/sockjs-0.3.19.tgz", - "integrity": "sha1-2Xa76ACve9IK4IWY1YI5NQiZPA0=", - "dev": true, - "requires": { - "faye-websocket": "^0.10.0", - "uuid": "^3.0.1" - } - }, - "sockjs-client": { - "version": "1.3.0", - "resolved": "http://registry.npm.taobao.org/sockjs-client/download/sockjs-client-1.3.0.tgz", - "integrity": "sha1-EvydbLZj2lc509xftuhofalcsXc=", - "dev": true, - "requires": { - "debug": "^3.2.5", - "eventsource": "^1.0.7", - "faye-websocket": "~0.11.1", - "inherits": "^2.0.3", - "json3": "^3.3.2", - "url-parse": "^1.4.3" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "http://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "faye-websocket": { - "version": "0.11.1", - "resolved": "http://registry.npm.taobao.org/faye-websocket/download/faye-websocket-0.11.1.tgz", - "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - } - } - }, - "sort-keys": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/sort-keys/download/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-list-map": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/source-list-map/download/source-list-map-2.0.1.tgz", - "integrity": "sha1-OZO9hzv8SEecyp6jpUeDXHwVSzQ=", - "dev": true - }, - "source-map": { - "version": "0.7.3", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.7.3.tgz", - "integrity": "sha1-UwL4FpAxc1ImVECS5kmB91F1A4M=", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-support": { - "version": "0.5.12", - "resolved": "http://registry.npm.taobao.org/source-map-support/download/source-map-support-0.5.12.tgz", - "integrity": "sha1-tPOxDVGFelrwE4086AA7IBYT1Zk=", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "http://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.1", - "resolved": "https://registry.npm.taobao.org/spark-md5/download/spark-md5-3.0.1.tgz", - "integrity": "sha1-g6DiVXNPKrTlxGblos/JuiqiEk0=", - "dev": true - }, - "spdy": { - "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/spdy/download/spdy-4.0.0.tgz", - "integrity": "sha1-gfIitadDoymqEs6mo5DmDpthPFI=", - "dev": true, - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/spdy-transport/download/spdy-transport-3.0.0.tgz", - "integrity": "sha1-ANSGOmQArXXfkzYaFghgXl3NzzE=", - "dev": true, - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "split-string": { - "version": "3.1.0", - "resolved": "http://registry.npm.taobao.org/split-string/download/split-string-3.1.0.tgz", - "integrity": "sha1-fLCd2jqGWFcFxks5pkZgOGguj+I=", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "ssf": { - "version": "0.10.3", - "resolved": "https://registry.npm.taobao.org/ssf/download/ssf-0.10.3.tgz?cache=0&sync_timestamp=1589000555952&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssf%2Fdownload%2Fssf-0.10.3.tgz", - "integrity": "sha1-jq4fwpyQpVLnkhII+BiS1vd6yys=", - "dev": true, - "requires": { - "frac": "~1.1.2" - } - }, - "sshpk": { - "version": "1.16.1", - "resolved": "http://registry.npm.taobao.org/sshpk/download/sshpk-1.16.1.tgz", - "integrity": "sha1-+2YcC+8ps520B2nuOfpwCT1vaHc=", - "dev": true, - "optional": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "6.0.1", - "resolved": "http://registry.npm.taobao.org/ssri/download/ssri-6.0.1.tgz", - "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "stable": { - "version": "0.1.8", - "resolved": "http://registry.npm.taobao.org/stable/download/stable-0.1.8.tgz", - "integrity": "sha1-g26zyDgv4pNv6vVEYxAXzn1Ho88=", - "dev": true - }, - "static-extend": { - "version": "0.1.2", - "resolved": "http://registry.npm.taobao.org/static-extend/download/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "statuses": { - "version": "1.4.0", - "resolved": "http://registry.npm.taobao.org/statuses/download/statuses-1.4.0.tgz", - "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic=", - "dev": true - }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/stream-browserify/download/stream-browserify-2.0.2.tgz", - "integrity": "sha1-h1IdOKRKp+6RzhzSpH3wy0ndZgs=", - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "stream-each": { - "version": "1.2.3", - "resolved": "http://registry.npm.taobao.org/stream-each/download/stream-each-1.2.3.tgz", - "integrity": "sha1-6+J6DDibBPvMIzZClS4Qcxr6m64=", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-http": { - "version": "2.8.3", - "resolved": "http://registry.npm.taobao.org/stream-http/download/stream-http-2.8.3.tgz", - "integrity": "sha1-stJCRpKIpaJ+xP6JM6z2I95lFPw=", - "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "stream-shift": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", - "dev": true - }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "http://registry.npm.taobao.org/strict-uri-encode/download/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", - "dev": true - }, - "string-convert": { - "version": "0.2.1", - "resolved": "http://registry.npm.taobao.org/string-convert/download/string-convert-0.2.1.tgz", - "integrity": "sha1-aYLMMEn7tM2F+LJFaLnZvznu/5c=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/string-width/download/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "http://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": "http://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string_decoder": { - "version": "1.2.0", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.2.0.tgz", - "integrity": "sha1-/obnOLGVRK/nBGkkOyoe6SQOro0=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "http://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/strip-bom/download/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/strip-eof/download/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "style-loader": { - "version": "0.23.1", - "resolved": "http://registry.npm.taobao.org/style-loader/download/style-loader-0.23.1.tgz", - "integrity": "sha1-y5FUYG8+dxq2xKtjcCahBJF02SU=", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^1.0.0" - } - }, - "stylehacks": { - "version": "4.0.3", - "resolved": "http://registry.npm.taobao.org/stylehacks/download/stylehacks-4.0.3.tgz", - "integrity": "sha1-Zxj8r00eB9ihMYaQiB6NlnJqcdU=", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "http://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", - "dev": true, - "requires": { - "dot-prop": "^4.1.1", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "http://registry.npm.taobao.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "svgo": { - "version": "1.2.2", - "resolved": "http://registry.npm.taobao.org/svgo/download/svgo-1.2.2.tgz", - "integrity": "sha1-AlPTTszyrtStTyg+Ee51GY+dcxY=", - "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.28", - "css-url-regex": "^1.1.0", - "csso": "^3.5.1", - "js-yaml": "^3.13.1", - "mkdirp": "~0.5.1", - "object.values": "^1.1.0", - "sax": "~1.2.4", - "stable": "^0.1.8", - "unquote": "~1.1.1", - "util.promisify": "~1.0.0" - }, - "dependencies": { - "css-select": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/css-select/download/css-select-2.0.2.tgz", - "integrity": "sha1-q0OGzsnh9miFVWSxfDcztDsqXt4=", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^2.1.2", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" - } - }, - "domutils": { - "version": "1.7.0", - "resolved": "http://registry.npm.taobao.org/domutils/download/domutils-1.7.0.tgz", - "integrity": "sha1-Vuo0HoNOBuZ0ivehyyXaZ+qfjCo=", - "dev": true, - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - } - } - }, - "tapable": { - "version": "1.1.3", - "resolved": "http://registry.npm.taobao.org/tapable/download/tapable-1.1.3.tgz", - "integrity": "sha1-ofzMBrWNth/XpF2i2kT186Pme6I=", - "dev": true - }, - "terser": { - "version": "3.17.0", - "resolved": "http://registry.npm.taobao.org/terser/download/terser-3.17.0.tgz", - "integrity": "sha1-+I/77aDetWN/nSSw2mb04VqxDLI=", - "dev": true, - "requires": { - "commander": "^2.19.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.10" - }, - "dependencies": { - "commander": { - "version": "2.20.0", - "resolved": "http://registry.npm.taobao.org/commander/download/commander-2.20.0.tgz", - "integrity": "sha1-1YuytcHuj4ew00ACfp6U4iLFpCI=", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "terser-webpack-plugin": { - "version": "1.2.3", - "resolved": "http://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-1.2.3.tgz", - "integrity": "sha1-P5i8kC+sPl0N5zCGn1BmhWEmLsg=", - "dev": true, - "requires": { - "cacache": "^11.0.2", - "find-cache-dir": "^2.0.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^1.4.0", - "source-map": "^0.6.1", - "terser": "^3.16.1", - "webpack-sources": "^1.1.0", - "worker-farm": "^1.5.2" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "through2": { - "version": "2.0.5", - "resolved": "http://registry.npm.taobao.org/through2/download/through2-2.0.5.tgz", - "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "thunky": { - "version": "1.0.3", - "resolved": "http://registry.npm.taobao.org/thunky/download/thunky-1.0.3.tgz", - "integrity": "sha1-9d9zJFNAewkZHa5z4qjMc/OBqCY=", - "dev": true - }, - "timers-browserify": { - "version": "2.0.10", - "resolved": "http://registry.npm.taobao.org/timers-browserify/download/timers-browserify-2.0.10.tgz", - "integrity": "sha1-HSjj0qrfHVpZlsTp+VYBzQU0gK4=", - "dev": true, - "requires": { - "setimmediate": "^1.0.4" - } - }, - "timsort": { - "version": "0.3.0", - "resolved": "http://registry.npm.taobao.org/timsort/download/timsort-0.3.0.tgz", - "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", - "dev": true - }, - "tiny-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/tiny-emitter/download/tiny-emitter-2.1.0.tgz", - "integrity": "sha1-HRpW7fxRxD6GPLtTgqcjMONVVCM=", - "dev": true - }, - "tiny-invariant": { - "version": "1.0.4", - "resolved": "http://registry.npm.taobao.org/tiny-invariant/download/tiny-invariant-1.0.4.tgz", - "integrity": "sha1-NGtUFf2Ty2lrDE6Klml/9ZD5JGM=", - "dev": true - }, - "tiny-warning": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/tiny-warning/download/tiny-warning-1.0.2.tgz", - "integrity": "sha1-Hfrnce4aBDlr394no63OvGtkiyg=", - "dev": true - }, - "tinycolor2": { - "version": "1.4.1", - "resolved": "http://registry.npm.taobao.org/tinycolor2/download/tinycolor2-1.4.1.tgz", - "integrity": "sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g=", - "dev": true - }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/to-arraybuffer/download/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "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", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "http://registry.npm.taobao.org/to-regex/download/to-regex-3.0.2.tgz", - "integrity": "sha1-E8/dmzNlUvMLUfM6iuG0Knp1mc4=", - "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "http://registry.npm.taobao.org/to-regex-range/download/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "toggle-selection": { - "version": "1.0.6", - "resolved": "http://registry.npm.taobao.org/toggle-selection/download/toggle-selection-1.0.6.tgz", - "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=", - "dev": true - }, - "toposort": { - "version": "1.0.7", - "resolved": "http://registry.npm.taobao.org/toposort/download/toposort-1.0.7.tgz", - "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", - "dev": true - }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "http://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.4.3.tgz", - "integrity": "sha1-U/Nto/R3g7CSWvoG/587FlKA94E=", - "dev": true, - "optional": true, - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "http://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true, - "optional": true - } - } - }, - "ts-loader": { - "version": "5.4.5", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-5.4.5.tgz", - "integrity": "sha512-XYsjfnRQCBum9AMRZpk2rTYSVpdZBpZK+kDh0TeT3kxmQNBDVIeUjdPjY5RZry4eIAb8XHc4gYSUiUWPYvzSRw==", - "dev": true, - "requires": { - "chalk": "^2.3.0", - "enhanced-resolve": "^4.0.0", - "loader-utils": "^1.0.2", - "micromatch": "^3.1.4", - "semver": "^5.0.1" - } - }, - "tsconfig-paths": { - "version": "3.8.0", - "resolved": "http://registry.npm.taobao.org/tsconfig-paths/download/tsconfig-paths-3.8.0.tgz", - "integrity": "sha1-TjQgLVtBlY8mnPVrAe2VuFPVn3I=", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "deepmerge": "^2.0.1", - "json5": "^1.0.1", - "minimist": "^1.2.0", - "strip-bom": "^3.0.0" - } - }, - "tsconfig-paths-webpack-plugin": { - "version": "3.2.0", - "resolved": "http://registry.npm.taobao.org/tsconfig-paths-webpack-plugin/download/tsconfig-paths-webpack-plugin-3.2.0.tgz", - "integrity": "sha1-bnC9QpFa0O+2TTOFFj8MEnDz4E0=", - "dev": true, - "requires": { - "chalk": "^2.3.0", - "enhanced-resolve": "^4.0.0", - "tsconfig-paths": "^3.4.0" - } - }, - "tslib": { - "version": "1.9.3", - "resolved": "http://registry.npm.taobao.org/tslib/download/tslib-1.9.3.tgz", - "integrity": "sha1-1+TdeSRdhUKMTX5IIqeZF5VMooY=", - "dev": true - }, - "tslint": { - "version": "5.16.0", - "resolved": "http://registry.npm.taobao.org/tslint/download/tslint-5.16.0.tgz", - "integrity": "sha1-rmH5xamNKVuaT0VTsbHoMcGYTWc=", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.13.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - } - }, - "tslint-react": { - "version": "3.6.0", - "resolved": "http://registry.npm.taobao.org/tslint-react/download/tslint-react-3.6.0.tgz", - "integrity": "sha1-f0YslcSgr6roJQfwZRf/ApQhlqE=", - "dev": true, - "requires": { - "tsutils": "^2.13.1" - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "http://registry.npm.taobao.org/tsutils/download/tsutils-2.29.0.tgz", - "integrity": "sha1-MrSIUBRnrL7dS4VJhnOggSrKC5k=", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "http://registry.npm.taobao.org/tty-browserify/download/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "http://registry.npm.taobao.org/tunnel-agent/download/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "http://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "type-is": { - "version": "1.6.16", - "resolved": "http://registry.npm.taobao.org/type-is/download/type-is-1.6.16.tgz", - "integrity": "sha1-+JzjQVQcZysl7nrjxz3uOyvlAZQ=", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.18" - } - }, - "typedarray": { - "version": "0.0.6", - "resolved": "http://registry.npm.taobao.org/typedarray/download/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "typescript": { - "version": "3.4.4", - "resolved": "http://registry.npm.taobao.org/typescript/download/typescript-3.4.4.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Ftypescript%2Fdownload%2Ftypescript-3.4.4.tgz", - "integrity": "sha1-qsSgir7KuAkadfEIQv+gYxgY94U=", - "dev": true - }, - "ua-parser-js": { - "version": "0.7.19", - "resolved": "http://registry.npm.taobao.org/ua-parser-js/download/ua-parser-js-0.7.19.tgz", - "integrity": "sha1-lBUb5MCn+x0AGvcCL9rKRkJlnks=", - "dev": true - }, - "uglify-js": { - "version": "3.4.10", - "resolved": "http://registry.npm.taobao.org/uglify-js/download/uglify-js-3.4.10.tgz", - "integrity": "sha1-mtlWPY6zrN+404WX0q8dgV9qdV8=", - "dev": true, - "requires": { - "commander": "~2.19.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.19.0", - "resolved": "http://registry.npm.taobao.org/commander/download/commander-2.19.0.tgz", - "integrity": "sha1-9hmKqE5bg8RgVLlN3tv+1e6f8So=", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "union-value": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/union-value/download/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "http://registry.npm.taobao.org/set-value/download/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } - } - }, - "uniq": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/uniq/download/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true - }, - "uniqs": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/uniqs/download/uniqs-2.0.0.tgz", - "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", - "dev": true - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/unique-filename/download/unique-filename-1.1.1.tgz", - "integrity": "sha1-HWl2k2mtoFgxA6HmrodoG1ZXMjA=", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.1", - "resolved": "http://registry.npm.taobao.org/unique-slug/download/unique-slug-2.0.1.tgz", - "integrity": "sha1-Xp7cbRzo+yZNsYpQfvm9hURFHKY=", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true - }, - "unquote": { - "version": "1.1.1", - "resolved": "http://registry.npm.taobao.org/unquote/download/unquote-1.1.1.tgz", - "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", - "dev": true - }, - "unset-value": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/unset-value/download/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "http://registry.npm.taobao.org/has-value/download/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/isobject/download/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "http://registry.npm.taobao.org/has-values/download/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - } - } - }, - "upath": { - "version": "1.1.2", - "resolved": "http://registry.npm.taobao.org/upath/download/upath-1.1.2.tgz", - "integrity": "sha1-PbZYYA7a7sy+bbXmhNZ+6MKs0Gg=", - "dev": true - }, - "upper-case": { - "version": "1.1.3", - "resolved": "http://registry.npm.taobao.org/upper-case/download/upper-case-1.1.3.tgz", - "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", - "dev": true - }, - "uri-js": { - "version": "4.2.2", - "resolved": "http://registry.npm.taobao.org/uri-js/download/uri-js-4.2.2.tgz", - "integrity": "sha1-lMVA4f93KVbiKZUHwBCupsiDjrA=", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "http://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "url": { - "version": "0.11.0", - "resolved": "http://registry.npm.taobao.org/url/download/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "http://registry.npm.taobao.org/punycode/download/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - } - } - }, - "url-parse": { - "version": "1.4.6", - "resolved": "http://registry.npm.taobao.org/url-parse/download/url-parse-1.4.6.tgz", - "integrity": "sha1-uvkdbmeDyKeV60dokv/vJzf8BFY=", - "dev": true, - "requires": { - "querystringify": "^2.0.0", - "requires-port": "^1.0.0" - } - }, - "use": { - "version": "3.1.1", - "resolved": "http://registry.npm.taobao.org/use/download/use-3.1.1.tgz", - "integrity": "sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8=", - "dev": true - }, - "util": { - "version": "0.11.1", - "resolved": "http://registry.npm.taobao.org/util/download/util-0.11.1.tgz", - "integrity": "sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE=", - "dev": true, - "requires": { - "inherits": "2.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "util.promisify": { - "version": "1.0.0", - "resolved": "http://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" - } - }, - "utila": { - "version": "0.4.0", - "resolved": "http://registry.npm.taobao.org/utila/download/utila-0.4.0.tgz", - "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "http://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true - }, - "uuid": { - "version": "3.3.2", - "resolved": "http://registry.npm.taobao.org/uuid/download/uuid-3.3.2.tgz", - "integrity": "sha1-G0r0lV6zB3xQHCOHL8ZROBFYcTE=", - "dev": true - }, - "v8-compile-cache": { - "version": "2.0.2", - "resolved": "http://registry.npm.taobao.org/v8-compile-cache/download/v8-compile-cache-2.0.2.tgz", - "integrity": "sha1-pCiyi7JnkHNMT8i8n6EG/M6/amw=", - "dev": true - }, - "value-equal": { - "version": "0.4.0", - "resolved": "http://registry.npm.taobao.org/value-equal/download/value-equal-0.4.0.tgz", - "integrity": "sha1-xb3S9U7gk8BIOdcc4uR1imiQq8c=", - "dev": true - }, - "vary": { - "version": "1.1.2", - "resolved": "http://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true - }, - "vendors": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/vendors/download/vendors-1.0.2.tgz", - "integrity": "sha1-f8te759WI7FWvOqJ7DfWNnbyGAE=", - "dev": true - }, - "verror": { - "version": "1.10.0", - "resolved": "http://registry.npm.taobao.org/verror/download/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "optional": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vm-browserify": { - "version": "0.0.4", - "resolved": "http://registry.npm.taobao.org/vm-browserify/download/vm-browserify-0.0.4.tgz", - "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", - "dev": true, - "requires": { - "indexof": "0.0.1" - } - }, - "warning": { - "version": "4.0.3", - "resolved": "http://registry.npm.taobao.org/warning/download/warning-4.0.3.tgz", - "integrity": "sha1-Fungd+uKhtavfWSqHgX9hbRnjKM=", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "watchpack": { - "version": "1.6.0", - "resolved": "http://registry.npm.taobao.org/watchpack/download/watchpack-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" - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "http://registry.npm.taobao.org/wbuf/download/wbuf-1.7.3.tgz", - "integrity": "sha1-wdjRSTFtPqhShIiVy2oL/oh7h98=", - "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "webpack": { - "version": "4.30.0", - "resolved": "http://registry.npm.taobao.org/webpack/download/webpack-4.30.0.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack%2Fdownload%2Fwebpack-4.30.0.tgz", - "integrity": "sha1-rKdu91YwoixJ/MI1s5tMV1kdM6k=", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/wasm-edit": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "acorn": "^6.0.5", - "acorn-dynamic-import": "^4.0.0", - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0", - "chrome-trace-event": "^1.0.0", - "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.0", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.3.0", - "loader-utils": "^1.1.0", - "memory-fs": "~0.4.1", - "micromatch": "^3.1.8", - "mkdirp": "~0.5.0", - "neo-async": "^2.5.0", - "node-libs-browser": "^2.0.0", - "schema-utils": "^1.0.0", - "tapable": "^1.1.0", - "terser-webpack-plugin": "^1.1.0", - "watchpack": "^1.5.0", - "webpack-sources": "^1.3.0" - } - }, - "webpack-cli": { - "version": "3.3.0", - "resolved": "http://registry.npm.taobao.org/webpack-cli/download/webpack-cli-3.3.0.tgz", - "integrity": "sha1-VcinTK4eiBF/ndo6gBxycuk8oxg=", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "enhanced-resolve": "^4.1.0", - "findup-sync": "^2.0.0", - "global-modules": "^1.0.0", - "import-local": "^2.0.0", - "interpret": "^1.1.0", - "loader-utils": "^1.1.0", - "supports-color": "^5.5.0", - "v8-compile-cache": "^2.0.2", - "yargs": "^12.0.5" - } - }, - "webpack-dev-middleware": { - "version": "3.6.2", - "resolved": "http://registry.npm.taobao.org/webpack-dev-middleware/download/webpack-dev-middleware-3.6.2.tgz", - "integrity": "sha1-83onrXwJzX3GfNl2VUE6uqH1WUI=", - "dev": true, - "requires": { - "memory-fs": "^0.4.1", - "mime": "^2.3.1", - "range-parser": "^1.0.3", - "webpack-log": "^2.0.0" - }, - "dependencies": { - "mime": { - "version": "2.4.2", - "resolved": "http://registry.npm.taobao.org/mime/download/mime-2.4.2.tgz", - "integrity": "sha1-zlIppemf/DE6usgGtILBDnumrHg=", - "dev": true - } - } - }, - "webpack-dev-server": { - "version": "3.3.1", - "resolved": "http://registry.npm.taobao.org/webpack-dev-server/download/webpack-dev-server-3.3.1.tgz", - "integrity": "sha1-cEbkne1cElWoLF2UK83aVStypi0=", - "dev": true, - "requires": { - "ansi-html": "0.0.7", - "bonjour": "^3.5.0", - "chokidar": "^2.1.5", - "compression": "^1.7.4", - "connect-history-api-fallback": "^1.6.0", - "debug": "^4.1.1", - "del": "^4.1.0", - "express": "^4.16.4", - "html-entities": "^1.2.1", - "http-proxy-middleware": "^0.19.1", - "import-local": "^2.0.0", - "internal-ip": "^4.2.0", - "ip": "^1.1.5", - "killable": "^1.0.1", - "loglevel": "^1.6.1", - "opn": "^5.5.0", - "portfinder": "^1.0.20", - "schema-utils": "^1.0.0", - "selfsigned": "^1.10.4", - "semver": "^6.0.0", - "serve-index": "^1.9.1", - "sockjs": "0.3.19", - "sockjs-client": "1.3.0", - "spdy": "^4.0.0", - "strip-ansi": "^3.0.1", - "supports-color": "^6.1.0", - "url": "^0.11.0", - "webpack-dev-middleware": "^3.6.2", - "webpack-log": "^2.0.0", - "yargs": "12.0.5" - }, - "dependencies": { - "semver": { - "version": "6.0.0", - "resolved": "http://registry.npm.taobao.org/semver/download/semver-6.0.0.tgz", - "integrity": "sha1-BeNZ7lceWtftZBpu7B5Ue6Ut6mU=", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://registry.npm.taobao.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "webpack-log": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/webpack-log/download/webpack-log-2.0.0.tgz", - "integrity": "sha1-W3ko4GN1k/EZ0y9iJ8HgrDHhtH8=", - "dev": true, - "requires": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" - } - }, - "webpack-sources": { - "version": "1.3.0", - "resolved": "http://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.3.0.tgz", - "integrity": "sha1-KijcufH0X+lg2PFJMlK17mUw+oU=", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "websocket-driver": { - "version": "0.7.0", - "resolved": "http://registry.npm.taobao.org/websocket-driver/download/websocket-driver-0.7.0.tgz", - "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", - "dev": true, - "requires": { - "http-parser-js": ">=0.4.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.3", - "resolved": "http://registry.npm.taobao.org/websocket-extensions/download/websocket-extensions-0.1.3.tgz", - "integrity": "sha1-XS/yKXcAPsaHpLhwc9+7rBRszyk=", - "dev": true - }, - "whatwg-fetch": { - "version": "3.0.0", - "resolved": "http://registry.npm.taobao.org/whatwg-fetch/download/whatwg-fetch-3.0.0.tgz", - "integrity": "sha1-/IBORYzEYACbGiuWa8iBfSV4rvs=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "http://registry.npm.taobao.org/which/download/which-1.3.1.tgz", - "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "http://registry.npm.taobao.org/which-module/download/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wmf": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/wmf/download/wmf-1.0.2.tgz", - "integrity": "sha1-fRnWIQcaCMK9xrfmiKnENSmMwto=", - "dev": true - }, - "worker-farm": { - "version": "1.6.0", - "resolved": "http://registry.npm.taobao.org/worker-farm/download/worker-farm-1.6.0.tgz", - "integrity": "sha1-rsxAWXb6talVJhgIRvDboojzpKA=", - "dev": true, - "requires": { - "errno": "~0.1.7" - } - }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "http://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-2.1.0.tgz?cache=0&other_urls=http%3A%2F%2Fregistry.npm.taobao.org%2Fwrap-ansi%2Fdownload%2Fwrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "http://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "http://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" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "http://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "xlsx": { - "version": "0.16.1", - "resolved": "https://registry.npm.taobao.org/xlsx/download/xlsx-0.16.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxlsx%2Fdownload%2Fxlsx-0.16.1.tgz", - "integrity": "sha1-+xpZ0sSlQKCFVkkux4b5j5c/EmA=", - "dev": true, - "requires": { - "adler-32": "~1.2.0", - "cfb": "^1.1.4", - "codepage": "~1.14.0", - "commander": "~2.17.1", - "crc-32": "~1.2.0", - "exit-on-epipe": "~1.0.1", - "ssf": "~0.10.3", - "wmf": "~1.0.1" - } - }, - "xtend": { - "version": "4.0.1", - "resolved": "http://registry.npm.taobao.org/xtend/download/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true - }, - "y18n": { - "version": "4.0.0", - "resolved": "http://registry.npm.taobao.org/y18n/download/y18n-4.0.0.tgz", - "integrity": "sha1-le+U+F7MgdAHwmThkKEg8KPIVms=", - "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 - }, - "yargs": { - "version": "12.0.5", - "resolved": "http://registry.npm.taobao.org/yargs/download/yargs-12.0.5.tgz", - "integrity": "sha1-BfWZe2CWR7ZPZrgeO0sQo2jnrRM=", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - }, - "yargs-parser": { - "version": "11.1.1", - "resolved": "http://registry.npm.taobao.org/yargs-parser/download/yargs-parser-11.1.1.tgz", - "integrity": "sha1-h5oIZZc7yp9rq1y987HGfsfTvPQ=", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "zrender": { - "version": "4.3.0", - "resolved": "https://registry.npm.taobao.org/zrender/download/zrender-4.3.0.tgz", - "integrity": "sha1-nwVhIbILuuREFNKHv2oRn/cEJmE=", - "dev": true - } - } -} diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eResult.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eResult.java deleted file mode 100644 index 5988d654..00000000 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eResult.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.xiaojukeji.kafka.manager.account.common.entry; - -/** - * @author zengqiao - * @date 20/9/7 - */ -public class N9eResult { - private T dat; - - private String err; - - public T getDat() { - return dat; - } - - public void setDat(T dat) { - this.dat = dat; - } - - public String getErr() { - return err; - } - - public void setErr(String err) { - this.err = err; - } - - @Override - public String toString() { - return "N9eResult{" + - "dat=" + dat + - ", err='" + err + '\'' + - '}'; - } -} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eUserData.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eUserData.java deleted file mode 100644 index f952b55d..00000000 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/common/entry/N9eUserData.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.xiaojukeji.kafka.manager.account.common.entry; - -/** - * @author zengqiao - * @date 20/9/7 - */ -public class N9eUserData { - private Long id; - - private String uuid; - - private String username; - - private String dispname; - - private String phone; - - private String email; - - private String im; - - private String portrait; - - private Integer is_root; - - private Integer leader_id; - - private String leader_name; - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getUuid() { - return uuid; - } - - public void setUuid(String uuid) { - this.uuid = uuid; - } - - public String getUsername() { - return username; - } - - public void setUsername(String username) { - this.username = username; - } - - public String getDispname() { - return dispname; - } - - public void setDispname(String dispname) { - this.dispname = dispname; - } - - public String getPhone() { - return phone; - } - - public void setPhone(String phone) { - this.phone = phone; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getIm() { - return im; - } - - public void setIm(String im) { - this.im = im; - } - - public String getPortrait() { - return portrait; - } - - public void setPortrait(String portrait) { - this.portrait = portrait; - } - - public Integer getIs_root() { - return is_root; - } - - public void setIs_root(Integer is_root) { - this.is_root = is_root; - } - - public Integer getLeader_id() { - return leader_id; - } - - public void setLeader_id(Integer leader_id) { - this.leader_id = leader_id; - } - - public String getLeader_name() { - return leader_name; - } - - public void setLeader_name(String leader_name) { - this.leader_name = leader_name; - } - - @Override - public String toString() { - return "EPRIResult{" + - "id=" + id + - ", uuid='" + uuid + '\'' + - ", username='" + username + '\'' + - ", dispname='" + dispname + '\'' + - ", phone='" + phone + '\'' + - ", email='" + email + '\'' + - ", im='" + im + '\'' + - ", portrait='" + portrait + '\'' + - ", is_root=" + is_root + - ", leader_id=" + leader_id + - ", leader_name='" + leader_name + '\'' + - '}'; - } -} \ No newline at end of file From b1fca2c5bef938144eb6e6f6771e92c037a702d1 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Mon, 26 Oct 2020 11:23:28 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A0=E6=95=88?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kafka/manager/kcm/component/storage/common/StorageEnum.java | 1 - 1 file changed, 1 deletion(-) diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/common/StorageEnum.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/common/StorageEnum.java index b4a84eb0..51f3828e 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/common/StorageEnum.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/common/StorageEnum.java @@ -6,7 +6,6 @@ package com.xiaojukeji.kafka.manager.kcm.component.storage.common; * @date 20/4/29 */ public enum StorageEnum { - GIFT(0, "gift"), GIT(1, "git"), S3(2, "S3"), ;