From 7c6231fe10a7beec70d47050d9ff0ff05889390b Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Tue, 13 Aug 2019 16:23:54 +0800 Subject: [PATCH 01/25] update images --- assets/nginx-load-balance.png | Bin 0 -> 90880 bytes assets/nginx.eddx | Bin 0 -> 108468 bytes assets/nginx.jpg | Bin 0 -> 91427 bytes assets/reverse-proxy.png | Bin 0 -> 62179 bytes docs/README.md | 4 +++- 5 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 assets/nginx-load-balance.png create mode 100644 assets/nginx.eddx create mode 100644 assets/nginx.jpg create mode 100644 assets/reverse-proxy.png diff --git a/assets/nginx-load-balance.png b/assets/nginx-load-balance.png new file mode 100644 index 0000000000000000000000000000000000000000..28fd2cf5617b9a45c1dae88a9aa1cc71911992ce GIT binary patch literal 90880 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 z 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 lnjiBQf&B@UO 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 F|JkKDGvxpP literal 0 HcmV?d00001 diff --git a/assets/reverse-proxy.png b/assets/reverse-proxy.png new file mode 100644 index 0000000000000000000000000000000000000000..4bef7e0f4796c0d5e7a65e6b1f2af5b52bb1caeb GIT binary patch literal 62179 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%0AoGf-TYK|ufQI`$?yb2Mx@`JXG(KMMBZQE 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 n2TO67rlEuXv_Px#L7?QJ0zet!~j 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 u(pfzJ1^beR*YCmY


+

## Nginx 入门 @@ -238,6 +238,8 @@ http { nginx 也可以实现简单的负载均衡功能。 +

+ 假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 nginx.conf 配置如下: From e844b4882a17978c82beee043f6a8c0602cfbd44 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Tue, 20 Aug 2019 17:48:35 +0800 Subject: [PATCH 02/25] update docs --- README.md | 4 ++-- assets/nginx.eddx | Bin 108468 -> 108487 bytes docs/README.md | 6 +++--- install-nginx.md | 6 +++--- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 4c09c3f..7592b44 100644 --- a/README.md +++ b/README.md @@ -10,13 +10,13 @@ **Nginx (engine x)** 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 -

+

**什么是反向代理?** 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 -

+

## Nginx 入门 diff --git a/assets/nginx.eddx b/assets/nginx.eddx index 4f5e38fc34fe31f238f31306183a03b2f521cce9..b77addb0e1f91ab4e74af146f6d401b04d882cec 100644 GIT binary patch delta 86880 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

+

**什么是反向代理?** 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 -

+

## Nginx 入门 @@ -238,7 +238,7 @@ http { nginx 也可以实现简单的负载均衡功能。 -

+

假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 diff --git a/install-nginx.md b/install-nginx.md index 83dce1d..c671d21 100644 --- a/install-nginx.md +++ b/install-nginx.md @@ -18,11 +18,11 @@ (1)进入[官方下载地址](https://nginx.org/en/download.html),选择合适版本(nginx/Windows-xxx)。 -

+

(2)解压到本地 -

+

(3)启动 @@ -142,7 +142,7 @@ $ firewall-cmd --reload 启动后,访问站点: -

+

## Linux 开机自启动 From 55fa84b05425bf5a7ce9cefd88e8c008da906d1a Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Wed, 21 Aug 2019 13:23:30 +0800 Subject: [PATCH 03/25] update images --- README.md | 4 ++-- docs/README.md | 6 +++--- docs/coverpage.md | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 7592b44..8cbeeba 100644 --- a/README.md +++ b/README.md @@ -10,13 +10,13 @@ **Nginx (engine x)** 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 -

+

**什么是反向代理?** 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 -

+

## Nginx 入门 diff --git a/docs/README.md b/docs/README.md index 29271fe..1200703 100644 --- a/docs/README.md +++ b/docs/README.md @@ -10,13 +10,13 @@ **Nginx (engine x)** 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 -

+

**什么是反向代理?** 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 -

+

## Nginx 入门 @@ -238,7 +238,7 @@ http { nginx 也可以实现简单的负载均衡功能。 -

+

假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 diff --git a/docs/coverpage.md b/docs/coverpage.md index 90276a0..d7a8204 100644 --- a/docs/coverpage.md +++ b/docs/coverpage.md @@ -1,4 +1,4 @@ -
+
# Nginx Tutorial From 46c9f4f40ab05a3cb49978339324d266788396f3 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Thu, 10 Oct 2019 09:10:35 +0800 Subject: [PATCH 04/25] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8cbeeba..1200703 100644 --- a/README.md +++ b/README.md @@ -10,13 +10,13 @@ **Nginx (engine x)** 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 -

+

**什么是反向代理?** 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 -

+

## Nginx 入门 @@ -238,6 +238,8 @@ http { nginx 也可以实现简单的负载均衡功能。 +

+ 假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 nginx.conf 配置如下: From be8034fd712265e20441b8981c9284dfeb161787 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Sat, 12 Oct 2019 09:51:15 +0800 Subject: [PATCH 05/25] format codes --- demos/javaapp/pom.xml | 4 +- .../src/main/java/io/github/dunwu/Main.java | 47 +- .../io/github/dunwu/filter/CorsFilter.java | 161 +++--- .../io/github/dunwu/util/IOObjectMapper.java | 10 +- .../dunwu/web/controller/ApiController.java | 158 +++--- .../dunwu/web/controller/HelloController.java | 9 +- .../dunwu/web/controller/IndexController.java | 8 +- .../github/dunwu/web/dto/BaseResponseDTO.java | 114 ++-- .../java/io/github/dunwu/web/dto/MenuDTO.java | 222 ++++---- .../main/resources/spring/spring-servlet.xml | 16 +- .../src/main/resources/tomcat/conf/server.xml | 20 +- .../src/main/resources/tomcat/conf/web.xml | 8 +- demos/javaapp/src/main/webapp/WEB-INF/web.xml | 4 +- .../src/main/webapp/views/jsp/hello.jsp | 7 +- .../src/main/webapp/views/jsp/index.jsp | 16 +- demos/nginx-1.14.0/html/50x.html | 16 +- demos/nginx-1.14.0/html/index.html | 20 +- demos/reactadmin/public/index.html | 70 +-- demos/reactadmin/src/App.css | 4 +- demos/reactadmin/src/App.js | 49 +- demos/reactadmin/src/App.test.js | 15 +- demos/reactadmin/src/index.css | 6 +- demos/reactadmin/src/index.js | 15 +- demos/reactadmin/src/logo.svg | 11 +- demos/reactadmin/src/serviceWorker.js | 154 +++--- demos/reactapp/config/app.config.js | 4 +- demos/reactapp/config/webpack.config.base.js | 32 +- demos/reactapp/config/webpack.config.dev.js | 32 +- demos/reactapp/config/webpack.config.prod.js | 28 +- demos/reactapp/public/index.html | 4 +- demos/reactapp/scripts/build.sh | 1 + .../src/common/apiutils/ajaxCommon.js | 96 ++-- .../src/common/apiutils/apiCreator.js | 28 +- .../src/common/apiutils/errorUtils.js | 16 +- .../reactapp/src/common/apiutils/fetchAJAX.js | 33 +- demos/reactapp/src/common/apiutils/index.js | 24 +- .../src/common/apiutils/reqwestAJAX.js | 50 +- demos/reactapp/src/components/index.js | 10 +- .../layout/Breadcrumb/Breadcrumb.jsx | 23 +- .../layout/Breadcrumb/Breadcrumb.less | 1 + .../src/components/layout/Content/Content.jsx | 11 +- .../src/components/layout/Footer/Footer.jsx | 11 +- .../src/components/layout/Header/Header.jsx | 71 +-- .../src/components/layout/Header/Header.less | 1 + .../src/components/layout/Sidebar/Sidebar.jsx | 138 ++--- .../src/components/layout/Sidebar/antd.svg | 65 ++- .../src/containers/Core/CoreContainer.jsx | 29 +- .../src/containers/Root/ReduxDevTools.jsx | 14 +- .../src/containers/Root/RootContainer.dev.jsx | 26 +- .../src/containers/Root/RootContainer.jsx | 10 +- .../containers/Root/RootContainer.prod.jsx | 22 +- demos/reactapp/src/index.jsx | 22 +- demos/reactapp/src/redux/actions/auth.js | 14 +- demos/reactapp/src/redux/actions/menu.js | 8 +- .../src/redux/constants/authActionType.js | 26 +- .../src/redux/constants/commonActionTypes.js | 12 +- .../src/redux/constants/menuActionType.js | 8 +- .../redux/middlewares/promiseMiddleware.js | 48 +- demos/reactapp/src/redux/reducers/auth.js | 26 +- demos/reactapp/src/redux/reducers/index.js | 10 +- demos/reactapp/src/redux/reducers/menu.js | 42 +- .../src/redux/store/configureStore.dev.js | 29 +- .../src/redux/store/configureStore.js | 4 +- .../src/redux/store/configureStore.prod.js | 15 +- demos/reactapp/src/routes/index.jsx | 18 +- demos/reactapp/src/utils/asyncLoadHOC.js | 26 +- demos/reactapp/src/utils/authHOC.jsx | 27 +- demos/reactapp/src/utils/http.js | 52 +- demos/reactapp/src/utils/index.jsx | 2 +- demos/reactapp/src/views/pages/home/Home.jsx | 15 +- demos/reactapp/src/views/pages/home/Home.less | 8 +- demos/reactapp/src/views/pages/home/logo.svg | 3 +- .../reactapp/src/views/pages/login/Login.jsx | 95 ++-- .../reactapp/src/views/pages/login/Login.less | 4 + .../reactapp/src/views/pages/mail/Mailbox.jsx | 28 +- demos/reactapp/src/views/pages/user/User.jsx | 49 +- demos/reactapp/src/views/pages/user/User.less | 2 +- demos/reactapp/src/webapi/mock/index.js | 30 +- demos/reactapp/src/webapi/mock/menu.js | 130 ++--- demos/reactapp/src/webapi/mock/user.js | 6 +- demos/reactapp/src/webapi/webapi.js | 4 +- docs/index.html | 494 +++++++++--------- 82 files changed, 1637 insertions(+), 1564 deletions(-) diff --git a/demos/javaapp/pom.xml b/demos/javaapp/pom.xml index fa4af7c..4c87889 100644 --- a/demos/javaapp/pom.xml +++ b/demos/javaapp/pom.xml @@ -1,6 +1,6 @@ - + 4.0.0 io.github.dunwu JavaWebApp diff --git a/demos/javaapp/src/main/java/io/github/dunwu/Main.java b/demos/javaapp/src/main/java/io/github/dunwu/Main.java index b6fe78e..33ca08e 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/Main.java +++ b/demos/javaapp/src/main/java/io/github/dunwu/Main.java @@ -1,21 +1,26 @@ package io.github.dunwu; -import java.io.File; import org.apache.catalina.Server; import org.apache.catalina.startup.Catalina; import org.apache.catalina.startup.Tomcat; import org.apache.tomcat.util.digester.Digester; import org.apache.tomcat.util.scan.Constants; +import java.io.File; + public class Main { private static final String CONNECTOR_PORT = "8080"; // 以下设置轻易不要改动 private static final String RELATIVE_DEV_BASE_DIR = "src/main/resources/tomcat/"; + private static final String RELATIVE_BASE_DIR = "WEB-INF/classes/tomcat/"; + private static final String RELATIVE_DEV_DOCBASE_DIR = "src/main/webapp"; + private static final String RELATIVE_DOCBASE_DIR = ""; + private static final String CONTEXT_PATH = "/"; public static void main(String[] args) throws Exception { @@ -26,7 +31,8 @@ public static void main(String[] args) throws Exception { if (!checkFile.exists()) { System.setProperty("catalina.base", getAbsolutePath() + RELATIVE_DEV_BASE_DIR); System.setProperty("tomcat.context.docBase", RELATIVE_DEV_DOCBASE_DIR); - } else { + } + else { System.setProperty("catalina.base", getAbsolutePath() + RELATIVE_BASE_DIR); System.setProperty("tomcat.context.docBase", RELATIVE_DOCBASE_DIR); } @@ -36,7 +42,7 @@ public static void main(String[] args) throws Exception { } if (isBlank(System.getProperty("tomcat.server.shutdownPort"))) { System.setProperty("tomcat.server.shutdownPort", - String.valueOf(Integer.valueOf(System.getProperty("tomcat.connector.port")) + 10000)); + String.valueOf(Integer.valueOf(System.getProperty("tomcat.connector.port")) + 10000)); } if (isBlank(System.getProperty("tomcat.context.path"))) { System.setProperty("tomcat.context.path", CONTEXT_PATH); @@ -58,11 +64,11 @@ public static void main(String[] args) throws Exception { private static String getAbsolutePath() { String path = null; - String folderPath = Main.class.getProtectionDomain().getCodeSource().getLocation() - .getPath(); + String folderPath = Main.class.getProtectionDomain().getCodeSource().getLocation().getPath(); if (folderPath.indexOf("WEB-INF") > 0) { path = folderPath.substring(0, folderPath.indexOf("WEB-INF")); - } else if (folderPath.indexOf("target") > 0) { + } + else if (folderPath.indexOf("target") > 0) { path = folderPath.substring(0, folderPath.indexOf("target")); } return path; @@ -76,14 +82,8 @@ private static boolean isBlank(String str) { } static class ExtendedTomcat extends Tomcat { - private static final String RELATIVE_SERVERXML_PATH = "/conf/server.xml"; - private class ExtendedCatalina extends Catalina { - @Override - public Digester createStartDigester() { - return super.createStartDigester(); - } - } + private static final String RELATIVE_SERVERXML_PATH = "/conf/server.xml"; @Override public Server getServer() { @@ -94,7 +94,7 @@ public Server getServer() { System.setProperty("catalina.useNaming", "false"); ExtendedCatalina extendedCatalina = new ExtendedCatalina(); - //覆盖默认的skip和scan jar包配置 + // 覆盖默认的skip和scan jar包配置 System.setProperty(Constants.SKIP_JARS_PROPERTY, ""); System.setProperty(Constants.SCAN_JARS_PROPERTY, ""); @@ -102,17 +102,28 @@ public Server getServer() { digester.push(extendedCatalina); try { server = ((ExtendedCatalina) digester - .parse(new File(System.getProperty("catalina.base") + RELATIVE_SERVERXML_PATH))).getServer(); + .parse(new File(System.getProperty("catalina.base") + RELATIVE_SERVERXML_PATH))).getServer(); // 设置catalina.base和catalna.home this.initBaseDir(); return server; - } catch (Exception e) { + } + catch (Exception e) { System.err.println("Error while parsing server.xml" + e.getMessage()); throw new RuntimeException("server未创建,请检查server.xml(路径:" + System.getProperty("catalina.base") - + RELATIVE_SERVERXML_PATH + ")配置是否正确"); + + RELATIVE_SERVERXML_PATH + ")配置是否正确"); } } + + private class ExtendedCatalina extends Catalina { + + @Override + public Digester createStartDigester() { + return super.createStartDigester(); + } + + } + } -} +} diff --git a/demos/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java b/demos/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java index 46f8320..f4da586 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java +++ b/demos/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java @@ -1,103 +1,102 @@ package io.github.dunwu.filter; -import java.io.IOException; -import java.util.regex.Pattern; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import javax.servlet.*; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.regex.Pattern; + /** * 跨域过滤器,根据正则进行匹配 */ public class CorsFilter implements Filter { - private static final Logger logger = LoggerFactory.getLogger(CorsFilter.class); - private String regex; - private String headerKey; - private String protocol = "http"; - private final String ORIGIN_KEY = "Origin"; + private static final Logger logger = LoggerFactory.getLogger(CorsFilter.class); + private final String ORIGIN_KEY = "Origin"; + private String regex; + private String headerKey; + private String protocol = "http"; + + public void init(FilterConfig filterConfig) { + // 取配置参数 + regex = filterConfig.getInitParameter("regex"); + headerKey = filterConfig.getInitParameter("headerKey"); + String protocolVal = filterConfig.getInitParameter("protocol"); + if (StringUtils.isNotBlank(protocolVal)) { + if (StringUtils.equalsIgnoreCase("http", protocolVal) + || StringUtils.equalsIgnoreCase("https", protocolVal)) { + protocol = protocolVal.toLowerCase(); + } + else { + logger.error("CorsFilter 配置参数 protocol 非法,仍使用默认值 http"); + } + } + } - public void init(FilterConfig filterConfig) { - // 取配置参数 - regex = filterConfig.getInitParameter("regex"); - headerKey = filterConfig.getInitParameter("headerKey"); - String protocolVal = filterConfig.getInitParameter("protocol"); - if (StringUtils.isNotBlank(protocolVal)) { - if (StringUtils.equalsIgnoreCase("http", protocolVal) - || StringUtils.equalsIgnoreCase("https", protocolVal)) { - protocol = protocolVal.toLowerCase(); - } else { - logger.error("CorsFilter 配置参数 protocol 非法,仍使用默认值 http"); - } - } - } + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) + throws IOException, ServletException { + HttpServletRequest httpRequest = (HttpServletRequest) request; + HttpServletResponse httpResponse = (HttpServletResponse) response; - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { - HttpServletRequest httpRequest = (HttpServletRequest) request; - HttpServletResponse httpResponse = (HttpServletResponse) response; + if (StringUtils.isBlank(regex) || StringUtils.isBlank(headerKey)) { + throw new ServletException("读取跨域过滤器的配置参数失败"); + } - if (StringUtils.isBlank(regex) || StringUtils.isBlank(headerKey)) { - throw new ServletException("读取跨域过滤器的配置参数失败"); - } + // 读取请求地址的域 + String domain = httpRequest.getHeader(headerKey); + String origin = httpRequest.getHeader(ORIGIN_KEY); - // 读取请求地址的域 - String domain = httpRequest.getHeader(headerKey); - String origin = httpRequest.getHeader(ORIGIN_KEY); + if (StringUtils.isBlank(origin)) { + logger.debug("origin 为空, 跳过检查"); + chain.doFilter(httpRequest, httpResponse); + return; + } - if (StringUtils.isBlank(origin)) { - logger.debug("origin 为空, 跳过检查"); - chain.doFilter(httpRequest, httpResponse); - return; - } + if (StringUtils.isBlank(domain)) { + logger.debug("domain 为空, 跳过检查"); + chain.doFilter(httpRequest, httpResponse); + return; + } - if (StringUtils.isBlank(domain)) { - logger.debug("domain 为空, 跳过检查"); - chain.doFilter(httpRequest, httpResponse); - return; - } + if (origin.toLowerCase().contains(domain.toLowerCase())) { + // 判断请求方和应答方是否同为 http 或 https + // 如果相同,这里视为同源;否则,视为跨域 + if (origin.startsWith(protocol)) { + logger.debug("domain={}, origin={}, 二者协议相同,且域名同源,跳过检查", domain, origin); + chain.doFilter(httpRequest, httpResponse); + return; + } + } - if (origin.toLowerCase().contains(domain.toLowerCase())) { - // 判断请求方和应答方是否同为 http 或 https - // 如果相同,这里视为同源;否则,视为跨域 - if (origin.startsWith(protocol)) { - logger.debug("domain={}, origin={}, 二者协议相同,且域名同源,跳过检查", domain, origin); - chain.doFilter(httpRequest, httpResponse); - return; - } - } + Pattern pattern = Pattern.compile(regex); + if (!pattern.matcher(origin).matches()) { + logger.warn("客户端域 origin={} 不在跨域白名单中", origin); + httpResponse.sendError(403, "客户端域不在跨域白名单中"); + throw new ServletException("客户端域不在跨域白名单中"); + } - Pattern pattern = Pattern.compile(regex); - if (!pattern.matcher(origin).matches()) { - logger.warn("客户端域 origin={} 不在跨域白名单中", origin); - httpResponse.sendError(403, "客户端域不在跨域白名单中"); - throw new ServletException("客户端域不在跨域白名单中"); - } + logger.debug("对 origin={} 放开跨域限制", origin); + httpResponse.addHeader("Access-Control-Allow-Origin", origin); + httpResponse.addHeader("Access-Control-Allow-Credentials", "true"); + httpResponse.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, OPTIONS, DELETE"); + httpResponse.addHeader("Access-Control-Allow-Headers", + "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since," + + " Cache-Control, Content-Type, Content-Range, Range, X-CSRF-TOKEN"); + httpResponse.addHeader("Access-Control-Expose-Headers", + "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since," + + " Cache-Control, Content-Type, Content-Range, Range"); + if (httpRequest.getMethod().equals("OPTIONS")) { + httpResponse.setStatus(HttpServletResponse.SC_OK); + return; + } + chain.doFilter(httpRequest, httpResponse); + } - logger.debug("对 origin={} 放开跨域限制", origin); - httpResponse.addHeader("Access-Control-Allow-Origin", origin); - httpResponse.addHeader("Access-Control-Allow-Credentials", "true"); - httpResponse.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, OPTIONS, DELETE"); - httpResponse.addHeader("Access-Control-Allow-Headers", - "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since," + - " Cache-Control, Content-Type, Content-Range, Range, X-CSRF-TOKEN"); - httpResponse.addHeader("Access-Control-Expose-Headers", - "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since," + - " Cache-Control, Content-Type, Content-Range, Range"); - if (httpRequest.getMethod().equals("OPTIONS")) { - httpResponse.setStatus(HttpServletResponse.SC_OK); - return; - } - chain.doFilter(httpRequest, httpResponse); - } + public void destroy() { + } - public void destroy() {} } diff --git a/demos/javaapp/src/main/java/io/github/dunwu/util/IOObjectMapper.java b/demos/javaapp/src/main/java/io/github/dunwu/util/IOObjectMapper.java index d275ccf..79704f2 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/util/IOObjectMapper.java +++ b/demos/javaapp/src/main/java/io/github/dunwu/util/IOObjectMapper.java @@ -5,8 +5,10 @@ import com.fasterxml.jackson.databind.ObjectMapper; public class IOObjectMapper extends ObjectMapper { - public IOObjectMapper() { - this.setSerializationInclusion(Include.NON_EMPTY); - this.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); - } + + public IOObjectMapper() { + this.setSerializationInclusion(Include.NON_EMPTY); + this.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + } + } diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java b/demos/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java index 86dde80..77228b0 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java +++ b/demos/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java @@ -4,12 +4,6 @@ import com.fasterxml.jackson.databind.ObjectMapper; import io.github.dunwu.web.dto.BaseResponseDTO; import io.github.dunwu.web.dto.MenuDTO; -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; -import java.util.Set; -import java.util.TreeSet; -import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestBody; @@ -17,91 +11,101 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; +import javax.servlet.http.HttpServletRequest; +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; +import java.util.TreeSet; + /** * 配合前端请求的 API 接口 + * * @author zhangpeng0913 * @date 2017/8/23. */ @Controller public class ApiController { - @ResponseBody - @RequestMapping(value = "/menu", method = RequestMethod.GET) - public BaseResponseDTO getAll(HttpServletRequest request) throws JsonProcessingException { - String data = request.getParameter("data"); - BaseResponseDTO baseResponseDTO = new BaseResponseDTO(); - baseResponseDTO.setData(getAll()); - ObjectMapper om = new ObjectMapper(); - System.out.println("ResponseDTO: " + om.writeValueAsString(baseResponseDTO)); - return baseResponseDTO; - } + private static Set getAll() { + MenuDTO item0 = new MenuDTO("0", "首页", "home", "Item", "/pages/home"); + + MenuDTO subMenu1 = new MenuDTO("1", "业务", "bars", "SubMenu", null); + MenuDTO item11 = new MenuDTO("11", "Mailbox", "mail", "Item", "/pages/mailbox"); + MenuDTO item12 = new MenuDTO("12", "用户列表", "user", "Item", "/pages/user"); + subMenu1.addChild(item11); + subMenu1.addChild(item12); - @ResponseBody - @RequestMapping(value = "/login") - public BaseResponseDTO login(@RequestBody Map map) throws IOException { - String username = map.get("username"); - String password = map.get("password"); - BaseResponseDTO> baseResponseDTO = new BaseResponseDTO(); - if (StringUtils.equals(username, "admin") && StringUtils.equals(password, "123456")) { - Map result = new HashMap(); - result.put("name", "admin"); - result.put("role", "ADMIN"); - result.put("uid", "1"); - baseResponseDTO.setData(result); - System.out.println(baseResponseDTO.toString()); - return baseResponseDTO; - } else { - baseResponseDTO.setCode(BaseResponseDTO.DEFAULT_RESPONSE_RESULT.SYSTEM_ERROR.value()); - baseResponseDTO.getMessages().add(BaseResponseDTO.DEFAULT_RESPONSE_RESULT.SYSTEM_ERROR.desc()); - return baseResponseDTO; - } - } + MenuDTO subMenu2 = new MenuDTO("2", "Others", "coffee", "SubMenu", null); + MenuDTO itemGroup1 = new MenuDTO("21", "Group1", "windows-o", "ItemGroup", null); + MenuDTO item22 = new MenuDTO("22", "Group1-1", null, "Item", null); + MenuDTO divider = new MenuDTO("23", "Divider1", null, "Divider", null); + MenuDTO itemGroup2 = new MenuDTO("24", "Group2", "apple-o", "ItemGroup", null); + MenuDTO item25 = new MenuDTO("25", "Group2-1", null, "Item", null); + itemGroup1.addChild(item22); + itemGroup2.addChild(item25); + subMenu2.addChild(itemGroup1); + subMenu2.addChild(divider); + subMenu2.addChild(itemGroup2); - @ResponseBody - @RequestMapping(value = "/logout", method = RequestMethod.GET) - public BaseResponseDTO logout(HttpServletRequest request) { - BaseResponseDTO baseResponseDTO = new BaseResponseDTO(); - return baseResponseDTO; - } + Set menus = new TreeSet(); + menus.add(item0); + menus.add(subMenu1); + menus.add(subMenu2); - @ResponseBody - @RequestMapping(value = "/my", method = RequestMethod.GET) - public BaseResponseDTO my(HttpServletRequest request) { - Map map = new HashMap(); - map.put("name", "admin"); - map.put("role", "ADMIN"); - map.put("uid", "1"); - BaseResponseDTO baseResponseDTO = new BaseResponseDTO(); - baseResponseDTO.setData(map); - return baseResponseDTO; - } + return menus; + } - private static Set getAll() { - MenuDTO item0 = new MenuDTO("0", "首页", "home", "Item", "/pages/home"); + @ResponseBody + @RequestMapping(value = "/menu", method = RequestMethod.GET) + public BaseResponseDTO getAll(HttpServletRequest request) throws JsonProcessingException { + String data = request.getParameter("data"); + BaseResponseDTO baseResponseDTO = new BaseResponseDTO(); + baseResponseDTO.setData(getAll()); + ObjectMapper om = new ObjectMapper(); + System.out.println("ResponseDTO: " + om.writeValueAsString(baseResponseDTO)); + return baseResponseDTO; + } - MenuDTO subMenu1 = new MenuDTO("1", "业务", "bars", "SubMenu", null); - MenuDTO item11 = new MenuDTO("11", "Mailbox", "mail", "Item", "/pages/mailbox"); - MenuDTO item12 = new MenuDTO("12", "用户列表", "user", "Item", "/pages/user"); - subMenu1.addChild(item11); - subMenu1.addChild(item12); + @ResponseBody + @RequestMapping(value = "/login") + public BaseResponseDTO login(@RequestBody Map map) throws IOException { + String username = map.get("username"); + String password = map.get("password"); + BaseResponseDTO> baseResponseDTO = new BaseResponseDTO(); + if (StringUtils.equals(username, "admin") && StringUtils.equals(password, "123456")) { + Map result = new HashMap(); + result.put("name", "admin"); + result.put("role", "ADMIN"); + result.put("uid", "1"); + baseResponseDTO.setData(result); + System.out.println(baseResponseDTO.toString()); + return baseResponseDTO; + } + else { + baseResponseDTO.setCode(BaseResponseDTO.DEFAULT_RESPONSE_RESULT.SYSTEM_ERROR.value()); + baseResponseDTO.getMessages().add(BaseResponseDTO.DEFAULT_RESPONSE_RESULT.SYSTEM_ERROR.desc()); + return baseResponseDTO; + } + } - MenuDTO subMenu2 = new MenuDTO("2", "Others", "coffee", "SubMenu", null); - MenuDTO itemGroup1 = new MenuDTO("21", "Group1", "windows-o", "ItemGroup", null); - MenuDTO item22 = new MenuDTO("22", "Group1-1", null, "Item", null); - MenuDTO divider = new MenuDTO("23", "Divider1", null, "Divider", null); - MenuDTO itemGroup2 = new MenuDTO("24", "Group2", "apple-o", "ItemGroup", null); - MenuDTO item25 = new MenuDTO("25", "Group2-1", null, "Item", null); - itemGroup1.addChild(item22); - itemGroup2.addChild(item25); - subMenu2.addChild(itemGroup1); - subMenu2.addChild(divider); - subMenu2.addChild(itemGroup2); + @ResponseBody + @RequestMapping(value = "/logout", method = RequestMethod.GET) + public BaseResponseDTO logout(HttpServletRequest request) { + BaseResponseDTO baseResponseDTO = new BaseResponseDTO(); + return baseResponseDTO; + } - Set menus = new TreeSet(); - menus.add(item0); - menus.add(subMenu1); - menus.add(subMenu2); + @ResponseBody + @RequestMapping(value = "/my", method = RequestMethod.GET) + public BaseResponseDTO my(HttpServletRequest request) { + Map map = new HashMap(); + map.put("name", "admin"); + map.put("role", "ADMIN"); + map.put("uid", "1"); + BaseResponseDTO baseResponseDTO = new BaseResponseDTO(); + baseResponseDTO.setData(map); + return baseResponseDTO; + } - return menus; - } } diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/HelloController.java b/demos/javaapp/src/main/java/io/github/dunwu/web/controller/HelloController.java index c08dfd8..794b876 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/HelloController.java +++ b/demos/javaapp/src/main/java/io/github/dunwu/web/controller/HelloController.java @@ -8,15 +8,19 @@ /** * spring mvc 的第一个程序 + * * @author Zhang Peng * @since 2016.07.29 */ @Controller @RequestMapping(value = "/hello") public class HelloController { + /** - *

在本例中,Spring将会将数据传给 hello.jsp - *

访问形式:http://localhost:8080/hello?name=张三 + *

+ * 在本例中,Spring将会将数据传给 hello.jsp + *

+ * 访问形式:http://localhost:8080/hello?name=张三 */ @RequestMapping(value = "/name", method = RequestMethod.GET) public ModelAndView hello(@RequestParam("name") String name) { @@ -25,4 +29,5 @@ public ModelAndView hello(@RequestParam("name") String name) { mav.setViewName("hello"); return mav; } + } diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java b/demos/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java index c473e77..db118bb 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java +++ b/demos/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java @@ -14,9 +14,12 @@ */ @Controller public class IndexController { + /** - *

返回 ModelAndView 对象到视图层。在本例中,视图解析器解析视图名为 index,会自动关联到 index.jsp。 - *

访问形式:http://localhost:8080/ + *

+ * 返回 ModelAndView 对象到视图层。在本例中,视图解析器解析视图名为 index,会自动关联到 index.jsp。 + *

+ * 访问形式:http://localhost:8080/ */ @RequestMapping(value = "/", method = RequestMethod.GET) public ModelAndView index() { @@ -24,4 +27,5 @@ public ModelAndView index() { mav.setViewName("index"); return mav; } + } diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java b/demos/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java index cdff39f..cbb90f5 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java +++ b/demos/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java @@ -6,82 +6,80 @@ public class BaseResponseDTO { - private Integer code = DEFAULT_RESPONSE_RESULT.SUCCESS.value(); + private final List messages = new ArrayList<>(); + private Integer code = DEFAULT_RESPONSE_RESULT.SUCCESS.value(); + private T data; - private final List messages = new ArrayList<>(); + public BaseResponseDTO() { + } - private T data; + public BaseResponseDTO(T dto) { + this.data = dto; + } - public BaseResponseDTO() {} + public Integer getCode() { + return code; + } - public BaseResponseDTO(T dto) { - this.data = dto; - } + public void setCode(Integer code) { + this.code = code; + } - public Integer getCode() { - return code; - } + public void addError(String error) { + this.messages.add(error); + } - public void setCode(Integer code) { - this.code = code; - } + public void addErrors(String[] errors) { + this.addErrors(Arrays.asList(errors)); + } - public void addError(String error) { - this.messages.add(error); - } + public void addErrors(List errorList) { + this.messages.addAll(errorList); + } - public void addErrors(String[] errors) { - this.addErrors(Arrays.asList(errors)); - } + public void removeError(String error) { + this.messages.remove(error); + } - public void addErrors(List errorList) { - this.messages.addAll(errorList); - } + public List getMessages() { + return messages; + } - public void removeError(String error) { - this.messages.remove(error); - } + public T getData() { + return data; + } - public List getMessages() { - return messages; - } + public void setData(T data) { + this.data = data; + } - public T getData() { - return data; - } + public enum DEFAULT_RESPONSE_RESULT { - public void setData(T data) { - this.data = data; - } + SUCCESS(0, "[]"), // 成功 + AUTHEN_FAIL(-1, "认证失败"), // 认证失败 + AUTHOR_FAIL(-2, "权限不足"), // 授权不足 + PARAM_CHECK_FAIL(-3, ""), // 参数校验失败,错误信息交由业务逻辑处理 + RESOURCE_NOT_EXIST(-4, "请求资源不存在"), // 请求资源不存在 + SYSTEM_ERROR(-5, "系统错误"), DATA_MALFORMAT(-6, "请求参数数据格式不正确"), REQMETHOD_ERROR(-7, "请求方法不正确"), TYPE_MISMATCH(-8, + "请求参数类型不匹配"), MISS_REQUEST_PARAM(-9, "请求参数缺失"); - public enum DEFAULT_RESPONSE_RESULT { - SUCCESS(0, "[]"), // 成功 - AUTHEN_FAIL(-1, "认证失败"), // 认证失败 - AUTHOR_FAIL(-2, "权限不足"), // 授权不足 - PARAM_CHECK_FAIL(-3, ""), // 参数校验失败,错误信息交由业务逻辑处理 - RESOURCE_NOT_EXIST(-4, "请求资源不存在"), // 请求资源不存在 - SYSTEM_ERROR(-5, "系统错误"), - DATA_MALFORMAT(-6, "请求参数数据格式不正确"), - REQMETHOD_ERROR(-7, "请求方法不正确"), - TYPE_MISMATCH(-8, "请求参数类型不匹配"), - MISS_REQUEST_PARAM(-9, "请求参数缺失"); + private final Integer value; - private final Integer value; + private final String desc; - private final String desc; + DEFAULT_RESPONSE_RESULT(int value, String desc) { + this.value = value; + this.desc = desc; + } - DEFAULT_RESPONSE_RESULT(int value, String desc) { - this.value = value; - this.desc = desc; - } + public int value() { + return value; + } - public int value() { - return value; - } + public String desc() { + return desc; + } - public String desc() { - return desc; - } - } + } } diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java b/demos/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java index 1abec79..4c53aed 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java +++ b/demos/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java @@ -1,122 +1,120 @@ package io.github.dunwu.web.dto; -import java.util.Arrays; -import java.util.Set; -import java.util.TreeSet; import org.apache.commons.lang3.builder.CompareToBuilder; import org.apache.commons.lang3.builder.EqualsBuilder; import org.apache.commons.lang3.builder.HashCodeBuilder; -public class MenuDTO implements Cloneable, Comparable { +import java.util.Arrays; +import java.util.Set; +import java.util.TreeSet; - private String key; +public class MenuDTO implements Cloneable, Comparable { - private String title; - - private String icon; + private final Set children = new TreeSet(); + private String key; + private String title; + private String icon; + private String type; + private String url; + + public MenuDTO() { + } + + public MenuDTO(String key, String title, String icon, String type, String url) { + this.key = key; + this.title = title; + this.icon = icon; + this.type = type; + this.url = url; + } + + public MenuDTO clone() throws CloneNotSupportedException { + super.clone(); + MenuDTO menuDTO = new MenuDTO(); + menuDTO.setType(type); + menuDTO.setKey(key); + menuDTO.setTitle(title); + menuDTO.setIcon(icon); + menuDTO.setUrl(url); + menuDTO.setUrl(url); + return menuDTO; + } + + public String getKey() { + return key; + } + + public void setKey(String key) { + this.key = key; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getIcon() { + return icon; + } + + public void setIcon(String icon) { + this.icon = icon; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + public Set getChildren() { + return children; + } + + public void addChild(MenuDTO child) { + this.children.add(child); + } + + public void addChildren(Set children) { + this.children.addAll(children); + } + + public void addChildren(MenuDTO[] children) { + this.children.addAll(Arrays.asList(children)); + } + + @Override + public boolean equals(Object obj) { + boolean equals = false; + if (obj instanceof MenuDTO) { + MenuDTO menuDTO = (MenuDTO) obj; + equals = (new EqualsBuilder().append(url, menuDTO.getUrl())).isEquals(); + } + return equals; + } + + @Override + public int hashCode() { + return new HashCodeBuilder(17, 37).append(url).toHashCode(); + } + + @Override + public int compareTo(MenuDTO otherMenuDTO) { + return new CompareToBuilder().append(key, otherMenuDTO.getKey()).append(url, otherMenuDTO.getUrl()) + .toComparison(); + } - private String type; - - private String url; - - private final Set children = new TreeSet(); - - public MenuDTO() {} - - public MenuDTO(String key, String title, String icon, String type, String url) { - this.key = key; - this.title = title; - this.icon = icon; - this.type = type; - this.url = url; - } - - public MenuDTO clone() throws CloneNotSupportedException { - super.clone(); - MenuDTO menuDTO = new MenuDTO(); - menuDTO.setType(type); - menuDTO.setKey(key); - menuDTO.setTitle(title); - menuDTO.setIcon(icon); - menuDTO.setUrl(url); - menuDTO.setUrl(url); - return menuDTO; - } - - public String getKey() { - return key; - } - - public void setKey(String key) { - this.key = key; - } - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public String getIcon() { - return icon; - } - - public void setIcon(String icon) { - this.icon = icon; - } - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } - - public Set getChildren() { - return children; - } - - public void addChild(MenuDTO child) { - this.children.add(child); - } - - public void addChildren(Set children) { - this.children.addAll(children); - } - - public void addChildren(MenuDTO[] children) { - this.children.addAll(Arrays.asList(children)); - } - - @Override - public boolean equals(Object obj) { - boolean equals = false; - if (obj instanceof MenuDTO) { - MenuDTO menuDTO = (MenuDTO) obj; - equals = (new EqualsBuilder().append(url, menuDTO.getUrl())).isEquals(); - } - return equals; - } - - @Override - public int hashCode() { - return new HashCodeBuilder(17, 37).append(url).toHashCode(); - } - - @Override - public int compareTo(MenuDTO otherMenuDTO) { - return new CompareToBuilder().append(key, otherMenuDTO.getKey()).append(url, otherMenuDTO.getUrl()) - .toComparison(); - } } diff --git a/demos/javaapp/src/main/resources/spring/spring-servlet.xml b/demos/javaapp/src/main/resources/spring/spring-servlet.xml index 34495cc..025c1f2 100644 --- a/demos/javaapp/src/main/resources/spring/spring-servlet.xml +++ b/demos/javaapp/src/main/resources/spring/spring-servlet.xml @@ -1,9 +1,9 @@ - - + class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean"> + - + diff --git a/demos/javaapp/src/main/resources/tomcat/conf/server.xml b/demos/javaapp/src/main/resources/tomcat/conf/server.xml index 1cf33aa..c1f05e7 100644 --- a/demos/javaapp/src/main/resources/tomcat/conf/server.xml +++ b/demos/javaapp/src/main/resources/tomcat/conf/server.xml @@ -6,24 +6,24 @@ + maxThreads="300" minSpareThreads="25"/> + executor="tomcatThreadPool" + processorCache="300" bindOnInit="false"/> + autoDeploy="false" + deployOnStartup="false" failCtxIfServletStartFails="true"> + logEffectiveWebXml="false" + privileged="false" + swallowOutput="false" workDir="${catalina.base}/work"> + defaultPluggabilityScan="true" tldSkip="*.jar" + tldScan="" defaultTldScan="true"/> diff --git a/demos/javaapp/src/main/resources/tomcat/conf/web.xml b/demos/javaapp/src/main/resources/tomcat/conf/web.xml index aa7713a..b9a6de4 100644 --- a/demos/javaapp/src/main/resources/tomcat/conf/web.xml +++ b/demos/javaapp/src/main/resources/tomcat/conf/web.xml @@ -15,11 +15,11 @@ See the License for the specific language governing permissions and limitations under the License. --> - + version="3.1"> diff --git a/demos/javaapp/src/main/webapp/WEB-INF/web.xml b/demos/javaapp/src/main/webapp/WEB-INF/web.xml index eb85c98..f2a86ac 100644 --- a/demos/javaapp/src/main/webapp/WEB-INF/web.xml +++ b/demos/javaapp/src/main/webapp/WEB-INF/web.xml @@ -1,6 +1,6 @@ - + spring-embed-tomcat-demo-helloworld diff --git a/demos/javaapp/src/main/webapp/views/jsp/hello.jsp b/demos/javaapp/src/main/webapp/views/jsp/hello.jsp index 6341bd0..774fc94 100644 --- a/demos/javaapp/src/main/webapp/views/jsp/hello.jsp +++ b/demos/javaapp/src/main/webapp/views/jsp/hello.jsp @@ -1,14 +1,13 @@ <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <% - String path = request.getContextPath(); - String basePath = - request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; + String path = request.getContextPath(); + String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> - HelloController + HelloController

${message}

diff --git a/demos/javaapp/src/main/webapp/views/jsp/index.jsp b/demos/javaapp/src/main/webapp/views/jsp/index.jsp index b44ae62..6fd2308 100644 --- a/demos/javaapp/src/main/webapp/views/jsp/index.jsp +++ b/demos/javaapp/src/main/webapp/views/jsp/index.jsp @@ -1,9 +1,9 @@ <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <% - String domain = request.getScheme() + "://" + request.getServerName() + request.getContextPath(); - String host = request.getRemoteHost(); -// int port = request.getServerPort(); - Integer port = Integer.valueOf(System.getProperty("tomcat.connector.port")); + String domain = request.getScheme() + "://" + request.getServerName() + request.getContextPath(); + String host = request.getRemoteHost(); + // int port = request.getServerPort(); + Integer port = Integer.valueOf(System.getProperty("tomcat.connector.port")); %> @@ -11,16 +11,16 @@ - spring-embed-tomcat-demo + spring-embed-tomcat-demo

spring-embed-tomcat-demo

<%out.print("当前服务器信息:");%>

    -
  • <%out.print("domain:" + domain);%>
  • -
  • <%out.print("host:" + host);%>
  • -
  • <%out.print("port:" + port);%>
  • +
  • <%out.print("domain:" + domain);%>
  • +
  • <%out.print("host:" + host);%>
  • +
  • <%out.print("port:" + port);%>
diff --git a/demos/nginx-1.14.0/html/50x.html b/demos/nginx-1.14.0/html/50x.html index f60f5e7..1afb814 100644 --- a/demos/nginx-1.14.0/html/50x.html +++ b/demos/nginx-1.14.0/html/50x.html @@ -1,21 +1,21 @@ -Error - +

An error occurred.

Sorry, the page you are looking for is currently unavailable.
-Please try again later.

+ Please try again later.

If you are the system administrator of this resource then you should check -the error log for details.

+ the error log for details.

Faithfully yours, nginx.

diff --git a/demos/nginx-1.14.0/html/index.html b/demos/nginx-1.14.0/html/index.html index 2ca3b95..3e95532 100644 --- a/demos/nginx-1.14.0/html/index.html +++ b/demos/nginx-1.14.0/html/index.html @@ -1,24 +1,24 @@ -Welcome to nginx! - +

Welcome to nginx!

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

+ working. Further configuration is required.

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

+ nginx.org.
+ Commercial support is available at + nginx.com.

Thank you for using nginx.

diff --git a/demos/reactadmin/public/index.html b/demos/reactadmin/public/index.html index 323182f..91dcfc3 100644 --- a/demos/reactadmin/public/index.html +++ b/demos/reactadmin/public/index.html @@ -1,41 +1,41 @@ - - - - - - - - + + - React App - - - -
- + React App + + + +
+ - + To begin the development, run `npm start` or `yarn start`. + To create a production bundle, use `npm run build` or `yarn build`. +--> + diff --git a/demos/reactadmin/src/App.css b/demos/reactadmin/src/App.css index 92f956e..b14705a 100644 --- a/demos/reactadmin/src/App.css +++ b/demos/reactadmin/src/App.css @@ -8,7 +8,7 @@ } .App-header { - background-color: #282c34; + background-color: #282C34; min-height: 100vh; display: flex; flex-direction: column; @@ -19,7 +19,7 @@ } .App-link { - color: #61dafb; + color: #61DAFB; } @keyframes App-logo-spin { diff --git a/demos/reactadmin/src/App.js b/demos/reactadmin/src/App.js index 7e261ca..208db6b 100644 --- a/demos/reactadmin/src/App.js +++ b/demos/reactadmin/src/App.js @@ -1,28 +1,35 @@ -import React, { Component } from 'react'; -import logo from './logo.svg'; -import './App.css'; +import React, { Component } from 'react' +import logo from './logo.svg' +import './App.css' class App extends Component { render() { return ( -
-
- logo -

- Edit src/App.js and save to reload. -

- - Learn React - -
-
- ); + < div + className = 'App' > + < header + className = 'App-header' > + < img + src = { logo } + className = 'App-logo' + alt = 'logo' / > + < p > + Edit < code > src / App.js < /code> and save to reload. + < /p> + < a + className = 'App-link' + href = 'https://reactjs.org' + target = '_blank' + rel = 'noopener noreferrer' + > + Learn + React + < /a> + < /header> + < /div> + ) + } } -export default App; +export default App diff --git a/demos/reactadmin/src/App.test.js b/demos/reactadmin/src/App.test.js index a754b20..dc3b5e7 100644 --- a/demos/reactadmin/src/App.test.js +++ b/demos/reactadmin/src/App.test.js @@ -1,9 +1,10 @@ -import React from 'react'; -import ReactDOM from 'react-dom'; -import App from './App'; +import ReactDOM from 'react-dom' +import App from './App' it('renders without crashing', () => { - const div = document.createElement('div'); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); + const div = document.createElement('div') + ReactDOM.render( < App / >, div +) + + ReactDOM.unmountComponentAtNode(div) +}) diff --git a/demos/reactadmin/src/index.css b/demos/reactadmin/src/index.css index cee5f34..5b6b166 100644 --- a/demos/reactadmin/src/index.css +++ b/demos/reactadmin/src/index.css @@ -2,13 +2,13 @@ body { margin: 0; padding: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", - "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", - sans-serif; + "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", + sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", - monospace; + monospace; } diff --git a/demos/reactadmin/src/index.js b/demos/reactadmin/src/index.js index 0c5e75d..f5d1d13 100644 --- a/demos/reactadmin/src/index.js +++ b/demos/reactadmin/src/index.js @@ -1,12 +1,13 @@ -import React from 'react'; -import ReactDOM from 'react-dom'; -import './index.css'; -import App from './App'; -import * as serviceWorker from './serviceWorker'; +import ReactDOM from 'react-dom' +import './index.css' +import App from './App' +import * as serviceWorker from './serviceWorker' + +ReactDOM.render( < App / >, document.getElementById('root') +) -ReactDOM.render(, document.getElementById('root')); // If you want your app to work offline and load faster, you can change // unregister() to register() below. Note this comes with some pitfalls. // Learn more about service workers: http://bit.ly/CRA-PWA -serviceWorker.unregister(); +serviceWorker.unregister() diff --git a/demos/reactadmin/src/logo.svg b/demos/reactadmin/src/logo.svg index 6b60c10..6d75536 100644 --- a/demos/reactadmin/src/logo.svg +++ b/demos/reactadmin/src/logo.svg @@ -1,7 +1,8 @@ - - - - - + + + + + diff --git a/demos/reactadmin/src/serviceWorker.js b/demos/reactadmin/src/serviceWorker.js index 2283ff9..efcb29e 100644 --- a/demos/reactadmin/src/serviceWorker.js +++ b/demos/reactadmin/src/serviceWorker.js @@ -12,124 +12,124 @@ const isLocalhost = Boolean( window.location.hostname === 'localhost' || - // [::1] is the IPv6 localhost address. - window.location.hostname === '[::1]' || - // 127.0.0.1/8 is considered localhost for IPv4. - window.location.hostname.match( - /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ - ) -); + // [::1] is the IPv6 localhost address. + window.location.hostname === '[::1]' || + // 127.0.0.1/8 is considered localhost for IPv4. + window.location.hostname.match( + /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ + ) +) export function register(config) { if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { // The URL constructor is available in all browsers that support SW. - const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href); + const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href) if (publicUrl.origin !== window.location.origin) { // Our service worker won't work if PUBLIC_URL is on a different origin // from what our page is served on. This might happen if a CDN is used to // serve assets; see https://github.com/facebook/create-react-app/issues/2374 - return; + return } window.addEventListener('load', () => { - const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`; + const swUrl = `${process.env.PUBLIC_URL}/service-worker.js` if (isLocalhost) { // This is running on localhost. Let's check if a service worker still exists or not. - checkValidServiceWorker(swUrl, config); + checkValidServiceWorker(swUrl, config) // Add some additional logging to localhost, pointing developers to the // service worker/PWA documentation. navigator.serviceWorker.ready.then(() => { console.log( 'This web app is being served cache-first by a service ' + - 'worker. To learn more, visit http://bit.ly/CRA-PWA' - ); - }); + 'worker. To learn more, visit http://bit.ly/CRA-PWA' + ) + }) } else { // Is not localhost. Just register service worker - registerValidSW(swUrl, config); + registerValidSW(swUrl, config) } - }); + }) } } function registerValidSW(swUrl, config) { navigator.serviceWorker - .register(swUrl) - .then(registration => { - registration.onupdatefound = () => { - const installingWorker = registration.installing; - if (installingWorker == null) { - return; - } - installingWorker.onstatechange = () => { - if (installingWorker.state === 'installed') { - if (navigator.serviceWorker.controller) { - // At this point, the updated precached content has been fetched, - // but the previous service worker will still serve the older - // content until all client tabs are closed. - console.log( - 'New content is available and will be used when all ' + - 'tabs for this page are closed. See http://bit.ly/CRA-PWA.' - ); + .register(swUrl) + .then(registration => { + registration.onupdatefound = () => { + const installingWorker = registration.installing + if (installingWorker == null) { + return + } + installingWorker.onstatechange = () => { + if (installingWorker.state === 'installed') { + if (navigator.serviceWorker.controller) { + // At this point, the updated precached content has been fetched, + // but the previous service worker will still serve the older + // content until all client tabs are closed. + console.log( + 'New content is available and will be used when all ' + + 'tabs for this page are closed. See http://bit.ly/CRA-PWA.' + ) - // Execute callback - if (config && config.onUpdate) { - config.onUpdate(registration); - } - } else { - // At this point, everything has been precached. - // It's the perfect time to display a - // "Content is cached for offline use." message. - console.log('Content is cached for offline use.'); + // Execute callback + if (config && config.onUpdate) { + config.onUpdate(registration) + } + } else { + // At this point, everything has been precached. + // It's the perfect time to display a + // "Content is cached for offline use." message. + console.log('Content is cached for offline use.') - // Execute callback - if (config && config.onSuccess) { - config.onSuccess(registration); - } + // Execute callback + if (config && config.onSuccess) { + config.onSuccess(registration) } } - }; - }; - }) - .catch(error => { - console.error('Error during service worker registration:', error); - }); + } + } + } + }) + .catch(error => { + console.error('Error during service worker registration:', error) + }) } function checkValidServiceWorker(swUrl, config) { // Check if the service worker can be found. If it can't reload the page. fetch(swUrl) - .then(response => { - // Ensure service worker exists, and that we really are getting a JS file. - const contentType = response.headers.get('content-type'); - if ( - response.status === 404 || - (contentType != null && contentType.indexOf('javascript') === -1) - ) { - // No service worker found. Probably a different app. Reload the page. - navigator.serviceWorker.ready.then(registration => { - registration.unregister().then(() => { - window.location.reload(); - }); - }); - } else { - // Service worker found. Proceed as normal. - registerValidSW(swUrl, config); - } - }) - .catch(() => { - console.log( - 'No internet connection found. App is running in offline mode.' - ); - }); + .then(response => { + // Ensure service worker exists, and that we really are getting a JS file. + const contentType = response.headers.get('content-type') + if ( + response.status === 404 || + (contentType != null && contentType.indexOf('javascript') === -1) + ) { + // No service worker found. Probably a different app. Reload the page. + navigator.serviceWorker.ready.then(registration => { + registration.unregister().then(() => { + window.location.reload() + }) + }) + } else { + // Service worker found. Proceed as normal. + registerValidSW(swUrl, config) + } + }) + .catch(() => { + console.log( + 'No internet connection found. App is running in offline mode.' + ) + }) } export function unregister() { if ('serviceWorker' in navigator) { navigator.serviceWorker.ready.then(registration => { - registration.unregister(); - }); + registration.unregister() + }) } } diff --git a/demos/reactapp/config/app.config.js b/demos/reactapp/config/app.config.js index 17a2492..9210821 100644 --- a/demos/reactapp/config/app.config.js +++ b/demos/reactapp/config/app.config.js @@ -20,6 +20,6 @@ module.exports = { /** * 服务器的host */ - baseURL: '/api', + baseURL: '/api' } -}; +} diff --git a/demos/reactapp/config/webpack.config.base.js b/demos/reactapp/config/webpack.config.base.js index a80acf7..1f99e03 100644 --- a/demos/reactapp/config/webpack.config.base.js +++ b/demos/reactapp/config/webpack.config.base.js @@ -1,9 +1,9 @@ /** * Created by Zhang Peng on 2017/6/14. */ -const path = require('path'); -const webpack = require('webpack'); -const HtmlWebpackPlugin = require('html-webpack-plugin'); +const path = require('path') +const webpack = require('webpack') +const HtmlWebpackPlugin = require('html-webpack-plugin') module.exports = { @@ -20,16 +20,16 @@ module.exports = { output: { // 所有输出文件的目标路径 // 必须是绝对路径(使用 Node.js 的 path 模块) - path: path.resolve(__dirname, "../dist"), + path: path.resolve(__dirname, '../dist'), // 「入口分块(entry chunk)」的文件名模板(出口分块?) // filename: "bundle.min.js", // filename: "[name].js", // 用于多个入口点(entry point)(出口点?) // filename: "[chunkhash].js", // 用于长效缓存 - filename: "[name].[hash:8].js", + filename: '[name].[hash:8].js', // 「source map 位置」的文件名模板 - sourceMapFilename: "[name].map", + sourceMapFilename: '[name].map' }, // 关于模块配置 @@ -47,13 +47,13 @@ module.exports = { { // 语义解释器,将 js/jsx 文件中的 es2015/react 语法自动转为浏览器可识别的 Javascript 语法 test: /\.jsx?$/, - include: path.resolve(__dirname, "../src"), + include: path.resolve(__dirname, '../src'), exclude: /node_modules/, // 应该应用的 loader,它相对上下文解析 // 为了更清晰,`-loader` 后缀在 webpack 2 中不再是可选的 // 查看 webpack 1 升级指南。 - loader: "babel-loader", + loader: 'babel-loader' }, { @@ -87,7 +87,7 @@ module.exports = { extensions: ['.js', '.jsx', '.json'], alias: { - "@": path.resolve(__dirname, "../src") + '@': path.resolve(__dirname, '../src') } }, @@ -99,15 +99,15 @@ module.exports = { * 用于简化 HTML 文件(index.html)的创建,提供访问 bundle 的服务 */ new HtmlWebpackPlugin({ - title: "reactapp", - template: "public/index.html", - favicon: "public/favicon.ico", + title: 'reactapp', + template: 'public/index.html', + favicon: 'public/favicon.ico' }), // 将多个入口起点之间共享的公共模块,生成为一些 chunk,并且分离到单独的 bundle 中 new webpack.optimize.CommonsChunkPlugin({ - name: "vendor" // 指定公共 bundle 的名字 - }), - ], -}; + name: 'vendor' // 指定公共 bundle 的名字 + }) + ] +} diff --git a/demos/reactapp/config/webpack.config.dev.js b/demos/reactapp/config/webpack.config.dev.js index 6e97593..74e7705 100644 --- a/demos/reactapp/config/webpack.config.dev.js +++ b/demos/reactapp/config/webpack.config.dev.js @@ -1,11 +1,11 @@ /** * Created by Zhang Peng on 2017/6/14. */ -const path = require('path'); -const webpack = require('webpack'); -const webpackMerge = require('webpack-merge'); -const OpenBrowserPlugin = require('open-browser-webpack-plugin'); -const baseWebpackConfig = require('./webpack.config.base'); +const path = require('path') +const webpack = require('webpack') +const webpackMerge = require('webpack-merge') +const OpenBrowserPlugin = require('open-browser-webpack-plugin') +const baseWebpackConfig = require('./webpack.config.base') module.exports = webpackMerge(baseWebpackConfig, { // 这里应用程序开始执行 @@ -14,7 +14,7 @@ module.exports = webpackMerge(baseWebpackConfig, { entry: { main: [ // App 入口 - path.resolve(__dirname, "../src/index"), + path.resolve(__dirname, '../src/index'), // 开启 React 代码的模块热替换(HMR) 'react-hot-loader/patch', @@ -25,13 +25,13 @@ module.exports = webpackMerge(baseWebpackConfig, { // 为热替换(HMR)打包好代码 // only- 意味着只有成功更新运行代码才会执行热替换(HMR) - 'webpack/hot/only-dev-server', - ], + 'webpack/hot/only-dev-server' + ] }, output: { // 对于热替换(HMR)是必须的,让 webpack 知道在哪里载入热更新的模块(chunk) - publicPath: "/", + publicPath: '/' }, // 关于模块配置 @@ -48,7 +48,7 @@ module.exports = webpackMerge(baseWebpackConfig, { limit: 10000, name: 'static/images/[name].[hash:8].[ext]' } - }, + } ] }, @@ -68,8 +68,8 @@ module.exports = webpackMerge(baseWebpackConfig, { // 自动打开浏览器 new OpenBrowserPlugin({ - url: "http://localhost:9000" - }), + url: 'http://localhost:9000' + }) ], // 通过在浏览器调试工具(browser devtools)中添加元信息(meta info)增强调试 @@ -78,16 +78,16 @@ module.exports = webpackMerge(baseWebpackConfig, { // devtool: "eval-source-map", // 将 SourceMap 嵌入到每个模块中 // devtool: "hidden-source-map", // SourceMap 不在源文件中引用 // devtool: "cheap-source-map", // 没有模块映射(module mappings)的 SourceMap 低级变体(cheap-variant) - devtool: "eval-source-map", // 有模块映射(module mappings)的 SourceMap 低级变体 + devtool: 'eval-source-map', // 有模块映射(module mappings)的 SourceMap 低级变体 // devtool: "eval", // 没有模块映射,而是命名模块。以牺牲细节达到最快。 devServer: { - contentBase: [path.join(__dirname, "../dist")], + contentBase: [path.join(__dirname, '../dist')], compress: true, port: 9000, // 启动端口号 hot: true, // 启用 webpack 的模块热替换特性 inline: true, - publicPath: "/", // 和上文 output 的“publicPath”值保持一致 + publicPath: '/', // 和上文 output 的“publicPath”值保持一致 historyApiFallback: true } -}); +}) diff --git a/demos/reactapp/config/webpack.config.prod.js b/demos/reactapp/config/webpack.config.prod.js index fc4ffbf..1b1c2a6 100644 --- a/demos/reactapp/config/webpack.config.prod.js +++ b/demos/reactapp/config/webpack.config.prod.js @@ -1,11 +1,11 @@ /** * Created by Zhang Peng on 2017/6/14. */ -const path = require('path'); -const webpack = require('webpack'); -const webpackMerge = require('webpack-merge'); -const ExtractTextPlugin = require('extract-text-webpack-plugin'); -const baseWebpackConfig = require('./webpack.config.base'); +const path = require('path') +const webpack = require('webpack') +const webpackMerge = require('webpack-merge') +const ExtractTextPlugin = require('extract-text-webpack-plugin') +const baseWebpackConfig = require('./webpack.config.base') module.exports = webpackMerge(baseWebpackConfig, { // 这里应用程序开始执行 @@ -14,8 +14,8 @@ module.exports = webpackMerge(baseWebpackConfig, { entry: { main: [ // App 入口 - path.resolve(__dirname, "../src/index"), - ], + path.resolve(__dirname, '../src/index') + ] }, // 关于模块配置 @@ -36,18 +36,18 @@ module.exports = webpackMerge(baseWebpackConfig, { }, { - loader: "image-webpack-loader", + loader: 'image-webpack-loader', query: { progressive: true, pngquant: { - quality: "65-90", + quality: '65-90', speed: 4 } } } ] - }, + } ] }, @@ -68,7 +68,7 @@ module.exports = webpackMerge(baseWebpackConfig, { // 压缩 js 插件 new webpack.optimize.UglifyJsPlugin({ output: { - comments: false, // remove all comments + comments: false // remove all comments }, compress: { warnings: false @@ -76,6 +76,6 @@ module.exports = webpackMerge(baseWebpackConfig, { }), // 将样式文件独立打包 - new ExtractTextPlugin("styles.css"), - ], -}); + new ExtractTextPlugin('styles.css') + ] +}) diff --git a/demos/reactapp/public/index.html b/demos/reactapp/public/index.html index f53f4ba..3ee7a54 100644 --- a/demos/reactapp/public/index.html +++ b/demos/reactapp/public/index.html @@ -3,8 +3,8 @@ <%= htmlWebpackPlugin.options.title %> - - + +
diff --git a/demos/reactapp/scripts/build.sh b/demos/reactapp/scripts/build.sh index ca889b1..2529388 100644 --- a/demos/reactapp/scripts/build.sh +++ b/demos/reactapp/scripts/build.sh @@ -1,4 +1,5 @@ #!/bin/bash + ln -s /app/ck-puck-front/node_modules/ node_modules nvm use 8.1.0 npm set registry http://192.168.51.44 diff --git a/demos/reactapp/src/common/apiutils/ajaxCommon.js b/demos/reactapp/src/common/apiutils/ajaxCommon.js index 0300688..c388f24 100644 --- a/demos/reactapp/src/common/apiutils/ajaxCommon.js +++ b/demos/reactapp/src/common/apiutils/ajaxCommon.js @@ -1,10 +1,9 @@ -import React from 'react'; -import { Modal } from 'antd'; -import _ from 'lodash'; +import { Modal } from 'antd' +import _ from 'lodash' -import { COMMON_REQUEST_ERROR } from '../../redux/constants/commonActionTypes'; +import { COMMON_REQUEST_ERROR } from '../../redux/constants/commonActionTypes' -export const REQ_BASE_URL = '/api'; +export const REQ_BASE_URL = '/api' export const METHODS = { GET: 'GET', @@ -13,29 +12,29 @@ export const METHODS = { PUT: 'PUT', DEL: 'DEL', OPTIONS: 'OPTIONS', - PATCH: 'PATCH', -}; + PATCH: 'PATCH' +} export const REQ_TYPE = { HTML: 'html', JSON: 'json', - JSONP: 'jsonp', -}; + JSONP: 'jsonp' +} export const CACHE_TYPE = { DEFAULT: 'default', NO_STORE: 'no-store', RELOAD: 'reload', NO_CACHE: 'no-cache', - FORCE_CACHE: 'force-cache', -}; + FORCE_CACHE: 'force-cache' +} export const ERROR_HANDLER_TYPE = { NO: 'NO', // ['NO' | undefined | false ] 不处理 SYSTEM: 'SYSTEM', // ['SYSTEM'] 只处理系统预料外的返回(not json) SYSTEM_AND_AUTH: 'SYSTEM_AND_AUTH', // [true, 'SYSTEM_AND_AUTH'] 处理上一步,与 认证失败 (比较常用,所以单独列出,用true) - ALL: 'ALL', // [no errorHandler | 'ALL'] 所有 -}; + ALL: 'ALL' // [no errorHandler | 'ALL'] 所有 +} export const defaultOptions = { url: null, @@ -49,32 +48,32 @@ export const defaultOptions = { }, onError: () => { }, - cache: CACHE_TYPE.NO_CACHE, -}; + cache: CACHE_TYPE.NO_CACHE +} // 在 defaultOptions 基础上多出来的, request plan text,response json export const defaultJsonOptions = _.merge({}, defaultOptions, { headers: { Accept: 'application/json, text/plain, */*', - 'Cache-Control': 'no-cache', + 'Cache-Control': 'no-cache' }, - type: REQ_TYPE.JSON, -}); + type: REQ_TYPE.JSON +}) // 在 defaultJsonOptions 基础上多出来的, request response 皆是 json export const defaultBiJsonOptions = _.merge({}, defaultJsonOptions, { headers: { - 'Content-Type': 'application/json;charset=UTF-8', + 'Content-Type': 'application/json;charset=UTF-8' }, - reqType: REQ_TYPE.JSON, -}); + reqType: REQ_TYPE.JSON +}) // 获取真正请求的 URL export function getRealUrl(url) { if (!!url && !url.startsWith('http')) { - return REQ_BASE_URL + url; + return REQ_BASE_URL + url } - return url; + return url } /** @@ -85,20 +84,25 @@ function _showAuthError() { Modal.error({ title: '认证失败', // eslint-disable-next-line react/jsx-filename-extension - content: (

您现在处于非认证状态!!!
- 如果想保留本页状态,请在 新页面登陆
- { /* 否则在 当前页登陆 。 */ } -

), - }); + content: ( < p > 您现在处于非认证状态!!!< + br / > + 如果想保留本页状态,请在 < a + href = '/login' + target = 'blank' > 新页面登陆 < /a> 。
+ { /* 否则在 当前页登陆 。 */ } + < /p>), +}) + } + /** * 防抖展示认证错误(一段时间内仅一次) * @type {Function} */ const showAuthError = _.debounce(_showAuthError, 500, { leading: true, - trailing: false, -}); + trailing: false +}) /** * 展示服务端错误信息 @@ -107,8 +111,8 @@ const showAuthError = _.debounce(_showAuthError, 500, { function _showServerError(e) { Modal.error({ title: '服务端错误!', - content: `服务端错误。服务端可能未正确部署或由于其他原因响应失败!请保留现场并联系开发人员。错误信息: ${e}`, - }); + content: `服务端错误。服务端可能未正确部署或由于其他原因响应失败!请保留现场并联系开发人员。错误信息: ${e}` + }) } /** @@ -117,8 +121,8 @@ function _showServerError(e) { */ const showServerError = _.debounce(_showServerError, 500, { leading: true, - trailing: false, -}); + trailing: false +}) /** * 包装错误处理。所有服务端应用(非业务)非 ret 预计错误与认证错误统一处理。 @@ -132,35 +136,35 @@ const showServerError = _.debounce(_showServerError, 500, { */ export function wrapErrorHandler(errorHandler, dispatch) { return (e) => { - let handlerLevel = 1000; // 默认都处理 + let handlerLevel = 1000 // 默认都处理 // 先看是否传入 errorHandler,如果传入,则执行用户 errorHandler,并根据处理结果设置新的 handlerLevel if (_.isFunction(errorHandler)) { - handlerLevel = _getErrorHandlerLevel(errorHandler(e)); + handlerLevel = _getErrorHandlerLevel(errorHandler(e)) } if (handlerLevel > 0 && e instanceof XMLHttpRequest) { // 服务端应用(非业务)非 ret 预计错误处理,如 404,400,500,非返回 json 错误 - showServerError(e.responseText); + showServerError(e.responseText) } else if (handlerLevel > 10 && e.ret === -1) { // 认证失败,该登陆未登录 - showAuthError(); + showAuthError() } else if (handlerLevel > 100 && dispatch) { - dispatch({ type: COMMON_REQUEST_ERROR, payload: e }); + dispatch({ type: COMMON_REQUEST_ERROR, payload: e }) } else if (handlerLevel > 100) { - const msg = e.ret ? `[code]${e.ret}, [msg]${e.msg}` : JSON.stringify(e); + const msg = e.ret ? `[code]${e.ret}, [msg]${e.msg}` : JSON.stringify(e) // eslint-disable-next-line no-console - console.error(`请求出错: ${msg}`); + console.error(`请求出错: ${msg}`) } - }; + } } function _getErrorHandlerLevel(type) { if (type === ERROR_HANDLER_TYPE.SYSTEM) { - return 10; + return 10 } else if (type === ERROR_HANDLER_TYPE.SYSTEM_AND_AUTH || type === true) { - return 100; + return 100 } else if (type === ERROR_HANDLER_TYPE.ALL) { - return 1000; + return 1000 } - return 0; + return 0 } diff --git a/demos/reactapp/src/common/apiutils/apiCreator.js b/demos/reactapp/src/common/apiutils/apiCreator.js index dcb59b9..389f70f 100644 --- a/demos/reactapp/src/common/apiutils/apiCreator.js +++ b/demos/reactapp/src/common/apiutils/apiCreator.js @@ -1,37 +1,37 @@ const createApi = fetchFunc => options => (...args) => { - let finalOpts; - const argsName = ['options', 'successCallBack', 'errorCallBack', 'dispatch']; + let finalOpts + const argsName = ['options', 'successCallBack', 'errorCallBack', 'dispatch'] // options 可以是 url,或完整的 options 对象 if (typeof options === 'string') { - finalOpts = { url: options }; + finalOpts = { url: options } } else { - finalOpts = { ...options }; + finalOpts = { ...options } } - const temArgs = {}; + const temArgs = {} if (args) { // args 第一个参数,options 可以忽略 - let i = 0; + let i = 0 if (args[0] !== null && typeof args[0] === 'object') { - i = 1; - finalOpts = Object.assign(finalOpts, args[0]); + i = 1 + finalOpts = Object.assign(finalOpts, args[0]) } // eslint-disable-next-line no-plusplus for (let j = i; j < args.length; j++) { // eslint-disable-next-line no-mixed-operators - temArgs[argsName[j - i + 1]] = args[j]; + temArgs[argsName[j - i + 1]] = args[j] } } if (temArgs.successCallBack) { - finalOpts.onSuccess = temArgs.successCallBack; + finalOpts.onSuccess = temArgs.successCallBack } if (temArgs.errorCallBack) { - finalOpts.onError = temArgs.errorCallBack; + finalOpts.onError = temArgs.errorCallBack } - fetchFunc(finalOpts, temArgs.dispatch); -}; + fetchFunc(finalOpts, temArgs.dispatch) +} -export default createApi; +export default createApi diff --git a/demos/reactapp/src/common/apiutils/errorUtils.js b/demos/reactapp/src/common/apiutils/errorUtils.js index 29e2db6..64d0596 100644 --- a/demos/reactapp/src/common/apiutils/errorUtils.js +++ b/demos/reactapp/src/common/apiutils/errorUtils.js @@ -1,10 +1,10 @@ /** * 错误处理帮助类 */ -import { Message } from 'antd'; -import _ from 'lodash'; +import { Message } from 'antd' +import _ from 'lodash' -import { ERROR_HANDLER_TYPE } from './index'; +import { ERROR_HANDLER_TYPE } from './index' /** * 处理业务类型的错误(-3),通过 message 的方式展现 @@ -13,14 +13,14 @@ import { ERROR_HANDLER_TYPE } from './index'; * @return {boolean} */ export function messageBizError(e, callBack) { - let continueHandler = true; + let continueHandler = true if (e && e.ret === -3) { // 业务错误 - Message.error(e.msg, 4.5); - continueHandler = ERROR_HANDLER_TYPE.NO; + Message.error(e.msg, 4.5) + continueHandler = ERROR_HANDLER_TYPE.NO } if (_.isFunction(callBack)) { - callBack({ error: e }); + callBack({ error: e }) } - return continueHandler; + return continueHandler } diff --git a/demos/reactapp/src/common/apiutils/fetchAJAX.js b/demos/reactapp/src/common/apiutils/fetchAJAX.js index 05205dc..ed1ea8c 100644 --- a/demos/reactapp/src/common/apiutils/fetchAJAX.js +++ b/demos/reactapp/src/common/apiutils/fetchAJAX.js @@ -1,27 +1,28 @@ -import 'isomorphic-fetch'; -import { REQ_TYPE, defaultOptions, defaultJsonOptions, getRealUrl, wrapErrorHandler } from './ajaxCommon'; +import 'isomorphic-fetch' +import { defaultJsonOptions, defaultOptions, getRealUrl, REQ_TYPE, wrapErrorHandler } from './ajaxCommon' function handleStatus(res) { if (res.ok) { - return res; + return res } - throw new Error({ result: res.status }); + throw new Error({ result: res.status }) } + // json 有固定的格式,所以固定处理方法 function handleJson(data) { // noinspection JSUnresolvedVariable if (data.ret === 0) { - return data.data; + return data.data } - throw new Error(data); + throw new Error(data) } export function doFetch(options = {}, dispatch) { const opts = { ...defaultOptions, ...options, - onError: wrapErrorHandler(options.onError, dispatch), - }; + onError: wrapErrorHandler(options.onError, dispatch) + } // 根据配置创建 Request 对象 const req = new Request(getRealUrl(opts.url), { @@ -30,23 +31,23 @@ export function doFetch(options = {}, dispatch) { body: opts.data, cache: opts.cache, redirect: 'follow', - mode: 'cors', - }); + mode: 'cors' + }) if (!__DEV__) { - req.credentials = 'include'; + req.credentials = 'include' } // 请求 // FIXME 应该根据 response 类型自动判断是否 Json 请求 - let tempRes = fetch(req).then(handleStatus); + let tempRes = fetch(req).then(handleStatus) if (options.type === REQ_TYPE.JSON) { - tempRes = tempRes.then(res => res.json()).then(handleJson); + tempRes = tempRes.then(res => res.json()).then(handleJson) } - tempRes.then(options.onSuccess).catch(options.onError); + tempRes.then(options.onSuccess).catch(options.onError) } export function doFetchJson(options = {}, dispatch) { - const opts = { ...defaultJsonOptions, ...options }; - doFetch(opts, dispatch); + const opts = { ...defaultJsonOptions, ...options } + doFetch(opts, dispatch) } diff --git a/demos/reactapp/src/common/apiutils/index.js b/demos/reactapp/src/common/apiutils/index.js index 5f22df4..7ca7b96 100644 --- a/demos/reactapp/src/common/apiutils/index.js +++ b/demos/reactapp/src/common/apiutils/index.js @@ -1,26 +1,26 @@ /** * export 一个 API,底层的实现可能会改(如,切换为 reqwest/superagent/fetch) */ -import { METHODS, REQ_TYPE, CACHE_TYPE, ERROR_HANDLER_TYPE } from './ajaxCommon'; -import { doFetch, doFetchJson, doBiJsonFetch } from './reqwestAJAX'; -import createApi from './apiCreator'; +import { CACHE_TYPE, ERROR_HANDLER_TYPE, METHODS, REQ_TYPE } from './ajaxCommon' +import { doBiJsonFetch, doFetch, doFetchJson } from './reqwestAJAX' +import createApi from './apiCreator' /** * 创建一个 API 函数,结果可以是任何形式。如果是响应是 JSON 会自动转换,类似于 #createFetchJson 结果。
* 但是,请求头不指名 Json : Accept:text/javascript, text/html, application/xml, text/xml, *\/* */ -const createFetch = createApi(doFetch); +const createFetch = createApi(doFetch) /** * 创建一个 API 函数,明确指明函数用于获取 Json 格式数据。如果结果不符合格式会转到错误处理
* 请求头:Accept:application/json, text/plain, *\/* */ -const createFetchJson = createApi(doFetchJson); +const createFetchJson = createApi(doFetchJson) // 创建一个 API 函数, 指明客户端、服务端 内容体(content body)都是 Json 格式。
// 在 #createFetchJson 的基础上添加:Content-Type: application/json;charset=UTF-8,
// 同时,如果请求 data 为 Object类型会通过 JSON.stringify 转换 -const createBiJsonFetch = createApi(doBiJsonFetch); +const createBiJsonFetch = createApi(doBiJsonFetch) /** * 将 api 转换为返回 Promise 方式, 不处理 error。 如果处理 error, 请君自new @@ -28,9 +28,9 @@ const createBiJsonFetch = createApi(doBiJsonFetch); */ const createPromiseAPI = api => (data) => { return new Promise((resolve) => { - api({ data }, rs => resolve(rs)); - }); -}; + api({ data }, rs => resolve(rs)) + }) +} const API = { METHODS, @@ -42,7 +42,7 @@ const API = { createFetch, createFetchJson, createBiJsonFetch, - createPromiseAPI, -}; + createPromiseAPI +} -export default API; +export default API diff --git a/demos/reactapp/src/common/apiutils/reqwestAJAX.js b/demos/reactapp/src/common/apiutils/reqwestAJAX.js index ad940ea..2240f27 100644 --- a/demos/reactapp/src/common/apiutils/reqwestAJAX.js +++ b/demos/reactapp/src/common/apiutils/reqwestAJAX.js @@ -1,58 +1,58 @@ -import reqwest from 'reqwest'; -import _ from 'lodash'; +import reqwest from 'reqwest' +import _ from 'lodash' import { - REQ_TYPE, - METHODS, - defaultOptions, - defaultJsonOptions, defaultBiJsonOptions, + defaultJsonOptions, + defaultOptions, getRealUrl, - wrapErrorHandler, -} from './ajaxCommon'; + METHODS, + REQ_TYPE, + wrapErrorHandler +} from './ajaxCommon' function _doFetch(options = {}, dispatch, defaultMergeOption = {}) { const opts = _.merge({}, defaultMergeOption, options, { url: getRealUrl(options.url), - error: wrapErrorHandler(options.onError, dispatch), - }); + error: wrapErrorHandler(options.onError, dispatch) + }) - const method = opts.method && opts.method.toUpperCase(); - const data = opts.data; + const method = opts.method && opts.method.toUpperCase() + const data = opts.data if (METHODS.GET === method && opts.processData !== false && !_.isString(data)) { // get 请求,配置 processData 不为否,data 不为 String 则预处理 - const newData = { ...data, ts: new Date().getTime() }; // 加入时间戳,防止浏览器缓存 - opts.data = reqwest.toQueryString(newData, true); // traditional 方式,保证数组符合 spring mvc 的传参方式。 + const newData = { ...data, ts: new Date().getTime() } // 加入时间戳,防止浏览器缓存 + opts.data = reqwest.toQueryString(newData, true) // traditional 方式,保证数组符合 spring mvc 的传参方式。 } opts.success = (res) => { - const doSuc = options.onSuccess ? options.onSuccess : defaultOptions.onSuccess; // reqwest 名字不同 + const doSuc = options.onSuccess ? options.onSuccess : defaultOptions.onSuccess // reqwest 名字不同 if (opts.type === REQ_TYPE.JSON || typeof res === 'object') { // noinspection JSUnresolvedVariable if (res.result === 0 || res.ret === 0) { - doSuc(res.data); + doSuc(res.data) } else { - opts.error(res); + opts.error(res) } } else { - doSuc(res); + doSuc(res) } - }; + } - reqwest(opts); + reqwest(opts) } export function doFetch(options = {}, dispatch) { - _doFetch(options, dispatch, defaultOptions); + _doFetch(options, dispatch, defaultOptions) } export function doFetchJson(options = {}, dispatch) { - _doFetch(options, dispatch, defaultJsonOptions); + _doFetch(options, dispatch, defaultJsonOptions) } export function doBiJsonFetch(options = {}, dispatch) { - let opts = options; + let opts = options if (typeof opts.data === 'object') { - opts = { ...options, data: JSON.stringify(opts.data) }; + opts = { ...options, data: JSON.stringify(opts.data) } } - _doFetch(opts, dispatch, defaultBiJsonOptions); + _doFetch(opts, dispatch, defaultBiJsonOptions) } diff --git a/demos/reactapp/src/components/index.js b/demos/reactapp/src/components/index.js index ee4376b..3c53a59 100644 --- a/demos/reactapp/src/components/index.js +++ b/demos/reactapp/src/components/index.js @@ -4,8 +4,8 @@ */ /****************************** 布局组件 ******************************/ -export { default as Header } from './layout/Header/Header'; -export { default as Sidebar } from './layout/Sidebar/Sidebar'; -export { default as Content } from './layout/Content/Content'; -export { default as Footer } from './layout/Footer/Footer'; -export { default as Breadcrumb } from './layout/Breadcrumb/Breadcrumb'; +export { default as Header } from './layout/Header/Header' +export { default as Sidebar } from './layout/Sidebar/Sidebar' +export { default as Content } from './layout/Content/Content' +export { default as Footer } from './layout/Footer/Footer' +export { default as Breadcrumb } from './layout/Breadcrumb/Breadcrumb' diff --git a/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.jsx b/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.jsx index 7ab8d27..7fb65f3 100644 --- a/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.jsx +++ b/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.jsx @@ -5,10 +5,10 @@ * @see https://ant.design/components/breadcrumb-cn/ * @see https://ant.design/components/icon-cn/ */ -import { Breadcrumb, Icon } from 'antd'; -import PropTypes from 'prop-types'; -import React from 'react'; -import './Breadcrumb.less'; +import { Breadcrumb, Icon } from 'antd' +import PropTypes from 'prop-types' +import React from 'react' +import './Breadcrumb.less' /** * 面包屑组件 @@ -17,28 +17,28 @@ import './Breadcrumb.less'; class CustomBreadcrumb extends React.PureComponent { static propTypes = { data: PropTypes.array - }; + } static defaultProps = { data: [] - }; + } render() { - const { data } = this.props; + const { data } = this.props const breadcrumbItems = data.map((item) => { return ( - + {item.title} ) - }); + }) return (
- + Home {breadcrumbItems} @@ -47,4 +47,5 @@ class CustomBreadcrumb extends React.PureComponent { ) } } -export default CustomBreadcrumb; + +export default CustomBreadcrumb diff --git a/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.less b/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.less index d53b7ad..17a8c3f 100644 --- a/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.less +++ b/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.less @@ -1,6 +1,7 @@ .ant-layout-breadcrumb { z-index: 200; line-height: 64px; + .ant-breadcrumb-link { font-size: 16px; } diff --git a/demos/reactapp/src/components/layout/Content/Content.jsx b/demos/reactapp/src/components/layout/Content/Content.jsx index 1c84fba..5dcfb07 100644 --- a/demos/reactapp/src/components/layout/Content/Content.jsx +++ b/demos/reactapp/src/components/layout/Content/Content.jsx @@ -4,12 +4,12 @@ * @see https://ant.design/components/layout-cn/ * @see https://ant.design/components/card-cn/ */ -import { Card, Layout } from 'antd'; -import React from 'react'; +import { Card, Layout } from 'antd' +import React from 'react' -import './Content.less'; +import './Content.less' -const { Content } = Layout; +const { Content } = Layout /** * 内容布局组件 @@ -30,4 +30,5 @@ class CustomContent extends React.PureComponent { ) } } -export default CustomContent; + +export default CustomContent diff --git a/demos/reactapp/src/components/layout/Footer/Footer.jsx b/demos/reactapp/src/components/layout/Footer/Footer.jsx index 0501bc9..adbce5a 100644 --- a/demos/reactapp/src/components/layout/Footer/Footer.jsx +++ b/demos/reactapp/src/components/layout/Footer/Footer.jsx @@ -3,12 +3,12 @@ * @author Zhang Peng * @see https://ant.design/components/layout-cn/ */ -import { Layout } from 'antd'; -import React from 'react'; +import { Layout } from 'antd' +import React from 'react' -import './index.less'; +import './index.less' -const { Footer } = Layout; +const { Footer } = Layout /** * 底部布局组件 @@ -23,4 +23,5 @@ class CustomFooter extends React.PureComponent { ) } } -export default CustomFooter; + +export default CustomFooter diff --git a/demos/reactapp/src/components/layout/Header/Header.jsx b/demos/reactapp/src/components/layout/Header/Header.jsx index 9873740..f4243a6 100644 --- a/demos/reactapp/src/components/layout/Header/Header.jsx +++ b/demos/reactapp/src/components/layout/Header/Header.jsx @@ -3,18 +3,18 @@ * @author Zhang Peng * @see https://ant.design/components/layout-cn/ */ -import { Avatar, Badge, Col, Dropdown, Icon, Layout, Menu, Popover, Row } from 'antd'; -import React from 'react'; -import { Link, withRouter } from 'react-router-dom'; -import PropTypes from 'prop-types'; -import { connect } from 'react-redux'; -import { bindActionCreators } from 'redux'; +import { Avatar, Badge, Col, Dropdown, Icon, Layout, Menu, Popover, Row } from 'antd' +import React from 'react' +import { Link, withRouter } from 'react-router-dom' +import PropTypes from 'prop-types' +import { connect } from 'react-redux' +import { bindActionCreators } from 'redux' -import './Header.less'; -import Breadcrumb from '../Breadcrumb/Breadcrumb'; -import { fetchProfile, logout } from '../../../redux/actions/auth'; +import './Header.less' +import Breadcrumb from '../Breadcrumb/Breadcrumb' +import { fetchProfile, logout } from '../../../redux/actions/auth' -const { Header } = Layout; +const { Header } = Layout const content = (
@@ -24,19 +24,19 @@ const content = (

Content

Content

-); +) const mapStateToProps = (state) => { - const { auth, menu } = state; + const { auth, menu } = state return { auth: auth ? auth : null, navpath: menu.navpath - }; -}; + } +} const mapDispatchToProps = (dispatch) => { - return { actions: bindActionCreators({ fetchProfile, logout }, dispatch) }; -}; + return { actions: bindActionCreators({ fetchProfile, logout }, dispatch) } +} /** * 顶部布局组件 @@ -47,30 +47,30 @@ class CustomHeader extends React.PureComponent { auth: PropTypes.object, actions: PropTypes.object, navpath: PropTypes.array - }; + } static defaultProps = { auth: null, actions: null, navpath: [] - }; + } componentWillMount() { - const { actions } = this.props; - actions.fetchProfile(); + const { actions } = this.props + actions.fetchProfile() } handleLogOut = () => { - const { actions } = this.props; + const { actions } = this.props actions.logout().payload.promise.then(() => { - this.props.history.replace('/login'); - }); - }; + this.props.history.replace('/login') + }) + } render() { - const { auth, navpath } = this.props; - let username = ''; + const { auth, navpath } = this.props + let username = '' if (auth.user) { - if(auth.user.data) { + if (auth.user.data) { username = auth.user.data.name } } @@ -83,30 +83,30 @@ class CustomHeader extends React.PureComponent { 选项2 - + 注销 - ); + ) return (
- + - + - + - + @@ -115,7 +115,7 @@ class CustomHeader extends React.PureComponent { {username} - + @@ -124,5 +124,6 @@ class CustomHeader extends React.PureComponent { ) } } -export default withRouter(connect(mapStateToProps, mapDispatchToProps)(CustomHeader)); + +export default withRouter(connect(mapStateToProps, mapDispatchToProps)(CustomHeader)) diff --git a/demos/reactapp/src/components/layout/Header/Header.less b/demos/reactapp/src/components/layout/Header/Header.less index 54b974f..7cbd5a6 100644 --- a/demos/reactapp/src/components/layout/Header/Header.less +++ b/demos/reactapp/src/components/layout/Header/Header.less @@ -10,6 +10,7 @@ .header-icon { margin: 0 15px; + i { font-size: 20px; } diff --git a/demos/reactapp/src/components/layout/Sidebar/Sidebar.jsx b/demos/reactapp/src/components/layout/Sidebar/Sidebar.jsx index e4a3812..25decc2 100644 --- a/demos/reactapp/src/components/layout/Sidebar/Sidebar.jsx +++ b/demos/reactapp/src/components/layout/Sidebar/Sidebar.jsx @@ -3,19 +3,19 @@ * @author Zhang Peng * @see https://ant.design/components/layout-cn/ */ -import {Icon, Layout, Menu} from "antd"; -import PropTypes from "prop-types"; -import React from "react"; -import {connect} from "react-redux"; -import {matchPath, withRouter} from "react-router"; -import {Link} from "react-router-dom"; -import {bindActionCreators} from "redux"; +import { Icon, Layout, Menu } from 'antd' +import PropTypes from 'prop-types' +import React from 'react' +import { connect } from 'react-redux' +import { matchPath, withRouter } from 'react-router' +import { Link } from 'react-router-dom' +import { bindActionCreators } from 'redux' -import "./Sidebar.less"; -import logoImg from "./antd.svg"; -import {refreshMenu, refreshNavPath} from "../../../redux/actions/menu"; +import './Sidebar.less' +import logoImg from './antd.svg' +import { refreshMenu, refreshNavPath } from '../../../redux/actions/menu' -const {Sider} = Layout; +const { Sider } = Layout const isActive = (path, history) => { return matchPath(path, { @@ -23,7 +23,7 @@ const isActive = (path, history) => { exact: true, strict: false }) -}; +} /** * 侧边导航栏组件。侧边栏采用的响应式布局方式,页面大小收缩到一定程度,侧边栏会隐藏。 @@ -32,16 +32,16 @@ const isActive = (path, history) => { class CustomSidebar extends React.PureComponent { static propTypes = { items: PropTypes.array - }; + } static defaultProps = { items: [] - }; + } state = { - openKey: "sub0", - activeKey: "menu0", - mode: 'inline', - }; + openKey: 'sub0', + activeKey: 'menu0', + mode: 'inline' + } componentDidMount() { this.props.getAllMenu() @@ -57,68 +57,68 @@ class CustomSidebar extends React.PureComponent { }) } }) - }); + }) } menuClickHandle = (item) => { this.setState({ activeKey: item.key - }); + }) this.props.updateNavPath(item.keyPath, item.key) - }; + } render() { - const {items, history} = this.props; - let {activeKey, openKey} = this.state; + const { items, history } = this.props + let { activeKey, openKey } = this.state const _menuProcess = (nodes, pkey) => { return Array.isArray(nodes) && nodes.map((item, i) => { - const menu = _menuProcess(item.children, item.key); - if (item.url && isActive(item.url, history)) { - activeKey = 'menu' + item.key; - openKey = 'sub' + pkey - } - - switch (item.type) { - - case 'SubMenu': - return ( - {item.title}} - > - {menu} - - ); - case 'ItemGroup': - return ( - {item.title}} - > - {menu} - - ); - case 'Divider': - return ( - - ); - case 'Item': - default: - return ( - - { - item.url ? {item.icon && }{item.title} : - {item.icon && }{item.title} - } - - ); - break; - } - }); - }; - - const menu = _menuProcess(items); + const menu = _menuProcess(item.children, item.key) + if (item.url && isActive(item.url, history)) { + activeKey = 'menu' + item.key + openKey = 'sub' + pkey + } + + switch (item.type) { + + case 'SubMenu': + return ( + {item.title}} + > + {menu} + + ) + case 'ItemGroup': + return ( + {item.title}} + > + {menu} + + ) + case 'Divider': + return ( + + ) + case 'Item': + default: + return ( + + { + item.url ? {item.icon && }{item.title} : + {item.icon && }{item.title} + } + + ) + break + } + }) + } + + const menu = _menuProcess(items) return ( /** diff --git a/demos/reactapp/src/components/layout/Sidebar/antd.svg b/demos/reactapp/src/components/layout/Sidebar/antd.svg index c03bd4a..48e82d0 100644 --- a/demos/reactapp/src/components/layout/Sidebar/antd.svg +++ b/demos/reactapp/src/components/layout/Sidebar/antd.svg @@ -1,32 +1,39 @@ - - - a - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - + + + a + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/demos/reactapp/src/containers/Core/CoreContainer.jsx b/demos/reactapp/src/containers/Core/CoreContainer.jsx index 9f7da3b..7cf17f3 100644 --- a/demos/reactapp/src/containers/Core/CoreContainer.jsx +++ b/demos/reactapp/src/containers/Core/CoreContainer.jsx @@ -3,14 +3,14 @@ * @author Zhang Peng * @see https://ant.design/components/layout-cn/ */ -import { Layout } from 'antd'; -import React from 'react'; -import { Redirect, Route } from 'react-router-dom'; +import { Layout } from 'antd' +import React from 'react' +import { Redirect, Route } from 'react-router-dom' -import './CoreContainer.less'; -import { authHOC } from '../../utils'; -import { ChildRoutes } from '../../routes'; -import { Content, Footer, Header, Sidebar } from '../../components'; +import './CoreContainer.less' +import { authHOC } from '../../utils' +import { ChildRoutes } from '../../routes' +import { Content, Footer, Header, Sidebar } from '../../components' /** * 应用的核心容器组件 @@ -21,21 +21,22 @@ class CoreContainer extends React.PureComponent { render() { return ( - + -
+
- + {ChildRoutes.map((route, index) => ( - + ))} -
+
- ); + ) } } -export default CoreContainer; + +export default CoreContainer diff --git a/demos/reactapp/src/containers/Root/ReduxDevTools.jsx b/demos/reactapp/src/containers/Root/ReduxDevTools.jsx index 1f3e0e5..557e315 100644 --- a/demos/reactapp/src/containers/Root/ReduxDevTools.jsx +++ b/demos/reactapp/src/containers/Root/ReduxDevTools.jsx @@ -5,12 +5,12 @@ * @see https://github.com/gaearon/redux-devtools-dock-monitor * @see https://github.com/gaearon/redux-devtools-log-monitor */ -import React from 'react'; +import React from 'react' // Exported from redux-devtools -import { createDevTools } from 'redux-devtools'; +import { createDevTools } from 'redux-devtools' // Monitors are separate packages, and you can make a custom one -import LogMonitor from 'redux-devtools-log-monitor'; -import DockMonitor from 'redux-devtools-dock-monitor'; +import LogMonitor from 'redux-devtools-log-monitor' +import DockMonitor from 'redux-devtools-dock-monitor' /** * Redux 开发工具组件 @@ -25,7 +25,7 @@ const ReduxDevTools = createDevTools( - + -); -export default ReduxDevTools; +) +export default ReduxDevTools diff --git a/demos/reactapp/src/containers/Root/RootContainer.dev.jsx b/demos/reactapp/src/containers/Root/RootContainer.dev.jsx index e757dd9..2df6e0c 100644 --- a/demos/reactapp/src/containers/Root/RootContainer.dev.jsx +++ b/demos/reactapp/src/containers/Root/RootContainer.dev.jsx @@ -3,14 +3,15 @@ * @author Zhang Peng * @see http://gaearon.github.io/react-hot-loader/getstarted/ */ -import React from 'react'; -import { Provider } from 'react-redux'; -import { HashRouter as Router } from 'react-router-dom'; +import React from 'react' +import { Provider } from 'react-redux' +import { HashRouter as Router } from 'react-router-dom' -import Routes from '../../routes'; -import ReduxDevTools from './ReduxDevTools'; -import configureStore from '../../redux/store/configureStore'; -const store = configureStore(); +import Routes from '../../routes' +import ReduxDevTools from './ReduxDevTools' +import configureStore from '../../redux/store/configureStore' + +const store = configureStore() /** * 开发环境的 Root 容器,会包含 Redux 的开发工具 @@ -18,15 +19,16 @@ const store = configureStore(); */ class RootContainer extends React.PureComponent { render() { - if (!this.routes) this.routes = Routes; + if (!this.routes) this.routes = Routes return (
- - + +
- ); + ) } } -export default RootContainer; + +export default RootContainer diff --git a/demos/reactapp/src/containers/Root/RootContainer.jsx b/demos/reactapp/src/containers/Root/RootContainer.jsx index 8b6ccba..17ede52 100644 --- a/demos/reactapp/src/containers/Root/RootContainer.jsx +++ b/demos/reactapp/src/containers/Root/RootContainer.jsx @@ -3,10 +3,10 @@ * @author Zhang Peng * @see http://gaearon.github.io/react-hot-loader/getstarted/ */ -if (process.env.NODE_ENV === "development") { - module.exports = require('./RootContainer.dev'); - console.log('[development] Root.dev started.'); +if (process.env.NODE_ENV === 'development') { + module.exports = require('./RootContainer.dev') + console.log('[development] Root.dev started.') } else { - module.exports = require('./RootContainer.prod'); - console.log('[production] Root.prod started.'); + module.exports = require('./RootContainer.prod') + console.log('[production] Root.prod started.') } diff --git a/demos/reactapp/src/containers/Root/RootContainer.prod.jsx b/demos/reactapp/src/containers/Root/RootContainer.prod.jsx index ef87fa3..ae6550f 100644 --- a/demos/reactapp/src/containers/Root/RootContainer.prod.jsx +++ b/demos/reactapp/src/containers/Root/RootContainer.prod.jsx @@ -3,13 +3,14 @@ * @author Zhang Peng * @see http://gaearon.github.io/react-hot-loader/getstarted/ */ -import React from 'react'; -import { Provider } from 'react-redux'; -import { HashRouter as Router } from 'react-router-dom'; +import React from 'react' +import { Provider } from 'react-redux' +import { HashRouter as Router } from 'react-router-dom' -import Routes from '../../routes'; -import configureStore from '../../redux/store/configureStore'; -const store = configureStore(); +import Routes from '../../routes' +import configureStore from '../../redux/store/configureStore' + +const store = configureStore() /** * 生产环境的 Root 容器 @@ -17,12 +18,13 @@ const store = configureStore(); */ class RootContainer extends React.PureComponent { render() { - if (!this.routes) this.routes = Routes; + if (!this.routes) this.routes = Routes return ( - + - ); + ) } } -export default RootContainer; + +export default RootContainer diff --git a/demos/reactapp/src/index.jsx b/demos/reactapp/src/index.jsx index 5e63304..611a6ab 100644 --- a/demos/reactapp/src/index.jsx +++ b/demos/reactapp/src/index.jsx @@ -3,29 +3,29 @@ * @author Zhang Peng * @see http://gaearon.github.io/react-hot-loader/getstarted/ */ -import 'react-hot-loader/patch'; -import React from 'react'; -import ReactDOM from 'react-dom'; -import { AppContainer } from 'react-hot-loader'; +import 'react-hot-loader/patch' +import React from 'react' +import ReactDOM from 'react-dom' +import { AppContainer } from 'react-hot-loader' -import RootContainer from './containers/Root/RootContainer'; +import RootContainer from './containers/Root/RootContainer' const render = Component => { ReactDOM.render( - + , document.getElementById('root') - ); -}; + ) +} // 初次启动 App -render(RootContainer); +render(RootContainer) // 热替换启动 App if (module.hot) { module.hot.accept('./containers/Root/RootContainer', () => { - const NextRootContainer = require('./containers/Root/RootContainer'); + const NextRootContainer = require('./containers/Root/RootContainer') render(NextRootContainer) - }); + }) } diff --git a/demos/reactapp/src/redux/actions/auth.js b/demos/reactapp/src/redux/actions/auth.js index ef11ea7..691ba72 100644 --- a/demos/reactapp/src/redux/actions/auth.js +++ b/demos/reactapp/src/redux/actions/auth.js @@ -1,11 +1,11 @@ -const webapi = require('../../webapi'); -import { FETCH_PROFILE, LOGIN, LOGOUT, UID_NOT_FOUND } from '../constants/authActionType'; +const webapi = require('../../webapi') +import { FETCH_PROFILE, LOGIN, LOGOUT, UID_NOT_FOUND } from '../constants/authActionType' export const fetchProfile = () => { - let uid = window.localStorage.getItem('uid'); + let uid = window.localStorage.getItem('uid') if (uid === undefined) { - return { type: UID_NOT_FOUND }; + return { type: UID_NOT_FOUND } } return { @@ -14,7 +14,7 @@ export const fetchProfile = () => { promise: webapi.get('/my') } } -}; +} export const login = (username, password) => { return { @@ -26,7 +26,7 @@ export const login = (username, password) => { }) } } -}; +} export const logout = () => { return { @@ -35,4 +35,4 @@ export const logout = () => { promise: webapi.get('/logout') } } -}; +} diff --git a/demos/reactapp/src/redux/actions/menu.js b/demos/reactapp/src/redux/actions/menu.js index 308a3b5..32fb133 100644 --- a/demos/reactapp/src/redux/actions/menu.js +++ b/demos/reactapp/src/redux/actions/menu.js @@ -1,5 +1,5 @@ -const webapi = require('../../webapi'); -import { REFRESH_MENU, REFRESH_NAVPATH } from '../constants/menuActionType'; +const webapi = require('../../webapi') +import { REFRESH_MENU, REFRESH_NAVPATH } from '../constants/menuActionType' export const refreshNavPath = (path, key) => { return { @@ -9,7 +9,7 @@ export const refreshNavPath = (path, key) => { key: key } } -}; +} export const refreshMenu = () => { return { @@ -18,4 +18,4 @@ export const refreshMenu = () => { promise: webapi.get('/menu') } } -}; +} diff --git a/demos/reactapp/src/redux/constants/authActionType.js b/demos/reactapp/src/redux/constants/authActionType.js index 18e4b67..231f4f0 100644 --- a/demos/reactapp/src/redux/constants/authActionType.js +++ b/demos/reactapp/src/redux/constants/authActionType.js @@ -1,16 +1,16 @@ -export const LOGIN = 'LOGIN'; -export const LOGOUT = 'LOGOUT'; -export const FETCH_PROFILE = 'FETCH_PROFILE'; -export const UID_NOT_FOUND = 'UID_NOT_FOUND'; +export const LOGIN = 'LOGIN' +export const LOGOUT = 'LOGOUT' +export const FETCH_PROFILE = 'FETCH_PROFILE' +export const UID_NOT_FOUND = 'UID_NOT_FOUND' -export const LOGIN_PENDING = 'LOGIN_PENDING'; -export const LOGIN_SUCCESS = 'LOGIN_SUCCESS'; -export const LOGIN_FAILED = 'LOGIN_FAILED'; +export const LOGIN_PENDING = 'LOGIN_PENDING' +export const LOGIN_SUCCESS = 'LOGIN_SUCCESS' +export const LOGIN_FAILED = 'LOGIN_FAILED' -export const LOGOUT_PENDING = 'LOGOUT_PENDING'; -export const LOGOUT_SUCCESS = 'LOGOUT_SUCCESS'; -export const LOGOUT_FAILED = 'LOGOUT_FAILED'; +export const LOGOUT_PENDING = 'LOGOUT_PENDING' +export const LOGOUT_SUCCESS = 'LOGOUT_SUCCESS' +export const LOGOUT_FAILED = 'LOGOUT_FAILED' -export const FETCH_PROFILE_PENDING = 'FETCH_PROFILE_PENDING'; -export const FETCH_PROFILE_SUCCESS = 'FETCH_PROFILE_SUCCESS'; -export const FETCH_PROFILE_FAILED = 'FETCH_PROFILE_FAILED'; +export const FETCH_PROFILE_PENDING = 'FETCH_PROFILE_PENDING' +export const FETCH_PROFILE_SUCCESS = 'FETCH_PROFILE_SUCCESS' +export const FETCH_PROFILE_FAILED = 'FETCH_PROFILE_FAILED' diff --git a/demos/reactapp/src/redux/constants/commonActionTypes.js b/demos/reactapp/src/redux/constants/commonActionTypes.js index 42df126..3a23b63 100644 --- a/demos/reactapp/src/redux/constants/commonActionTypes.js +++ b/demos/reactapp/src/redux/constants/commonActionTypes.js @@ -4,27 +4,27 @@ * 如果无 dispatch,则 console.log error * @type {string} */ -export const COMMON_REQUEST_ERROR = 'COMMON_REQUEST_ERROR'; +export const COMMON_REQUEST_ERROR = 'COMMON_REQUEST_ERROR' /** * 公共的 SpinModal action。用于控制统一的过度形式的模态框展示。 * 各类型,配合 payload 中的 type 等字段控制。 * @type {string} */ -export const COMMON_SPIN_MODAL = 'COMMON_SPIN_MODAL'; +export const COMMON_SPIN_MODAL = 'COMMON_SPIN_MODAL' /** * 公共的 SpinModal action。用于控制统一的过度形式的模态框消失。 * @type {string} */ -export const COMMON_SPIN_MODAL_DIS = 'COMMON_SPIN_MODAL_DIS'; +export const COMMON_SPIN_MODAL_DIS = 'COMMON_SPIN_MODAL_DIS' // 校验 -export const COMMON_VALIDATE_FAIL = 'COMMON_VALIDATE_FAIL'; +export const COMMON_VALIDATE_FAIL = 'COMMON_VALIDATE_FAIL' /** * 公共的页面离开(跳转)确认功能开关 * @type {string} */ -export const COMMON_LEAVE_CONFIRM_ON = 'COMMON_LEAVE_CONFIRM_ON'; -export const COMMON_LEAVE_CONFIRM_OFF = 'COMMON_LEAVE_CONFIRM_OFF'; +export const COMMON_LEAVE_CONFIRM_ON = 'COMMON_LEAVE_CONFIRM_ON' +export const COMMON_LEAVE_CONFIRM_OFF = 'COMMON_LEAVE_CONFIRM_OFF' diff --git a/demos/reactapp/src/redux/constants/menuActionType.js b/demos/reactapp/src/redux/constants/menuActionType.js index 0d0774b..d5aa48c 100644 --- a/demos/reactapp/src/redux/constants/menuActionType.js +++ b/demos/reactapp/src/redux/constants/menuActionType.js @@ -1,4 +1,4 @@ -export const REFRESH_MENU = 'REFRESH_MENU'; -export const REFRESH_NAVPATH = 'REFRESH_NAVPATH'; -export const REFRESH_MENU_SUCCESS = 'REFRESH_MENU_SUCCESS'; -export const REFRESH_MENU_FAILED = 'REFRESH_MENU_FAILED'; +export const REFRESH_MENU = 'REFRESH_MENU' +export const REFRESH_NAVPATH = 'REFRESH_NAVPATH' +export const REFRESH_MENU_SUCCESS = 'REFRESH_MENU_SUCCESS' +export const REFRESH_MENU_FAILED = 'REFRESH_MENU_FAILED' diff --git a/demos/reactapp/src/redux/middlewares/promiseMiddleware.js b/demos/reactapp/src/redux/middlewares/promiseMiddleware.js index 7849820..1fd4e12 100644 --- a/demos/reactapp/src/redux/middlewares/promiseMiddleware.js +++ b/demos/reactapp/src/redux/middlewares/promiseMiddleware.js @@ -1,25 +1,25 @@ -const defaultTypes = ['PENDING', 'FULFILLED', 'REJECTED']; +const defaultTypes = ['PENDING', 'FULFILLED', 'REJECTED'] const isPromise = (value) => { if (value !== null && typeof value === 'object') { - return value.promise && typeof value.promise.then === 'function'; + return value.promise && typeof value.promise.then === 'function' } -}; +} function createPromiseMiddleware(config = {}) { - const promiseTypeSuffixes = config.promiseTypeSuffixes || defaultTypes; + const promiseTypeSuffixes = config.promiseTypeSuffixes || defaultTypes return (_ref) => { - const dispatch = _ref.dispatch; + const dispatch = _ref.dispatch return next => action => { if (!isPromise(action.payload)) { - return next(action); + return next(action) } - const { type, payload, meta } = action; - const { promise, data } = payload; - const [PENDING, FULFILLED, REJECTED] = (meta || {}).promiseTypeSuffixes || promiseTypeSuffixes; + const { type, payload, meta } = action + const { promise, data } = payload + const [PENDING, FULFILLED, REJECTED] = (meta || {}).promiseTypeSuffixes || promiseTypeSuffixes /** * Dispatch the first async handler. This tells the @@ -29,15 +29,15 @@ function createPromiseMiddleware(config = {}) { type: `${type}_${PENDING}`, ...!!data ? { payload: data } : {}, ...!!meta ? { meta } : {} - }); + }) - const isAction = resolved => resolved && (resolved.meta || resolved.payload); - const isThunk = resolved => typeof resolved === 'function'; + const isAction = resolved => resolved && (resolved.meta || resolved.payload) + const isThunk = resolved => typeof resolved === 'function' const getResolveAction = isError => ({ type: `${type}_${isError ? REJECTED : FULFILLED}`, ...!!meta ? { meta } : {}, ...!!isError ? { error: true } : {} - }); + }) /** * Re-dispatch one of: @@ -47,29 +47,29 @@ function createPromiseMiddleware(config = {}) { */ action.payload.promise = promise.then( (resolved = {}) => { - const resolveAction = getResolveAction(); + const resolveAction = getResolveAction() return dispatch(isThunk(resolved) ? resolved.bind(null, resolveAction) : { ...resolveAction, ...isAction(resolved) ? resolved : { ...!!resolved && { payload: resolved } } - }); + }) }, (rejected = {}) => { - const resolveAction = getResolveAction(true); + const resolveAction = getResolveAction(true) return dispatch(isThunk(rejected) ? rejected.bind(null, resolveAction) : { ...resolveAction, ...isAction(rejected) ? rejected : { ...!!rejected && { payload: rejected } } - }); - }, - ); + }) + } + ) - return action; - }; - }; + return action + } + } } -const promise = createPromiseMiddleware({ promiseTypeSuffixes: ['PENDING', 'SUCCESS', 'FAILED'] }); -export default promise; +const promise = createPromiseMiddleware({ promiseTypeSuffixes: ['PENDING', 'SUCCESS', 'FAILED'] }) +export default promise diff --git a/demos/reactapp/src/redux/reducers/auth.js b/demos/reactapp/src/redux/reducers/auth.js index 2b48b1d..3b400dc 100644 --- a/demos/reactapp/src/redux/reducers/auth.js +++ b/demos/reactapp/src/redux/reducers/auth.js @@ -4,52 +4,52 @@ import { LOGIN_PENDING, LOGIN_SUCCESS, LOGOUT_SUCCESS -} from '../constants/authActionType'; +} from '../constants/authActionType' const initialState = { user: null, loggingIn: false, loggingOut: false, message: null -}; +} const auth = (state = initialState, action = {}) => { switch (action.type) { case LOGIN_PENDING: return Object.assign({}, state, { loggingIn: true - }); + }) case LOGIN_SUCCESS: - let user = action.payload.data; - window.localStorage.setItem('uid', user.uid); + let user = action.payload.data + window.localStorage.setItem('uid', user.uid) return Object.assign({}, state, { user: user, loggingIn: false, message: null - }); + }) case LOGIN_FAILED: return { ...state, loggingIn: false, user: null, message: action.payload.response.data.message - }; + } case LOGOUT_SUCCESS: - window.localStorage.removeItem('uid'); + window.localStorage.removeItem('uid') return { ...state, loggingOut: false, user: null, message: null - }; + } case FETCH_PROFILE_SUCCESS: return Object.assign({}, state, { user: action.payload.data, loggingIn: false, message: null - }); + }) default: - return state; + return state } -}; -export default auth; +} +export default auth diff --git a/demos/reactapp/src/redux/reducers/index.js b/demos/reactapp/src/redux/reducers/index.js index 18177cc..1494df4 100644 --- a/demos/reactapp/src/redux/reducers/index.js +++ b/demos/reactapp/src/redux/reducers/index.js @@ -1,12 +1,12 @@ /** * Created by Zhang Peng on 2017/7/6. */ -import { combineReducers } from 'redux'; -import auth from './auth'; -import menu from './menu'; +import { combineReducers } from 'redux' +import auth from './auth' +import menu from './menu' const rootReducer = combineReducers({ auth, menu -}); -export default rootReducer; +}) +export default rootReducer diff --git a/demos/reactapp/src/redux/reducers/menu.js b/demos/reactapp/src/redux/reducers/menu.js index bb4a781..d825949 100644 --- a/demos/reactapp/src/redux/reducers/menu.js +++ b/demos/reactapp/src/redux/reducers/menu.js @@ -1,49 +1,49 @@ -import _ from 'lodash'; +import _ from 'lodash' -import { REFRESH_MENU_SUCCESS, REFRESH_NAVPATH } from '../constants/menuActionType'; +import { REFRESH_MENU_SUCCESS, REFRESH_NAVPATH } from '../constants/menuActionType' const initialState = { items: [], navpath: [] -}; +} const menu = (state = initialState, action = {}) => { switch (action.type) { case REFRESH_MENU_SUCCESS: return Object.assign({}, initialState, { items: action.payload.data.data - }); + }) case REFRESH_NAVPATH: - let navpath = [], tmpOb, tmpKey, children; + let navpath = [], tmpOb, tmpKey, children if (Array.isArray(action.payload.data)) { action.payload.data.reverse().map((item) => { if (item.indexOf('sub') !== -1) { - tmpKey = item.replace('sub', ''); - tmpOb = _.find(state.items, function (o) { - return o.key == tmpKey; - }); - children = tmpOb.children; + tmpKey = item.replace('sub', '') + tmpOb = _.find(state.items, function(o) { + return o.key == tmpKey + }) + children = tmpOb.children navpath.push({ key: tmpOb.key, title: tmpOb.title, icon: tmpOb.icon, type: tmpOb.type, - url: tmpOb.url, + url: tmpOb.url }) } if (item.indexOf('menu') !== -1) { - tmpKey = item.replace('menu', ''); + tmpKey = item.replace('menu', '') if (children) { - tmpOb = _.find(children, function (o) { - return o.key == tmpKey; - }); + tmpOb = _.find(children, function(o) { + return o.key == tmpKey + }) navpath.push({ key: tmpOb.key, title: tmpOb.title, icon: tmpOb.icon, type: tmpOb.type, - url: tmpOb.url, - }); + url: tmpOb.url + }) } } }) @@ -51,9 +51,9 @@ const menu = (state = initialState, action = {}) => { return Object.assign({}, state, { currentIndex: action.payload.key * 1, navpath: navpath - }); + }) default: - return state; + return state } -}; -export default menu; +} +export default menu diff --git a/demos/reactapp/src/redux/store/configureStore.dev.js b/demos/reactapp/src/redux/store/configureStore.dev.js index a4f48e3..d0d1c57 100644 --- a/demos/reactapp/src/redux/store/configureStore.dev.js +++ b/demos/reactapp/src/redux/store/configureStore.dev.js @@ -4,14 +4,14 @@ * @see https://github.com/gaearon/redux-devtools/blob/master/docs/Walkthrough.md */ -import { applyMiddleware, compose, createStore } from 'redux'; -import { persistState } from 'redux-devtools'; -import logger from 'redux-logger'; -import thunk from 'redux-thunk'; +import { applyMiddleware, compose, createStore } from 'redux' +import { persistState } from 'redux-devtools' +import logger from 'redux-logger' +import thunk from 'redux-thunk' -import DevTools from '../../containers/Root/ReduxDevTools'; -import promise from '../middlewares/promiseMiddleware'; -import reducers from '../reducers'; +import DevTools from '../../containers/Root/ReduxDevTools' +import promise from '../middlewares/promiseMiddleware' +import reducers from '../reducers' const enhancer = compose( // Middleware you want to use in development: @@ -20,13 +20,13 @@ const enhancer = compose( DevTools.instrument(), // Optional. Lets you write ?debug_session= in address bar to persist debug sessions persistState(getDebugSessionKey()) -); +) function getDebugSessionKey() { // You can write custom logic here! // By default we try to read the key from ?debug_session= in the address bar - const matches = window.location.href.match(/[?&]debug_session=([^&]+)\b/); - return (matches && matches.length > 0) ? matches[1] : null; + const matches = window.location.href.match(/[?&]debug_session=([^&]+)\b/) + return (matches && matches.length > 0) ? matches[1] : null } /** @@ -37,15 +37,16 @@ function getDebugSessionKey() { function configureStore(initialState) { // Note: only Redux >= 3.1.0 supports passing enhancer as third argument. // See https://github.com/reactjs/redux/releases/tag/v3.1.0 - const store = createStore(reducers, initialState, enhancer); + const store = createStore(reducers, initialState, enhancer) // Hot reload reducers (requires Webpack or Browserify HMR to be enabled) if (module.hot) { module.hot.accept('../reducers', () => store.replaceReducer(require('../reducers')) - ); + ) } - return store; + return store } -export default configureStore; + +export default configureStore diff --git a/demos/reactapp/src/redux/store/configureStore.js b/demos/reactapp/src/redux/store/configureStore.js index 06dc904..4dc34e5 100644 --- a/demos/reactapp/src/redux/store/configureStore.js +++ b/demos/reactapp/src/redux/store/configureStore.js @@ -6,7 +6,7 @@ // Use DefinePlugin (Webpack) or loose-envify (Browserify) // together with Uglify to strip the dev branch in prod build. if (process.env.NODE_ENV === 'development') { - module.exports = require('./configureStore.dev').default; + module.exports = require('./configureStore.dev').default } else { - module.exports = require('./configureStore.prod').default; + module.exports = require('./configureStore.prod').default } diff --git a/demos/reactapp/src/redux/store/configureStore.prod.js b/demos/reactapp/src/redux/store/configureStore.prod.js index f6ff995..b8095c8 100644 --- a/demos/reactapp/src/redux/store/configureStore.prod.js +++ b/demos/reactapp/src/redux/store/configureStore.prod.js @@ -4,13 +4,13 @@ * @see https://github.com/gaearon/redux-devtools/blob/master/docs/Walkthrough.md */ -import { applyMiddleware, createStore } from 'redux'; -import thunk from 'redux-thunk'; +import { applyMiddleware, createStore } from 'redux' +import thunk from 'redux-thunk' -import promise from '../middlewares/promiseMiddleware'; -import reducers from '../reducers'; +import promise from '../middlewares/promiseMiddleware' +import reducers from '../reducers' -const enhancer = applyMiddleware(thunk, promise); +const enhancer = applyMiddleware(thunk, promise) /** * 生产环境的 Store 构造方法。 @@ -18,6 +18,7 @@ const enhancer = applyMiddleware(thunk, promise); * @returns {Store} Redux 的状态容器,一个应用只有一个 */ function configureStore(initialState) { - return createStore(reducers, initialState, enhancer); + return createStore(reducers, initialState, enhancer) } -export default configureStore; + +export default configureStore diff --git a/demos/reactapp/src/routes/index.jsx b/demos/reactapp/src/routes/index.jsx index 0f987ab..1b6965a 100644 --- a/demos/reactapp/src/routes/index.jsx +++ b/demos/reactapp/src/routes/index.jsx @@ -5,11 +5,11 @@ * @see https://reacttraining.com/react-router/ * @see https://reacttraining.cn/ */ -import React from 'react'; -import { Route, Switch } from 'react-router-dom'; +import React from 'react' +import { Route, Switch } from 'react-router-dom' -import CoreContainer from '../containers/Core'; -import Login from '../views/pages/login/Login'; +import CoreContainer from '../containers/Core' +import Login from '../views/pages/login/Login' /** * 子路由表 @@ -28,7 +28,7 @@ export const ChildRoutes = [ 'path': '/pages/user', 'component': require('../views/pages/user/User').default } -]; +] /** * 默认路由 @@ -36,8 +36,8 @@ export const ChildRoutes = [ */ const Routes = ( - - + + -); -export default Routes; +) +export default Routes diff --git a/demos/reactapp/src/utils/asyncLoadHOC.js b/demos/reactapp/src/utils/asyncLoadHOC.js index ae62f9a..eb544b2 100644 --- a/demos/reactapp/src/utils/asyncLoadHOC.js +++ b/demos/reactapp/src/utils/asyncLoadHOC.js @@ -4,34 +4,40 @@ * @see https://segmentfault.com/a/1190000009820646 */ -import React from 'react'; +import React from 'react' -let Component = null; +let Component = null export const asyncLoadHOC = loadComponent => ( class AsyncComponent extends React.Component { static hasLoadedComponent() { - return Component !== null; + return Component !== null } componentWillMount() { if (AsyncComponent.hasLoadedComponent()) { - return; + return } loadComponent().then( module => module.default ).then((comp) => { - Component = comp; + Component = comp }).catch((err) => { - console.error(`Cannot load component in `); - throw err; - }); + console.error(`Cannot load component in `) + throw err + }) } render() { - return (Component) ? : null; + return (Component) ? + < + Component + {... + this.props + } + /> : null; } } -); +) diff --git a/demos/reactapp/src/utils/authHOC.jsx b/demos/reactapp/src/utils/authHOC.jsx index 25973a4..94554e1 100644 --- a/demos/reactapp/src/utils/authHOC.jsx +++ b/demos/reactapp/src/utils/authHOC.jsx @@ -5,8 +5,8 @@ * @see https://zhuanlan.zhihu.com/p/24776678 * @see https://segmentfault.com/a/1190000004598113 */ -import React from 'react'; -import { withRouter } from 'react-router-dom'; +import React from 'react' +import { withRouter } from 'react-router-dom' /** * 校验方法 @@ -14,12 +14,12 @@ import { withRouter } from 'react-router-dom'; * @param props {PropsType} 组件的props */ const validate = props => { - const { history } = props; - const isLoggedIn = !!window.localStorage.getItem("uid"); - if (!isLoggedIn && history.location.pathname !== "/login") { - history.replace("/login"); + const { history } = props + const isLoggedIn = !!window.localStorage.getItem('uid') + if (!isLoggedIn && history.location.pathname !== '/login') { + history.replace('/login') } -}; +} /** * 对组件进行认证的方法 @@ -30,19 +30,20 @@ const validate = props => { const authHOC = WrappedComponent => { class Authenticate extends React.Component { componentWillMount() { - validate(this.props); + validate(this.props) } componentWillReceiveProps(nextProps) { if (nextProps.location !== this.props.location) { - validate(nextProps); + validate(nextProps) } } render() { - return ; + return } } - return withRouter(Authenticate); -}; -export default authHOC; + + return withRouter(Authenticate) +} +export default authHOC diff --git a/demos/reactapp/src/utils/http.js b/demos/reactapp/src/utils/http.js index 8472c25..db936b7 100644 --- a/demos/reactapp/src/utils/http.js +++ b/demos/reactapp/src/utils/http.js @@ -5,18 +5,18 @@ * @see http://www.jianshu.com/p/df464b26ae58 */ -const axios = require('axios'); -const qs = require('qs'); +const axios = require('axios') +const qs = require('qs') -import config from '../../config/app.config'; +import config from '../../config/app.config' // 本项目中 axios 的默认全局配置 -axios.defaults.timeout = config.http.timeout; -axios.defaults.baseURL = config.http.baseURL; +axios.defaults.timeout = config.http.timeout +axios.defaults.baseURL = config.http.baseURL -axios.defaults.headers.get['Content-Type'] = 'application/json'; -axios.defaults.headers.post['Content-Type'] = 'application/json'; -axios.defaults.headers.put['Content-Type'] = 'application/json'; +axios.defaults.headers.get['Content-Type'] = 'application/json' +axios.defaults.headers.post['Content-Type'] = 'application/json' +axios.defaults.headers.put['Content-Type'] = 'application/json' // 本项目的默认配置 const defaultConfig = { @@ -34,20 +34,20 @@ const defaultConfig = { //该选项只适用于以下请求方式:`put/post/patch` //数组里面的最后一个函数必须返回一个字符串、-一个`ArrayBuffer`或者`Stream` - transformRequest: [function (data) { + transformRequest: [function(data) { // 序列化 if (data) { - console.log("[request after stringify] data: ", JSON.stringify(data)); - return JSON.stringify(data); + console.log('[request after stringify] data: ', JSON.stringify(data)) + return JSON.stringify(data) } }], //`transformResponse` 选项允许我们在数据传送到`then/catch`方法之前对数据进行改动 - transformResponse: [function (data) { + transformResponse: [function(data) { // 反序列化 if (data) { - console.log("[response after parse] data: ", JSON.parse(data)); - return JSON.parse(data); + console.log('[response after parse] data: ', JSON.parse(data)) + return JSON.parse(data) } }], @@ -62,10 +62,10 @@ const defaultConfig = { //`paramsSerializer`是一个可选的函数,起作用是让参数(params)序列化 //例如(https://www.npmjs.com/package/qs,http://api.jquery.com/jquery.param) - paramsSerializer: function (params) { - const content = qs.stringify(params, { arrayFormat: 'brackets' }); - console.log("[http] params 序列化后:", content); - return content; + paramsSerializer: function(params) { + const content = qs.stringify(params, { arrayFormat: 'brackets' }) + console.log('[http] params 序列化后:', content) + return content }, //`data`选项是作为一个请求体而需要被发送的数据 @@ -107,11 +107,11 @@ const defaultConfig = { xsrfHeaderName: 'X-XSRF-TOKEN',//default //`onUploadProgress`上传进度事件 - onUploadProgress: function (progressEvent) { + onUploadProgress: function(progressEvent) { }, //下载进度的事件 - onDownloadProgress: function (progressEvent) { + onDownloadProgress: function(progressEvent) { }, //相应内容的最大值 @@ -119,9 +119,9 @@ const defaultConfig = { //`validateStatus`定义了是否根据http相应状态码,来resolve或者reject promise //如果`validateStatus`返回true(或者设置为`null`或者`undefined`),那么promise的状态将会是resolved,否则其状态就是rejected - validateStatus: function (status) { - return status >= 200 && status < 300;//default - }, + validateStatus: function(status) { + return status >= 200 && status < 300//default + } //`maxRedirects`定义了在nodejs中重定向的最大数量 // maxRedirects: 5,//default @@ -147,7 +147,7 @@ const defaultConfig = { //详见cancelation部分 // cancelToken: new CancelToken(function (cancel) { // }) -}; +} // 使用默认配置初始化的请求 -const http = axios.create(defaultConfig); -export default http; +const http = axios.create(defaultConfig) +export default http diff --git a/demos/reactapp/src/utils/index.jsx b/demos/reactapp/src/utils/index.jsx index d3f1eba..bf5aea9 100644 --- a/demos/reactapp/src/utils/index.jsx +++ b/demos/reactapp/src/utils/index.jsx @@ -5,4 +5,4 @@ * @author Zhang Peng */ -export { default as authHOC } from './authHOC'; +export { default as authHOC } from './authHOC' diff --git a/demos/reactapp/src/views/pages/home/Home.jsx b/demos/reactapp/src/views/pages/home/Home.jsx index c518924..e3bc8b6 100644 --- a/demos/reactapp/src/views/pages/home/Home.jsx +++ b/demos/reactapp/src/views/pages/home/Home.jsx @@ -1,27 +1,26 @@ /** * Created by Zhang Peng on 2017/7/21. */ -import React from 'react'; -import {Carousel, Col, Row} from 'antd'; -import './Home.less'; +import React from 'react' +import './Home.less' -import logo from './logo.svg'; +import logo from './logo.svg' export default class Home extends React.Component { - static propTypes = {}; - static defaultProps = {}; + static propTypes = {} + static defaultProps = {} render() { return (
- logo + logo

Welcome to REACT ADMIN

REACT ADMIN is developing。。。

- ); + ) } } diff --git a/demos/reactapp/src/views/pages/home/Home.less b/demos/reactapp/src/views/pages/home/Home.less index e3a820d..512b794 100644 --- a/demos/reactapp/src/views/pages/home/Home.less +++ b/demos/reactapp/src/views/pages/home/Home.less @@ -24,6 +24,10 @@ } @keyframes App-logo-spin { - from { transform: rotate(0deg); } - to { transform: rotate(360deg); } + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } } diff --git a/demos/reactapp/src/views/pages/home/logo.svg b/demos/reactapp/src/views/pages/home/logo.svg index 3f454eb..6d75536 100644 --- a/demos/reactapp/src/views/pages/home/logo.svg +++ b/demos/reactapp/src/views/pages/home/logo.svg @@ -1,6 +1,7 @@ - + diff --git a/demos/reactapp/src/views/pages/login/Login.jsx b/demos/reactapp/src/views/pages/login/Login.jsx index b016b90..33289c1 100644 --- a/demos/reactapp/src/views/pages/login/Login.jsx +++ b/demos/reactapp/src/views/pages/login/Login.jsx @@ -1,95 +1,96 @@ -import { Button, Card, Col, Form, Icon, Input, message, Row } from 'antd'; -import PropTypes from 'prop-types'; -import React from 'react'; -import { connect } from 'react-redux'; -import { withRouter } from 'react-router-dom'; -import { bindActionCreators } from 'redux'; +import { Button, Card, Col, Form, Icon, Input, message, Row } from 'antd' +import PropTypes from 'prop-types' +import React from 'react' +import { connect } from 'react-redux' +import { withRouter } from 'react-router-dom' +import { bindActionCreators } from 'redux' -import { login } from '../../../redux/actions/auth'; -import loginLogo from './login-logo.png'; +import { login } from '../../../redux/actions/auth' +import loginLogo from './login-logo.png' -import './Login.less'; +import './Login.less' -const FormItem = Form.Item; +const FormItem = Form.Item const propTypes = { user: PropTypes.object, loggingIn: PropTypes.bool, message: PropTypes.string -}; +} + function hasErrors(fieldsError) { - return Object.keys(fieldsError).some(field => fieldsError[field]); + return Object.keys(fieldsError).some(field => fieldsError[field]) } class Login extends React.Component { constructor(props) { - super(props); + super(props) this.state = { - loading: false, + loading: false } } componentDidMount() { // To disabled submit button at the beginning. - this.props.form.validateFields(); + this.props.form.validateFields() } handleSubmit(e) { - e.preventDefault(); + e.preventDefault() this.setState({ loading: true - }); + }) - const data = this.props.form.getFieldsValue(); + const data = this.props.form.getFieldsValue() this.props.login(data.user, data.password).payload.promise.then(response => { this.setState({ loading: false - }); + }) if (response.error) { - console.warn('login failed: ', response.payload.message); + console.warn('login failed: ', response.payload.message) } else { - let result = response.payload.data; - console.log("login result:", result); + let result = response.payload.data + console.log('login result:', result) if (result) { if (0 !== result.code) { - let str = ''; + let str = '' if (Array.isArray(result.messages)) { result.messages.map((item) => { - str = str + item + '\n'; + str = str + item + '\n' }) } - message.error('登录失败: \n'+ str); + message.error('登录失败: \n' + str) } else { - console.info('[Login] res.payload.data: ', result); - message.success('欢迎你,' + result.data.name); - this.props.history.replace('/'); + console.info('[Login] res.payload.data: ', result) + message.success('欢迎你,' + result.data.name) + this.props.history.replace('/') } } } }).catch(err => { - console.error('[Login] err: ', err); + console.error('[Login] err: ', err) this.setState({ loading: false - }); - }); + }) + }) this.props.form.validateFields((err, values) => { if (!err) { - console.info('提交表单信息', values); + console.info('提交表单信息', values) } else { - console.error(err); + console.error(err) } - }); + }) } render() { - const { getFieldDecorator, getFieldsError, getFieldError, isFieldTouched, setFieldsValue } = this.props.form; + const { getFieldDecorator, getFieldsError, getFieldError, isFieldTouched, setFieldsValue } = this.props.form // Only show error after a field is touched. - const userNameError = isFieldTouched('userName') && getFieldError('userName'); - const passwordError = isFieldTouched('password') && getFieldError('password'); + const userNameError = isFieldTouched('userName') && getFieldError('userName') + const passwordError = isFieldTouched('password') && getFieldError('password') return ( @@ -110,11 +111,11 @@ class Login extends React.Component { {getFieldDecorator('user', { - rules: [{ required: true, message: 'Please input your username!' }], + rules: [{ required: true, message: 'Please input your username!' }] })( } + prefix={} ref={node => this.userNameInput = node} placeholder="admin" /> @@ -123,12 +124,12 @@ class Login extends React.Component { {getFieldDecorator('password', { - rules: [{ required: true, message: 'Please input your password!' }], + rules: [{ required: true, message: 'Please input your password!' }] })( } + prefix={} type='password' - placeholder='123456' /> + placeholder='123456'/> )}

@@ -144,17 +145,17 @@ class Login extends React.Component { } } -Login.propTypes = propTypes; +Login.propTypes = propTypes -Login = Form.create()(Login); +Login = Form.create()(Login) function mapStateToProps(state) { - const { auth } = state; + const { auth } = state if (auth.user) { - return { user: auth.user, loggingIn: auth.loggingIn, message: '' }; + return { user: auth.user, loggingIn: auth.loggingIn, message: '' } } - return { user: null, loggingIn: auth.loggingIn, message: auth.message }; + return { user: null, loggingIn: auth.loggingIn, message: auth.message } } function mapDispatchToProps(dispatch) { diff --git a/demos/reactapp/src/views/pages/login/Login.less b/demos/reactapp/src/views/pages/login/Login.less index ddcea93..b399128 100644 --- a/demos/reactapp/src/views/pages/login/Login.less +++ b/demos/reactapp/src/views/pages/login/Login.less @@ -7,6 +7,7 @@ .login-form { background: #F3F9F9; border-radius: 18px; + .input { width: 300px; size: 18px; @@ -17,13 +18,16 @@ transition: color 0.3s; font-size: 12px; } + .anticon-close-circle:hover { color: #999; } + .anticon-close-circle:active { color: #666; } } + .btn-login { width: 300px; } diff --git a/demos/reactapp/src/views/pages/mail/Mailbox.jsx b/demos/reactapp/src/views/pages/mail/Mailbox.jsx index 91b16d3..afa42ad 100644 --- a/demos/reactapp/src/views/pages/mail/Mailbox.jsx +++ b/demos/reactapp/src/views/pages/mail/Mailbox.jsx @@ -1,49 +1,49 @@ -import { Table } from 'antd'; -import React from 'react'; +import { Table } from 'antd' +import React from 'react' const columns = [{ title: 'Name', - dataIndex: 'name', + dataIndex: 'name' }, { title: 'Age', - dataIndex: 'age', + dataIndex: 'age' }, { title: 'Address', - dataIndex: 'address', -}]; + dataIndex: 'address' +}] const data = [{ key: '1', name: 'John Brown', age: 32, - address: 'New York No. 1 Lake Park', + address: 'New York No. 1 Lake Park' }, { key: '2', name: 'Jim Green', age: 42, - address: 'London No. 1 Lake Park', + address: 'London No. 1 Lake Park' }, { key: '3', name: 'Joe Black', age: 32, - address: 'Sidney No. 1 Lake Park', + address: 'Sidney No. 1 Lake Park' }, { key: '4', name: 'Joe Black', age: 32, - address: 'Sidney No. 1 Lake Park', + address: 'Sidney No. 1 Lake Park' }, { key: '5', name: 'Joe Black', age: 32, - address: 'Sidney No. 1 Lake Park', -}]; + address: 'Sidney No. 1 Lake Park' +}] export default class MailboxPage extends React.Component { render() { return (

- +
- ); + ) } } diff --git a/demos/reactapp/src/views/pages/user/User.jsx b/demos/reactapp/src/views/pages/user/User.jsx index ea1f394..00eb5c9 100644 --- a/demos/reactapp/src/views/pages/user/User.jsx +++ b/demos/reactapp/src/views/pages/user/User.jsx @@ -1,75 +1,76 @@ -import React, {PropTypes} from "react"; -import {Alert, Button, Col, Input, Row, Select, Table} from "antd"; -import "./User.less"; -const {Option, OptGroup} = Select; +import React from 'react' +import { Alert, Button, Col, Input, Row, Select, Table } from 'antd' +import './User.less' + +const { Option, OptGroup } = Select const columns = [{ title: 'Name', dataIndex: 'name', filters: [{ text: 'Joe', - value: 'Joe', + value: 'Joe' }, { text: 'Jim', - value: 'Jim', + value: 'Jim' }, { text: 'Submenu', value: 'Submenu', children: [{ text: 'Green', - value: 'Green', + value: 'Green' }, { text: 'Black', - value: 'Black', - }], + value: 'Black' + }] }], // specify the condition of filtering result // here is that finding the name started with `value` onFilter: (value, record) => record.name.indexOf(value) === 0, - sorter: (a, b) => a.name.length - b.name.length, + sorter: (a, b) => a.name.length - b.name.length }, { title: 'Age', dataIndex: 'age', - sorter: (a, b) => a.age - b.age, + sorter: (a, b) => a.age - b.age }, { title: 'Address', dataIndex: 'address', filters: [{ text: 'London', - value: 'London', + value: 'London' }, { text: 'New York', - value: 'New York', + value: 'New York' }], filterMultiple: false, onFilter: (value, record) => record.address.indexOf(value) === 0, - sorter: (a, b) => a.address.length - b.address.length, -}]; + sorter: (a, b) => a.address.length - b.address.length +}] const data = [{ key: '1', name: 'John Brown', age: 32, - address: 'New York No. 1 Lake Park', + address: 'New York No. 1 Lake Park' }, { key: '2', name: 'Jim Green', age: 42, - address: 'London No. 1 Lake Park', + address: 'London No. 1 Lake Park' }, { key: '3', name: 'Joe Black', age: 32, - address: 'Sidney No. 1 Lake Park', + address: 'Sidney No. 1 Lake Park' }, { key: '4', name: 'Jim Red', age: 32, - address: 'London No. 2 Lake Park', -}]; + address: 'London No. 2 Lake Park' +}] function onChange(pagination, filters, sorter) { - console.log('params', pagination, filters, sorter); + console.log('params', pagination, filters, sorter) } export default class UserView extends React.Component { @@ -86,7 +87,7 @@ export default class UserView extends React.Component { @@ -138,6 +139,6 @@ export default class UserView extends React.Component {
- ); + ) } } diff --git a/demos/reactapp/src/views/pages/user/User.less b/demos/reactapp/src/views/pages/user/User.less index 8cb0e80..1cff55b 100644 --- a/demos/reactapp/src/views/pages/user/User.less +++ b/demos/reactapp/src/views/pages/user/User.less @@ -1,3 +1,3 @@ .user-view-row { - padding-bottom: 15px; + padding-bottom: 15px; } diff --git a/demos/reactapp/src/webapi/mock/index.js b/demos/reactapp/src/webapi/mock/index.js index e49c73b..87efa81 100644 --- a/demos/reactapp/src/webapi/mock/index.js +++ b/demos/reactapp/src/webapi/mock/index.js @@ -1,22 +1,22 @@ -const axios = require('axios'); -const MockAdapter = require('axios-mock-adapter'); -const mockAxios = axios.create(); +const axios = require('axios') +const MockAdapter = require('axios-mock-adapter') +const mockAxios = axios.create() // mock 数据 -const mock = new MockAdapter(mockAxios); +const mock = new MockAdapter(mockAxios) mock.onPut('/login').reply(config => { - let postData = JSON.parse(config.data); - console.info('[mock]', postData); + let postData = JSON.parse(config.data) + console.info('[mock]', postData) if (postData.username === 'admin' && postData.password === '123456') { - let result = require('./user'); - console.info('[mock result]', result); - return [200, result]; + let result = require('./user') + console.info('[mock result]', result) + return [200, result] } else { - return [500, { message: "Incorrect user or password" }]; + return [500, { message: 'Incorrect user or password' }] } -}); -mock.onGet('/logout').reply(200, {}); -mock.onGet('/my').reply(200, require('./user')); -mock.onGet('/menu').reply(200, require('./menu')); +}) +mock.onGet('/logout').reply(200, {}) +mock.onGet('/my').reply(200, require('./user')) +mock.onGet('/menu').reply(200, require('./menu')) -export default mockAxios; +export default mockAxios diff --git a/demos/reactapp/src/webapi/mock/menu.js b/demos/reactapp/src/webapi/mock/menu.js index 1284087..a6d09a0 100644 --- a/demos/reactapp/src/webapi/mock/menu.js +++ b/demos/reactapp/src/webapi/mock/menu.js @@ -1,92 +1,92 @@ module.exports = { - "code": 0, - "messages": [ - "成功" + 'code': 0, + 'messages': [ + '成功' ], - "data": [ + 'data': [ { - "key": 0, - "title": "Home", - "icon": "home", - "type": "Item", - "url": "/pages/home", - "children": [] + 'key': 0, + 'title': 'Home', + 'icon': 'home', + 'type': 'Item', + 'url': '/pages/home', + 'children': [] }, { - "key": 1, - "title": "Pages", - "icon": "user", - "type": "SubMenu", - "url": null, - "children": [ + 'key': 1, + 'title': 'Pages', + 'icon': 'user', + 'type': 'SubMenu', + 'url': null, + 'children': [ { - "key": 11, - "title": "Mailbox", - "icon": "mail", - "type": "Item", - "url": "/pages/mailbox", - "children": [] + 'key': 11, + 'title': 'Mailbox', + 'icon': 'mail', + 'type': 'Item', + 'url': '/pages/mailbox', + 'children': [] }, { - "key": 12, - "title": "User", - "icon": "user", - "type": "Item", - "url": "/pages/user", - "children": [] + 'key': 12, + 'title': 'User', + 'icon': 'user', + 'type': 'Item', + 'url': '/pages/user', + 'children': [] } ] }, { - "key": 2, - "title": "Others", - "icon": "coffee", - "type": "SubMenu", - "url": null, - "children": [ + 'key': 2, + 'title': 'Others', + 'icon': 'coffee', + 'type': 'SubMenu', + 'url': null, + 'children': [ { - "key": 21, - "title": "Group1", - "icon": "windows-o", - "type": "ItemGroup", - "url": null, - "children": [ + 'key': 21, + 'title': 'Group1', + 'icon': 'windows-o', + 'type': 'ItemGroup', + 'url': null, + 'children': [ { - "key": 22, - "title": "Group1-1", - "icon": null, - "type": "Item", - "url": "/pages/home", - "children": [] + 'key': 22, + 'title': 'Group1-1', + 'icon': null, + 'type': 'Item', + 'url': '/pages/home', + 'children': [] } ] }, { - "key": 23, - "title": "Divider", - "icon": null, - "type": "Divider", - "url": null, - "children": [] + 'key': 23, + 'title': 'Divider', + 'icon': null, + 'type': 'Divider', + 'url': null, + 'children': [] }, { - "key": 24, - "title": "Group2", - "icon": "apple-o", - "type": "ItemGroup", - "url": null, - "children": [ + 'key': 24, + 'title': 'Group2', + 'icon': 'apple-o', + 'type': 'ItemGroup', + 'url': null, + 'children': [ { - "key": 25, - "title": "Group2-1", - "icon": null, - "type": "Item", - "url": "/pages/home", - "children": [] + 'key': 25, + 'title': 'Group2-1', + 'icon': null, + 'type': 'Item', + 'url': '/pages/home', + 'children': [] } ] } ] } ] -}; +} diff --git a/demos/reactapp/src/webapi/mock/user.js b/demos/reactapp/src/webapi/mock/user.js index 5869131..2c12895 100644 --- a/demos/reactapp/src/webapi/mock/user.js +++ b/demos/reactapp/src/webapi/mock/user.js @@ -1,5 +1,5 @@ module.exports = { code: 0, - messages: ["成功"], - data: { uid: "1", role: "ADMIN", name: "admin" } -}; + messages: ['成功'], + data: { uid: '1', role: 'ADMIN', name: 'admin' } +} diff --git a/demos/reactapp/src/webapi/webapi.js b/demos/reactapp/src/webapi/webapi.js index 9382b94..ef2d117 100644 --- a/demos/reactapp/src/webapi/webapi.js +++ b/demos/reactapp/src/webapi/webapi.js @@ -1,5 +1,5 @@ if (process.env.NODE_ENV === 'development') { - module.exports = require('./mock').default; + module.exports = require('./mock').default } else { - module.exports = require('../utils/http').default; + module.exports = require('../utils/http').default } diff --git a/docs/index.html b/docs/index.html index eb3900d..ec2f567 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,250 +1,250 @@ - - - Nginx Tutorial - - - - - - - - - - - -
正在加载...
- - - - - - - - - - - - - + + + Nginx Tutorial + + + + + + + + + + + +
正在加载...
+ + + + + + + + + + + + + From fbea21b1320201ce6431cd0d5fd1f6a876d1921c Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Mon, 21 Oct 2019 13:21:03 +0800 Subject: [PATCH 06/25] rename folder --- demos/javaapp/pom.xml | 88 - .../main/resources/spring/spring-servlet.xml | 30 - .../src/main/resources/tomcat/conf/server.xml | 33 - .../src/main/resources/tomcat/conf/web.xml | 4703 ----------------- demos/javaapp/src/main/webapp/WEB-INF/web.xml | 65 - .../src/main/webapp/views/jsp/index.jsp | 26 - demos/nginx-1.14.0/html/index.html | 25 - demos/reactadmin/package.json | 25 - demos/reactadmin/public/index.html | 41 - demos/reactadmin/public/manifest.json | 15 - demos/reactadmin/src/App.css | 32 - demos/reactadmin/src/App.js | 35 - demos/reactadmin/src/App.test.js | 10 - demos/reactadmin/src/index.css | 14 - demos/reactadmin/src/serviceWorker.js | 135 - demos/reactapp/src/views/pages/home/logo.svg | 8 - {demos => examples}/README.md | 0 {demos => examples}/images/nginx-demo01.png | Bin {demos => examples}/images/nginx-demo02.png | Bin {demos => examples}/images/nginx-demo03.png | Bin .../images/nginx-demo04(2).png | Bin {demos => examples}/images/nginx-demo04.png | Bin {demos => examples}/images/nginx-demo05.png | Bin {demos => examples}/images/nginx-demo06.png | Bin examples/javaapp/pom.xml | 89 + .../src/main/java/io/github/dunwu/Main.java | 20 +- .../io/github/dunwu/filter/CorsFilter.java | 21 +- .../io/github/dunwu/util/IOObjectMapper.java | 0 .../dunwu/web/controller/ApiController.java | 3 +- .../dunwu/web/controller/HelloController.java | 0 .../dunwu/web/controller/IndexController.java | 0 .../github/dunwu/web/dto/BaseResponseDTO.java | 9 +- .../java/io/github/dunwu/web/dto/MenuDTO.java | 10 +- .../main/resources/spring/spring-servlet.xml | 30 + .../src/main/resources/tomcat/conf/server.xml | 33 + .../src/main/resources/tomcat/conf/web.xml | 4703 +++++++++++++++++ .../src/main/webapp/META-INF/MANIFEST.MF | 0 .../javaapp/src/main/webapp/WEB-INF/web.xml | 65 + .../src/main/webapp/views/jsp/hello.jsp | 6 +- .../src/main/webapp/views/jsp/index.jsp | 26 + .../nginx-1.14.0/conf/conf.d/demo01.conf | 0 .../nginx-1.14.0/conf/conf.d/demo02.conf | 0 .../nginx-1.14.0/conf/conf.d/demo03.conf | 0 .../nginx-1.14.0/conf/conf.d/demo04.conf | 0 .../nginx-1.14.0/conf/conf.d/demo05.conf | 0 .../nginx-1.14.0/conf/conf.d/demo06.conf | 0 .../nginx-1.14.0/conf/fastcgi.conf | 0 .../nginx-1.14.0/conf/fastcgi_params | 0 {demos => examples}/nginx-1.14.0/conf/koi-utf | 0 {demos => examples}/nginx-1.14.0/conf/koi-win | 0 .../nginx-1.14.0/conf/mime.types | 0 .../nginx-1.14.0/conf/nginx.conf | 0 .../nginx-1.14.0/conf/scgi_params | 0 .../nginx-1.14.0/conf/uwsgi_params | 0 {demos => examples}/nginx-1.14.0/conf/win-utf | 0 .../nginx-1.14.0/contrib/README | 0 .../nginx-1.14.0/contrib/geo2nginx.pl | 0 .../contrib/unicode2nginx/koi-utf | 0 .../contrib/unicode2nginx/unicode-to-nginx.pl | 0 .../contrib/unicode2nginx/win-utf | 0 .../contrib/vim/ftdetect/nginx.vim | 0 .../contrib/vim/ftplugin/nginx.vim | 0 .../nginx-1.14.0/contrib/vim/indent/nginx.vim | 0 .../nginx-1.14.0/contrib/vim/syntax/nginx.vim | 0 {demos => examples}/nginx-1.14.0/docs/CHANGES | 0 .../nginx-1.14.0/docs/CHANGES.ru | 0 {demos => examples}/nginx-1.14.0/docs/LICENSE | 0 .../nginx-1.14.0/docs/OpenSSL.LICENSE | 0 .../nginx-1.14.0/docs/PCRE.LICENCE | 0 {demos => examples}/nginx-1.14.0/docs/README | 0 .../nginx-1.14.0/docs/zlib.LICENSE | 0 .../nginx-1.14.0/html/50x.html | 20 +- examples/nginx-1.14.0/html/index.html | 25 + .../nginx-1.14.0/nginx-start.bat | 0 .../nginx-1.14.0/nginx-stop.bat | 0 {demos => examples}/nginx-1.14.0/nginx.exe | Bin {demos => examples}/nginx.conf | 0 {demos => examples}/reactadmin/.gitignore | 0 {demos => examples}/reactadmin/README.md | 0 .../reactadmin/package-lock.json | 0 examples/reactadmin/package.json | 25 + .../reactadmin/public/favicon.ico | Bin examples/reactadmin/public/index.html | 41 + examples/reactadmin/public/manifest.json | 15 + examples/reactadmin/src/App.css | 32 + examples/reactadmin/src/App.js | 35 + examples/reactadmin/src/App.test.js | 10 + examples/reactadmin/src/index.css | 14 + {demos => examples}/reactadmin/src/index.js | 0 examples/reactadmin/src/logo.svg | 8 + examples/reactadmin/src/serviceWorker.js | 135 + {demos => examples}/reactadmin/yarn.lock | 0 {demos => examples}/reactapp/.babelrc | 0 {demos => examples}/reactapp/.editorconfig | 0 {demos => examples}/reactapp/.eslintrc | 0 {demos => examples}/reactapp/.gitattributes | 0 {demos => examples}/reactapp/.gitignore | 0 .../reactapp/config/app.config.js | 0 .../reactapp/config/webpack.config.base.js | 0 .../reactapp/config/webpack.config.dev.js | 0 .../reactapp/config/webpack.config.prod.js | 0 {demos => examples}/reactapp/package.json | 0 .../reactapp/public/favicon.ico | Bin .../reactapp/public/index.html | 0 {demos => examples}/reactapp/scripts/build.sh | 0 .../src/common/apiutils/ajaxCommon.js | 2 +- .../src/common/apiutils/apiCreator.js | 0 .../src/common/apiutils/errorUtils.js | 0 .../reactapp/src/common/apiutils/fetchAJAX.js | 0 .../reactapp/src/common/apiutils/index.js | 0 .../src/common/apiutils/reqwestAJAX.js | 0 .../reactapp/src/components/index.js | 0 .../layout/Breadcrumb/Breadcrumb.jsx | 0 .../layout/Breadcrumb/Breadcrumb.less | 0 .../src/components/layout/Content/Content.jsx | 0 .../components/layout/Content/Content.less | 0 .../src/components/layout/Footer/Footer.jsx | 0 .../src/components/layout/Footer/index.less | 0 .../src/components/layout/Header/Header.jsx | 0 .../src/components/layout/Header/Header.less | 0 .../src/components/layout/Sidebar/Sidebar.jsx | 0 .../components/layout/Sidebar/Sidebar.less | 0 .../src/components/layout/Sidebar/antd.svg | 0 .../src/containers/Core/CoreContainer.jsx | 0 .../src/containers/Core/CoreContainer.less | 0 .../reactapp/src/containers/Core/package.json | 0 .../src/containers/Root/ReduxDevTools.jsx | 0 .../src/containers/Root/RootContainer.dev.jsx | 0 .../src/containers/Root/RootContainer.jsx | 0 .../containers/Root/RootContainer.prod.jsx | 0 {demos => examples}/reactapp/src/index.jsx | 0 .../reactapp/src/redux/actions/auth.js | 0 .../reactapp/src/redux/actions/menu.js | 0 .../src/redux/constants/authActionType.js | 0 .../src/redux/constants/commonActionTypes.js | 0 .../src/redux/constants/menuActionType.js | 0 .../redux/middlewares/promiseMiddleware.js | 0 .../reactapp/src/redux/reducers/auth.js | 0 .../reactapp/src/redux/reducers/index.js | 0 .../reactapp/src/redux/reducers/menu.js | 0 .../src/redux/store/configureStore.dev.js | 0 .../src/redux/store/configureStore.js | 0 .../src/redux/store/configureStore.prod.js | 0 .../reactapp/src/routes/index.jsx | 0 .../reactapp/src/utils/asyncLoadHOC.js | 0 .../reactapp/src/utils/authHOC.jsx | 0 .../reactapp/src/utils/http.js | 0 .../reactapp/src/utils/index.jsx | 0 .../reactapp/src/views/pages/home/Home.jsx | 0 .../reactapp/src/views/pages/home/Home.less | 0 .../reactapp/src/views/pages/home}/logo.svg | 0 .../reactapp/src/views/pages/login/Login.jsx | 0 .../reactapp/src/views/pages/login/Login.less | 0 .../reactapp/src/views/pages/login/bg.jpg | Bin .../src/views/pages/login/login-logo.png | Bin .../reactapp/src/views/pages/mail/Mailbox.jsx | 0 .../reactapp/src/views/pages/user/User.jsx | 0 .../reactapp/src/views/pages/user/User.less | 0 .../reactapp/src/webapi/mock/index.js | 0 .../reactapp/src/webapi/mock/menu.js | 0 .../reactapp/src/webapi/mock/user.js | 0 .../reactapp/src/webapi/package.json | 0 .../reactapp/src/webapi/webapi.js | 0 {demos => examples}/scripts/build-javaapp.bat | 0 .../scripts/build-reactadmin.bat | 0 .../scripts/build-reactapp.bat | 0 {demos => examples}/scripts/demo01-start.bat | 0 {demos => examples}/scripts/demo02-start.bat | 0 {demos => examples}/scripts/demo03-start.bat | 0 {demos => examples}/scripts/demo04-start.bat | 0 {demos => examples}/scripts/demo05-start.bat | 0 {demos => examples}/scripts/demo06-start.bat | 0 {demos => examples}/scripts/startup.sh | 0 173 files changed, 5337 insertions(+), 5325 deletions(-) delete mode 100644 demos/javaapp/pom.xml delete mode 100644 demos/javaapp/src/main/resources/spring/spring-servlet.xml delete mode 100644 demos/javaapp/src/main/resources/tomcat/conf/server.xml delete mode 100644 demos/javaapp/src/main/resources/tomcat/conf/web.xml delete mode 100644 demos/javaapp/src/main/webapp/WEB-INF/web.xml delete mode 100644 demos/javaapp/src/main/webapp/views/jsp/index.jsp delete mode 100644 demos/nginx-1.14.0/html/index.html delete mode 100644 demos/reactadmin/package.json delete mode 100644 demos/reactadmin/public/index.html delete mode 100644 demos/reactadmin/public/manifest.json delete mode 100644 demos/reactadmin/src/App.css delete mode 100644 demos/reactadmin/src/App.js delete mode 100644 demos/reactadmin/src/App.test.js delete mode 100644 demos/reactadmin/src/index.css delete mode 100644 demos/reactadmin/src/serviceWorker.js delete mode 100644 demos/reactapp/src/views/pages/home/logo.svg rename {demos => examples}/README.md (100%) rename {demos => examples}/images/nginx-demo01.png (100%) rename {demos => examples}/images/nginx-demo02.png (100%) rename {demos => examples}/images/nginx-demo03.png (100%) rename {demos => examples}/images/nginx-demo04(2).png (100%) rename {demos => examples}/images/nginx-demo04.png (100%) rename {demos => examples}/images/nginx-demo05.png (100%) rename {demos => examples}/images/nginx-demo06.png (100%) create mode 100644 examples/javaapp/pom.xml rename {demos => examples}/javaapp/src/main/java/io/github/dunwu/Main.java (88%) rename {demos => examples}/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java (85%) rename {demos => examples}/javaapp/src/main/java/io/github/dunwu/util/IOObjectMapper.java (100%) rename {demos => examples}/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java (99%) rename {demos => examples}/javaapp/src/main/java/io/github/dunwu/web/controller/HelloController.java (100%) rename {demos => examples}/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java (100%) rename {demos => examples}/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java (86%) rename {demos => examples}/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java (96%) create mode 100644 examples/javaapp/src/main/resources/spring/spring-servlet.xml create mode 100644 examples/javaapp/src/main/resources/tomcat/conf/server.xml create mode 100644 examples/javaapp/src/main/resources/tomcat/conf/web.xml rename {demos => examples}/javaapp/src/main/webapp/META-INF/MANIFEST.MF (100%) create mode 100644 examples/javaapp/src/main/webapp/WEB-INF/web.xml rename {demos => examples}/javaapp/src/main/webapp/views/jsp/hello.jsp (61%) create mode 100644 examples/javaapp/src/main/webapp/views/jsp/index.jsp rename {demos => examples}/nginx-1.14.0/conf/conf.d/demo01.conf (100%) rename {demos => examples}/nginx-1.14.0/conf/conf.d/demo02.conf (100%) rename {demos => examples}/nginx-1.14.0/conf/conf.d/demo03.conf (100%) rename {demos => examples}/nginx-1.14.0/conf/conf.d/demo04.conf (100%) rename {demos => examples}/nginx-1.14.0/conf/conf.d/demo05.conf (100%) rename {demos => examples}/nginx-1.14.0/conf/conf.d/demo06.conf (100%) rename {demos => examples}/nginx-1.14.0/conf/fastcgi.conf (100%) rename {demos => examples}/nginx-1.14.0/conf/fastcgi_params (100%) rename {demos => examples}/nginx-1.14.0/conf/koi-utf (100%) rename {demos => examples}/nginx-1.14.0/conf/koi-win (100%) rename {demos => examples}/nginx-1.14.0/conf/mime.types (100%) rename {demos => examples}/nginx-1.14.0/conf/nginx.conf (100%) rename {demos => examples}/nginx-1.14.0/conf/scgi_params (100%) rename {demos => examples}/nginx-1.14.0/conf/uwsgi_params (100%) rename {demos => examples}/nginx-1.14.0/conf/win-utf (100%) rename {demos => examples}/nginx-1.14.0/contrib/README (100%) rename {demos => examples}/nginx-1.14.0/contrib/geo2nginx.pl (100%) rename {demos => examples}/nginx-1.14.0/contrib/unicode2nginx/koi-utf (100%) rename {demos => examples}/nginx-1.14.0/contrib/unicode2nginx/unicode-to-nginx.pl (100%) rename {demos => examples}/nginx-1.14.0/contrib/unicode2nginx/win-utf (100%) rename {demos => examples}/nginx-1.14.0/contrib/vim/ftdetect/nginx.vim (100%) rename {demos => examples}/nginx-1.14.0/contrib/vim/ftplugin/nginx.vim (100%) rename {demos => examples}/nginx-1.14.0/contrib/vim/indent/nginx.vim (100%) rename {demos => examples}/nginx-1.14.0/contrib/vim/syntax/nginx.vim (100%) rename {demos => examples}/nginx-1.14.0/docs/CHANGES (100%) rename {demos => examples}/nginx-1.14.0/docs/CHANGES.ru (100%) rename {demos => examples}/nginx-1.14.0/docs/LICENSE (100%) rename {demos => examples}/nginx-1.14.0/docs/OpenSSL.LICENSE (100%) rename {demos => examples}/nginx-1.14.0/docs/PCRE.LICENCE (100%) rename {demos => examples}/nginx-1.14.0/docs/README (100%) rename {demos => examples}/nginx-1.14.0/docs/zlib.LICENSE (100%) rename {demos => examples}/nginx-1.14.0/html/50x.html (51%) create mode 100644 examples/nginx-1.14.0/html/index.html rename {demos => examples}/nginx-1.14.0/nginx-start.bat (100%) rename {demos => examples}/nginx-1.14.0/nginx-stop.bat (100%) rename {demos => examples}/nginx-1.14.0/nginx.exe (100%) rename {demos => examples}/nginx.conf (100%) rename {demos => examples}/reactadmin/.gitignore (100%) rename {demos => examples}/reactadmin/README.md (100%) rename {demos => examples}/reactadmin/package-lock.json (100%) create mode 100644 examples/reactadmin/package.json rename {demos => examples}/reactadmin/public/favicon.ico (100%) create mode 100644 examples/reactadmin/public/index.html create mode 100644 examples/reactadmin/public/manifest.json create mode 100644 examples/reactadmin/src/App.css create mode 100644 examples/reactadmin/src/App.js create mode 100644 examples/reactadmin/src/App.test.js create mode 100644 examples/reactadmin/src/index.css rename {demos => examples}/reactadmin/src/index.js (100%) create mode 100644 examples/reactadmin/src/logo.svg create mode 100644 examples/reactadmin/src/serviceWorker.js rename {demos => examples}/reactadmin/yarn.lock (100%) rename {demos => examples}/reactapp/.babelrc (100%) rename {demos => examples}/reactapp/.editorconfig (100%) rename {demos => examples}/reactapp/.eslintrc (100%) rename {demos => examples}/reactapp/.gitattributes (100%) rename {demos => examples}/reactapp/.gitignore (100%) rename {demos => examples}/reactapp/config/app.config.js (100%) rename {demos => examples}/reactapp/config/webpack.config.base.js (100%) rename {demos => examples}/reactapp/config/webpack.config.dev.js (100%) rename {demos => examples}/reactapp/config/webpack.config.prod.js (100%) rename {demos => examples}/reactapp/package.json (100%) rename {demos => examples}/reactapp/public/favicon.ico (100%) rename {demos => examples}/reactapp/public/index.html (100%) rename {demos => examples}/reactapp/scripts/build.sh (100%) rename {demos => examples}/reactapp/src/common/apiutils/ajaxCommon.js (99%) rename {demos => examples}/reactapp/src/common/apiutils/apiCreator.js (100%) rename {demos => examples}/reactapp/src/common/apiutils/errorUtils.js (100%) rename {demos => examples}/reactapp/src/common/apiutils/fetchAJAX.js (100%) rename {demos => examples}/reactapp/src/common/apiutils/index.js (100%) rename {demos => examples}/reactapp/src/common/apiutils/reqwestAJAX.js (100%) rename {demos => examples}/reactapp/src/components/index.js (100%) rename {demos => examples}/reactapp/src/components/layout/Breadcrumb/Breadcrumb.jsx (100%) rename {demos => examples}/reactapp/src/components/layout/Breadcrumb/Breadcrumb.less (100%) rename {demos => examples}/reactapp/src/components/layout/Content/Content.jsx (100%) rename {demos => examples}/reactapp/src/components/layout/Content/Content.less (100%) rename {demos => examples}/reactapp/src/components/layout/Footer/Footer.jsx (100%) rename {demos => examples}/reactapp/src/components/layout/Footer/index.less (100%) rename {demos => examples}/reactapp/src/components/layout/Header/Header.jsx (100%) rename {demos => examples}/reactapp/src/components/layout/Header/Header.less (100%) rename {demos => examples}/reactapp/src/components/layout/Sidebar/Sidebar.jsx (100%) rename {demos => examples}/reactapp/src/components/layout/Sidebar/Sidebar.less (100%) rename {demos => examples}/reactapp/src/components/layout/Sidebar/antd.svg (100%) rename {demos => examples}/reactapp/src/containers/Core/CoreContainer.jsx (100%) rename {demos => examples}/reactapp/src/containers/Core/CoreContainer.less (100%) rename {demos => examples}/reactapp/src/containers/Core/package.json (100%) rename {demos => examples}/reactapp/src/containers/Root/ReduxDevTools.jsx (100%) rename {demos => examples}/reactapp/src/containers/Root/RootContainer.dev.jsx (100%) rename {demos => examples}/reactapp/src/containers/Root/RootContainer.jsx (100%) rename {demos => examples}/reactapp/src/containers/Root/RootContainer.prod.jsx (100%) rename {demos => examples}/reactapp/src/index.jsx (100%) rename {demos => examples}/reactapp/src/redux/actions/auth.js (100%) rename {demos => examples}/reactapp/src/redux/actions/menu.js (100%) rename {demos => examples}/reactapp/src/redux/constants/authActionType.js (100%) rename {demos => examples}/reactapp/src/redux/constants/commonActionTypes.js (100%) rename {demos => examples}/reactapp/src/redux/constants/menuActionType.js (100%) rename {demos => examples}/reactapp/src/redux/middlewares/promiseMiddleware.js (100%) rename {demos => examples}/reactapp/src/redux/reducers/auth.js (100%) rename {demos => examples}/reactapp/src/redux/reducers/index.js (100%) rename {demos => examples}/reactapp/src/redux/reducers/menu.js (100%) rename {demos => examples}/reactapp/src/redux/store/configureStore.dev.js (100%) rename {demos => examples}/reactapp/src/redux/store/configureStore.js (100%) rename {demos => examples}/reactapp/src/redux/store/configureStore.prod.js (100%) rename {demos => examples}/reactapp/src/routes/index.jsx (100%) rename {demos => examples}/reactapp/src/utils/asyncLoadHOC.js (100%) rename {demos => examples}/reactapp/src/utils/authHOC.jsx (100%) rename {demos => examples}/reactapp/src/utils/http.js (100%) rename {demos => examples}/reactapp/src/utils/index.jsx (100%) rename {demos => examples}/reactapp/src/views/pages/home/Home.jsx (100%) rename {demos => examples}/reactapp/src/views/pages/home/Home.less (100%) rename {demos/reactadmin/src => examples/reactapp/src/views/pages/home}/logo.svg (100%) rename {demos => examples}/reactapp/src/views/pages/login/Login.jsx (100%) rename {demos => examples}/reactapp/src/views/pages/login/Login.less (100%) rename {demos => examples}/reactapp/src/views/pages/login/bg.jpg (100%) rename {demos => examples}/reactapp/src/views/pages/login/login-logo.png (100%) rename {demos => examples}/reactapp/src/views/pages/mail/Mailbox.jsx (100%) rename {demos => examples}/reactapp/src/views/pages/user/User.jsx (100%) rename {demos => examples}/reactapp/src/views/pages/user/User.less (100%) rename {demos => examples}/reactapp/src/webapi/mock/index.js (100%) rename {demos => examples}/reactapp/src/webapi/mock/menu.js (100%) rename {demos => examples}/reactapp/src/webapi/mock/user.js (100%) rename {demos => examples}/reactapp/src/webapi/package.json (100%) rename {demos => examples}/reactapp/src/webapi/webapi.js (100%) rename {demos => examples}/scripts/build-javaapp.bat (100%) rename {demos => examples}/scripts/build-reactadmin.bat (100%) rename {demos => examples}/scripts/build-reactapp.bat (100%) rename {demos => examples}/scripts/demo01-start.bat (100%) rename {demos => examples}/scripts/demo02-start.bat (100%) rename {demos => examples}/scripts/demo03-start.bat (100%) rename {demos => examples}/scripts/demo04-start.bat (100%) rename {demos => examples}/scripts/demo05-start.bat (100%) rename {demos => examples}/scripts/demo06-start.bat (100%) rename {demos => examples}/scripts/startup.sh (100%) diff --git a/demos/javaapp/pom.xml b/demos/javaapp/pom.xml deleted file mode 100644 index 4c87889..0000000 --- a/demos/javaapp/pom.xml +++ /dev/null @@ -1,88 +0,0 @@ - - - 4.0.0 - io.github.dunwu - JavaWebApp - 1.0.0 - war - ${project.artifactId} - - UTF-8 - 1.8 - ${java.version} - ${java.version} - 5.0.2.RELEASE - 8.5.34 - - - - - javax.servlet - javax.servlet-api - 3.1.0 - - - javax.servlet.jsp - jsp-api - 2.2 - - - - - - org.springframework - spring-context-support - - - org.springframework - spring-webmvc - - - - - - org.apache.tomcat.embed - tomcat-embed-core - ${tomcat.version} - - - org.apache.tomcat.embed - tomcat-embed-jasper - ${tomcat.version} - - - - - org.apache.commons - commons-lang3 - 3.7 - - - ch.qos.logback - logback-classic - 1.1.2 - - - com.fasterxml.jackson.core - jackson-databind - 2.9.8 - - - - - - - org.springframework - spring-framework-bom - ${spring.version} - pom - import - - - - - - ${project.artifactId} - - diff --git a/demos/javaapp/src/main/resources/spring/spring-servlet.xml b/demos/javaapp/src/main/resources/spring/spring-servlet.xml deleted file mode 100644 index 025c1f2..0000000 --- a/demos/javaapp/src/main/resources/spring/spring-servlet.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/demos/javaapp/src/main/resources/tomcat/conf/server.xml b/demos/javaapp/src/main/resources/tomcat/conf/server.xml deleted file mode 100644 index c1f05e7..0000000 --- a/demos/javaapp/src/main/resources/tomcat/conf/server.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/javaapp/src/main/resources/tomcat/conf/web.xml b/demos/javaapp/src/main/resources/tomcat/conf/web.xml deleted file mode 100644 index b9a6de4..0000000 --- a/demos/javaapp/src/main/resources/tomcat/conf/web.xml +++ /dev/null @@ -1,4703 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - default - org.apache.catalina.servlets.DefaultServlet - - debug - 0 - - - listings - false - - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - jsp - org.apache.jasper.servlet.JspServlet - - fork - false - - - xpoweredBy - false - - - keepgenerated - false - - 3 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - default - / - - - - - jsp - *.jsp - *.jspx - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 30 - - - - - - - - - - - - - 123 - application/vnd.lotus-1-2-3 - - - 3dml - text/vnd.in3d.3dml - - - 3ds - image/x-3ds - - - 3g2 - video/3gpp2 - - - 3gp - video/3gpp - - - 7z - application/x-7z-compressed - - - aab - application/x-authorware-bin - - - aac - audio/x-aac - - - aam - application/x-authorware-map - - - aas - application/x-authorware-seg - - - abs - audio/x-mpeg - - - abw - application/x-abiword - - - ac - application/pkix-attr-cert - - - acc - application/vnd.americandynamics.acc - - - ace - application/x-ace-compressed - - - acu - application/vnd.acucobol - - - acutc - application/vnd.acucorp - - - adp - audio/adpcm - - - aep - application/vnd.audiograph - - - afm - application/x-font-type1 - - - afp - application/vnd.ibm.modcap - - - ahead - application/vnd.ahead.space - - - ai - application/postscript - - - aif - audio/x-aiff - - - aifc - audio/x-aiff - - - aiff - audio/x-aiff - - - aim - application/x-aim - - - air - application/vnd.adobe.air-application-installer-package+zip - - - ait - application/vnd.dvb.ait - - - ami - application/vnd.amiga.ami - - - anx - application/annodex - - - apk - application/vnd.android.package-archive - - - appcache - text/cache-manifest - - - application - application/x-ms-application - - - apr - application/vnd.lotus-approach - - - arc - application/x-freearc - - - art - image/x-jg - - - asc - application/pgp-signature - - - asf - video/x-ms-asf - - - asm - text/x-asm - - - aso - application/vnd.accpac.simply.aso - - - asx - video/x-ms-asf - - - atc - application/vnd.acucorp - - - atom - application/atom+xml - - - atomcat - application/atomcat+xml - - - atomsvc - application/atomsvc+xml - - - atx - application/vnd.antix.game-component - - - au - audio/basic - - - avi - video/x-msvideo - - - avx - video/x-rad-screenplay - - - aw - application/applixware - - - axa - audio/annodex - - - axv - video/annodex - - - azf - application/vnd.airzip.filesecure.azf - - - azs - application/vnd.airzip.filesecure.azs - - - azw - application/vnd.amazon.ebook - - - bat - application/x-msdownload - - - bcpio - application/x-bcpio - - - bdf - application/x-font-bdf - - - bdm - application/vnd.syncml.dm+wbxml - - - bed - application/vnd.realvnc.bed - - - bh2 - application/vnd.fujitsu.oasysprs - - - bin - application/octet-stream - - - blb - application/x-blorb - - - blorb - application/x-blorb - - - bmi - application/vnd.bmi - - - bmp - image/bmp - - - body - text/html - - - book - application/vnd.framemaker - - - box - application/vnd.previewsystems.box - - - boz - application/x-bzip2 - - - bpk - application/octet-stream - - - btif - image/prs.btif - - - bz - application/x-bzip - - - bz2 - application/x-bzip2 - - - c - text/x-c - - - c11amc - application/vnd.cluetrust.cartomobile-config - - - c11amz - application/vnd.cluetrust.cartomobile-config-pkg - - - c4d - application/vnd.clonk.c4group - - - c4f - application/vnd.clonk.c4group - - - c4g - application/vnd.clonk.c4group - - - c4p - application/vnd.clonk.c4group - - - c4u - application/vnd.clonk.c4group - - - cab - application/vnd.ms-cab-compressed - - - caf - audio/x-caf - - - cap - application/vnd.tcpdump.pcap - - - car - application/vnd.curl.car - - - cat - application/vnd.ms-pki.seccat - - - cb7 - application/x-cbr - - - cba - application/x-cbr - - - cbr - application/x-cbr - - - cbt - application/x-cbr - - - cbz - application/x-cbr - - - cc - text/x-c - - - cct - application/x-director - - - ccxml - application/ccxml+xml - - - cdbcmsg - application/vnd.contact.cmsg - - - cdf - application/x-cdf - - - cdkey - application/vnd.mediastation.cdkey - - - cdmia - application/cdmi-capability - - - cdmic - application/cdmi-container - - - cdmid - application/cdmi-domain - - - cdmio - application/cdmi-object - - - cdmiq - application/cdmi-queue - - - cdx - chemical/x-cdx - - - cdxml - application/vnd.chemdraw+xml - - - cdy - application/vnd.cinderella - - - cer - application/pkix-cert - - - cfs - application/x-cfs-compressed - - - cgm - image/cgm - - - chat - application/x-chat - - - chm - application/vnd.ms-htmlhelp - - - chrt - application/vnd.kde.kchart - - - cif - chemical/x-cif - - - cii - application/vnd.anser-web-certificate-issue-initiation - - - cil - application/vnd.ms-artgalry - - - cla - application/vnd.claymore - - - class - application/java - - - clkk - application/vnd.crick.clicker.keyboard - - - clkp - application/vnd.crick.clicker.palette - - - clkt - application/vnd.crick.clicker.template - - - clkw - application/vnd.crick.clicker.wordbank - - - clkx - application/vnd.crick.clicker - - - clp - application/x-msclip - - - cmc - application/vnd.cosmocaller - - - cmdf - chemical/x-cmdf - - - cml - chemical/x-cml - - - cmp - application/vnd.yellowriver-custom-menu - - - cmx - image/x-cmx - - - cod - application/vnd.rim.cod - - - com - application/x-msdownload - - - conf - text/plain - - - cpio - application/x-cpio - - - cpp - text/x-c - - - cpt - application/mac-compactpro - - - crd - application/x-mscardfile - - - crl - application/pkix-crl - - - crt - application/x-x509-ca-cert - - - cryptonote - application/vnd.rig.cryptonote - - - csh - application/x-csh - - - csml - chemical/x-csml - - - csp - application/vnd.commonspace - - - css - text/css - - - cst - application/x-director - - - csv - text/csv - - - cu - application/cu-seeme - - - curl - text/vnd.curl - - - cww - application/prs.cww - - - cxt - application/x-director - - - cxx - text/x-c - - - dae - model/vnd.collada+xml - - - daf - application/vnd.mobius.daf - - - dart - application/vnd.dart - - - dataless - application/vnd.fdsn.seed - - - davmount - application/davmount+xml - - - dbk - application/docbook+xml - - - dcr - application/x-director - - - dcurl - text/vnd.curl.dcurl - - - dd2 - application/vnd.oma.dd2+xml - - - ddd - application/vnd.fujixerox.ddd - - - deb - application/x-debian-package - - - def - text/plain - - - deploy - application/octet-stream - - - der - application/x-x509-ca-cert - - - dfac - application/vnd.dreamfactory - - - dgc - application/x-dgc-compressed - - - dib - image/bmp - - - dic - text/x-c - - - dir - application/x-director - - - dis - application/vnd.mobius.dis - - - dist - application/octet-stream - - - distz - application/octet-stream - - - djv - image/vnd.djvu - - - djvu - image/vnd.djvu - - - dll - application/x-msdownload - - - dmg - application/x-apple-diskimage - - - dmp - application/vnd.tcpdump.pcap - - - dms - application/octet-stream - - - dna - application/vnd.dna - - - doc - application/msword - - - docm - application/vnd.ms-word.document.macroenabled.12 - - - docx - application/vnd.openxmlformats-officedocument.wordprocessingml.document - - - dot - application/msword - - - dotm - application/vnd.ms-word.template.macroenabled.12 - - - dotx - application/vnd.openxmlformats-officedocument.wordprocessingml.template - - - dp - application/vnd.osgi.dp - - - dpg - application/vnd.dpgraph - - - dra - audio/vnd.dra - - - dsc - text/prs.lines.tag - - - dssc - application/dssc+der - - - dtb - application/x-dtbook+xml - - - dtd - application/xml-dtd - - - dts - audio/vnd.dts - - - dtshd - audio/vnd.dts.hd - - - dump - application/octet-stream - - - dv - video/x-dv - - - dvb - video/vnd.dvb.file - - - dvi - application/x-dvi - - - dwf - model/vnd.dwf - - - dwg - image/vnd.dwg - - - dxf - image/vnd.dxf - - - dxp - application/vnd.spotfire.dxp - - - dxr - application/x-director - - - ecelp4800 - audio/vnd.nuera.ecelp4800 - - - ecelp7470 - audio/vnd.nuera.ecelp7470 - - - ecelp9600 - audio/vnd.nuera.ecelp9600 - - - ecma - application/ecmascript - - - edm - application/vnd.novadigm.edm - - - edx - application/vnd.novadigm.edx - - - efif - application/vnd.picsel - - - ei6 - application/vnd.pg.osasli - - - elc - application/octet-stream - - - emf - application/x-msmetafile - - - eml - message/rfc822 - - - emma - application/emma+xml - - - emz - application/x-msmetafile - - - eol - audio/vnd.digital-winds - - - eot - application/vnd.ms-fontobject - - - eps - application/postscript - - - epub - application/epub+zip - - - es3 - application/vnd.eszigno3+xml - - - esa - application/vnd.osgi.subsystem - - - esf - application/vnd.epson.esf - - - et3 - application/vnd.eszigno3+xml - - - etx - text/x-setext - - - eva - application/x-eva - - - evy - application/x-envoy - - - exe - application/octet-stream - - - exi - application/exi - - - ext - application/vnd.novadigm.ext - - - ez - application/andrew-inset - - - ez2 - application/vnd.ezpix-album - - - ez3 - application/vnd.ezpix-package - - - f - text/x-fortran - - - f4v - video/x-f4v - - - f77 - text/x-fortran - - - f90 - text/x-fortran - - - fbs - image/vnd.fastbidsheet - - - fcdt - application/vnd.adobe.formscentral.fcdt - - - fcs - application/vnd.isac.fcs - - - fdf - application/vnd.fdf - - - fe_launch - application/vnd.denovo.fcselayout-link - - - fg5 - application/vnd.fujitsu.oasysgp - - - fgd - application/x-director - - - fh - image/x-freehand - - - fh4 - image/x-freehand - - - fh5 - image/x-freehand - - - fh7 - image/x-freehand - - - fhc - image/x-freehand - - - fig - application/x-xfig - - - flac - audio/flac - - - fli - video/x-fli - - - flo - application/vnd.micrografx.flo - - - flv - video/x-flv - - - flw - application/vnd.kde.kivio - - - flx - text/vnd.fmi.flexstor - - - fly - text/vnd.fly - - - fm - application/vnd.framemaker - - - fnc - application/vnd.frogans.fnc - - - for - text/x-fortran - - - fpx - image/vnd.fpx - - - frame - application/vnd.framemaker - - - fsc - application/vnd.fsc.weblaunch - - - fst - image/vnd.fst - - - ftc - application/vnd.fluxtime.clip - - - fti - application/vnd.anser-web-funds-transfer-initiation - - - fvt - video/vnd.fvt - - - fxp - application/vnd.adobe.fxp - - - fxpl - application/vnd.adobe.fxp - - - fzs - application/vnd.fuzzysheet - - - g2w - application/vnd.geoplan - - - g3 - image/g3fax - - - g3w - application/vnd.geospace - - - gac - application/vnd.groove-account - - - gam - application/x-tads - - - gbr - application/rpki-ghostbusters - - - gca - application/x-gca-compressed - - - gdl - model/vnd.gdl - - - geo - application/vnd.dynageo - - - gex - application/vnd.geometry-explorer - - - ggb - application/vnd.geogebra.file - - - ggt - application/vnd.geogebra.tool - - - ghf - application/vnd.groove-help - - - gif - image/gif - - - gim - application/vnd.groove-identity-message - - - gml - application/gml+xml - - - gmx - application/vnd.gmx - - - gnumeric - application/x-gnumeric - - - gph - application/vnd.flographit - - - gpx - application/gpx+xml - - - gqf - application/vnd.grafeq - - - gqs - application/vnd.grafeq - - - gram - application/srgs - - - gramps - application/x-gramps-xml - - - gre - application/vnd.geometry-explorer - - - grv - application/vnd.groove-injector - - - grxml - application/srgs+xml - - - gsf - application/x-font-ghostscript - - - gtar - application/x-gtar - - - gtm - application/vnd.groove-tool-message - - - gtw - model/vnd.gtw - - - gv - text/vnd.graphviz - - - gxf - application/gxf - - - gxt - application/vnd.geonext - - - gz - application/x-gzip - - - h - text/x-c - - - h261 - video/h261 - - - h263 - video/h263 - - - h264 - video/h264 - - - hal - application/vnd.hal+xml - - - hbci - application/vnd.hbci - - - hdf - application/x-hdf - - - hh - text/x-c - - - hlp - application/winhlp - - - hpgl - application/vnd.hp-hpgl - - - hpid - application/vnd.hp-hpid - - - hps - application/vnd.hp-hps - - - hqx - application/mac-binhex40 - - - htc - text/x-component - - - htke - application/vnd.kenameaapp - - - htm - text/html - - - html - text/html - - - hvd - application/vnd.yamaha.hv-dic - - - hvp - application/vnd.yamaha.hv-voice - - - hvs - application/vnd.yamaha.hv-script - - - i2g - application/vnd.intergeo - - - icc - application/vnd.iccprofile - - - ice - x-conference/x-cooltalk - - - icm - application/vnd.iccprofile - - - ico - image/x-icon - - - ics - text/calendar - - - ief - image/ief - - - ifb - text/calendar - - - ifm - application/vnd.shana.informed.formdata - - - iges - model/iges - - - igl - application/vnd.igloader - - - igm - application/vnd.insors.igm - - - igs - model/iges - - - igx - application/vnd.micrografx.igx - - - iif - application/vnd.shana.informed.interchange - - - imp - application/vnd.accpac.simply.imp - - - ims - application/vnd.ms-ims - - - in - text/plain - - - ink - application/inkml+xml - - - inkml - application/inkml+xml - - - install - application/x-install-instructions - - - iota - application/vnd.astraea-software.iota - - - ipfix - application/ipfix - - - ipk - application/vnd.shana.informed.package - - - irm - application/vnd.ibm.rights-management - - - irp - application/vnd.irepository.package+xml - - - iso - application/x-iso9660-image - - - itp - application/vnd.shana.informed.formtemplate - - - ivp - application/vnd.immervision-ivp - - - ivu - application/vnd.immervision-ivu - - - jad - text/vnd.sun.j2me.app-descriptor - - - jam - application/vnd.jam - - - jar - application/java-archive - - - java - text/x-java-source - - - jisp - application/vnd.jisp - - - jlt - application/vnd.hp-jlyt - - - jnlp - application/x-java-jnlp-file - - - joda - application/vnd.joost.joda-archive - - - jpe - image/jpeg - - - jpeg - image/jpeg - - - jpg - image/jpeg - - - jpgm - video/jpm - - - jpgv - video/jpeg - - - jpm - video/jpm - - - js - application/javascript - - - jsf - text/plain - - - json - application/json - - - jsonml - application/jsonml+json - - - jspf - text/plain - - - kar - audio/midi - - - karbon - application/vnd.kde.karbon - - - kfo - application/vnd.kde.kformula - - - kia - application/vnd.kidspiration - - - kml - application/vnd.google-earth.kml+xml - - - kmz - application/vnd.google-earth.kmz - - - kne - application/vnd.kinar - - - knp - application/vnd.kinar - - - kon - application/vnd.kde.kontour - - - kpr - application/vnd.kde.kpresenter - - - kpt - application/vnd.kde.kpresenter - - - kpxx - application/vnd.ds-keypoint - - - ksp - application/vnd.kde.kspread - - - ktr - application/vnd.kahootz - - - ktx - image/ktx - - - ktz - application/vnd.kahootz - - - kwd - application/vnd.kde.kword - - - kwt - application/vnd.kde.kword - - - lasxml - application/vnd.las.las+xml - - - latex - application/x-latex - - - lbd - application/vnd.llamagraphics.life-balance.desktop - - - lbe - application/vnd.llamagraphics.life-balance.exchange+xml - - - les - application/vnd.hhe.lesson-player - - - lha - application/x-lzh-compressed - - - link66 - application/vnd.route66.link66+xml - - - list - text/plain - - - list3820 - application/vnd.ibm.modcap - - - listafp - application/vnd.ibm.modcap - - - lnk - application/x-ms-shortcut - - - log - text/plain - - - lostxml - application/lost+xml - - - lrf - application/octet-stream - - - lrm - application/vnd.ms-lrm - - - ltf - application/vnd.frogans.ltf - - - lvp - audio/vnd.lucent.voice - - - lwp - application/vnd.lotus-wordpro - - - lzh - application/x-lzh-compressed - - - m13 - application/x-msmediaview - - - m14 - application/x-msmediaview - - - m1v - video/mpeg - - - m21 - application/mp21 - - - m2a - audio/mpeg - - - m2v - video/mpeg - - - m3a - audio/mpeg - - - m3u - audio/x-mpegurl - - - m3u8 - application/vnd.apple.mpegurl - - - m4a - audio/mp4 - - - m4b - audio/mp4 - - - m4r - audio/mp4 - - - m4u - video/vnd.mpegurl - - - m4v - video/mp4 - - - ma - application/mathematica - - - mac - image/x-macpaint - - - mads - application/mads+xml - - - mag - application/vnd.ecowin.chart - - - maker - application/vnd.framemaker - - - man - text/troff - - - mar - application/octet-stream - - - mathml - application/mathml+xml - - - mb - application/mathematica - - - mbk - application/vnd.mobius.mbk - - - mbox - application/mbox - - - mc1 - application/vnd.medcalcdata - - - mcd - application/vnd.mcd - - - mcurl - text/vnd.curl.mcurl - - - mdb - application/x-msaccess - - - mdi - image/vnd.ms-modi - - - me - text/troff - - - mesh - model/mesh - - - meta4 - application/metalink4+xml - - - metalink - application/metalink+xml - - - mets - application/mets+xml - - - mfm - application/vnd.mfmp - - - mft - application/rpki-manifest - - - mgp - application/vnd.osgeo.mapguide.package - - - mgz - application/vnd.proteus.magazine - - - mid - audio/midi - - - midi - audio/midi - - - mie - application/x-mie - - - mif - application/x-mif - - - mime - message/rfc822 - - - mj2 - video/mj2 - - - mjp2 - video/mj2 - - - mk3d - video/x-matroska - - - mka - audio/x-matroska - - - mks - video/x-matroska - - - mkv - video/x-matroska - - - mlp - application/vnd.dolby.mlp - - - mmd - application/vnd.chipnuts.karaoke-mmd - - - mmf - application/vnd.smaf - - - mmr - image/vnd.fujixerox.edmics-mmr - - - mng - video/x-mng - - - mny - application/x-msmoney - - - mobi - application/x-mobipocket-ebook - - - mods - application/mods+xml - - - mov - video/quicktime - - - movie - video/x-sgi-movie - - - mp1 - audio/mpeg - - - mp2 - audio/mpeg - - - mp21 - application/mp21 - - - mp2a - audio/mpeg - - - mp3 - audio/mpeg - - - mp4 - video/mp4 - - - mp4a - audio/mp4 - - - mp4s - application/mp4 - - - mp4v - video/mp4 - - - mpa - audio/mpeg - - - mpc - application/vnd.mophun.certificate - - - mpe - video/mpeg - - - mpeg - video/mpeg - - - mpega - audio/x-mpeg - - - mpg - video/mpeg - - - mpg4 - video/mp4 - - - mpga - audio/mpeg - - - mpkg - application/vnd.apple.installer+xml - - - mpm - application/vnd.blueice.multipass - - - mpn - application/vnd.mophun.application - - - mpp - application/vnd.ms-project - - - mpt - application/vnd.ms-project - - - mpv2 - video/mpeg2 - - - mpy - application/vnd.ibm.minipay - - - mqy - application/vnd.mobius.mqy - - - mrc - application/marc - - - mrcx - application/marcxml+xml - - - ms - text/troff - - - mscml - application/mediaservercontrol+xml - - - mseed - application/vnd.fdsn.mseed - - - mseq - application/vnd.mseq - - - msf - application/vnd.epson.msf - - - msh - model/mesh - - - msi - application/x-msdownload - - - msl - application/vnd.mobius.msl - - - msty - application/vnd.muvee.style - - - mts - model/vnd.mts - - - mus - application/vnd.musician - - - musicxml - application/vnd.recordare.musicxml+xml - - - mvb - application/x-msmediaview - - - mwf - application/vnd.mfer - - - mxf - application/mxf - - - mxl - application/vnd.recordare.musicxml - - - mxml - application/xv+xml - - - mxs - application/vnd.triscape.mxs - - - mxu - video/vnd.mpegurl - - - n-gage - application/vnd.nokia.n-gage.symbian.install - - - n3 - text/n3 - - - nb - application/mathematica - - - nbp - application/vnd.wolfram.player - - - nc - application/x-netcdf - - - ncx - application/x-dtbncx+xml - - - nfo - text/x-nfo - - - ngdat - application/vnd.nokia.n-gage.data - - - nitf - application/vnd.nitf - - - nlu - application/vnd.neurolanguage.nlu - - - nml - application/vnd.enliven - - - nnd - application/vnd.noblenet-directory - - - nns - application/vnd.noblenet-sealer - - - nnw - application/vnd.noblenet-web - - - npx - image/vnd.net-fpx - - - nsc - application/x-conference - - - nsf - application/vnd.lotus-notes - - - ntf - application/vnd.nitf - - - nzb - application/x-nzb - - - oa2 - application/vnd.fujitsu.oasys2 - - - oa3 - application/vnd.fujitsu.oasys3 - - - oas - application/vnd.fujitsu.oasys - - - obd - application/x-msbinder - - - obj - application/x-tgif - - - oda - application/oda - - - - odb - application/vnd.oasis.opendocument.database - - - - odc - application/vnd.oasis.opendocument.chart - - - - odf - application/vnd.oasis.opendocument.formula - - - odft - application/vnd.oasis.opendocument.formula-template - - - - odg - application/vnd.oasis.opendocument.graphics - - - - odi - application/vnd.oasis.opendocument.image - - - - odm - application/vnd.oasis.opendocument.text-master - - - - odp - application/vnd.oasis.opendocument.presentation - - - - ods - application/vnd.oasis.opendocument.spreadsheet - - - - odt - application/vnd.oasis.opendocument.text - - - oga - audio/ogg - - - ogg - audio/ogg - - - ogv - video/ogg - - - - ogx - application/ogg - - - omdoc - application/omdoc+xml - - - onepkg - application/onenote - - - onetmp - application/onenote - - - onetoc - application/onenote - - - onetoc2 - application/onenote - - - opf - application/oebps-package+xml - - - opml - text/x-opml - - - oprc - application/vnd.palm - - - org - application/vnd.lotus-organizer - - - osf - application/vnd.yamaha.openscoreformat - - - osfpvg - application/vnd.yamaha.openscoreformat.osfpvg+xml - - - otc - application/vnd.oasis.opendocument.chart-template - - - otf - font/otf - - - - otg - application/vnd.oasis.opendocument.graphics-template - - - - oth - application/vnd.oasis.opendocument.text-web - - - oti - application/vnd.oasis.opendocument.image-template - - - - otp - application/vnd.oasis.opendocument.presentation-template - - - - ots - application/vnd.oasis.opendocument.spreadsheet-template - - - - ott - application/vnd.oasis.opendocument.text-template - - - oxps - application/oxps - - - oxt - application/vnd.openofficeorg.extension - - - p - text/x-pascal - - - p10 - application/pkcs10 - - - p12 - application/x-pkcs12 - - - p7b - application/x-pkcs7-certificates - - - p7c - application/pkcs7-mime - - - p7m - application/pkcs7-mime - - - p7r - application/x-pkcs7-certreqresp - - - p7s - application/pkcs7-signature - - - p8 - application/pkcs8 - - - pas - text/x-pascal - - - paw - application/vnd.pawaafile - - - pbd - application/vnd.powerbuilder6 - - - pbm - image/x-portable-bitmap - - - pcap - application/vnd.tcpdump.pcap - - - pcf - application/x-font-pcf - - - pcl - application/vnd.hp-pcl - - - pclxl - application/vnd.hp-pclxl - - - pct - image/pict - - - pcurl - application/vnd.curl.pcurl - - - pcx - image/x-pcx - - - pdb - application/vnd.palm - - - pdf - application/pdf - - - pfa - application/x-font-type1 - - - pfb - application/x-font-type1 - - - pfm - application/x-font-type1 - - - pfr - application/font-tdpfr - - - pfx - application/x-pkcs12 - - - pgm - image/x-portable-graymap - - - pgn - application/x-chess-pgn - - - pgp - application/pgp-encrypted - - - pic - image/pict - - - pict - image/pict - - - pkg - application/octet-stream - - - pki - application/pkixcmp - - - pkipath - application/pkix-pkipath - - - plb - application/vnd.3gpp.pic-bw-large - - - plc - application/vnd.mobius.plc - - - plf - application/vnd.pocketlearn - - - pls - audio/x-scpls - - - pml - application/vnd.ctc-posml - - - png - image/png - - - pnm - image/x-portable-anymap - - - pnt - image/x-macpaint - - - portpkg - application/vnd.macports.portpkg - - - pot - application/vnd.ms-powerpoint - - - potm - application/vnd.ms-powerpoint.template.macroenabled.12 - - - potx - application/vnd.openxmlformats-officedocument.presentationml.template - - - ppam - application/vnd.ms-powerpoint.addin.macroenabled.12 - - - ppd - application/vnd.cups-ppd - - - ppm - image/x-portable-pixmap - - - pps - application/vnd.ms-powerpoint - - - ppsm - application/vnd.ms-powerpoint.slideshow.macroenabled.12 - - - ppsx - application/vnd.openxmlformats-officedocument.presentationml.slideshow - - - ppt - application/vnd.ms-powerpoint - - - pptm - application/vnd.ms-powerpoint.presentation.macroenabled.12 - - - pptx - application/vnd.openxmlformats-officedocument.presentationml.presentation - - - pqa - application/vnd.palm - - - prc - application/x-mobipocket-ebook - - - pre - application/vnd.lotus-freelance - - - prf - application/pics-rules - - - ps - application/postscript - - - psb - application/vnd.3gpp.pic-bw-small - - - psd - image/vnd.adobe.photoshop - - - psf - application/x-font-linux-psf - - - pskcxml - application/pskc+xml - - - ptid - application/vnd.pvi.ptid1 - - - pub - application/x-mspublisher - - - pvb - application/vnd.3gpp.pic-bw-var - - - pwn - application/vnd.3m.post-it-notes - - - pya - audio/vnd.ms-playready.media.pya - - - pyv - video/vnd.ms-playready.media.pyv - - - qam - application/vnd.epson.quickanime - - - qbo - application/vnd.intu.qbo - - - qfx - application/vnd.intu.qfx - - - qps - application/vnd.publishare-delta-tree - - - qt - video/quicktime - - - qti - image/x-quicktime - - - qtif - image/x-quicktime - - - qwd - application/vnd.quark.quarkxpress - - - qwt - application/vnd.quark.quarkxpress - - - qxb - application/vnd.quark.quarkxpress - - - qxd - application/vnd.quark.quarkxpress - - - qxl - application/vnd.quark.quarkxpress - - - qxt - application/vnd.quark.quarkxpress - - - ra - audio/x-pn-realaudio - - - ram - audio/x-pn-realaudio - - - rar - application/x-rar-compressed - - - ras - image/x-cmu-raster - - - rcprofile - application/vnd.ipunplugged.rcprofile - - - rdf - application/rdf+xml - - - rdz - application/vnd.data-vision.rdz - - - rep - application/vnd.businessobjects - - - res - application/x-dtbresource+xml - - - rgb - image/x-rgb - - - rif - application/reginfo+xml - - - rip - audio/vnd.rip - - - ris - application/x-research-info-systems - - - rl - application/resource-lists+xml - - - rlc - image/vnd.fujixerox.edmics-rlc - - - rld - application/resource-lists-diff+xml - - - rm - application/vnd.rn-realmedia - - - rmi - audio/midi - - - rmp - audio/x-pn-realaudio-plugin - - - rms - application/vnd.jcp.javame.midlet-rms - - - rmvb - application/vnd.rn-realmedia-vbr - - - rnc - application/relax-ng-compact-syntax - - - roa - application/rpki-roa - - - roff - text/troff - - - rp9 - application/vnd.cloanto.rp9 - - - rpss - application/vnd.nokia.radio-presets - - - rpst - application/vnd.nokia.radio-preset - - - rq - application/sparql-query - - - rs - application/rls-services+xml - - - rsd - application/rsd+xml - - - rss - application/rss+xml - - - rtf - application/rtf - - - rtx - text/richtext - - - s - text/x-asm - - - s3m - audio/s3m - - - saf - application/vnd.yamaha.smaf-audio - - - sbml - application/sbml+xml - - - sc - application/vnd.ibm.secure-container - - - scd - application/x-msschedule - - - scm - application/vnd.lotus-screencam - - - scq - application/scvp-cv-request - - - scs - application/scvp-cv-response - - - scurl - text/vnd.curl.scurl - - - sda - application/vnd.stardivision.draw - - - sdc - application/vnd.stardivision.calc - - - sdd - application/vnd.stardivision.impress - - - sdkd - application/vnd.solent.sdkm+xml - - - sdkm - application/vnd.solent.sdkm+xml - - - sdp - application/sdp - - - sdw - application/vnd.stardivision.writer - - - see - application/vnd.seemail - - - seed - application/vnd.fdsn.seed - - - sema - application/vnd.sema - - - semd - application/vnd.semd - - - semf - application/vnd.semf - - - ser - application/java-serialized-object - - - setpay - application/set-payment-initiation - - - setreg - application/set-registration-initiation - - - sfd-hdstx - application/vnd.hydrostatix.sof-data - - - sfs - application/vnd.spotfire.sfs - - - sfv - text/x-sfv - - - sgi - image/sgi - - - sgl - application/vnd.stardivision.writer-global - - - sgm - text/sgml - - - sgml - text/sgml - - - sh - application/x-sh - - - shar - application/x-shar - - - shf - application/shf+xml - - - - sid - image/x-mrsid-image - - - sig - application/pgp-signature - - - sil - audio/silk - - - silo - model/mesh - - - sis - application/vnd.symbian.install - - - sisx - application/vnd.symbian.install - - - sit - application/x-stuffit - - - sitx - application/x-stuffitx - - - skd - application/vnd.koan - - - skm - application/vnd.koan - - - skp - application/vnd.koan - - - skt - application/vnd.koan - - - sldm - application/vnd.ms-powerpoint.slide.macroenabled.12 - - - sldx - application/vnd.openxmlformats-officedocument.presentationml.slide - - - slt - application/vnd.epson.salt - - - sm - application/vnd.stepmania.stepchart - - - smf - application/vnd.stardivision.math - - - smi - application/smil+xml - - - smil - application/smil+xml - - - smv - video/x-smv - - - smzip - application/vnd.stepmania.package - - - snd - audio/basic - - - snf - application/x-font-snf - - - so - application/octet-stream - - - spc - application/x-pkcs7-certificates - - - spf - application/vnd.yamaha.smaf-phrase - - - spl - application/x-futuresplash - - - spot - text/vnd.in3d.spot - - - spp - application/scvp-vp-response - - - spq - application/scvp-vp-request - - - spx - audio/ogg - - - sql - application/x-sql - - - src - application/x-wais-source - - - srt - application/x-subrip - - - sru - application/sru+xml - - - srx - application/sparql-results+xml - - - ssdl - application/ssdl+xml - - - sse - application/vnd.kodak-descriptor - - - ssf - application/vnd.epson.ssf - - - ssml - application/ssml+xml - - - st - application/vnd.sailingtracker.track - - - stc - application/vnd.sun.xml.calc.template - - - std - application/vnd.sun.xml.draw.template - - - stf - application/vnd.wt.stf - - - sti - application/vnd.sun.xml.impress.template - - - stk - application/hyperstudio - - - stl - application/vnd.ms-pki.stl - - - str - application/vnd.pg.format - - - stw - application/vnd.sun.xml.writer.template - - - sub - text/vnd.dvb.subtitle - - - sus - application/vnd.sus-calendar - - - susp - application/vnd.sus-calendar - - - sv4cpio - application/x-sv4cpio - - - sv4crc - application/x-sv4crc - - - svc - application/vnd.dvb.service - - - svd - application/vnd.svd - - - svg - image/svg+xml - - - svgz - image/svg+xml - - - swa - application/x-director - - - swf - application/x-shockwave-flash - - - swi - application/vnd.aristanetworks.swi - - - sxc - application/vnd.sun.xml.calc - - - sxd - application/vnd.sun.xml.draw - - - sxg - application/vnd.sun.xml.writer.global - - - sxi - application/vnd.sun.xml.impress - - - sxm - application/vnd.sun.xml.math - - - sxw - application/vnd.sun.xml.writer - - - t - text/troff - - - t3 - application/x-t3vm-image - - - taglet - application/vnd.mynfc - - - tao - application/vnd.tao.intent-module-archive - - - tar - application/x-tar - - - tcap - application/vnd.3gpp2.tcap - - - tcl - application/x-tcl - - - teacher - application/vnd.smart.teacher - - - tei - application/tei+xml - - - teicorpus - application/tei+xml - - - tex - application/x-tex - - - texi - application/x-texinfo - - - texinfo - application/x-texinfo - - - text - text/plain - - - tfi - application/thraud+xml - - - tfm - application/x-tex-tfm - - - tga - image/x-tga - - - thmx - application/vnd.ms-officetheme - - - tif - image/tiff - - - tiff - image/tiff - - - tmo - application/vnd.tmobile-livetv - - - torrent - application/x-bittorrent - - - tpl - application/vnd.groove-tool-template - - - tpt - application/vnd.trid.tpt - - - tr - text/troff - - - tra - application/vnd.trueapp - - - trm - application/x-msterminal - - - tsd - application/timestamped-data - - - tsv - text/tab-separated-values - - - ttc - font/collection - - - ttf - font/ttf - - - ttl - text/turtle - - - twd - application/vnd.simtech-mindmapper - - - twds - application/vnd.simtech-mindmapper - - - txd - application/vnd.genomatix.tuxedo - - - txf - application/vnd.mobius.txf - - - txt - text/plain - - - u32 - application/x-authorware-bin - - - udeb - application/x-debian-package - - - ufd - application/vnd.ufdl - - - ufdl - application/vnd.ufdl - - - ulw - audio/basic - - - ulx - application/x-glulx - - - umj - application/vnd.umajin - - - unityweb - application/vnd.unity - - - uoml - application/vnd.uoml+xml - - - uri - text/uri-list - - - uris - text/uri-list - - - urls - text/uri-list - - - ustar - application/x-ustar - - - utz - application/vnd.uiq.theme - - - uu - text/x-uuencode - - - uva - audio/vnd.dece.audio - - - uvd - application/vnd.dece.data - - - uvf - application/vnd.dece.data - - - uvg - image/vnd.dece.graphic - - - uvh - video/vnd.dece.hd - - - uvi - image/vnd.dece.graphic - - - uvm - video/vnd.dece.mobile - - - uvp - video/vnd.dece.pd - - - uvs - video/vnd.dece.sd - - - uvt - application/vnd.dece.ttml+xml - - - uvu - video/vnd.uvvu.mp4 - - - uvv - video/vnd.dece.video - - - uvva - audio/vnd.dece.audio - - - uvvd - application/vnd.dece.data - - - uvvf - application/vnd.dece.data - - - uvvg - image/vnd.dece.graphic - - - uvvh - video/vnd.dece.hd - - - uvvi - image/vnd.dece.graphic - - - uvvm - video/vnd.dece.mobile - - - uvvp - video/vnd.dece.pd - - - uvvs - video/vnd.dece.sd - - - uvvt - application/vnd.dece.ttml+xml - - - uvvu - video/vnd.uvvu.mp4 - - - uvvv - video/vnd.dece.video - - - uvvx - application/vnd.dece.unspecified - - - uvvz - application/vnd.dece.zip - - - uvx - application/vnd.dece.unspecified - - - uvz - application/vnd.dece.zip - - - vcard - text/vcard - - - vcd - application/x-cdlink - - - vcf - text/x-vcard - - - vcg - application/vnd.groove-vcard - - - vcs - text/x-vcalendar - - - vcx - application/vnd.vcx - - - vis - application/vnd.visionary - - - viv - video/vnd.vivo - - - vob - video/x-ms-vob - - - vor - application/vnd.stardivision.writer - - - vox - application/x-authorware-bin - - - vrml - model/vrml - - - vsd - application/vnd.visio - - - vsf - application/vnd.vsf - - - vss - application/vnd.visio - - - vst - application/vnd.visio - - - vsw - application/vnd.visio - - - vtu - model/vnd.vtu - - - vxml - application/voicexml+xml - - - w3d - application/x-director - - - wad - application/x-doom - - - wav - audio/x-wav - - - wax - audio/x-ms-wax - - - - wbmp - image/vnd.wap.wbmp - - - wbs - application/vnd.criticaltools.wbs+xml - - - wbxml - application/vnd.wap.wbxml - - - wcm - application/vnd.ms-works - - - wdb - application/vnd.ms-works - - - wdp - image/vnd.ms-photo - - - weba - audio/webm - - - webm - video/webm - - - webp - image/webp - - - wg - application/vnd.pmi.widget - - - wgt - application/widget - - - wks - application/vnd.ms-works - - - wm - video/x-ms-wm - - - wma - audio/x-ms-wma - - - wmd - application/x-ms-wmd - - - wmf - application/x-msmetafile - - - - wml - text/vnd.wap.wml - - - - wmlc - application/vnd.wap.wmlc - - - - wmls - text/vnd.wap.wmlscript - - - - wmlsc - application/vnd.wap.wmlscriptc - - - wmv - video/x-ms-wmv - - - wmx - video/x-ms-wmx - - - wmz - application/x-msmetafile - - - woff - font/woff - - - woff2 - font/woff2 - - - wpd - application/vnd.wordperfect - - - wpl - application/vnd.ms-wpl - - - wps - application/vnd.ms-works - - - wqd - application/vnd.wqd - - - wri - application/x-mswrite - - - wrl - model/vrml - - - wsdl - application/wsdl+xml - - - wspolicy - application/wspolicy+xml - - - wtb - application/vnd.webturbo - - - wvx - video/x-ms-wvx - - - x32 - application/x-authorware-bin - - - x3d - model/x3d+xml - - - x3db - model/x3d+binary - - - x3dbz - model/x3d+binary - - - x3dv - model/x3d+vrml - - - x3dvz - model/x3d+vrml - - - x3dz - model/x3d+xml - - - xaml - application/xaml+xml - - - xap - application/x-silverlight-app - - - xar - application/vnd.xara - - - xbap - application/x-ms-xbap - - - xbd - application/vnd.fujixerox.docuworks.binder - - - xbm - image/x-xbitmap - - - xdf - application/xcap-diff+xml - - - xdm - application/vnd.syncml.dm+xml - - - xdp - application/vnd.adobe.xdp+xml - - - xdssc - application/dssc+xml - - - xdw - application/vnd.fujixerox.docuworks - - - xenc - application/xenc+xml - - - xer - application/patch-ops-error+xml - - - xfdf - application/vnd.adobe.xfdf - - - xfdl - application/vnd.xfdl - - - xht - application/xhtml+xml - - - xhtml - application/xhtml+xml - - - xhvml - application/xv+xml - - - xif - image/vnd.xiff - - - xla - application/vnd.ms-excel - - - xlam - application/vnd.ms-excel.addin.macroenabled.12 - - - xlc - application/vnd.ms-excel - - - xlf - application/x-xliff+xml - - - xlm - application/vnd.ms-excel - - - xls - application/vnd.ms-excel - - - xlsb - application/vnd.ms-excel.sheet.binary.macroenabled.12 - - - xlsm - application/vnd.ms-excel.sheet.macroenabled.12 - - - xlsx - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet - - - xlt - application/vnd.ms-excel - - - xltm - application/vnd.ms-excel.template.macroenabled.12 - - - xltx - application/vnd.openxmlformats-officedocument.spreadsheetml.template - - - xlw - application/vnd.ms-excel - - - xm - audio/xm - - - xml - application/xml - - - xo - application/vnd.olpc-sugar - - - xop - application/xop+xml - - - xpi - application/x-xpinstall - - - xpl - application/xproc+xml - - - xpm - image/x-xpixmap - - - xpr - application/vnd.is-xpr - - - xps - application/vnd.ms-xpsdocument - - - xpw - application/vnd.intercon.formnet - - - xpx - application/vnd.intercon.formnet - - - xsl - application/xml - - - xslt - application/xslt+xml - - - xsm - application/vnd.syncml+xml - - - xspf - application/xspf+xml - - - xul - application/vnd.mozilla.xul+xml - - - xvm - application/xv+xml - - - xvml - application/xv+xml - - - xwd - image/x-xwindowdump - - - xyz - chemical/x-xyz - - - xz - application/x-xz - - - yang - application/yang - - - yin - application/yin+xml - - - z - application/x-compress - - - Z - application/x-compress - - - z1 - application/x-zmachine - - - z2 - application/x-zmachine - - - z3 - application/x-zmachine - - - z4 - application/x-zmachine - - - z5 - application/x-zmachine - - - z6 - application/x-zmachine - - - z7 - application/x-zmachine - - - z8 - application/x-zmachine - - - zaz - application/vnd.zzazz.deck+xml - - - zip - application/zip - - - zir - application/vnd.zul - - - zirz - application/vnd.zul - - - zmm - application/vnd.handheld-entertainment+xml - - - - - - - - - - - - - - - - - - index.html - index.htm - index.jsp - - - diff --git a/demos/javaapp/src/main/webapp/WEB-INF/web.xml b/demos/javaapp/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index f2a86ac..0000000 --- a/demos/javaapp/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - spring-embed-tomcat-demo-helloworld - - - - spring-servlet - org.springframework.web.servlet.DispatcherServlet - 1 - - contextConfigLocation - classpath:spring/spring-servlet.xml - - - - spring-servlet - / - - - - - - - encodingFilter - org.springframework.web.filter.CharacterEncodingFilter - - encoding - UTF-8 - - - forceEncoding - true - - - - encodingFilter - /* - REQUEST - FORWARD - - - - CorsFilter - io.github.dunwu.filter.CorsFilter - - headerKey - Host - - - regex - - ((http://)|(https://))?(\w*\.)*(\S)* - - - - CorsFilter - /* - - - - - /views/jsp/index.jsp - - diff --git a/demos/javaapp/src/main/webapp/views/jsp/index.jsp b/demos/javaapp/src/main/webapp/views/jsp/index.jsp deleted file mode 100644 index 6fd2308..0000000 --- a/demos/javaapp/src/main/webapp/views/jsp/index.jsp +++ /dev/null @@ -1,26 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> -<% - String domain = request.getScheme() + "://" + request.getServerName() + request.getContextPath(); - String host = request.getRemoteHost(); - // int port = request.getServerPort(); - Integer port = Integer.valueOf(System.getProperty("tomcat.connector.port")); - - -%> - - - - - spring-embed-tomcat-demo - - - -

spring-embed-tomcat-demo

-

<%out.print("当前服务器信息:");%>

-
    -
  • <%out.print("domain:" + domain);%>
  • -
  • <%out.print("host:" + host);%>
  • -
  • <%out.print("port:" + port);%>
  • -
- - diff --git a/demos/nginx-1.14.0/html/index.html b/demos/nginx-1.14.0/html/index.html deleted file mode 100644 index 3e95532..0000000 --- a/demos/nginx-1.14.0/html/index.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and - working. Further configuration is required.

- -

For online documentation and support please refer to - nginx.org.
- Commercial support is available at - nginx.com.

- -

Thank you for using nginx.

- - diff --git a/demos/reactadmin/package.json b/demos/reactadmin/package.json deleted file mode 100644 index 038cf65..0000000 --- a/demos/reactadmin/package.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "react-admin", - "version": "0.1.0", - "private": true, - "dependencies": { - "react": "^16.7.0", - "react-dom": "^16.7.0", - "react-scripts": "2.1.3" - }, - "scripts": { - "start": "react-scripts start", - "build": "react-scripts build", - "test": "react-scripts test", - "eject": "react-scripts eject" - }, - "eslintConfig": { - "extends": "react-app" - }, - "browserslist": [ - ">0.2%", - "not dead", - "not ie <= 11", - "not op_mini all" - ] -} diff --git a/demos/reactadmin/public/index.html b/demos/reactadmin/public/index.html deleted file mode 100644 index 91dcfc3..0000000 --- a/demos/reactadmin/public/index.html +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - React App - - - -
- - - diff --git a/demos/reactadmin/public/manifest.json b/demos/reactadmin/public/manifest.json deleted file mode 100644 index 1f2f141..0000000 --- a/demos/reactadmin/public/manifest.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "short_name": "React App", - "name": "Create React App Sample", - "icons": [ - { - "src": "favicon.ico", - "sizes": "64x64 32x32 24x24 16x16", - "type": "image/x-icon" - } - ], - "start_url": ".", - "display": "standalone", - "theme_color": "#000000", - "background_color": "#ffffff" -} diff --git a/demos/reactadmin/src/App.css b/demos/reactadmin/src/App.css deleted file mode 100644 index b14705a..0000000 --- a/demos/reactadmin/src/App.css +++ /dev/null @@ -1,32 +0,0 @@ -.App { - text-align: center; -} - -.App-logo { - animation: App-logo-spin infinite 20s linear; - height: 40vmin; -} - -.App-header { - background-color: #282C34; - min-height: 100vh; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - font-size: calc(10px + 2vmin); - color: white; -} - -.App-link { - color: #61DAFB; -} - -@keyframes App-logo-spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } -} diff --git a/demos/reactadmin/src/App.js b/demos/reactadmin/src/App.js deleted file mode 100644 index 208db6b..0000000 --- a/demos/reactadmin/src/App.js +++ /dev/null @@ -1,35 +0,0 @@ -import React, { Component } from 'react' -import logo from './logo.svg' -import './App.css' - -class App extends Component { - render() { - return ( - < div - className = 'App' > - < header - className = 'App-header' > - < img - src = { logo } - className = 'App-logo' - alt = 'logo' / > - < p > - Edit < code > src / App.js < /code> and save to reload. - < /p> - < a - className = 'App-link' - href = 'https://reactjs.org' - target = '_blank' - rel = 'noopener noreferrer' - > - Learn - React - < /a> - < /header> - < /div> - ) - - } -} - -export default App diff --git a/demos/reactadmin/src/App.test.js b/demos/reactadmin/src/App.test.js deleted file mode 100644 index dc3b5e7..0000000 --- a/demos/reactadmin/src/App.test.js +++ /dev/null @@ -1,10 +0,0 @@ -import ReactDOM from 'react-dom' -import App from './App' - -it('renders without crashing', () => { - const div = document.createElement('div') - ReactDOM.render( < App / >, div -) - - ReactDOM.unmountComponentAtNode(div) -}) diff --git a/demos/reactadmin/src/index.css b/demos/reactadmin/src/index.css deleted file mode 100644 index 5b6b166..0000000 --- a/demos/reactadmin/src/index.css +++ /dev/null @@ -1,14 +0,0 @@ -body { - margin: 0; - padding: 0; - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", - "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", - sans-serif; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -code { - font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", - monospace; -} diff --git a/demos/reactadmin/src/serviceWorker.js b/demos/reactadmin/src/serviceWorker.js deleted file mode 100644 index efcb29e..0000000 --- a/demos/reactadmin/src/serviceWorker.js +++ /dev/null @@ -1,135 +0,0 @@ -// This optional code is used to register a service worker. -// register() is not called by default. - -// This lets the app load faster on subsequent visits in production, and gives -// it offline capabilities. However, it also means that developers (and users) -// will only see deployed updates on subsequent visits to a page, after all the -// existing tabs open on the page have been closed, since previously cached -// resources are updated in the background. - -// To learn more about the benefits of this model and instructions on how to -// opt-in, read http://bit.ly/CRA-PWA - -const isLocalhost = Boolean( - window.location.hostname === 'localhost' || - // [::1] is the IPv6 localhost address. - window.location.hostname === '[::1]' || - // 127.0.0.1/8 is considered localhost for IPv4. - window.location.hostname.match( - /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ - ) -) - -export function register(config) { - if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { - // The URL constructor is available in all browsers that support SW. - const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href) - if (publicUrl.origin !== window.location.origin) { - // Our service worker won't work if PUBLIC_URL is on a different origin - // from what our page is served on. This might happen if a CDN is used to - // serve assets; see https://github.com/facebook/create-react-app/issues/2374 - return - } - - window.addEventListener('load', () => { - const swUrl = `${process.env.PUBLIC_URL}/service-worker.js` - - if (isLocalhost) { - // This is running on localhost. Let's check if a service worker still exists or not. - checkValidServiceWorker(swUrl, config) - - // Add some additional logging to localhost, pointing developers to the - // service worker/PWA documentation. - navigator.serviceWorker.ready.then(() => { - console.log( - 'This web app is being served cache-first by a service ' + - 'worker. To learn more, visit http://bit.ly/CRA-PWA' - ) - }) - } else { - // Is not localhost. Just register service worker - registerValidSW(swUrl, config) - } - }) - } -} - -function registerValidSW(swUrl, config) { - navigator.serviceWorker - .register(swUrl) - .then(registration => { - registration.onupdatefound = () => { - const installingWorker = registration.installing - if (installingWorker == null) { - return - } - installingWorker.onstatechange = () => { - if (installingWorker.state === 'installed') { - if (navigator.serviceWorker.controller) { - // At this point, the updated precached content has been fetched, - // but the previous service worker will still serve the older - // content until all client tabs are closed. - console.log( - 'New content is available and will be used when all ' + - 'tabs for this page are closed. See http://bit.ly/CRA-PWA.' - ) - - // Execute callback - if (config && config.onUpdate) { - config.onUpdate(registration) - } - } else { - // At this point, everything has been precached. - // It's the perfect time to display a - // "Content is cached for offline use." message. - console.log('Content is cached for offline use.') - - // Execute callback - if (config && config.onSuccess) { - config.onSuccess(registration) - } - } - } - } - } - }) - .catch(error => { - console.error('Error during service worker registration:', error) - }) -} - -function checkValidServiceWorker(swUrl, config) { - // Check if the service worker can be found. If it can't reload the page. - fetch(swUrl) - .then(response => { - // Ensure service worker exists, and that we really are getting a JS file. - const contentType = response.headers.get('content-type') - if ( - response.status === 404 || - (contentType != null && contentType.indexOf('javascript') === -1) - ) { - // No service worker found. Probably a different app. Reload the page. - navigator.serviceWorker.ready.then(registration => { - registration.unregister().then(() => { - window.location.reload() - }) - }) - } else { - // Service worker found. Proceed as normal. - registerValidSW(swUrl, config) - } - }) - .catch(() => { - console.log( - 'No internet connection found. App is running in offline mode.' - ) - }) -} - -export function unregister() { - if ('serviceWorker' in navigator) { - navigator.serviceWorker.ready.then(registration => { - registration.unregister() - }) - } -} diff --git a/demos/reactapp/src/views/pages/home/logo.svg b/demos/reactapp/src/views/pages/home/logo.svg deleted file mode 100644 index 6d75536..0000000 --- a/demos/reactapp/src/views/pages/home/logo.svg +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - diff --git a/demos/README.md b/examples/README.md similarity index 100% rename from demos/README.md rename to examples/README.md diff --git a/demos/images/nginx-demo01.png b/examples/images/nginx-demo01.png similarity index 100% rename from demos/images/nginx-demo01.png rename to examples/images/nginx-demo01.png diff --git a/demos/images/nginx-demo02.png b/examples/images/nginx-demo02.png similarity index 100% rename from demos/images/nginx-demo02.png rename to examples/images/nginx-demo02.png diff --git a/demos/images/nginx-demo03.png b/examples/images/nginx-demo03.png similarity index 100% rename from demos/images/nginx-demo03.png rename to examples/images/nginx-demo03.png diff --git a/demos/images/nginx-demo04(2).png b/examples/images/nginx-demo04(2).png similarity index 100% rename from demos/images/nginx-demo04(2).png rename to examples/images/nginx-demo04(2).png diff --git a/demos/images/nginx-demo04.png b/examples/images/nginx-demo04.png similarity index 100% rename from demos/images/nginx-demo04.png rename to examples/images/nginx-demo04.png diff --git a/demos/images/nginx-demo05.png b/examples/images/nginx-demo05.png similarity index 100% rename from demos/images/nginx-demo05.png rename to examples/images/nginx-demo05.png diff --git a/demos/images/nginx-demo06.png b/examples/images/nginx-demo06.png similarity index 100% rename from demos/images/nginx-demo06.png rename to examples/images/nginx-demo06.png diff --git a/examples/javaapp/pom.xml b/examples/javaapp/pom.xml new file mode 100644 index 0000000..01a8246 --- /dev/null +++ b/examples/javaapp/pom.xml @@ -0,0 +1,89 @@ + + + 4.0.0 + io.github.dunwu + JavaWebApp + 1.0.0 + war + ${project.artifactId} + + UTF-8 + 1.8 + ${java.version} + ${java.version} + 5.0.2.RELEASE + 8.5.34 + + + + + javax.servlet + javax.servlet-api + 3.1.0 + + + javax.servlet.jsp + jsp-api + 2.2 + + + + + + org.springframework + spring-context-support + + + org.springframework + spring-webmvc + + + + + + org.apache.tomcat.embed + tomcat-embed-core + ${tomcat.version} + + + org.apache.tomcat.embed + tomcat-embed-jasper + ${tomcat.version} + + + + + org.apache.commons + commons-lang3 + 3.7 + + + ch.qos.logback + logback-classic + 1.1.2 + + + com.fasterxml.jackson.core + jackson-databind + 2.9.8 + + + + + + + org.springframework + spring-framework-bom + ${spring.version} + pom + import + + + + + + ${project.artifactId} + + diff --git a/demos/javaapp/src/main/java/io/github/dunwu/Main.java b/examples/javaapp/src/main/java/io/github/dunwu/Main.java similarity index 88% rename from demos/javaapp/src/main/java/io/github/dunwu/Main.java rename to examples/javaapp/src/main/java/io/github/dunwu/Main.java index 33ca08e..eec6e53 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/Main.java +++ b/examples/javaapp/src/main/java/io/github/dunwu/Main.java @@ -31,8 +31,7 @@ public static void main(String[] args) throws Exception { if (!checkFile.exists()) { System.setProperty("catalina.base", getAbsolutePath() + RELATIVE_DEV_BASE_DIR); System.setProperty("tomcat.context.docBase", RELATIVE_DEV_DOCBASE_DIR); - } - else { + } else { System.setProperty("catalina.base", getAbsolutePath() + RELATIVE_BASE_DIR); System.setProperty("tomcat.context.docBase", RELATIVE_DOCBASE_DIR); } @@ -42,7 +41,7 @@ public static void main(String[] args) throws Exception { } if (isBlank(System.getProperty("tomcat.server.shutdownPort"))) { System.setProperty("tomcat.server.shutdownPort", - String.valueOf(Integer.valueOf(System.getProperty("tomcat.connector.port")) + 10000)); + String.valueOf(Integer.valueOf(System.getProperty("tomcat.connector.port")) + 10000)); } if (isBlank(System.getProperty("tomcat.context.path"))) { System.setProperty("tomcat.context.path", CONTEXT_PATH); @@ -67,8 +66,7 @@ private static String getAbsolutePath() { String folderPath = Main.class.getProtectionDomain().getCodeSource().getLocation().getPath(); if (folderPath.indexOf("WEB-INF") > 0) { path = folderPath.substring(0, folderPath.indexOf("WEB-INF")); - } - else if (folderPath.indexOf("target") > 0) { + } else if (folderPath.indexOf("target") > 0) { path = folderPath.substring(0, folderPath.indexOf("target")); } return path; @@ -101,16 +99,16 @@ public Server getServer() { Digester digester = extendedCatalina.createStartDigester(); digester.push(extendedCatalina); try { - server = ((ExtendedCatalina) digester - .parse(new File(System.getProperty("catalina.base") + RELATIVE_SERVERXML_PATH))).getServer(); + server = ((ExtendedCatalina) digester.parse( + new File(System.getProperty("catalina.base") + RELATIVE_SERVERXML_PATH))).getServer(); // 设置catalina.base和catalna.home this.initBaseDir(); return server; - } - catch (Exception e) { + } catch (Exception e) { System.err.println("Error while parsing server.xml" + e.getMessage()); - throw new RuntimeException("server未创建,请检查server.xml(路径:" + System.getProperty("catalina.base") - + RELATIVE_SERVERXML_PATH + ")配置是否正确"); + throw new RuntimeException( + "server未创建,请检查server.xml(路径:" + System.getProperty("catalina.base") + RELATIVE_SERVERXML_PATH + + ")配置是否正确"); } } diff --git a/demos/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java b/examples/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java similarity index 85% rename from demos/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java rename to examples/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java index f4da586..7edd905 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java +++ b/examples/javaapp/src/main/java/io/github/dunwu/filter/CorsFilter.java @@ -16,9 +16,13 @@ public class CorsFilter implements Filter { private static final Logger logger = LoggerFactory.getLogger(CorsFilter.class); + private final String ORIGIN_KEY = "Origin"; + private String regex; + private String headerKey; + private String protocol = "http"; public void init(FilterConfig filterConfig) { @@ -27,18 +31,17 @@ public void init(FilterConfig filterConfig) { headerKey = filterConfig.getInitParameter("headerKey"); String protocolVal = filterConfig.getInitParameter("protocol"); if (StringUtils.isNotBlank(protocolVal)) { - if (StringUtils.equalsIgnoreCase("http", protocolVal) - || StringUtils.equalsIgnoreCase("https", protocolVal)) { + if (StringUtils.equalsIgnoreCase("http", protocolVal) || StringUtils.equalsIgnoreCase("https", + protocolVal)) { protocol = protocolVal.toLowerCase(); - } - else { + } else { logger.error("CorsFilter 配置参数 protocol 非法,仍使用默认值 http"); } } } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { + throws IOException, ServletException { HttpServletRequest httpRequest = (HttpServletRequest) request; HttpServletResponse httpResponse = (HttpServletResponse) response; @@ -84,11 +87,11 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha httpResponse.addHeader("Access-Control-Allow-Credentials", "true"); httpResponse.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, OPTIONS, DELETE"); httpResponse.addHeader("Access-Control-Allow-Headers", - "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since," - + " Cache-Control, Content-Type, Content-Range, Range, X-CSRF-TOKEN"); + "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since," + + " Cache-Control, Content-Type, Content-Range, Range, X-CSRF-TOKEN"); httpResponse.addHeader("Access-Control-Expose-Headers", - "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since," - + " Cache-Control, Content-Type, Content-Range, Range"); + "DNT, X-CustomHeader, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since," + + " Cache-Control, Content-Type, Content-Range, Range"); if (httpRequest.getMethod().equals("OPTIONS")) { httpResponse.setStatus(HttpServletResponse.SC_OK); return; diff --git a/demos/javaapp/src/main/java/io/github/dunwu/util/IOObjectMapper.java b/examples/javaapp/src/main/java/io/github/dunwu/util/IOObjectMapper.java similarity index 100% rename from demos/javaapp/src/main/java/io/github/dunwu/util/IOObjectMapper.java rename to examples/javaapp/src/main/java/io/github/dunwu/util/IOObjectMapper.java diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java b/examples/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java similarity index 99% rename from demos/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java rename to examples/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java index 77228b0..4be1d34 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java +++ b/examples/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java @@ -81,8 +81,7 @@ public BaseResponseDTO login(@RequestBody Map map) throws IOExce baseResponseDTO.setData(result); System.out.println(baseResponseDTO.toString()); return baseResponseDTO; - } - else { + } else { baseResponseDTO.setCode(BaseResponseDTO.DEFAULT_RESPONSE_RESULT.SYSTEM_ERROR.value()); baseResponseDTO.getMessages().add(BaseResponseDTO.DEFAULT_RESPONSE_RESULT.SYSTEM_ERROR.desc()); return baseResponseDTO; diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/HelloController.java b/examples/javaapp/src/main/java/io/github/dunwu/web/controller/HelloController.java similarity index 100% rename from demos/javaapp/src/main/java/io/github/dunwu/web/controller/HelloController.java rename to examples/javaapp/src/main/java/io/github/dunwu/web/controller/HelloController.java diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java b/examples/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java similarity index 100% rename from demos/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java rename to examples/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java b/examples/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java similarity index 86% rename from demos/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java rename to examples/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java index cbb90f5..74f4014 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java +++ b/examples/javaapp/src/main/java/io/github/dunwu/web/dto/BaseResponseDTO.java @@ -7,7 +7,9 @@ public class BaseResponseDTO { private final List messages = new ArrayList<>(); + private Integer code = DEFAULT_RESPONSE_RESULT.SUCCESS.value(); + private T data; public BaseResponseDTO() { @@ -60,8 +62,11 @@ public enum DEFAULT_RESPONSE_RESULT { AUTHOR_FAIL(-2, "权限不足"), // 授权不足 PARAM_CHECK_FAIL(-3, ""), // 参数校验失败,错误信息交由业务逻辑处理 RESOURCE_NOT_EXIST(-4, "请求资源不存在"), // 请求资源不存在 - SYSTEM_ERROR(-5, "系统错误"), DATA_MALFORMAT(-6, "请求参数数据格式不正确"), REQMETHOD_ERROR(-7, "请求方法不正确"), TYPE_MISMATCH(-8, - "请求参数类型不匹配"), MISS_REQUEST_PARAM(-9, "请求参数缺失"); + SYSTEM_ERROR(-5, "系统错误"), + DATA_MALFORMAT(-6, "请求参数数据格式不正确"), + REQMETHOD_ERROR(-7, "请求方法不正确"), + TYPE_MISMATCH(-8, "请求参数类型不匹配"), + MISS_REQUEST_PARAM(-9, "请求参数缺失"); private final Integer value; diff --git a/demos/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java b/examples/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java similarity index 96% rename from demos/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java rename to examples/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java index 4c53aed..a2e8b2e 100644 --- a/demos/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java +++ b/examples/javaapp/src/main/java/io/github/dunwu/web/dto/MenuDTO.java @@ -11,10 +11,15 @@ public class MenuDTO implements Cloneable, Comparable { private final Set children = new TreeSet(); + private String key; + private String title; + private String icon; + private String type; + private String url; public MenuDTO() { @@ -113,8 +118,9 @@ public int hashCode() { @Override public int compareTo(MenuDTO otherMenuDTO) { - return new CompareToBuilder().append(key, otherMenuDTO.getKey()).append(url, otherMenuDTO.getUrl()) - .toComparison(); + return new CompareToBuilder().append(key, otherMenuDTO.getKey()) + .append(url, otherMenuDTO.getUrl()) + .toComparison(); } } diff --git a/examples/javaapp/src/main/resources/spring/spring-servlet.xml b/examples/javaapp/src/main/resources/spring/spring-servlet.xml new file mode 100644 index 0000000..44cdf30 --- /dev/null +++ b/examples/javaapp/src/main/resources/spring/spring-servlet.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/examples/javaapp/src/main/resources/tomcat/conf/server.xml b/examples/javaapp/src/main/resources/tomcat/conf/server.xml new file mode 100644 index 0000000..da0074e --- /dev/null +++ b/examples/javaapp/src/main/resources/tomcat/conf/server.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/javaapp/src/main/resources/tomcat/conf/web.xml b/examples/javaapp/src/main/resources/tomcat/conf/web.xml new file mode 100644 index 0000000..53e7444 --- /dev/null +++ b/examples/javaapp/src/main/resources/tomcat/conf/web.xml @@ -0,0 +1,4703 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + default + org.apache.catalina.servlets.DefaultServlet + + debug + 0 + + + listings + false + + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + jsp + org.apache.jasper.servlet.JspServlet + + fork + false + + + xpoweredBy + false + + + keepgenerated + false + + 3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + default + / + + + + + jsp + *.jsp + *.jspx + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 30 + + + + + + + + + + + + + 123 + application/vnd.lotus-1-2-3 + + + 3dml + text/vnd.in3d.3dml + + + 3ds + image/x-3ds + + + 3g2 + video/3gpp2 + + + 3gp + video/3gpp + + + 7z + application/x-7z-compressed + + + aab + application/x-authorware-bin + + + aac + audio/x-aac + + + aam + application/x-authorware-map + + + aas + application/x-authorware-seg + + + abs + audio/x-mpeg + + + abw + application/x-abiword + + + ac + application/pkix-attr-cert + + + acc + application/vnd.americandynamics.acc + + + ace + application/x-ace-compressed + + + acu + application/vnd.acucobol + + + acutc + application/vnd.acucorp + + + adp + audio/adpcm + + + aep + application/vnd.audiograph + + + afm + application/x-font-type1 + + + afp + application/vnd.ibm.modcap + + + ahead + application/vnd.ahead.space + + + ai + application/postscript + + + aif + audio/x-aiff + + + aifc + audio/x-aiff + + + aiff + audio/x-aiff + + + aim + application/x-aim + + + air + application/vnd.adobe.air-application-installer-package+zip + + + ait + application/vnd.dvb.ait + + + ami + application/vnd.amiga.ami + + + anx + application/annodex + + + apk + application/vnd.android.package-archive + + + appcache + text/cache-manifest + + + application + application/x-ms-application + + + apr + application/vnd.lotus-approach + + + arc + application/x-freearc + + + art + image/x-jg + + + asc + application/pgp-signature + + + asf + video/x-ms-asf + + + asm + text/x-asm + + + aso + application/vnd.accpac.simply.aso + + + asx + video/x-ms-asf + + + atc + application/vnd.acucorp + + + atom + application/atom+xml + + + atomcat + application/atomcat+xml + + + atomsvc + application/atomsvc+xml + + + atx + application/vnd.antix.game-component + + + au + audio/basic + + + avi + video/x-msvideo + + + avx + video/x-rad-screenplay + + + aw + application/applixware + + + axa + audio/annodex + + + axv + video/annodex + + + azf + application/vnd.airzip.filesecure.azf + + + azs + application/vnd.airzip.filesecure.azs + + + azw + application/vnd.amazon.ebook + + + bat + application/x-msdownload + + + bcpio + application/x-bcpio + + + bdf + application/x-font-bdf + + + bdm + application/vnd.syncml.dm+wbxml + + + bed + application/vnd.realvnc.bed + + + bh2 + application/vnd.fujitsu.oasysprs + + + bin + application/octet-stream + + + blb + application/x-blorb + + + blorb + application/x-blorb + + + bmi + application/vnd.bmi + + + bmp + image/bmp + + + body + text/html + + + book + application/vnd.framemaker + + + box + application/vnd.previewsystems.box + + + boz + application/x-bzip2 + + + bpk + application/octet-stream + + + btif + image/prs.btif + + + bz + application/x-bzip + + + bz2 + application/x-bzip2 + + + c + text/x-c + + + c11amc + application/vnd.cluetrust.cartomobile-config + + + c11amz + application/vnd.cluetrust.cartomobile-config-pkg + + + c4d + application/vnd.clonk.c4group + + + c4f + application/vnd.clonk.c4group + + + c4g + application/vnd.clonk.c4group + + + c4p + application/vnd.clonk.c4group + + + c4u + application/vnd.clonk.c4group + + + cab + application/vnd.ms-cab-compressed + + + caf + audio/x-caf + + + cap + application/vnd.tcpdump.pcap + + + car + application/vnd.curl.car + + + cat + application/vnd.ms-pki.seccat + + + cb7 + application/x-cbr + + + cba + application/x-cbr + + + cbr + application/x-cbr + + + cbt + application/x-cbr + + + cbz + application/x-cbr + + + cc + text/x-c + + + cct + application/x-director + + + ccxml + application/ccxml+xml + + + cdbcmsg + application/vnd.contact.cmsg + + + cdf + application/x-cdf + + + cdkey + application/vnd.mediastation.cdkey + + + cdmia + application/cdmi-capability + + + cdmic + application/cdmi-container + + + cdmid + application/cdmi-domain + + + cdmio + application/cdmi-object + + + cdmiq + application/cdmi-queue + + + cdx + chemical/x-cdx + + + cdxml + application/vnd.chemdraw+xml + + + cdy + application/vnd.cinderella + + + cer + application/pkix-cert + + + cfs + application/x-cfs-compressed + + + cgm + image/cgm + + + chat + application/x-chat + + + chm + application/vnd.ms-htmlhelp + + + chrt + application/vnd.kde.kchart + + + cif + chemical/x-cif + + + cii + application/vnd.anser-web-certificate-issue-initiation + + + cil + application/vnd.ms-artgalry + + + cla + application/vnd.claymore + + + class + application/java + + + clkk + application/vnd.crick.clicker.keyboard + + + clkp + application/vnd.crick.clicker.palette + + + clkt + application/vnd.crick.clicker.template + + + clkw + application/vnd.crick.clicker.wordbank + + + clkx + application/vnd.crick.clicker + + + clp + application/x-msclip + + + cmc + application/vnd.cosmocaller + + + cmdf + chemical/x-cmdf + + + cml + chemical/x-cml + + + cmp + application/vnd.yellowriver-custom-menu + + + cmx + image/x-cmx + + + cod + application/vnd.rim.cod + + + com + application/x-msdownload + + + conf + text/plain + + + cpio + application/x-cpio + + + cpp + text/x-c + + + cpt + application/mac-compactpro + + + crd + application/x-mscardfile + + + crl + application/pkix-crl + + + crt + application/x-x509-ca-cert + + + cryptonote + application/vnd.rig.cryptonote + + + csh + application/x-csh + + + csml + chemical/x-csml + + + csp + application/vnd.commonspace + + + css + text/css + + + cst + application/x-director + + + csv + text/csv + + + cu + application/cu-seeme + + + curl + text/vnd.curl + + + cww + application/prs.cww + + + cxt + application/x-director + + + cxx + text/x-c + + + dae + model/vnd.collada+xml + + + daf + application/vnd.mobius.daf + + + dart + application/vnd.dart + + + dataless + application/vnd.fdsn.seed + + + davmount + application/davmount+xml + + + dbk + application/docbook+xml + + + dcr + application/x-director + + + dcurl + text/vnd.curl.dcurl + + + dd2 + application/vnd.oma.dd2+xml + + + ddd + application/vnd.fujixerox.ddd + + + deb + application/x-debian-package + + + def + text/plain + + + deploy + application/octet-stream + + + der + application/x-x509-ca-cert + + + dfac + application/vnd.dreamfactory + + + dgc + application/x-dgc-compressed + + + dib + image/bmp + + + dic + text/x-c + + + dir + application/x-director + + + dis + application/vnd.mobius.dis + + + dist + application/octet-stream + + + distz + application/octet-stream + + + djv + image/vnd.djvu + + + djvu + image/vnd.djvu + + + dll + application/x-msdownload + + + dmg + application/x-apple-diskimage + + + dmp + application/vnd.tcpdump.pcap + + + dms + application/octet-stream + + + dna + application/vnd.dna + + + doc + application/msword + + + docm + application/vnd.ms-word.document.macroenabled.12 + + + docx + application/vnd.openxmlformats-officedocument.wordprocessingml.document + + + dot + application/msword + + + dotm + application/vnd.ms-word.template.macroenabled.12 + + + dotx + application/vnd.openxmlformats-officedocument.wordprocessingml.template + + + dp + application/vnd.osgi.dp + + + dpg + application/vnd.dpgraph + + + dra + audio/vnd.dra + + + dsc + text/prs.lines.tag + + + dssc + application/dssc+der + + + dtb + application/x-dtbook+xml + + + dtd + application/xml-dtd + + + dts + audio/vnd.dts + + + dtshd + audio/vnd.dts.hd + + + dump + application/octet-stream + + + dv + video/x-dv + + + dvb + video/vnd.dvb.file + + + dvi + application/x-dvi + + + dwf + model/vnd.dwf + + + dwg + image/vnd.dwg + + + dxf + image/vnd.dxf + + + dxp + application/vnd.spotfire.dxp + + + dxr + application/x-director + + + ecelp4800 + audio/vnd.nuera.ecelp4800 + + + ecelp7470 + audio/vnd.nuera.ecelp7470 + + + ecelp9600 + audio/vnd.nuera.ecelp9600 + + + ecma + application/ecmascript + + + edm + application/vnd.novadigm.edm + + + edx + application/vnd.novadigm.edx + + + efif + application/vnd.picsel + + + ei6 + application/vnd.pg.osasli + + + elc + application/octet-stream + + + emf + application/x-msmetafile + + + eml + message/rfc822 + + + emma + application/emma+xml + + + emz + application/x-msmetafile + + + eol + audio/vnd.digital-winds + + + eot + application/vnd.ms-fontobject + + + eps + application/postscript + + + epub + application/epub+zip + + + es3 + application/vnd.eszigno3+xml + + + esa + application/vnd.osgi.subsystem + + + esf + application/vnd.epson.esf + + + et3 + application/vnd.eszigno3+xml + + + etx + text/x-setext + + + eva + application/x-eva + + + evy + application/x-envoy + + + exe + application/octet-stream + + + exi + application/exi + + + ext + application/vnd.novadigm.ext + + + ez + application/andrew-inset + + + ez2 + application/vnd.ezpix-album + + + ez3 + application/vnd.ezpix-package + + + f + text/x-fortran + + + f4v + video/x-f4v + + + f77 + text/x-fortran + + + f90 + text/x-fortran + + + fbs + image/vnd.fastbidsheet + + + fcdt + application/vnd.adobe.formscentral.fcdt + + + fcs + application/vnd.isac.fcs + + + fdf + application/vnd.fdf + + + fe_launch + application/vnd.denovo.fcselayout-link + + + fg5 + application/vnd.fujitsu.oasysgp + + + fgd + application/x-director + + + fh + image/x-freehand + + + fh4 + image/x-freehand + + + fh5 + image/x-freehand + + + fh7 + image/x-freehand + + + fhc + image/x-freehand + + + fig + application/x-xfig + + + flac + audio/flac + + + fli + video/x-fli + + + flo + application/vnd.micrografx.flo + + + flv + video/x-flv + + + flw + application/vnd.kde.kivio + + + flx + text/vnd.fmi.flexstor + + + fly + text/vnd.fly + + + fm + application/vnd.framemaker + + + fnc + application/vnd.frogans.fnc + + + for + text/x-fortran + + + fpx + image/vnd.fpx + + + frame + application/vnd.framemaker + + + fsc + application/vnd.fsc.weblaunch + + + fst + image/vnd.fst + + + ftc + application/vnd.fluxtime.clip + + + fti + application/vnd.anser-web-funds-transfer-initiation + + + fvt + video/vnd.fvt + + + fxp + application/vnd.adobe.fxp + + + fxpl + application/vnd.adobe.fxp + + + fzs + application/vnd.fuzzysheet + + + g2w + application/vnd.geoplan + + + g3 + image/g3fax + + + g3w + application/vnd.geospace + + + gac + application/vnd.groove-account + + + gam + application/x-tads + + + gbr + application/rpki-ghostbusters + + + gca + application/x-gca-compressed + + + gdl + model/vnd.gdl + + + geo + application/vnd.dynageo + + + gex + application/vnd.geometry-explorer + + + ggb + application/vnd.geogebra.file + + + ggt + application/vnd.geogebra.tool + + + ghf + application/vnd.groove-help + + + gif + image/gif + + + gim + application/vnd.groove-identity-message + + + gml + application/gml+xml + + + gmx + application/vnd.gmx + + + gnumeric + application/x-gnumeric + + + gph + application/vnd.flographit + + + gpx + application/gpx+xml + + + gqf + application/vnd.grafeq + + + gqs + application/vnd.grafeq + + + gram + application/srgs + + + gramps + application/x-gramps-xml + + + gre + application/vnd.geometry-explorer + + + grv + application/vnd.groove-injector + + + grxml + application/srgs+xml + + + gsf + application/x-font-ghostscript + + + gtar + application/x-gtar + + + gtm + application/vnd.groove-tool-message + + + gtw + model/vnd.gtw + + + gv + text/vnd.graphviz + + + gxf + application/gxf + + + gxt + application/vnd.geonext + + + gz + application/x-gzip + + + h + text/x-c + + + h261 + video/h261 + + + h263 + video/h263 + + + h264 + video/h264 + + + hal + application/vnd.hal+xml + + + hbci + application/vnd.hbci + + + hdf + application/x-hdf + + + hh + text/x-c + + + hlp + application/winhlp + + + hpgl + application/vnd.hp-hpgl + + + hpid + application/vnd.hp-hpid + + + hps + application/vnd.hp-hps + + + hqx + application/mac-binhex40 + + + htc + text/x-component + + + htke + application/vnd.kenameaapp + + + htm + text/html + + + html + text/html + + + hvd + application/vnd.yamaha.hv-dic + + + hvp + application/vnd.yamaha.hv-voice + + + hvs + application/vnd.yamaha.hv-script + + + i2g + application/vnd.intergeo + + + icc + application/vnd.iccprofile + + + ice + x-conference/x-cooltalk + + + icm + application/vnd.iccprofile + + + ico + image/x-icon + + + ics + text/calendar + + + ief + image/ief + + + ifb + text/calendar + + + ifm + application/vnd.shana.informed.formdata + + + iges + model/iges + + + igl + application/vnd.igloader + + + igm + application/vnd.insors.igm + + + igs + model/iges + + + igx + application/vnd.micrografx.igx + + + iif + application/vnd.shana.informed.interchange + + + imp + application/vnd.accpac.simply.imp + + + ims + application/vnd.ms-ims + + + in + text/plain + + + ink + application/inkml+xml + + + inkml + application/inkml+xml + + + install + application/x-install-instructions + + + iota + application/vnd.astraea-software.iota + + + ipfix + application/ipfix + + + ipk + application/vnd.shana.informed.package + + + irm + application/vnd.ibm.rights-management + + + irp + application/vnd.irepository.package+xml + + + iso + application/x-iso9660-image + + + itp + application/vnd.shana.informed.formtemplate + + + ivp + application/vnd.immervision-ivp + + + ivu + application/vnd.immervision-ivu + + + jad + text/vnd.sun.j2me.app-descriptor + + + jam + application/vnd.jam + + + jar + application/java-archive + + + java + text/x-java-source + + + jisp + application/vnd.jisp + + + jlt + application/vnd.hp-jlyt + + + jnlp + application/x-java-jnlp-file + + + joda + application/vnd.joost.joda-archive + + + jpe + image/jpeg + + + jpeg + image/jpeg + + + jpg + image/jpeg + + + jpgm + video/jpm + + + jpgv + video/jpeg + + + jpm + video/jpm + + + js + application/javascript + + + jsf + text/plain + + + json + application/json + + + jsonml + application/jsonml+json + + + jspf + text/plain + + + kar + audio/midi + + + karbon + application/vnd.kde.karbon + + + kfo + application/vnd.kde.kformula + + + kia + application/vnd.kidspiration + + + kml + application/vnd.google-earth.kml+xml + + + kmz + application/vnd.google-earth.kmz + + + kne + application/vnd.kinar + + + knp + application/vnd.kinar + + + kon + application/vnd.kde.kontour + + + kpr + application/vnd.kde.kpresenter + + + kpt + application/vnd.kde.kpresenter + + + kpxx + application/vnd.ds-keypoint + + + ksp + application/vnd.kde.kspread + + + ktr + application/vnd.kahootz + + + ktx + image/ktx + + + ktz + application/vnd.kahootz + + + kwd + application/vnd.kde.kword + + + kwt + application/vnd.kde.kword + + + lasxml + application/vnd.las.las+xml + + + latex + application/x-latex + + + lbd + application/vnd.llamagraphics.life-balance.desktop + + + lbe + application/vnd.llamagraphics.life-balance.exchange+xml + + + les + application/vnd.hhe.lesson-player + + + lha + application/x-lzh-compressed + + + link66 + application/vnd.route66.link66+xml + + + list + text/plain + + + list3820 + application/vnd.ibm.modcap + + + listafp + application/vnd.ibm.modcap + + + lnk + application/x-ms-shortcut + + + log + text/plain + + + lostxml + application/lost+xml + + + lrf + application/octet-stream + + + lrm + application/vnd.ms-lrm + + + ltf + application/vnd.frogans.ltf + + + lvp + audio/vnd.lucent.voice + + + lwp + application/vnd.lotus-wordpro + + + lzh + application/x-lzh-compressed + + + m13 + application/x-msmediaview + + + m14 + application/x-msmediaview + + + m1v + video/mpeg + + + m21 + application/mp21 + + + m2a + audio/mpeg + + + m2v + video/mpeg + + + m3a + audio/mpeg + + + m3u + audio/x-mpegurl + + + m3u8 + application/vnd.apple.mpegurl + + + m4a + audio/mp4 + + + m4b + audio/mp4 + + + m4r + audio/mp4 + + + m4u + video/vnd.mpegurl + + + m4v + video/mp4 + + + ma + application/mathematica + + + mac + image/x-macpaint + + + mads + application/mads+xml + + + mag + application/vnd.ecowin.chart + + + maker + application/vnd.framemaker + + + man + text/troff + + + mar + application/octet-stream + + + mathml + application/mathml+xml + + + mb + application/mathematica + + + mbk + application/vnd.mobius.mbk + + + mbox + application/mbox + + + mc1 + application/vnd.medcalcdata + + + mcd + application/vnd.mcd + + + mcurl + text/vnd.curl.mcurl + + + mdb + application/x-msaccess + + + mdi + image/vnd.ms-modi + + + me + text/troff + + + mesh + model/mesh + + + meta4 + application/metalink4+xml + + + metalink + application/metalink+xml + + + mets + application/mets+xml + + + mfm + application/vnd.mfmp + + + mft + application/rpki-manifest + + + mgp + application/vnd.osgeo.mapguide.package + + + mgz + application/vnd.proteus.magazine + + + mid + audio/midi + + + midi + audio/midi + + + mie + application/x-mie + + + mif + application/x-mif + + + mime + message/rfc822 + + + mj2 + video/mj2 + + + mjp2 + video/mj2 + + + mk3d + video/x-matroska + + + mka + audio/x-matroska + + + mks + video/x-matroska + + + mkv + video/x-matroska + + + mlp + application/vnd.dolby.mlp + + + mmd + application/vnd.chipnuts.karaoke-mmd + + + mmf + application/vnd.smaf + + + mmr + image/vnd.fujixerox.edmics-mmr + + + mng + video/x-mng + + + mny + application/x-msmoney + + + mobi + application/x-mobipocket-ebook + + + mods + application/mods+xml + + + mov + video/quicktime + + + movie + video/x-sgi-movie + + + mp1 + audio/mpeg + + + mp2 + audio/mpeg + + + mp21 + application/mp21 + + + mp2a + audio/mpeg + + + mp3 + audio/mpeg + + + mp4 + video/mp4 + + + mp4a + audio/mp4 + + + mp4s + application/mp4 + + + mp4v + video/mp4 + + + mpa + audio/mpeg + + + mpc + application/vnd.mophun.certificate + + + mpe + video/mpeg + + + mpeg + video/mpeg + + + mpega + audio/x-mpeg + + + mpg + video/mpeg + + + mpg4 + video/mp4 + + + mpga + audio/mpeg + + + mpkg + application/vnd.apple.installer+xml + + + mpm + application/vnd.blueice.multipass + + + mpn + application/vnd.mophun.application + + + mpp + application/vnd.ms-project + + + mpt + application/vnd.ms-project + + + mpv2 + video/mpeg2 + + + mpy + application/vnd.ibm.minipay + + + mqy + application/vnd.mobius.mqy + + + mrc + application/marc + + + mrcx + application/marcxml+xml + + + ms + text/troff + + + mscml + application/mediaservercontrol+xml + + + mseed + application/vnd.fdsn.mseed + + + mseq + application/vnd.mseq + + + msf + application/vnd.epson.msf + + + msh + model/mesh + + + msi + application/x-msdownload + + + msl + application/vnd.mobius.msl + + + msty + application/vnd.muvee.style + + + mts + model/vnd.mts + + + mus + application/vnd.musician + + + musicxml + application/vnd.recordare.musicxml+xml + + + mvb + application/x-msmediaview + + + mwf + application/vnd.mfer + + + mxf + application/mxf + + + mxl + application/vnd.recordare.musicxml + + + mxml + application/xv+xml + + + mxs + application/vnd.triscape.mxs + + + mxu + video/vnd.mpegurl + + + n-gage + application/vnd.nokia.n-gage.symbian.install + + + n3 + text/n3 + + + nb + application/mathematica + + + nbp + application/vnd.wolfram.player + + + nc + application/x-netcdf + + + ncx + application/x-dtbncx+xml + + + nfo + text/x-nfo + + + ngdat + application/vnd.nokia.n-gage.data + + + nitf + application/vnd.nitf + + + nlu + application/vnd.neurolanguage.nlu + + + nml + application/vnd.enliven + + + nnd + application/vnd.noblenet-directory + + + nns + application/vnd.noblenet-sealer + + + nnw + application/vnd.noblenet-web + + + npx + image/vnd.net-fpx + + + nsc + application/x-conference + + + nsf + application/vnd.lotus-notes + + + ntf + application/vnd.nitf + + + nzb + application/x-nzb + + + oa2 + application/vnd.fujitsu.oasys2 + + + oa3 + application/vnd.fujitsu.oasys3 + + + oas + application/vnd.fujitsu.oasys + + + obd + application/x-msbinder + + + obj + application/x-tgif + + + oda + application/oda + + + + odb + application/vnd.oasis.opendocument.database + + + + odc + application/vnd.oasis.opendocument.chart + + + + odf + application/vnd.oasis.opendocument.formula + + + odft + application/vnd.oasis.opendocument.formula-template + + + + odg + application/vnd.oasis.opendocument.graphics + + + + odi + application/vnd.oasis.opendocument.image + + + + odm + application/vnd.oasis.opendocument.text-master + + + + odp + application/vnd.oasis.opendocument.presentation + + + + ods + application/vnd.oasis.opendocument.spreadsheet + + + + odt + application/vnd.oasis.opendocument.text + + + oga + audio/ogg + + + ogg + audio/ogg + + + ogv + video/ogg + + + + ogx + application/ogg + + + omdoc + application/omdoc+xml + + + onepkg + application/onenote + + + onetmp + application/onenote + + + onetoc + application/onenote + + + onetoc2 + application/onenote + + + opf + application/oebps-package+xml + + + opml + text/x-opml + + + oprc + application/vnd.palm + + + org + application/vnd.lotus-organizer + + + osf + application/vnd.yamaha.openscoreformat + + + osfpvg + application/vnd.yamaha.openscoreformat.osfpvg+xml + + + otc + application/vnd.oasis.opendocument.chart-template + + + otf + font/otf + + + + otg + application/vnd.oasis.opendocument.graphics-template + + + + oth + application/vnd.oasis.opendocument.text-web + + + oti + application/vnd.oasis.opendocument.image-template + + + + otp + application/vnd.oasis.opendocument.presentation-template + + + + ots + application/vnd.oasis.opendocument.spreadsheet-template + + + + ott + application/vnd.oasis.opendocument.text-template + + + oxps + application/oxps + + + oxt + application/vnd.openofficeorg.extension + + + p + text/x-pascal + + + p10 + application/pkcs10 + + + p12 + application/x-pkcs12 + + + p7b + application/x-pkcs7-certificates + + + p7c + application/pkcs7-mime + + + p7m + application/pkcs7-mime + + + p7r + application/x-pkcs7-certreqresp + + + p7s + application/pkcs7-signature + + + p8 + application/pkcs8 + + + pas + text/x-pascal + + + paw + application/vnd.pawaafile + + + pbd + application/vnd.powerbuilder6 + + + pbm + image/x-portable-bitmap + + + pcap + application/vnd.tcpdump.pcap + + + pcf + application/x-font-pcf + + + pcl + application/vnd.hp-pcl + + + pclxl + application/vnd.hp-pclxl + + + pct + image/pict + + + pcurl + application/vnd.curl.pcurl + + + pcx + image/x-pcx + + + pdb + application/vnd.palm + + + pdf + application/pdf + + + pfa + application/x-font-type1 + + + pfb + application/x-font-type1 + + + pfm + application/x-font-type1 + + + pfr + application/font-tdpfr + + + pfx + application/x-pkcs12 + + + pgm + image/x-portable-graymap + + + pgn + application/x-chess-pgn + + + pgp + application/pgp-encrypted + + + pic + image/pict + + + pict + image/pict + + + pkg + application/octet-stream + + + pki + application/pkixcmp + + + pkipath + application/pkix-pkipath + + + plb + application/vnd.3gpp.pic-bw-large + + + plc + application/vnd.mobius.plc + + + plf + application/vnd.pocketlearn + + + pls + audio/x-scpls + + + pml + application/vnd.ctc-posml + + + png + image/png + + + pnm + image/x-portable-anymap + + + pnt + image/x-macpaint + + + portpkg + application/vnd.macports.portpkg + + + pot + application/vnd.ms-powerpoint + + + potm + application/vnd.ms-powerpoint.template.macroenabled.12 + + + potx + application/vnd.openxmlformats-officedocument.presentationml.template + + + ppam + application/vnd.ms-powerpoint.addin.macroenabled.12 + + + ppd + application/vnd.cups-ppd + + + ppm + image/x-portable-pixmap + + + pps + application/vnd.ms-powerpoint + + + ppsm + application/vnd.ms-powerpoint.slideshow.macroenabled.12 + + + ppsx + application/vnd.openxmlformats-officedocument.presentationml.slideshow + + + ppt + application/vnd.ms-powerpoint + + + pptm + application/vnd.ms-powerpoint.presentation.macroenabled.12 + + + pptx + application/vnd.openxmlformats-officedocument.presentationml.presentation + + + pqa + application/vnd.palm + + + prc + application/x-mobipocket-ebook + + + pre + application/vnd.lotus-freelance + + + prf + application/pics-rules + + + ps + application/postscript + + + psb + application/vnd.3gpp.pic-bw-small + + + psd + image/vnd.adobe.photoshop + + + psf + application/x-font-linux-psf + + + pskcxml + application/pskc+xml + + + ptid + application/vnd.pvi.ptid1 + + + pub + application/x-mspublisher + + + pvb + application/vnd.3gpp.pic-bw-var + + + pwn + application/vnd.3m.post-it-notes + + + pya + audio/vnd.ms-playready.media.pya + + + pyv + video/vnd.ms-playready.media.pyv + + + qam + application/vnd.epson.quickanime + + + qbo + application/vnd.intu.qbo + + + qfx + application/vnd.intu.qfx + + + qps + application/vnd.publishare-delta-tree + + + qt + video/quicktime + + + qti + image/x-quicktime + + + qtif + image/x-quicktime + + + qwd + application/vnd.quark.quarkxpress + + + qwt + application/vnd.quark.quarkxpress + + + qxb + application/vnd.quark.quarkxpress + + + qxd + application/vnd.quark.quarkxpress + + + qxl + application/vnd.quark.quarkxpress + + + qxt + application/vnd.quark.quarkxpress + + + ra + audio/x-pn-realaudio + + + ram + audio/x-pn-realaudio + + + rar + application/x-rar-compressed + + + ras + image/x-cmu-raster + + + rcprofile + application/vnd.ipunplugged.rcprofile + + + rdf + application/rdf+xml + + + rdz + application/vnd.data-vision.rdz + + + rep + application/vnd.businessobjects + + + res + application/x-dtbresource+xml + + + rgb + image/x-rgb + + + rif + application/reginfo+xml + + + rip + audio/vnd.rip + + + ris + application/x-research-info-systems + + + rl + application/resource-lists+xml + + + rlc + image/vnd.fujixerox.edmics-rlc + + + rld + application/resource-lists-diff+xml + + + rm + application/vnd.rn-realmedia + + + rmi + audio/midi + + + rmp + audio/x-pn-realaudio-plugin + + + rms + application/vnd.jcp.javame.midlet-rms + + + rmvb + application/vnd.rn-realmedia-vbr + + + rnc + application/relax-ng-compact-syntax + + + roa + application/rpki-roa + + + roff + text/troff + + + rp9 + application/vnd.cloanto.rp9 + + + rpss + application/vnd.nokia.radio-presets + + + rpst + application/vnd.nokia.radio-preset + + + rq + application/sparql-query + + + rs + application/rls-services+xml + + + rsd + application/rsd+xml + + + rss + application/rss+xml + + + rtf + application/rtf + + + rtx + text/richtext + + + s + text/x-asm + + + s3m + audio/s3m + + + saf + application/vnd.yamaha.smaf-audio + + + sbml + application/sbml+xml + + + sc + application/vnd.ibm.secure-container + + + scd + application/x-msschedule + + + scm + application/vnd.lotus-screencam + + + scq + application/scvp-cv-request + + + scs + application/scvp-cv-response + + + scurl + text/vnd.curl.scurl + + + sda + application/vnd.stardivision.draw + + + sdc + application/vnd.stardivision.calc + + + sdd + application/vnd.stardivision.impress + + + sdkd + application/vnd.solent.sdkm+xml + + + sdkm + application/vnd.solent.sdkm+xml + + + sdp + application/sdp + + + sdw + application/vnd.stardivision.writer + + + see + application/vnd.seemail + + + seed + application/vnd.fdsn.seed + + + sema + application/vnd.sema + + + semd + application/vnd.semd + + + semf + application/vnd.semf + + + ser + application/java-serialized-object + + + setpay + application/set-payment-initiation + + + setreg + application/set-registration-initiation + + + sfd-hdstx + application/vnd.hydrostatix.sof-data + + + sfs + application/vnd.spotfire.sfs + + + sfv + text/x-sfv + + + sgi + image/sgi + + + sgl + application/vnd.stardivision.writer-global + + + sgm + text/sgml + + + sgml + text/sgml + + + sh + application/x-sh + + + shar + application/x-shar + + + shf + application/shf+xml + + + + sid + image/x-mrsid-image + + + sig + application/pgp-signature + + + sil + audio/silk + + + silo + model/mesh + + + sis + application/vnd.symbian.install + + + sisx + application/vnd.symbian.install + + + sit + application/x-stuffit + + + sitx + application/x-stuffitx + + + skd + application/vnd.koan + + + skm + application/vnd.koan + + + skp + application/vnd.koan + + + skt + application/vnd.koan + + + sldm + application/vnd.ms-powerpoint.slide.macroenabled.12 + + + sldx + application/vnd.openxmlformats-officedocument.presentationml.slide + + + slt + application/vnd.epson.salt + + + sm + application/vnd.stepmania.stepchart + + + smf + application/vnd.stardivision.math + + + smi + application/smil+xml + + + smil + application/smil+xml + + + smv + video/x-smv + + + smzip + application/vnd.stepmania.package + + + snd + audio/basic + + + snf + application/x-font-snf + + + so + application/octet-stream + + + spc + application/x-pkcs7-certificates + + + spf + application/vnd.yamaha.smaf-phrase + + + spl + application/x-futuresplash + + + spot + text/vnd.in3d.spot + + + spp + application/scvp-vp-response + + + spq + application/scvp-vp-request + + + spx + audio/ogg + + + sql + application/x-sql + + + src + application/x-wais-source + + + srt + application/x-subrip + + + sru + application/sru+xml + + + srx + application/sparql-results+xml + + + ssdl + application/ssdl+xml + + + sse + application/vnd.kodak-descriptor + + + ssf + application/vnd.epson.ssf + + + ssml + application/ssml+xml + + + st + application/vnd.sailingtracker.track + + + stc + application/vnd.sun.xml.calc.template + + + std + application/vnd.sun.xml.draw.template + + + stf + application/vnd.wt.stf + + + sti + application/vnd.sun.xml.impress.template + + + stk + application/hyperstudio + + + stl + application/vnd.ms-pki.stl + + + str + application/vnd.pg.format + + + stw + application/vnd.sun.xml.writer.template + + + sub + text/vnd.dvb.subtitle + + + sus + application/vnd.sus-calendar + + + susp + application/vnd.sus-calendar + + + sv4cpio + application/x-sv4cpio + + + sv4crc + application/x-sv4crc + + + svc + application/vnd.dvb.service + + + svd + application/vnd.svd + + + svg + image/svg+xml + + + svgz + image/svg+xml + + + swa + application/x-director + + + swf + application/x-shockwave-flash + + + swi + application/vnd.aristanetworks.swi + + + sxc + application/vnd.sun.xml.calc + + + sxd + application/vnd.sun.xml.draw + + + sxg + application/vnd.sun.xml.writer.global + + + sxi + application/vnd.sun.xml.impress + + + sxm + application/vnd.sun.xml.math + + + sxw + application/vnd.sun.xml.writer + + + t + text/troff + + + t3 + application/x-t3vm-image + + + taglet + application/vnd.mynfc + + + tao + application/vnd.tao.intent-module-archive + + + tar + application/x-tar + + + tcap + application/vnd.3gpp2.tcap + + + tcl + application/x-tcl + + + teacher + application/vnd.smart.teacher + + + tei + application/tei+xml + + + teicorpus + application/tei+xml + + + tex + application/x-tex + + + texi + application/x-texinfo + + + texinfo + application/x-texinfo + + + text + text/plain + + + tfi + application/thraud+xml + + + tfm + application/x-tex-tfm + + + tga + image/x-tga + + + thmx + application/vnd.ms-officetheme + + + tif + image/tiff + + + tiff + image/tiff + + + tmo + application/vnd.tmobile-livetv + + + torrent + application/x-bittorrent + + + tpl + application/vnd.groove-tool-template + + + tpt + application/vnd.trid.tpt + + + tr + text/troff + + + tra + application/vnd.trueapp + + + trm + application/x-msterminal + + + tsd + application/timestamped-data + + + tsv + text/tab-separated-values + + + ttc + font/collection + + + ttf + font/ttf + + + ttl + text/turtle + + + twd + application/vnd.simtech-mindmapper + + + twds + application/vnd.simtech-mindmapper + + + txd + application/vnd.genomatix.tuxedo + + + txf + application/vnd.mobius.txf + + + txt + text/plain + + + u32 + application/x-authorware-bin + + + udeb + application/x-debian-package + + + ufd + application/vnd.ufdl + + + ufdl + application/vnd.ufdl + + + ulw + audio/basic + + + ulx + application/x-glulx + + + umj + application/vnd.umajin + + + unityweb + application/vnd.unity + + + uoml + application/vnd.uoml+xml + + + uri + text/uri-list + + + uris + text/uri-list + + + urls + text/uri-list + + + ustar + application/x-ustar + + + utz + application/vnd.uiq.theme + + + uu + text/x-uuencode + + + uva + audio/vnd.dece.audio + + + uvd + application/vnd.dece.data + + + uvf + application/vnd.dece.data + + + uvg + image/vnd.dece.graphic + + + uvh + video/vnd.dece.hd + + + uvi + image/vnd.dece.graphic + + + uvm + video/vnd.dece.mobile + + + uvp + video/vnd.dece.pd + + + uvs + video/vnd.dece.sd + + + uvt + application/vnd.dece.ttml+xml + + + uvu + video/vnd.uvvu.mp4 + + + uvv + video/vnd.dece.video + + + uvva + audio/vnd.dece.audio + + + uvvd + application/vnd.dece.data + + + uvvf + application/vnd.dece.data + + + uvvg + image/vnd.dece.graphic + + + uvvh + video/vnd.dece.hd + + + uvvi + image/vnd.dece.graphic + + + uvvm + video/vnd.dece.mobile + + + uvvp + video/vnd.dece.pd + + + uvvs + video/vnd.dece.sd + + + uvvt + application/vnd.dece.ttml+xml + + + uvvu + video/vnd.uvvu.mp4 + + + uvvv + video/vnd.dece.video + + + uvvx + application/vnd.dece.unspecified + + + uvvz + application/vnd.dece.zip + + + uvx + application/vnd.dece.unspecified + + + uvz + application/vnd.dece.zip + + + vcard + text/vcard + + + vcd + application/x-cdlink + + + vcf + text/x-vcard + + + vcg + application/vnd.groove-vcard + + + vcs + text/x-vcalendar + + + vcx + application/vnd.vcx + + + vis + application/vnd.visionary + + + viv + video/vnd.vivo + + + vob + video/x-ms-vob + + + vor + application/vnd.stardivision.writer + + + vox + application/x-authorware-bin + + + vrml + model/vrml + + + vsd + application/vnd.visio + + + vsf + application/vnd.vsf + + + vss + application/vnd.visio + + + vst + application/vnd.visio + + + vsw + application/vnd.visio + + + vtu + model/vnd.vtu + + + vxml + application/voicexml+xml + + + w3d + application/x-director + + + wad + application/x-doom + + + wav + audio/x-wav + + + wax + audio/x-ms-wax + + + + wbmp + image/vnd.wap.wbmp + + + wbs + application/vnd.criticaltools.wbs+xml + + + wbxml + application/vnd.wap.wbxml + + + wcm + application/vnd.ms-works + + + wdb + application/vnd.ms-works + + + wdp + image/vnd.ms-photo + + + weba + audio/webm + + + webm + video/webm + + + webp + image/webp + + + wg + application/vnd.pmi.widget + + + wgt + application/widget + + + wks + application/vnd.ms-works + + + wm + video/x-ms-wm + + + wma + audio/x-ms-wma + + + wmd + application/x-ms-wmd + + + wmf + application/x-msmetafile + + + + wml + text/vnd.wap.wml + + + + wmlc + application/vnd.wap.wmlc + + + + wmls + text/vnd.wap.wmlscript + + + + wmlsc + application/vnd.wap.wmlscriptc + + + wmv + video/x-ms-wmv + + + wmx + video/x-ms-wmx + + + wmz + application/x-msmetafile + + + woff + font/woff + + + woff2 + font/woff2 + + + wpd + application/vnd.wordperfect + + + wpl + application/vnd.ms-wpl + + + wps + application/vnd.ms-works + + + wqd + application/vnd.wqd + + + wri + application/x-mswrite + + + wrl + model/vrml + + + wsdl + application/wsdl+xml + + + wspolicy + application/wspolicy+xml + + + wtb + application/vnd.webturbo + + + wvx + video/x-ms-wvx + + + x32 + application/x-authorware-bin + + + x3d + model/x3d+xml + + + x3db + model/x3d+binary + + + x3dbz + model/x3d+binary + + + x3dv + model/x3d+vrml + + + x3dvz + model/x3d+vrml + + + x3dz + model/x3d+xml + + + xaml + application/xaml+xml + + + xap + application/x-silverlight-app + + + xar + application/vnd.xara + + + xbap + application/x-ms-xbap + + + xbd + application/vnd.fujixerox.docuworks.binder + + + xbm + image/x-xbitmap + + + xdf + application/xcap-diff+xml + + + xdm + application/vnd.syncml.dm+xml + + + xdp + application/vnd.adobe.xdp+xml + + + xdssc + application/dssc+xml + + + xdw + application/vnd.fujixerox.docuworks + + + xenc + application/xenc+xml + + + xer + application/patch-ops-error+xml + + + xfdf + application/vnd.adobe.xfdf + + + xfdl + application/vnd.xfdl + + + xht + application/xhtml+xml + + + xhtml + application/xhtml+xml + + + xhvml + application/xv+xml + + + xif + image/vnd.xiff + + + xla + application/vnd.ms-excel + + + xlam + application/vnd.ms-excel.addin.macroenabled.12 + + + xlc + application/vnd.ms-excel + + + xlf + application/x-xliff+xml + + + xlm + application/vnd.ms-excel + + + xls + application/vnd.ms-excel + + + xlsb + application/vnd.ms-excel.sheet.binary.macroenabled.12 + + + xlsm + application/vnd.ms-excel.sheet.macroenabled.12 + + + xlsx + application/vnd.openxmlformats-officedocument.spreadsheetml.sheet + + + xlt + application/vnd.ms-excel + + + xltm + application/vnd.ms-excel.template.macroenabled.12 + + + xltx + application/vnd.openxmlformats-officedocument.spreadsheetml.template + + + xlw + application/vnd.ms-excel + + + xm + audio/xm + + + xml + application/xml + + + xo + application/vnd.olpc-sugar + + + xop + application/xop+xml + + + xpi + application/x-xpinstall + + + xpl + application/xproc+xml + + + xpm + image/x-xpixmap + + + xpr + application/vnd.is-xpr + + + xps + application/vnd.ms-xpsdocument + + + xpw + application/vnd.intercon.formnet + + + xpx + application/vnd.intercon.formnet + + + xsl + application/xml + + + xslt + application/xslt+xml + + + xsm + application/vnd.syncml+xml + + + xspf + application/xspf+xml + + + xul + application/vnd.mozilla.xul+xml + + + xvm + application/xv+xml + + + xvml + application/xv+xml + + + xwd + image/x-xwindowdump + + + xyz + chemical/x-xyz + + + xz + application/x-xz + + + yang + application/yang + + + yin + application/yin+xml + + + z + application/x-compress + + + Z + application/x-compress + + + z1 + application/x-zmachine + + + z2 + application/x-zmachine + + + z3 + application/x-zmachine + + + z4 + application/x-zmachine + + + z5 + application/x-zmachine + + + z6 + application/x-zmachine + + + z7 + application/x-zmachine + + + z8 + application/x-zmachine + + + zaz + application/vnd.zzazz.deck+xml + + + zip + application/zip + + + zir + application/vnd.zul + + + zirz + application/vnd.zul + + + zmm + application/vnd.handheld-entertainment+xml + + + + + + + + + + + + + + + + + + index.html + index.htm + index.jsp + + + diff --git a/demos/javaapp/src/main/webapp/META-INF/MANIFEST.MF b/examples/javaapp/src/main/webapp/META-INF/MANIFEST.MF similarity index 100% rename from demos/javaapp/src/main/webapp/META-INF/MANIFEST.MF rename to examples/javaapp/src/main/webapp/META-INF/MANIFEST.MF diff --git a/examples/javaapp/src/main/webapp/WEB-INF/web.xml b/examples/javaapp/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000..a3a6fd7 --- /dev/null +++ b/examples/javaapp/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,65 @@ + + + spring-embed-tomcat-demo-helloworld + + + + spring-servlet + org.springframework.web.servlet.DispatcherServlet + 1 + + contextConfigLocation + classpath:spring/spring-servlet.xml + + + + spring-servlet + / + + + + + + + encodingFilter + org.springframework.web.filter.CharacterEncodingFilter + + encoding + UTF-8 + + + forceEncoding + true + + + + encodingFilter + /* + REQUEST + FORWARD + + + + CorsFilter + io.github.dunwu.filter.CorsFilter + + headerKey + Host + + + regex + + ((http://)|(https://))?(\w*\.)*(\S)* + + + + CorsFilter + /* + + + + + /views/jsp/index.jsp + + diff --git a/demos/javaapp/src/main/webapp/views/jsp/hello.jsp b/examples/javaapp/src/main/webapp/views/jsp/hello.jsp similarity index 61% rename from demos/javaapp/src/main/webapp/views/jsp/hello.jsp rename to examples/javaapp/src/main/webapp/views/jsp/hello.jsp index 774fc94..04f4cc3 100644 --- a/demos/javaapp/src/main/webapp/views/jsp/hello.jsp +++ b/examples/javaapp/src/main/webapp/views/jsp/hello.jsp @@ -1,13 +1,13 @@ <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <% - String path = request.getContextPath(); - String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; + String path = request.getContextPath(); + String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> - HelloController + HelloController

${message}

diff --git a/examples/javaapp/src/main/webapp/views/jsp/index.jsp b/examples/javaapp/src/main/webapp/views/jsp/index.jsp new file mode 100644 index 0000000..1ea75f7 --- /dev/null +++ b/examples/javaapp/src/main/webapp/views/jsp/index.jsp @@ -0,0 +1,26 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> +<% + String domain = request.getScheme() + "://" + request.getServerName() + request.getContextPath(); + String host = request.getRemoteHost(); + // int port = request.getServerPort(); + Integer port = Integer.valueOf(System.getProperty("tomcat.connector.port")); + + +%> + + + + + spring-embed-tomcat-demo + + + +

spring-embed-tomcat-demo

+

<%out.print("当前服务器信息:");%>

+
    +
  • <%out.print("domain:" + domain);%>
  • +
  • <%out.print("host:" + host);%>
  • +
  • <%out.print("port:" + port);%>
  • +
+ + diff --git a/demos/nginx-1.14.0/conf/conf.d/demo01.conf b/examples/nginx-1.14.0/conf/conf.d/demo01.conf similarity index 100% rename from demos/nginx-1.14.0/conf/conf.d/demo01.conf rename to examples/nginx-1.14.0/conf/conf.d/demo01.conf diff --git a/demos/nginx-1.14.0/conf/conf.d/demo02.conf b/examples/nginx-1.14.0/conf/conf.d/demo02.conf similarity index 100% rename from demos/nginx-1.14.0/conf/conf.d/demo02.conf rename to examples/nginx-1.14.0/conf/conf.d/demo02.conf diff --git a/demos/nginx-1.14.0/conf/conf.d/demo03.conf b/examples/nginx-1.14.0/conf/conf.d/demo03.conf similarity index 100% rename from demos/nginx-1.14.0/conf/conf.d/demo03.conf rename to examples/nginx-1.14.0/conf/conf.d/demo03.conf diff --git a/demos/nginx-1.14.0/conf/conf.d/demo04.conf b/examples/nginx-1.14.0/conf/conf.d/demo04.conf similarity index 100% rename from demos/nginx-1.14.0/conf/conf.d/demo04.conf rename to examples/nginx-1.14.0/conf/conf.d/demo04.conf diff --git a/demos/nginx-1.14.0/conf/conf.d/demo05.conf b/examples/nginx-1.14.0/conf/conf.d/demo05.conf similarity index 100% rename from demos/nginx-1.14.0/conf/conf.d/demo05.conf rename to examples/nginx-1.14.0/conf/conf.d/demo05.conf diff --git a/demos/nginx-1.14.0/conf/conf.d/demo06.conf b/examples/nginx-1.14.0/conf/conf.d/demo06.conf similarity index 100% rename from demos/nginx-1.14.0/conf/conf.d/demo06.conf rename to examples/nginx-1.14.0/conf/conf.d/demo06.conf diff --git a/demos/nginx-1.14.0/conf/fastcgi.conf b/examples/nginx-1.14.0/conf/fastcgi.conf similarity index 100% rename from demos/nginx-1.14.0/conf/fastcgi.conf rename to examples/nginx-1.14.0/conf/fastcgi.conf diff --git a/demos/nginx-1.14.0/conf/fastcgi_params b/examples/nginx-1.14.0/conf/fastcgi_params similarity index 100% rename from demos/nginx-1.14.0/conf/fastcgi_params rename to examples/nginx-1.14.0/conf/fastcgi_params diff --git a/demos/nginx-1.14.0/conf/koi-utf b/examples/nginx-1.14.0/conf/koi-utf similarity index 100% rename from demos/nginx-1.14.0/conf/koi-utf rename to examples/nginx-1.14.0/conf/koi-utf diff --git a/demos/nginx-1.14.0/conf/koi-win b/examples/nginx-1.14.0/conf/koi-win similarity index 100% rename from demos/nginx-1.14.0/conf/koi-win rename to examples/nginx-1.14.0/conf/koi-win diff --git a/demos/nginx-1.14.0/conf/mime.types b/examples/nginx-1.14.0/conf/mime.types similarity index 100% rename from demos/nginx-1.14.0/conf/mime.types rename to examples/nginx-1.14.0/conf/mime.types diff --git a/demos/nginx-1.14.0/conf/nginx.conf b/examples/nginx-1.14.0/conf/nginx.conf similarity index 100% rename from demos/nginx-1.14.0/conf/nginx.conf rename to examples/nginx-1.14.0/conf/nginx.conf diff --git a/demos/nginx-1.14.0/conf/scgi_params b/examples/nginx-1.14.0/conf/scgi_params similarity index 100% rename from demos/nginx-1.14.0/conf/scgi_params rename to examples/nginx-1.14.0/conf/scgi_params diff --git a/demos/nginx-1.14.0/conf/uwsgi_params b/examples/nginx-1.14.0/conf/uwsgi_params similarity index 100% rename from demos/nginx-1.14.0/conf/uwsgi_params rename to examples/nginx-1.14.0/conf/uwsgi_params diff --git a/demos/nginx-1.14.0/conf/win-utf b/examples/nginx-1.14.0/conf/win-utf similarity index 100% rename from demos/nginx-1.14.0/conf/win-utf rename to examples/nginx-1.14.0/conf/win-utf diff --git a/demos/nginx-1.14.0/contrib/README b/examples/nginx-1.14.0/contrib/README similarity index 100% rename from demos/nginx-1.14.0/contrib/README rename to examples/nginx-1.14.0/contrib/README diff --git a/demos/nginx-1.14.0/contrib/geo2nginx.pl b/examples/nginx-1.14.0/contrib/geo2nginx.pl similarity index 100% rename from demos/nginx-1.14.0/contrib/geo2nginx.pl rename to examples/nginx-1.14.0/contrib/geo2nginx.pl diff --git a/demos/nginx-1.14.0/contrib/unicode2nginx/koi-utf b/examples/nginx-1.14.0/contrib/unicode2nginx/koi-utf similarity index 100% rename from demos/nginx-1.14.0/contrib/unicode2nginx/koi-utf rename to examples/nginx-1.14.0/contrib/unicode2nginx/koi-utf diff --git a/demos/nginx-1.14.0/contrib/unicode2nginx/unicode-to-nginx.pl b/examples/nginx-1.14.0/contrib/unicode2nginx/unicode-to-nginx.pl similarity index 100% rename from demos/nginx-1.14.0/contrib/unicode2nginx/unicode-to-nginx.pl rename to examples/nginx-1.14.0/contrib/unicode2nginx/unicode-to-nginx.pl diff --git a/demos/nginx-1.14.0/contrib/unicode2nginx/win-utf b/examples/nginx-1.14.0/contrib/unicode2nginx/win-utf similarity index 100% rename from demos/nginx-1.14.0/contrib/unicode2nginx/win-utf rename to examples/nginx-1.14.0/contrib/unicode2nginx/win-utf diff --git a/demos/nginx-1.14.0/contrib/vim/ftdetect/nginx.vim b/examples/nginx-1.14.0/contrib/vim/ftdetect/nginx.vim similarity index 100% rename from demos/nginx-1.14.0/contrib/vim/ftdetect/nginx.vim rename to examples/nginx-1.14.0/contrib/vim/ftdetect/nginx.vim diff --git a/demos/nginx-1.14.0/contrib/vim/ftplugin/nginx.vim b/examples/nginx-1.14.0/contrib/vim/ftplugin/nginx.vim similarity index 100% rename from demos/nginx-1.14.0/contrib/vim/ftplugin/nginx.vim rename to examples/nginx-1.14.0/contrib/vim/ftplugin/nginx.vim diff --git a/demos/nginx-1.14.0/contrib/vim/indent/nginx.vim b/examples/nginx-1.14.0/contrib/vim/indent/nginx.vim similarity index 100% rename from demos/nginx-1.14.0/contrib/vim/indent/nginx.vim rename to examples/nginx-1.14.0/contrib/vim/indent/nginx.vim diff --git a/demos/nginx-1.14.0/contrib/vim/syntax/nginx.vim b/examples/nginx-1.14.0/contrib/vim/syntax/nginx.vim similarity index 100% rename from demos/nginx-1.14.0/contrib/vim/syntax/nginx.vim rename to examples/nginx-1.14.0/contrib/vim/syntax/nginx.vim diff --git a/demos/nginx-1.14.0/docs/CHANGES b/examples/nginx-1.14.0/docs/CHANGES similarity index 100% rename from demos/nginx-1.14.0/docs/CHANGES rename to examples/nginx-1.14.0/docs/CHANGES diff --git a/demos/nginx-1.14.0/docs/CHANGES.ru b/examples/nginx-1.14.0/docs/CHANGES.ru similarity index 100% rename from demos/nginx-1.14.0/docs/CHANGES.ru rename to examples/nginx-1.14.0/docs/CHANGES.ru diff --git a/demos/nginx-1.14.0/docs/LICENSE b/examples/nginx-1.14.0/docs/LICENSE similarity index 100% rename from demos/nginx-1.14.0/docs/LICENSE rename to examples/nginx-1.14.0/docs/LICENSE diff --git a/demos/nginx-1.14.0/docs/OpenSSL.LICENSE b/examples/nginx-1.14.0/docs/OpenSSL.LICENSE similarity index 100% rename from demos/nginx-1.14.0/docs/OpenSSL.LICENSE rename to examples/nginx-1.14.0/docs/OpenSSL.LICENSE diff --git a/demos/nginx-1.14.0/docs/PCRE.LICENCE b/examples/nginx-1.14.0/docs/PCRE.LICENCE similarity index 100% rename from demos/nginx-1.14.0/docs/PCRE.LICENCE rename to examples/nginx-1.14.0/docs/PCRE.LICENCE diff --git a/demos/nginx-1.14.0/docs/README b/examples/nginx-1.14.0/docs/README similarity index 100% rename from demos/nginx-1.14.0/docs/README rename to examples/nginx-1.14.0/docs/README diff --git a/demos/nginx-1.14.0/docs/zlib.LICENSE b/examples/nginx-1.14.0/docs/zlib.LICENSE similarity index 100% rename from demos/nginx-1.14.0/docs/zlib.LICENSE rename to examples/nginx-1.14.0/docs/zlib.LICENSE diff --git a/demos/nginx-1.14.0/html/50x.html b/examples/nginx-1.14.0/html/50x.html similarity index 51% rename from demos/nginx-1.14.0/html/50x.html rename to examples/nginx-1.14.0/html/50x.html index 1afb814..dee1723 100644 --- a/demos/nginx-1.14.0/html/50x.html +++ b/examples/nginx-1.14.0/html/50x.html @@ -1,21 +1,21 @@ - Error - + Error +

An error occurred.

Sorry, the page you are looking for is currently unavailable.
- Please try again later.

+ Please try again later.

If you are the system administrator of this resource then you should check - the error log for details.

+ the error log for details.

Faithfully yours, nginx.

diff --git a/examples/nginx-1.14.0/html/index.html b/examples/nginx-1.14.0/html/index.html new file mode 100644 index 0000000..ca2fcfc --- /dev/null +++ b/examples/nginx-1.14.0/html/index.html @@ -0,0 +1,25 @@ + + + + Welcome to nginx! + + + +

Welcome to nginx!

+

If you see this page, the nginx web server is successfully installed and + working. Further configuration is required.

+ +

For online documentation and support please refer to + nginx.org.
+ Commercial support is available at + nginx.com.

+ +

Thank you for using nginx.

+ + diff --git a/demos/nginx-1.14.0/nginx-start.bat b/examples/nginx-1.14.0/nginx-start.bat similarity index 100% rename from demos/nginx-1.14.0/nginx-start.bat rename to examples/nginx-1.14.0/nginx-start.bat diff --git a/demos/nginx-1.14.0/nginx-stop.bat b/examples/nginx-1.14.0/nginx-stop.bat similarity index 100% rename from demos/nginx-1.14.0/nginx-stop.bat rename to examples/nginx-1.14.0/nginx-stop.bat diff --git a/demos/nginx-1.14.0/nginx.exe b/examples/nginx-1.14.0/nginx.exe similarity index 100% rename from demos/nginx-1.14.0/nginx.exe rename to examples/nginx-1.14.0/nginx.exe diff --git a/demos/nginx.conf b/examples/nginx.conf similarity index 100% rename from demos/nginx.conf rename to examples/nginx.conf diff --git a/demos/reactadmin/.gitignore b/examples/reactadmin/.gitignore similarity index 100% rename from demos/reactadmin/.gitignore rename to examples/reactadmin/.gitignore diff --git a/demos/reactadmin/README.md b/examples/reactadmin/README.md similarity index 100% rename from demos/reactadmin/README.md rename to examples/reactadmin/README.md diff --git a/demos/reactadmin/package-lock.json b/examples/reactadmin/package-lock.json similarity index 100% rename from demos/reactadmin/package-lock.json rename to examples/reactadmin/package-lock.json diff --git a/examples/reactadmin/package.json b/examples/reactadmin/package.json new file mode 100644 index 0000000..f59a43d --- /dev/null +++ b/examples/reactadmin/package.json @@ -0,0 +1,25 @@ +{ + "name": "react-admin", + "version": "0.1.0", + "private": true, + "dependencies": { + "react": "^16.7.0", + "react-dom": "^16.7.0", + "react-scripts": "2.1.3" + }, + "scripts": { + "start": "react-scripts start", + "build": "react-scripts build", + "test": "react-scripts test", + "eject": "react-scripts eject" + }, + "eslintConfig": { + "extends": "react-app" + }, + "browserslist": [ + ">0.2%", + "not dead", + "not ie <= 11", + "not op_mini all" + ] +} diff --git a/demos/reactadmin/public/favicon.ico b/examples/reactadmin/public/favicon.ico similarity index 100% rename from demos/reactadmin/public/favicon.ico rename to examples/reactadmin/public/favicon.ico diff --git a/examples/reactadmin/public/index.html b/examples/reactadmin/public/index.html new file mode 100644 index 0000000..b934aa5 --- /dev/null +++ b/examples/reactadmin/public/index.html @@ -0,0 +1,41 @@ + + + + + + + + + + + React App + + + +
+ + + diff --git a/examples/reactadmin/public/manifest.json b/examples/reactadmin/public/manifest.json new file mode 100644 index 0000000..952449d --- /dev/null +++ b/examples/reactadmin/public/manifest.json @@ -0,0 +1,15 @@ +{ + "short_name": "React App", + "name": "Create React App Sample", + "icons": [ + { + "src": "favicon.ico", + "sizes": "64x64 32x32 24x24 16x16", + "type": "image/x-icon" + } + ], + "start_url": ".", + "display": "standalone", + "theme_color": "#000000", + "background_color": "#ffffff" +} diff --git a/examples/reactadmin/src/App.css b/examples/reactadmin/src/App.css new file mode 100644 index 0000000..9fb43a1 --- /dev/null +++ b/examples/reactadmin/src/App.css @@ -0,0 +1,32 @@ +.App { + text-align: center; +} + +.App-logo { + animation: App-logo-spin infinite 20s linear; + height: 40vmin; +} + +.App-header { + background-color: #282C34; + min-height: 100vh; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + font-size: calc(10px + 2vmin); + color: white; +} + +.App-link { + color: #61DAFB; +} + +@keyframes App-logo-spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} diff --git a/examples/reactadmin/src/App.js b/examples/reactadmin/src/App.js new file mode 100644 index 0000000..4d3cb2b --- /dev/null +++ b/examples/reactadmin/src/App.js @@ -0,0 +1,35 @@ +import React, { Component } from 'react' +import logo from './logo.svg' +import './App.css' + +class App extends Component { + render() { + return ( + < div + className = 'App' > + < header + className = 'App-header' > + < img + src = { logo } + className = 'App-logo' + alt = 'logo' / > + < p > + Edit < code > src / App.js < /code> and save to reload. + < /p> + < a + className = 'App-link' + href = 'https://reactjs.org' + target = '_blank' + rel = 'noopener noreferrer' + > + Learn + React + < /a> + < /header> + < /div> + ) + + } +} + +export default App diff --git a/examples/reactadmin/src/App.test.js b/examples/reactadmin/src/App.test.js new file mode 100644 index 0000000..9d442bf --- /dev/null +++ b/examples/reactadmin/src/App.test.js @@ -0,0 +1,10 @@ +import ReactDOM from 'react-dom' +import App from './App' + +it('renders without crashing', () => { + const div = document.createElement('div') + ReactDOM.render( < App / >, div +) + + ReactDOM.unmountComponentAtNode(div) +}) diff --git a/examples/reactadmin/src/index.css b/examples/reactadmin/src/index.css new file mode 100644 index 0000000..9c1dfbf --- /dev/null +++ b/examples/reactadmin/src/index.css @@ -0,0 +1,14 @@ +body { + margin: 0; + padding: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", + "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", + sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +code { + font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", + monospace; +} diff --git a/demos/reactadmin/src/index.js b/examples/reactadmin/src/index.js similarity index 100% rename from demos/reactadmin/src/index.js rename to examples/reactadmin/src/index.js diff --git a/examples/reactadmin/src/logo.svg b/examples/reactadmin/src/logo.svg new file mode 100644 index 0000000..1b92809 --- /dev/null +++ b/examples/reactadmin/src/logo.svg @@ -0,0 +1,8 @@ + + + + + + + diff --git a/examples/reactadmin/src/serviceWorker.js b/examples/reactadmin/src/serviceWorker.js new file mode 100644 index 0000000..59cba35 --- /dev/null +++ b/examples/reactadmin/src/serviceWorker.js @@ -0,0 +1,135 @@ +// This optional code is used to register a service worker. +// register() is not called by default. + +// This lets the app load faster on subsequent visits in production, and gives +// it offline capabilities. However, it also means that developers (and users) +// will only see deployed updates on subsequent visits to a page, after all the +// existing tabs open on the page have been closed, since previously cached +// resources are updated in the background. + +// To learn more about the benefits of this model and instructions on how to +// opt-in, read http://bit.ly/CRA-PWA + +const isLocalhost = Boolean( + window.location.hostname === 'localhost' || + // [::1] is the IPv6 localhost address. + window.location.hostname === '[::1]' || + // 127.0.0.1/8 is considered localhost for IPv4. + window.location.hostname.match( + /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ + ) +) + +export function register(config) { + if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { + // The URL constructor is available in all browsers that support SW. + const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href) + if (publicUrl.origin !== window.location.origin) { + // Our service worker won't work if PUBLIC_URL is on a different origin + // from what our page is served on. This might happen if a CDN is used to + // serve assets; see https://github.com/facebook/create-react-app/issues/2374 + return + } + + window.addEventListener('load', () => { + const swUrl = `${process.env.PUBLIC_URL}/service-worker.js` + + if (isLocalhost) { + // This is running on localhost. Let's check if a service worker still exists or not. + checkValidServiceWorker(swUrl, config) + + // Add some additional logging to localhost, pointing developers to the + // service worker/PWA documentation. + navigator.serviceWorker.ready.then(() => { + console.log( + 'This web app is being served cache-first by a service ' + + 'worker. To learn more, visit http://bit.ly/CRA-PWA' + ) + }) + } else { + // Is not localhost. Just register service worker + registerValidSW(swUrl, config) + } + }) + } +} + +function registerValidSW(swUrl, config) { + navigator.serviceWorker + .register(swUrl) + .then(registration => { + registration.onupdatefound = () => { + const installingWorker = registration.installing + if (installingWorker == null) { + return + } + installingWorker.onstatechange = () => { + if (installingWorker.state === 'installed') { + if (navigator.serviceWorker.controller) { + // At this point, the updated precached content has been fetched, + // but the previous service worker will still serve the older + // content until all client tabs are closed. + console.log( + 'New content is available and will be used when all ' + + 'tabs for this page are closed. See http://bit.ly/CRA-PWA.' + ) + + // Execute callback + if (config && config.onUpdate) { + config.onUpdate(registration) + } + } else { + // At this point, everything has been precached. + // It's the perfect time to display a + // "Content is cached for offline use." message. + console.log('Content is cached for offline use.') + + // Execute callback + if (config && config.onSuccess) { + config.onSuccess(registration) + } + } + } + } + } + }) + .catch(error => { + console.error('Error during service worker registration:', error) + }) +} + +function checkValidServiceWorker(swUrl, config) { + // Check if the service worker can be found. If it can't reload the page. + fetch(swUrl) + .then(response => { + // Ensure service worker exists, and that we really are getting a JS file. + const contentType = response.headers.get('content-type') + if ( + response.status === 404 || + (contentType != null && contentType.indexOf('javascript') === -1) + ) { + // No service worker found. Probably a different app. Reload the page. + navigator.serviceWorker.ready.then(registration => { + registration.unregister().then(() => { + window.location.reload() + }) + }) + } else { + // Service worker found. Proceed as normal. + registerValidSW(swUrl, config) + } + }) + .catch(() => { + console.log( + 'No internet connection found. App is running in offline mode.' + ) + }) +} + +export function unregister() { + if ('serviceWorker' in navigator) { + navigator.serviceWorker.ready.then(registration => { + registration.unregister() + }) + } +} diff --git a/demos/reactadmin/yarn.lock b/examples/reactadmin/yarn.lock similarity index 100% rename from demos/reactadmin/yarn.lock rename to examples/reactadmin/yarn.lock diff --git a/demos/reactapp/.babelrc b/examples/reactapp/.babelrc similarity index 100% rename from demos/reactapp/.babelrc rename to examples/reactapp/.babelrc diff --git a/demos/reactapp/.editorconfig b/examples/reactapp/.editorconfig similarity index 100% rename from demos/reactapp/.editorconfig rename to examples/reactapp/.editorconfig diff --git a/demos/reactapp/.eslintrc b/examples/reactapp/.eslintrc similarity index 100% rename from demos/reactapp/.eslintrc rename to examples/reactapp/.eslintrc diff --git a/demos/reactapp/.gitattributes b/examples/reactapp/.gitattributes similarity index 100% rename from demos/reactapp/.gitattributes rename to examples/reactapp/.gitattributes diff --git a/demos/reactapp/.gitignore b/examples/reactapp/.gitignore similarity index 100% rename from demos/reactapp/.gitignore rename to examples/reactapp/.gitignore diff --git a/demos/reactapp/config/app.config.js b/examples/reactapp/config/app.config.js similarity index 100% rename from demos/reactapp/config/app.config.js rename to examples/reactapp/config/app.config.js diff --git a/demos/reactapp/config/webpack.config.base.js b/examples/reactapp/config/webpack.config.base.js similarity index 100% rename from demos/reactapp/config/webpack.config.base.js rename to examples/reactapp/config/webpack.config.base.js diff --git a/demos/reactapp/config/webpack.config.dev.js b/examples/reactapp/config/webpack.config.dev.js similarity index 100% rename from demos/reactapp/config/webpack.config.dev.js rename to examples/reactapp/config/webpack.config.dev.js diff --git a/demos/reactapp/config/webpack.config.prod.js b/examples/reactapp/config/webpack.config.prod.js similarity index 100% rename from demos/reactapp/config/webpack.config.prod.js rename to examples/reactapp/config/webpack.config.prod.js diff --git a/demos/reactapp/package.json b/examples/reactapp/package.json similarity index 100% rename from demos/reactapp/package.json rename to examples/reactapp/package.json diff --git a/demos/reactapp/public/favicon.ico b/examples/reactapp/public/favicon.ico similarity index 100% rename from demos/reactapp/public/favicon.ico rename to examples/reactapp/public/favicon.ico diff --git a/demos/reactapp/public/index.html b/examples/reactapp/public/index.html similarity index 100% rename from demos/reactapp/public/index.html rename to examples/reactapp/public/index.html diff --git a/demos/reactapp/scripts/build.sh b/examples/reactapp/scripts/build.sh similarity index 100% rename from demos/reactapp/scripts/build.sh rename to examples/reactapp/scripts/build.sh diff --git a/demos/reactapp/src/common/apiutils/ajaxCommon.js b/examples/reactapp/src/common/apiutils/ajaxCommon.js similarity index 99% rename from demos/reactapp/src/common/apiutils/ajaxCommon.js rename to examples/reactapp/src/common/apiutils/ajaxCommon.js index c388f24..8842903 100644 --- a/demos/reactapp/src/common/apiutils/ajaxCommon.js +++ b/examples/reactapp/src/common/apiutils/ajaxCommon.js @@ -92,7 +92,7 @@ function _showAuthError() { { /* 否则在 当前页登陆 。 */ } < /p>), }) - + } /** diff --git a/demos/reactapp/src/common/apiutils/apiCreator.js b/examples/reactapp/src/common/apiutils/apiCreator.js similarity index 100% rename from demos/reactapp/src/common/apiutils/apiCreator.js rename to examples/reactapp/src/common/apiutils/apiCreator.js diff --git a/demos/reactapp/src/common/apiutils/errorUtils.js b/examples/reactapp/src/common/apiutils/errorUtils.js similarity index 100% rename from demos/reactapp/src/common/apiutils/errorUtils.js rename to examples/reactapp/src/common/apiutils/errorUtils.js diff --git a/demos/reactapp/src/common/apiutils/fetchAJAX.js b/examples/reactapp/src/common/apiutils/fetchAJAX.js similarity index 100% rename from demos/reactapp/src/common/apiutils/fetchAJAX.js rename to examples/reactapp/src/common/apiutils/fetchAJAX.js diff --git a/demos/reactapp/src/common/apiutils/index.js b/examples/reactapp/src/common/apiutils/index.js similarity index 100% rename from demos/reactapp/src/common/apiutils/index.js rename to examples/reactapp/src/common/apiutils/index.js diff --git a/demos/reactapp/src/common/apiutils/reqwestAJAX.js b/examples/reactapp/src/common/apiutils/reqwestAJAX.js similarity index 100% rename from demos/reactapp/src/common/apiutils/reqwestAJAX.js rename to examples/reactapp/src/common/apiutils/reqwestAJAX.js diff --git a/demos/reactapp/src/components/index.js b/examples/reactapp/src/components/index.js similarity index 100% rename from demos/reactapp/src/components/index.js rename to examples/reactapp/src/components/index.js diff --git a/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.jsx b/examples/reactapp/src/components/layout/Breadcrumb/Breadcrumb.jsx similarity index 100% rename from demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.jsx rename to examples/reactapp/src/components/layout/Breadcrumb/Breadcrumb.jsx diff --git a/demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.less b/examples/reactapp/src/components/layout/Breadcrumb/Breadcrumb.less similarity index 100% rename from demos/reactapp/src/components/layout/Breadcrumb/Breadcrumb.less rename to examples/reactapp/src/components/layout/Breadcrumb/Breadcrumb.less diff --git a/demos/reactapp/src/components/layout/Content/Content.jsx b/examples/reactapp/src/components/layout/Content/Content.jsx similarity index 100% rename from demos/reactapp/src/components/layout/Content/Content.jsx rename to examples/reactapp/src/components/layout/Content/Content.jsx diff --git a/demos/reactapp/src/components/layout/Content/Content.less b/examples/reactapp/src/components/layout/Content/Content.less similarity index 100% rename from demos/reactapp/src/components/layout/Content/Content.less rename to examples/reactapp/src/components/layout/Content/Content.less diff --git a/demos/reactapp/src/components/layout/Footer/Footer.jsx b/examples/reactapp/src/components/layout/Footer/Footer.jsx similarity index 100% rename from demos/reactapp/src/components/layout/Footer/Footer.jsx rename to examples/reactapp/src/components/layout/Footer/Footer.jsx diff --git a/demos/reactapp/src/components/layout/Footer/index.less b/examples/reactapp/src/components/layout/Footer/index.less similarity index 100% rename from demos/reactapp/src/components/layout/Footer/index.less rename to examples/reactapp/src/components/layout/Footer/index.less diff --git a/demos/reactapp/src/components/layout/Header/Header.jsx b/examples/reactapp/src/components/layout/Header/Header.jsx similarity index 100% rename from demos/reactapp/src/components/layout/Header/Header.jsx rename to examples/reactapp/src/components/layout/Header/Header.jsx diff --git a/demos/reactapp/src/components/layout/Header/Header.less b/examples/reactapp/src/components/layout/Header/Header.less similarity index 100% rename from demos/reactapp/src/components/layout/Header/Header.less rename to examples/reactapp/src/components/layout/Header/Header.less diff --git a/demos/reactapp/src/components/layout/Sidebar/Sidebar.jsx b/examples/reactapp/src/components/layout/Sidebar/Sidebar.jsx similarity index 100% rename from demos/reactapp/src/components/layout/Sidebar/Sidebar.jsx rename to examples/reactapp/src/components/layout/Sidebar/Sidebar.jsx diff --git a/demos/reactapp/src/components/layout/Sidebar/Sidebar.less b/examples/reactapp/src/components/layout/Sidebar/Sidebar.less similarity index 100% rename from demos/reactapp/src/components/layout/Sidebar/Sidebar.less rename to examples/reactapp/src/components/layout/Sidebar/Sidebar.less diff --git a/demos/reactapp/src/components/layout/Sidebar/antd.svg b/examples/reactapp/src/components/layout/Sidebar/antd.svg similarity index 100% rename from demos/reactapp/src/components/layout/Sidebar/antd.svg rename to examples/reactapp/src/components/layout/Sidebar/antd.svg diff --git a/demos/reactapp/src/containers/Core/CoreContainer.jsx b/examples/reactapp/src/containers/Core/CoreContainer.jsx similarity index 100% rename from demos/reactapp/src/containers/Core/CoreContainer.jsx rename to examples/reactapp/src/containers/Core/CoreContainer.jsx diff --git a/demos/reactapp/src/containers/Core/CoreContainer.less b/examples/reactapp/src/containers/Core/CoreContainer.less similarity index 100% rename from demos/reactapp/src/containers/Core/CoreContainer.less rename to examples/reactapp/src/containers/Core/CoreContainer.less diff --git a/demos/reactapp/src/containers/Core/package.json b/examples/reactapp/src/containers/Core/package.json similarity index 100% rename from demos/reactapp/src/containers/Core/package.json rename to examples/reactapp/src/containers/Core/package.json diff --git a/demos/reactapp/src/containers/Root/ReduxDevTools.jsx b/examples/reactapp/src/containers/Root/ReduxDevTools.jsx similarity index 100% rename from demos/reactapp/src/containers/Root/ReduxDevTools.jsx rename to examples/reactapp/src/containers/Root/ReduxDevTools.jsx diff --git a/demos/reactapp/src/containers/Root/RootContainer.dev.jsx b/examples/reactapp/src/containers/Root/RootContainer.dev.jsx similarity index 100% rename from demos/reactapp/src/containers/Root/RootContainer.dev.jsx rename to examples/reactapp/src/containers/Root/RootContainer.dev.jsx diff --git a/demos/reactapp/src/containers/Root/RootContainer.jsx b/examples/reactapp/src/containers/Root/RootContainer.jsx similarity index 100% rename from demos/reactapp/src/containers/Root/RootContainer.jsx rename to examples/reactapp/src/containers/Root/RootContainer.jsx diff --git a/demos/reactapp/src/containers/Root/RootContainer.prod.jsx b/examples/reactapp/src/containers/Root/RootContainer.prod.jsx similarity index 100% rename from demos/reactapp/src/containers/Root/RootContainer.prod.jsx rename to examples/reactapp/src/containers/Root/RootContainer.prod.jsx diff --git a/demos/reactapp/src/index.jsx b/examples/reactapp/src/index.jsx similarity index 100% rename from demos/reactapp/src/index.jsx rename to examples/reactapp/src/index.jsx diff --git a/demos/reactapp/src/redux/actions/auth.js b/examples/reactapp/src/redux/actions/auth.js similarity index 100% rename from demos/reactapp/src/redux/actions/auth.js rename to examples/reactapp/src/redux/actions/auth.js diff --git a/demos/reactapp/src/redux/actions/menu.js b/examples/reactapp/src/redux/actions/menu.js similarity index 100% rename from demos/reactapp/src/redux/actions/menu.js rename to examples/reactapp/src/redux/actions/menu.js diff --git a/demos/reactapp/src/redux/constants/authActionType.js b/examples/reactapp/src/redux/constants/authActionType.js similarity index 100% rename from demos/reactapp/src/redux/constants/authActionType.js rename to examples/reactapp/src/redux/constants/authActionType.js diff --git a/demos/reactapp/src/redux/constants/commonActionTypes.js b/examples/reactapp/src/redux/constants/commonActionTypes.js similarity index 100% rename from demos/reactapp/src/redux/constants/commonActionTypes.js rename to examples/reactapp/src/redux/constants/commonActionTypes.js diff --git a/demos/reactapp/src/redux/constants/menuActionType.js b/examples/reactapp/src/redux/constants/menuActionType.js similarity index 100% rename from demos/reactapp/src/redux/constants/menuActionType.js rename to examples/reactapp/src/redux/constants/menuActionType.js diff --git a/demos/reactapp/src/redux/middlewares/promiseMiddleware.js b/examples/reactapp/src/redux/middlewares/promiseMiddleware.js similarity index 100% rename from demos/reactapp/src/redux/middlewares/promiseMiddleware.js rename to examples/reactapp/src/redux/middlewares/promiseMiddleware.js diff --git a/demos/reactapp/src/redux/reducers/auth.js b/examples/reactapp/src/redux/reducers/auth.js similarity index 100% rename from demos/reactapp/src/redux/reducers/auth.js rename to examples/reactapp/src/redux/reducers/auth.js diff --git a/demos/reactapp/src/redux/reducers/index.js b/examples/reactapp/src/redux/reducers/index.js similarity index 100% rename from demos/reactapp/src/redux/reducers/index.js rename to examples/reactapp/src/redux/reducers/index.js diff --git a/demos/reactapp/src/redux/reducers/menu.js b/examples/reactapp/src/redux/reducers/menu.js similarity index 100% rename from demos/reactapp/src/redux/reducers/menu.js rename to examples/reactapp/src/redux/reducers/menu.js diff --git a/demos/reactapp/src/redux/store/configureStore.dev.js b/examples/reactapp/src/redux/store/configureStore.dev.js similarity index 100% rename from demos/reactapp/src/redux/store/configureStore.dev.js rename to examples/reactapp/src/redux/store/configureStore.dev.js diff --git a/demos/reactapp/src/redux/store/configureStore.js b/examples/reactapp/src/redux/store/configureStore.js similarity index 100% rename from demos/reactapp/src/redux/store/configureStore.js rename to examples/reactapp/src/redux/store/configureStore.js diff --git a/demos/reactapp/src/redux/store/configureStore.prod.js b/examples/reactapp/src/redux/store/configureStore.prod.js similarity index 100% rename from demos/reactapp/src/redux/store/configureStore.prod.js rename to examples/reactapp/src/redux/store/configureStore.prod.js diff --git a/demos/reactapp/src/routes/index.jsx b/examples/reactapp/src/routes/index.jsx similarity index 100% rename from demos/reactapp/src/routes/index.jsx rename to examples/reactapp/src/routes/index.jsx diff --git a/demos/reactapp/src/utils/asyncLoadHOC.js b/examples/reactapp/src/utils/asyncLoadHOC.js similarity index 100% rename from demos/reactapp/src/utils/asyncLoadHOC.js rename to examples/reactapp/src/utils/asyncLoadHOC.js diff --git a/demos/reactapp/src/utils/authHOC.jsx b/examples/reactapp/src/utils/authHOC.jsx similarity index 100% rename from demos/reactapp/src/utils/authHOC.jsx rename to examples/reactapp/src/utils/authHOC.jsx diff --git a/demos/reactapp/src/utils/http.js b/examples/reactapp/src/utils/http.js similarity index 100% rename from demos/reactapp/src/utils/http.js rename to examples/reactapp/src/utils/http.js diff --git a/demos/reactapp/src/utils/index.jsx b/examples/reactapp/src/utils/index.jsx similarity index 100% rename from demos/reactapp/src/utils/index.jsx rename to examples/reactapp/src/utils/index.jsx diff --git a/demos/reactapp/src/views/pages/home/Home.jsx b/examples/reactapp/src/views/pages/home/Home.jsx similarity index 100% rename from demos/reactapp/src/views/pages/home/Home.jsx rename to examples/reactapp/src/views/pages/home/Home.jsx diff --git a/demos/reactapp/src/views/pages/home/Home.less b/examples/reactapp/src/views/pages/home/Home.less similarity index 100% rename from demos/reactapp/src/views/pages/home/Home.less rename to examples/reactapp/src/views/pages/home/Home.less diff --git a/demos/reactadmin/src/logo.svg b/examples/reactapp/src/views/pages/home/logo.svg similarity index 100% rename from demos/reactadmin/src/logo.svg rename to examples/reactapp/src/views/pages/home/logo.svg diff --git a/demos/reactapp/src/views/pages/login/Login.jsx b/examples/reactapp/src/views/pages/login/Login.jsx similarity index 100% rename from demos/reactapp/src/views/pages/login/Login.jsx rename to examples/reactapp/src/views/pages/login/Login.jsx diff --git a/demos/reactapp/src/views/pages/login/Login.less b/examples/reactapp/src/views/pages/login/Login.less similarity index 100% rename from demos/reactapp/src/views/pages/login/Login.less rename to examples/reactapp/src/views/pages/login/Login.less diff --git a/demos/reactapp/src/views/pages/login/bg.jpg b/examples/reactapp/src/views/pages/login/bg.jpg similarity index 100% rename from demos/reactapp/src/views/pages/login/bg.jpg rename to examples/reactapp/src/views/pages/login/bg.jpg diff --git a/demos/reactapp/src/views/pages/login/login-logo.png b/examples/reactapp/src/views/pages/login/login-logo.png similarity index 100% rename from demos/reactapp/src/views/pages/login/login-logo.png rename to examples/reactapp/src/views/pages/login/login-logo.png diff --git a/demos/reactapp/src/views/pages/mail/Mailbox.jsx b/examples/reactapp/src/views/pages/mail/Mailbox.jsx similarity index 100% rename from demos/reactapp/src/views/pages/mail/Mailbox.jsx rename to examples/reactapp/src/views/pages/mail/Mailbox.jsx diff --git a/demos/reactapp/src/views/pages/user/User.jsx b/examples/reactapp/src/views/pages/user/User.jsx similarity index 100% rename from demos/reactapp/src/views/pages/user/User.jsx rename to examples/reactapp/src/views/pages/user/User.jsx diff --git a/demos/reactapp/src/views/pages/user/User.less b/examples/reactapp/src/views/pages/user/User.less similarity index 100% rename from demos/reactapp/src/views/pages/user/User.less rename to examples/reactapp/src/views/pages/user/User.less diff --git a/demos/reactapp/src/webapi/mock/index.js b/examples/reactapp/src/webapi/mock/index.js similarity index 100% rename from demos/reactapp/src/webapi/mock/index.js rename to examples/reactapp/src/webapi/mock/index.js diff --git a/demos/reactapp/src/webapi/mock/menu.js b/examples/reactapp/src/webapi/mock/menu.js similarity index 100% rename from demos/reactapp/src/webapi/mock/menu.js rename to examples/reactapp/src/webapi/mock/menu.js diff --git a/demos/reactapp/src/webapi/mock/user.js b/examples/reactapp/src/webapi/mock/user.js similarity index 100% rename from demos/reactapp/src/webapi/mock/user.js rename to examples/reactapp/src/webapi/mock/user.js diff --git a/demos/reactapp/src/webapi/package.json b/examples/reactapp/src/webapi/package.json similarity index 100% rename from demos/reactapp/src/webapi/package.json rename to examples/reactapp/src/webapi/package.json diff --git a/demos/reactapp/src/webapi/webapi.js b/examples/reactapp/src/webapi/webapi.js similarity index 100% rename from demos/reactapp/src/webapi/webapi.js rename to examples/reactapp/src/webapi/webapi.js diff --git a/demos/scripts/build-javaapp.bat b/examples/scripts/build-javaapp.bat similarity index 100% rename from demos/scripts/build-javaapp.bat rename to examples/scripts/build-javaapp.bat diff --git a/demos/scripts/build-reactadmin.bat b/examples/scripts/build-reactadmin.bat similarity index 100% rename from demos/scripts/build-reactadmin.bat rename to examples/scripts/build-reactadmin.bat diff --git a/demos/scripts/build-reactapp.bat b/examples/scripts/build-reactapp.bat similarity index 100% rename from demos/scripts/build-reactapp.bat rename to examples/scripts/build-reactapp.bat diff --git a/demos/scripts/demo01-start.bat b/examples/scripts/demo01-start.bat similarity index 100% rename from demos/scripts/demo01-start.bat rename to examples/scripts/demo01-start.bat diff --git a/demos/scripts/demo02-start.bat b/examples/scripts/demo02-start.bat similarity index 100% rename from demos/scripts/demo02-start.bat rename to examples/scripts/demo02-start.bat diff --git a/demos/scripts/demo03-start.bat b/examples/scripts/demo03-start.bat similarity index 100% rename from demos/scripts/demo03-start.bat rename to examples/scripts/demo03-start.bat diff --git a/demos/scripts/demo04-start.bat b/examples/scripts/demo04-start.bat similarity index 100% rename from demos/scripts/demo04-start.bat rename to examples/scripts/demo04-start.bat diff --git a/demos/scripts/demo05-start.bat b/examples/scripts/demo05-start.bat similarity index 100% rename from demos/scripts/demo05-start.bat rename to examples/scripts/demo05-start.bat diff --git a/demos/scripts/demo06-start.bat b/examples/scripts/demo06-start.bat similarity index 100% rename from demos/scripts/demo06-start.bat rename to examples/scripts/demo06-start.bat diff --git a/demos/scripts/startup.sh b/examples/scripts/startup.sh similarity index 100% rename from demos/scripts/startup.sh rename to examples/scripts/startup.sh From 3429e18b472bd81d390c202f605d71f399f4a180 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Tue, 22 Oct 2019 18:37:38 +0800 Subject: [PATCH 07/25] update docs --- .editorconfig | 22 +- .gitignore | 34 +- README.md | 13 +- assets/nginx-load-balance.png | Bin 90880 -> 0 bytes assets/nginx.jpg | Bin 91427 -> 0 bytes assets/reverse-proxy.png | Bin 62179 -> 0 bytes docs/README.md | 607 +---- docs/coverpage.md | 6 +- docs/index.html | 12 +- docs/nginx-configuration.md | 2891 +++++++++++++++++++++ docs/nginx-faq.md | 72 + install-nginx.md => docs/nginx-install.md | 36 +- docs/nginx-quickstart.md | 616 +++++ docs/package.json | 2 +- 14 files changed, 3657 insertions(+), 654 deletions(-) delete mode 100644 assets/nginx-load-balance.png delete mode 100644 assets/nginx.jpg delete mode 100644 assets/reverse-proxy.png create mode 100644 docs/nginx-configuration.md create mode 100644 docs/nginx-faq.md rename install-nginx.md => docs/nginx-install.md (90%) create mode 100644 docs/nginx-quickstart.md diff --git a/.editorconfig b/.editorconfig index d9c3abd..c7ca29b 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,29 +1,25 @@ -# EditorConfig helps developers define and maintain consistent -# coding styles between different editors and IDEs -# http://editorconfig.org -# 所有文件换行使用 Unix like 风格(LF),bat 文件使用 win 风格(CRLF) -# 缩进 java 4 个空格,其他所有文件 2 个空格 +# EditorConfig 用于在 IDE 中检查代码的基本 Code Style +# @see: https://editorconfig.org/ + +# 配置说明: +# 所有文件换行使用 Unix 风格(LF),*.bat 文件使用 Windows 风格(CRLF) +# java / sh 文件缩进 4 个空格,其他所有文件缩进 2 个空格 root = true [*] -# Unix-style newlines with a newline ending every file end_of_line = lf - -# Change these settings to your own preference indent_size = 2 -indent_style = space +indent_style = tab max_line_length = 120 - -# We recommend you to keep these unchanged charset = utf-8 trim_trailing_whitespace = true insert_final_newline = true -[*.bat] +[*.{bat, cmd}] end_of_line = crlf -[*.java] +[*.{java, groovy, kt, sh}] indent_size = 4 [*.md] diff --git a/.gitignore b/.gitignore index 455cd2c..b887576 100644 --- a/.gitignore +++ b/.gitignore @@ -1,17 +1,37 @@ -################ JAVA ################ -# temp folders +# --------------------------------------------------------------------- +# more gitignore templates see https://github.com/github/gitignore +# --------------------------------------------------------------------- + +# ------------------------------- java ------------------------------- +# compiled folders classes target logs +.mtj.tmp/ -# temp files +# compiled files *.class + +# bluej files +*.ctxt + +# package files # *.jar *.war -*.versionsBackup +*.nar +*.ear +*.zip +*.tar.gz +*.rar + +# virtual machine crash logs +hs_err_pid* + +# maven plugin temp files +.flattened-pom.xml -################ JAVASCRIPT ################ +# ------------------------------- javascript ------------------------------- # dependencies node_modules @@ -29,11 +49,11 @@ yarn-error.log* bundle*.js -################ IDEA ################ +# ------------------------------- intellij ------------------------------- .idea *.iml -################ Eclipse ################ +# ------------------------------- eclipse ------------------------------- .classpath .project diff --git a/README.md b/README.md index 1200703..96a4ea9 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ > 本项目是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx。 > -> [demos](demos) 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快速看到演示效果。 +> [**examples**](https://github.com/dunwu/nginx-tutorial/tree/master/examples) 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快速看到演示效果。 ## 简介 @@ -20,14 +20,13 @@ ## Nginx 入门 -> 详细安装方法请参考:[Nginx 安装](install-nginx.md) -> +> 详细安装方法请参考:[Nginx 安装](docs/nginx-install.md) nginx 的使用比较简单,就是几条命令。 常用到的命令如下: -```bash +```batch nginx -s stop 快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。 nginx -s quit 平稳关闭Nginx,保存相关信息,有安排的结束web服务。 nginx -s reload 因改变了Nginx相关配置,需要重新加载配置而重载。 @@ -40,7 +39,7 @@ nginx -V 显示 nginx 的版本,编译器版本和配置参数。 如果不想每次都敲命令,可以在 nginx 安装目录下新添一个启动批处理文件**startup.bat**,双击即可运行。内容如下: -```bat +```batch @echo off rem 如果启动前已经启动nginx并记录下pid文件,会kill指定进程 nginx.exe -s stop @@ -596,6 +595,6 @@ server { ## 参考 - [Nginx 的中文维基](http://tool.oschina.net/apidocs/apidoc?api=nginx-zh) -- [Nginx开发从入门到精通](http://tengine.taobao.org/book/index.html) +- [Nginx 开发从入门到精通](http://tengine.taobao.org/book/index.html) - https://github.com/trimstray/nginx-admins-handbook -- [nginxconfig.io](https://nginxconfig.io/) - 一款 Nginx 配置生成器 +- [nginxconfig.io](https://nginxconfig.io/) - 一款 Nginx 配置生成器 diff --git a/assets/nginx-load-balance.png b/assets/nginx-load-balance.png deleted file mode 100644 index 28fd2cf5617b9a45c1dae88a9aa1cc71911992ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90880 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 z 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 F|JkKDGvxpP diff --git a/assets/reverse-proxy.png b/assets/reverse-proxy.png deleted file mode 100644 index 4bef7e0f4796c0d5e7a65e6b1f2af5b52bb1caeb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62179 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%0AoGf-TYK|ufQI`$?yb2Mx@`JXG(KMMBZQE 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 n2TO67rlEuXv_Px#L7?QJ0zet!~j zP60XRr6PnJvxOk!!NI{0VoL#r)+kd^Mcpl95l0Hr-XGcXcQ$`(RBdQZpVpNp9k0%Y zO8aGx?4h3>Np_FRcvxYh605x@FKh;CLb?B-NH({{O%lg5T4TtHdK5hq@LV&?HG;1F`A%G^U%hjC(R~><~QD5RdY&;PSgH7vE#^t z301Rw-hEu9sgQ4`GIP5N3O9IOwVr2X_O0TE^5hJahF#081?SnPfypZK95zu=*A~%n zrL%Mag(J@NM%2}s8JGXqE4d^eeqcvDCt0`$bl81v)(fhs%4>&e8#L@JXv2$L*B3Po-R5`Io+4YE_(Z#3e|Z`F57;@5Cf!q@8dyOSoygFIxA1 z+H*xHhs=C?A#KBBZdOX%8+Z-j8bC<5 zNu5Z!&ROU2c%R^z=X@2)Y$8I5*NV(Jwo!*^a<1O$W(ST~N*x*6>gsAmDJk!c7gw)D zo{6i{P3VX_VktTmkfz1h@V@Gr&>8DZS*6={u^cv$?(xdmr z^yxQVTi^l6$apEBt`F$=dcyz$6gnv)!db#yWcxf!@L1`OJ18RS)9ZKVJ25$H(x4t& zozQBcTjtQu#SzS~`NZoKC3mCT@+~J$THbxo@j@pxQXutXnCpk}oy5WokJpTmK8y!M z0rumC{9p*hqtfzQ-tM~be=D!0G76t~%-Ec073Ue+%r>kQ|E@Aepl9qo;>2|1ZP@LtHCrP)<46pc6kJQkII+O&z_S0t#K~ootTNX%6&?N9WOSf!mrt}7~*bk{rTQ<@1Iiz+pe*KyV ze=Subx8aw9!aeSCeeWboC?R+mkIHn3<0rrnaj;-f?R1 zU+^7Xk&%%Mij+-&?qHyPsKFT;I~04G)~B<6+ALV*+SmCsUy_KzhX#`?Wz1XK=2{7h zC1(Bthq<@gi?GFgmbolvzIc*{=TLDs>Cc}#IEx_9z6{F=u&ArmXA8OIwxyhB z%SLW_pMUQqb~s}rBuomvmvZtoG;U<5r5c9vTHybnLiJI_k1As;C|~$kc@ERBJIr%1 zr@{PPEg?d=z(H2E{b}rC1}#=OhgDFjYjW$>seIojgu)hzLN&3xi%ZeOzMx z&5m+?kXI9hGN-7*?;eFs0anbK1 zUrcpgz$)Ifw-*R6Vr}@E+cB6M{%_hqhwE{dvFB+@CqHRttKKa$ctk%RWaWK+oB#0N z;l~*oDzJx30(jGp$aewR2Y6cC|)19`rY^dT)`X|DAtppX14_ zUY7?xDpf(_K@$^u(##r~9@%6(o-rK?_pp>mV=uk6f%^mU0`cIm9RVCH58Sm4oNZ)b zkF?lkk;X~R&sWDAF)=ecnICzVu#UZEjy`2CZ=QTzRV76@Q4G{@b_Kin_+Av!x5lb$ zPFT5c$h3&UXQYoUCFoSKm>&*siUx@-+4NLz;q#y_|Ln6OK@*PT0b1nbt9@RVZl-?cpdzFxFQ^rlG*N0)IH*63ds_p zt;6+orv_6(?DQY&_V<5EE|5;Md7N>wi^Sz(r6gVF9Dj*EaA!HGOL@Y_p#3GjYYeIjp(aE2aH*eo8?3hgnwpuE*RPKoD znjARA+uy?fm@=tA80(U8Z-#WMLb~BU!W#ik;(YZJj#bN?|FS-jxC##4sZ(*-GsMHF zqq*#diD4e0(U^Wgw)|Hca^Fx#rGIPc}ATtDo&r6$=YL`AjHQIFMR6BMzCo}M1U z1VYPcX?3Mc&BzMUC`Z|dVQo7)GIFf5>hH2L`BvSASB6_b$u>S6gk3#G(}44+n;wRm zUF*A@d?%)@nj}9Qah}NhiIi{j~z~S0Sm|r1~N?o7qUEp}6jwN61$# zWd}_mZH*XR@CQTct*y}3coftPE0jn+^sL+esME^-(|D3{+qYBuMvCRMZCAvl7yNHF z+soxiuby~cocK(*7w-0FMN9+U*}i{so&AL9w0m!Y$QOH?%zN3}t8!D$+X+uCKBF^H zsteUTA+(aKJYOthH$>cWKssUvTKF|~w{#=s1|kQ#Dt??eJ88NndOmw&+SbR{meP8o zPwZ(ueZr}A-+}QZ1!)R@<7R=?J9jICDK>;lcB3^u%e%t-0ULMXy&vPpteLe#KaDrq z>%{qHTzjO{^-8g8QOSOcFO@1%%`1b@|4gsyO+T0+X!<2CH9E@uGB|Ifp`zgk8V|E4 zNL{fXKjrIdYm^lYG2`d@#QuZddZN6d7f7y_Ow)(*K9YL{QVki7v zkIiyvKkff2k+I))52tpTRmj!@(Q0=GVi4evk*N{}+%25AM~~713a?V5Ip>VAmGGA_ zToqhrnq8&&kTUrB5+5A8HpIU%}_Sds8t z+T08-tFpwA6OThCwhR89KQ3XOrddRPY%H?Vy!F%5l-5o7H`+4}sZB3i^Mq@BtHk&t zP5@YvNjlyR?-gnWLn((aN}W5Ofmnw1dFy3ihtxAAHDOdC*GD83&WOT62Ft-0Hd4V$ z1a+C!8)!?>mj>V_4kWN)n($D>%3rl!er!FX1|SCl*t_bMYynzzUGmojY>-sH|-o3k?Z#$}>s2IGerO7JA zrqpu$wb*R%wl3=KJ1|0LQGiH?@v&*>jdZnCV3onm&-O3w zs>{yjPcx$PgoYuC9F}?xF27j)20O}ASWCF|Guvu7H&>eABA!~NJ$*`ajo-e#MjJ|I zbyz5AKh^b$Idy0qI0NXpeX=|yx6<^BFs`&6Fw(Cj4mvme;&n^8NU|9j%%;_Xe#~Xz zxyGrJ_NtYZ4af-mbd(;F`od4phVj<64^LQLmr+^HJ@jv6O*jGNJnUDVH zWMZFQzWlg)0W$ra4ypUGwOlw;R<|ynY1GxK7_`m5rlp06I<_catzG{dy+dkly=k}y zH)~19v83$l>_9Z)n+-zNB8x(#c^#npRzU|``(^91$6D1I_jy!r@T6%1qK1>QkSV&z zxAfuQUw3Q`{di`bNaLR$71KzKCKeTStzHH`lJd-y8p;rd$HtWP^j?9m_cNza*FSo^ zm5*&_wPZ%HCROMi{_ zxRTDPRgfsg6yW5P=Kfwcy|06;$1*p|r1`|s_bsCGSFSu>6&L*i_ydwGFM-A^+wOn& zuLFles!XV&j*O#YK86w|z(C|PqPyQZf08n6dT zj5HNhF1Hw{lo4YVf)#54g@3i*v8`k`&efY9QtWT42{W6;xTC>vqv(2M$fkZqSe&4v zs=aKH`4r0IX^E3c^NpPaAZ z9C=Fwx&8e^-bbUq%ofcGuii7+n@Zw(@DAUgVJbT-YY;6v4oeuSF+XAO*w60-txve- zw<~a+5FeW&HSf^>R7L6f^_#X*#N7s5TsJhRM>WQXJ0aU&VZ?+4se!tf;vSw`hF1BV zc}Sz6Y?bqxvhp)cYT{cRJ7C<-(*<8bB4a8z=I=#q=jo?JBgN~41PPeZt1P>C@=rnt zFqg&zLVzLW{A*A7&S2e`W}zc)X|6)FicCdS8se5`&ig4VN(y#wA?H;krRl0ih1$5BR{_Z*P zeXj}M!|j(C>A^gcuPRH?(x}Bqd-w8NwB(Uci=(MR(rO+Y9E>C(4|#%}y$RYY3q&#} zRaT?hHlQhX_qYuM+wyFZ-7^38$KtQ3r&1L*g*-Z*Dy3_ z*L|L~%NSq80|?%*v{VSvhhv{c_zRMSH@J@-w<{X|sX+$lrUhFi3J53s4n`k$mw>eAJxgv!ot3wdO9eWJ3|xJ0q#8bW`bgofY$zF z-_iGo?1m0d2_#!3gW%!Iq*0IsP~%}SFigjm$}JLJ)D+U>mxCZKSJGH*a3g`SXw)uMkcYL!Y=!mp6Qug{x+sSf=;Y=vFx)!4@ z=;gzME?<9HDzFZGL@jb0PN8HFQJM*IkzlrsZV&EYpb>P1bWpV8m>|8Uj^!mXH*2C_ z85M&^r55~G=C*I6rhcZelZ@RLyGNktL9ti`u~>KCBZZ?_RtmbYmA`oY$|dHVODF=2 zT9uQ3$rMa(-^v{k<7*Xq(q!efF}!m!E&I6LMz}2ScOb!aGKUu0S{_E5G=N$xqDAPfRgMTH9ZF_dg6a_SK-roNn5VDqp4!}=_n$^U(`Udu0 z5LMKbJ4}A&--A^U964iT=I311?;-YQmk&#cp3Dz;fKI+CiDA_KW z0_NT2!<(6sAx1<(2A$zW7~sq#WnymL0>ymfVTq2V4H;RcjEv0S-r~6j)CWb_rPOjQ zRaV!fDnxK-Q6m)(SXv3d8~ni;G93Fru>o3p`b<4&G%ct*w&_Y%b1 zR9E+W5YgmMsDC(8$6=J1&P1KPtB`Lu-ZD6t$Z{MJ_PlfJkoAP~>KZYDt;KD#orLa& z&|I0H=DQT#wmG(BVR~d5eo5;>-O67%WSmAYpM((8+89yMff0U-E+^>~OP8s7i7L0F zPv42O4lHPB2VrNP6O&ixHSXTcg`7|SF4>;^{5ey9D+QT8Jl>We((*8gc#F6|G&LD@xcEtUy*$uGLgW!c(W;>>xrK?#~1`|i!IKK zN~6QN+v4(pb%Vn+Fg-Ojh>_5Efv5p*a3|j~g&L9w1xgrW;-~U1hE<2M2ro@F2E~Fx zODbriyBo&;sF@z}CE|U+;i<{V(k{i?w{G1!!O5u%rTN#Tn5AlbcBD~G^optQe^*Md zv9r4}lNrJY<$4OK3Re-hqDaslxw7RH zTq|i)=l@nSnwpt;4PA!#CzG)l&gqdWT&e(nUSoNYfj{;QYKQ+@l1_`HqD7kZ>vmn3 zGL~w9nh)}aw*~x0ssY1`vkj_4`mCTX@_v|hCKY69ujV3pK)L=rs2R z?&(h_&OdY6?lQf?IK;7dKTVB|ueR+!T{$vsfHO4{07q18u>g){^$`_Nf#b-USE_ojLi#^ISH!~L#4$s^s6mX2vzjF z@)*2WjGpTFq@?5U;aNlXW6SUhf5v+p0fj7t=5=D?yRmN~F&0{j4K;iB&#h+U;AfmB zs05X5Y_j3Z^0IkJN!GYw@?2o|xC#O|n76(^_STr031S&jpskqb_Ed)s&+`P{Kc463 z*|!eJrw1vitLKZ^*<1bh)^DY4BT6)z8ya4EdwUCNcXxNk{GG(RP}0;)1(nUn^5S^t z$wDeZyP^0=rs!=^kyeBCSKe0M*o*Hno#rQ+I+||%_u$4>w{`>z7&<^xwice|+0A;V z_bS8}`%5?~h+L*;W=wA0l!P*^YU5_~m%#g7sI@D4g_xo{DuS<62@I4tHSMFy1_p5~NpN&dZp{b$9;a|U= zfHAQF5><1;>fFw?9UxPz(eOLjShJ*WxpQ3%$P|gTsLXqGIqj*$mRV1BYKW~n=rZ7y z(H)M@8!DwJTHV3-G)U8Y%e6{~9TL{1rTp*qdDk>qUVp364`a#6OY2`(=tYOgw;T)Y zi2*#0y307|miNAl^(EYA;^${7g3yQ52ZAboV3>F?HG{x&@PjUfbg4s75YcelegJ%C z&B?E6$Gp`eQaI~bEJJWagWyXuf%>s=Hsr|@cC$P5p8tJN8ZJEc9`8j-Ln8$j?h9cq{<=_a-A28?1++ZoRC^qhlzEOiAo!qIbmk>mW_M2P&=F~18j#bf0oul0vFhj6_rrV`stXz?h$TwMW;k!4(>w=B zJ(eL<2Y$;ikegRI#<3n=Rw6Gv)IZt21VW@Q|z_vC_S;hhi z(3@XZ=oJMxbo*9%JQG1nF#cOQVJN@_-KsTt}lE&F1vmmO0;U5jYVuuj>>q! zq#uj1lao`66%;da>qOlVryvwwQ2gw}B+yYJZtS0S2(EKQO@C6+3KLWVHp5NF37iY@%>1)(#}d$1YR%HcuZwCx z3H%Zk&ElRh8KMmeZxp>LDN9-`n0Jwsm#234@L?gxnG~uLc^qH-D=xr4ASERdGoHu2 zrFdNg#b_tzozNxHnoKHsjjq^vry|w5qvv;)aQ}2FZXIa`p9#yVOhMVPEZK@nBQOL~ zV*UI3hd%a*()4DaQ&zQ3^mKHRBK{-)-C3N2qvP~9Q__*pO)!_kgi4-%hC&7@{w_)W zJC_wudjlFXqgyQ_lk?VtUk<@q95E^ZA1Vs?2G4ZQ`@IDR>VOfetg>2>)BIlx-Yx0w zt5ptUs<1Mw{2ftAB$8ZVVIg5Bm)Wlz6y>;bP_YmU^LzI0g@oNc%jl2js&8^0byQ4J z4nH3AQDzY@9@>ARq!#jS&lezP>E}acRlP`LFsV-|^L~ z*c$0)yHeBI-If_&(CBml-O3}oX=tm=!%e(EI`wn zH@Z*JKH9%-lW%Om|L+sw^loGOmq>F6qqDCw=v4#|q6S2fo)``x1)vIdsGq0$u^kNyB zbs3)xa<3kUaZSU%X;>8e@hs39Px(#pbKT`)D#MA)wi_pMCdynuc_T9whyyb1kZn}Q z2;64~Y>y34gsu{B>?U`$YT?`!3|D;Yy=l5C5eftrOQz3|A;_vk!_Uv$(Jlqq($hp%(5dq1(5?d%UXa_U!RUDxe{VQFcc zg-bK-cryKobTlZ*G)ysa!CdCpd`4ynC+KpJlSmA_8AA?fT~b)hg>}K%iuRVJiO^y= zSM4^AS%f1E4}NKBiNM`NLgZoEfFiH@#^dii(W1v{REBAquv{~KqLh>mh1Vc4Nq6m~ zVHLQ5RfX!YLvB9-rAFDj4y^bQ*ghK4I`R~ZU}HNKk?e!RGr#0AJv*C>y6?B9gF{30 z2u+VjA;tvm5i_8vbLhX5cNgxn(4F4vfY zx&Jqu7!*vBBD_6nK1Q$Mgt1<&BZXtvM@WrrZAnB4CU~)fVgU*fPV4OK$Y@S?boTab zmgN8Ad4hs=Ni}@`eq$p2;<4cCY1XOXM-LwH%YukG48C~CvNUrs4teqi$LLXrw{~CA z1O#}c&QeP9*T2DGe|UrI1{95q5~7_Zs`~D<;0U61#>vwAYVX&P{iA{&zsh)ztP1>3 zn*oKy`lu&e0V5gNXM4kojB6ET~eB5+Jyta1M^7R0H~w zqoenWsin&hc`6jNel570NqCj$YG9FqZ{&b}!C>jYT@ZUB_!AU0njP!JotYrW8~yAS zc;Nqn4D095%*^x^@enRDV!xm|A}(-p(m;c|6{j#n)?vJGmgow^3%J!?Bz()}aN#<} zA@&FipTi&^u5#8{-8u0hK96uy0-k~E)f$y}zoT^ByHP+YfKVnu-9!k(GKA8YcbvXb zW(^Tv`&9ClFCOV*U6(Wkv!6k))SEjxoJySa1Ju{m^mQhfb)nne-JrlC>%foz4VY9^ zw4As5X+Zwhb!)vDd0f*0 u(pfzJ1^beR*YCmY 本项目是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx。 -> -> [demos](demos) 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快速看到演示效果。 +> 🔁 项目同步维护在 [github](https://github.com/dunwu/nginx-tutorial) | [gitee](https://gitee.com/turnon/nginx-tutorial) +> +> 📖 [电子书](https://dunwu.github.io/nginx-tutorial/) | [电子书(国内)](http://turnon.gitee.io/nginx-tutorial/) -## 简介 - -**什么是 Nginx?** - -**Nginx (engine x)** 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 - -


- -**什么是反向代理?** - -反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 - -

- -## Nginx 入门 - -> 详细安装方法请参考:[Nginx 安装](install-nginx.md) -> - -nginx 的使用比较简单,就是几条命令。 - -常用到的命令如下: - -```bash -nginx -s stop 快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。 -nginx -s quit 平稳关闭Nginx,保存相关信息,有安排的结束web服务。 -nginx -s reload 因改变了Nginx相关配置,需要重新加载配置而重载。 -nginx -s reopen 重新打开日志文件。 -nginx -c filename 为 Nginx 指定一个配置文件,来代替缺省的。 -nginx -t 不运行,仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。 -nginx -v 显示 nginx 的版本。 -nginx -V 显示 nginx 的版本,编译器版本和配置参数。 -``` - -如果不想每次都敲命令,可以在 nginx 安装目录下新添一个启动批处理文件**startup.bat**,双击即可运行。内容如下: - -```bat -@echo off -rem 如果启动前已经启动nginx并记录下pid文件,会kill指定进程 -nginx.exe -s stop - -rem 测试配置文件语法正确性 -nginx.exe -t -c conf/nginx.conf - -rem 显示版本信息 -nginx.exe -v - -rem 按照指定配置去启动nginx -nginx.exe -c conf/nginx.conf -``` - -如果是运行在 Linux 下,写一个 shell 脚本,大同小异。 - -## Nginx 实战 - -我始终认为,各种开发工具的配置还是结合实战来讲述,会让人更易理解。 - -### Http 反向代理 - -我们先实现一个小目标:不考虑复杂的配置,仅仅是完成一个 http 反向代理。 - -`nginx.conf` 配置文件如下: - -> **_注:`conf/nginx.conf` 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件_** - -```nginx -#运行用户 -#user somebody; - -#启动进程,通常设置成和cpu的数量相等 -worker_processes 1; - -#全局错误日志 -error_log D:/Tools/nginx-1.10.1/logs/error.log; -error_log D:/Tools/nginx-1.10.1/logs/notice.log notice; -error_log D:/Tools/nginx-1.10.1/logs/info.log info; - -#PID文件,记录当前启动的nginx的进程ID -pid D:/Tools/nginx-1.10.1/logs/nginx.pid; - -#工作模式及连接数上限 -events { - worker_connections 1024; #单个后台worker process进程的最大并发链接数 -} - -#设定http服务器,利用它的反向代理功能提供负载均衡支持 -http { - #设定mime类型(邮件支持类型),类型由mime.types文件定义 - include D:/Tools/nginx-1.10.1/conf/mime.types; - default_type application/octet-stream; - - #设定日志 - log_format main '[$remote_addr] - [$remote_user] [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log D:/Tools/nginx-1.10.1/logs/access.log main; - rewrite_log on; - - #sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,对于普通应用, - #必须设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为 off,以平衡磁盘与网络I/O处理速度,降低系统的uptime. - sendfile on; - #tcp_nopush on; - - #连接超时时间 - keepalive_timeout 120; - tcp_nodelay on; - - #gzip压缩开关 - #gzip on; - - #设定实际的服务器列表 - upstream zp_server1{ - server 127.0.0.1:8089; - } - - #HTTP服务器 - server { - #监听80端口,80端口是知名端口号,用于HTTP协议 - listen 80; - - #定义使用www.xx.com访问 - server_name www.helloworld.com; - - #首页 - index index.html - - #指向webapp的目录 - root D:\01_Workspace\Project\github\zp\SpringNotes\spring-security\spring-shiro\src\main\webapp; - - #编码格式 - charset utf-8; - - #代理配置参数 - proxy_connect_timeout 180; - proxy_send_timeout 180; - proxy_read_timeout 180; - proxy_set_header Host $host; - proxy_set_header X-Forwarder-For $remote_addr; - - #反向代理的路径(和upstream绑定),location 后面设置映射的路径 - location / { - proxy_pass http://zp_server1; - } - - #静态文件,nginx自己处理 - location ~ ^/(images|javascript|js|css|flash|media|static)/ { - root D:\01_Workspace\Project\github\zp\SpringNotes\spring-security\spring-shiro\src\main\webapp\views; - #过期30天,静态文件不怎么更新,过期可以设大一点,如果频繁更新,则可以设置得小一点。 - expires 30d; - } - - #设定查看Nginx状态的地址 - location /NginxStatus { - stub_status on; - access_log on; - auth_basic "NginxStatus"; - auth_basic_user_file conf/htpasswd; - } - - #禁止访问 .htxxx 文件 - location ~ /\.ht { - deny all; - } - - #错误处理页面(可选择性配置) - #error_page 404 /404.html; - #error_page 500 502 503 504 /50x.html; - #location = /50x.html { - # root html; - #} - } -} -``` - -好了,让我们来试试吧: - -1. 启动 webapp,注意启动绑定的端口要和 nginx 中的 `upstream` 设置的端口保持一致。 -2. 更改 host:在 C:\Windows\System32\drivers\etc 目录下的 host 文件中添加一条 DNS 记录 - -``` -127.0.0.1 www.helloworld.com -``` - -3. 启动前文中 startup.bat 的命令 -4. 在浏览器中访问 www.helloworld.com,不出意外,已经可以访问了。 - -### Https 反向代理 - -一些对安全性要求比较高的站点,可能会使用 HTTPS(一种使用 ssl 通信标准的安全 HTTP 协议)。 - -这里不科普 HTTP 协议和 SSL 标准。但是,使用 nginx 配置 https 需要知道几点: - -- HTTPS 的固定端口号是 443,不同于 HTTP 的 80 端口 -- SSL 标准需要引入安全证书,所以在 nginx.conf 中你需要指定证书和它对应的 key - -其他和 http 反向代理基本一样,只是在 `Server` 部分配置有些不同。 - -```nginx - #HTTP服务器 - server { - #监听443端口。443为知名端口号,主要用于HTTPS协议 - listen 443 ssl; - - #定义使用www.xx.com访问 - server_name www.helloworld.com; - - #ssl证书文件位置(常见证书文件格式为:crt/pem) - ssl_certificate cert.pem; - #ssl证书key位置 - ssl_certificate_key cert.key; - - #ssl配置参数(选择性配置) - ssl_session_cache shared:SSL:1m; - ssl_session_timeout 5m; - #数字签名,此处使用MD5 - ssl_ciphers HIGH:!aNULL:!MD5; - ssl_prefer_server_ciphers on; - - location / { - root /root; - index index.html index.htm; - } - } -``` - -### 负载均衡 - -前面的例子中,代理仅仅指向一个服务器。 - -但是,网站在实际运营过程中,大部分都是以集群的方式运行,这时需要使用负载均衡来分流。 - -nginx 也可以实现简单的负载均衡功能。 - -

- -假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 - -nginx.conf 配置如下: - -```nginx -http { - #设定mime类型,类型由mime.type文件定义 - include /etc/nginx/mime.types; - default_type application/octet-stream; - #设定日志格式 - access_log /var/log/nginx/access.log; - - #设定负载均衡的服务器列表 - upstream load_balance_server { - #weigth参数表示权值,权值越高被分配到的几率越大 - server 192.168.1.11:80 weight=5; - server 192.168.1.12:80 weight=1; - server 192.168.1.13:80 weight=6; - } - - #HTTP服务器 - server { - #侦听80端口 - listen 80; - - #定义使用www.xx.com访问 - server_name www.helloworld.com; - - #对所有请求进行负载均衡请求 - location / { - root /root; #定义服务器的默认网站根目录位置 - index index.html index.htm; #定义首页索引文件的名称 - proxy_pass http://load_balance_server ;#请求转向load_balance_server 定义的服务器列表 - - #以下是一些反向代理的配置(可选择性配置) - #proxy_redirect off; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP - proxy_set_header X-Forwarded-For $remote_addr; - proxy_connect_timeout 90; #nginx跟后端服务器连接超时时间(代理连接超时) - proxy_send_timeout 90; #后端服务器数据回传时间(代理发送超时) - proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时) - proxy_buffer_size 4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小 - proxy_buffers 4 32k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置 - proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2) - proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传 - - client_max_body_size 10m; #允许客户端请求的最大单文件字节数 - client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数 - } - } -} -``` - -#### 负载均衡策略 - -Nginx 提供了多种负载均衡策略,让我们来一一了解一下: - -负载均衡策略在各种分布式系统中基本上原理一致,对于原理有兴趣,不妨参考 [负载均衡](https://dunwu.github.io/javaweb/#/theory/load-balance) - -##### 轮询 - -```nginx -upstream bck_testing_01 { - # 默认所有服务器权重为 1 - server 192.168.250.220:8080 - server 192.168.250.221:8080 - server 192.168.250.222:8080 -} -``` - -##### 加权轮询 - -```nginx -upstream bck_testing_01 { - server 192.168.250.220:8080 weight=3 - server 192.168.250.221:8080 # default weight=1 - server 192.168.250.222:8080 # default weight=1 -} -``` - -##### 最少连接 - -```nginx -upstream bck_testing_01 { - least_conn; - - # with default weight for all (weight=1) - server 192.168.250.220:8080 - server 192.168.250.221:8080 - server 192.168.250.222:8080 -} -``` - -##### 加权最少连接 - -```nginx -upstream bck_testing_01 { - least_conn; - - server 192.168.250.220:8080 weight=3 - server 192.168.250.221:8080 # default weight=1 - server 192.168.250.222:8080 # default weight=1 -} -``` - -##### IP Hash - -```nginx -upstream bck_testing_01 { - - ip_hash; - - # with default weight for all (weight=1) - server 192.168.250.220:8080 - server 192.168.250.221:8080 - server 192.168.250.222:8080 - -} -``` - -##### 普通 Hash - -```nginx -upstream bck_testing_01 { - - hash $request_uri; - - # with default weight for all (weight=1) - server 192.168.250.220:8080 - server 192.168.250.221:8080 - server 192.168.250.222:8080 - -} -``` - -### 网站有多个 webapp 的配置 - -当一个网站功能越来越丰富时,往往需要将一些功能相对独立的模块剥离出来,独立维护。这样的话,通常,会有多个 webapp。 - -举个例子:假如 www.helloworld.com 站点有好几个 webapp,finance(金融)、product(产品)、admin(用户中心)。访问这些应用的方式通过上下文(context)来进行区分: - -www.helloworld.com/finance/ - -www.helloworld.com/product/ - -www.helloworld.com/admin/ - -我们知道,http 的默认端口号是 80,如果在一台服务器上同时启动这 3 个 webapp 应用,都用 80 端口,肯定是不成的。所以,这三个应用需要分别绑定不同的端口号。 - -那么,问题来了,用户在实际访问 www.helloworld.com 站点时,访问不同 webapp,总不会还带着对应的端口号去访问吧。所以,你再次需要用到反向代理来做处理。 - -配置也不难,来看看怎么做吧: - -```nginx -http { - #此处省略一些基本配置 - - upstream product_server{ - server www.helloworld.com:8081; - } - - upstream admin_server{ - server www.helloworld.com:8082; - } - - upstream finance_server{ - server www.helloworld.com:8083; - } - - server { - #此处省略一些基本配置 - #默认指向product的server - location / { - proxy_pass http://product_server; - } - - location /product/{ - proxy_pass http://product_server; - } - - location /admin/ { - proxy_pass http://admin_server; - } - - location /finance/ { - proxy_pass http://finance_server; - } - } -} -``` - -### 静态站点 - -有时候,我们需要配置静态站点(即 html 文件和一堆静态资源)。 - -举例来说:如果所有的静态资源都放在了 `/app/dist` 目录下,我们只需要在 `nginx.conf` 中指定首页以及这个站点的 host 即可。 - -配置如下: - -```nginx -worker_processes 1; - -events { - worker_connections 1024; -} - -http { - include mime.types; - default_type application/octet-stream; - sendfile on; - keepalive_timeout 65; - - gzip on; - gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/javascript image/jpeg image/gif image/png; - gzip_vary on; - - server { - listen 80; - server_name static.zp.cn; - - location / { - root /app/dist; - index index.html; - #转发任何请求到 index.html - } - } -} -``` - -然后,添加 HOST: - -127.0.0.1 static.zp.cn - -此时,在本地浏览器访问 static.zp.cn ,就可以访问静态站点了。 - -### 搭建文件服务器 - -有时候,团队需要归档一些数据或资料,那么文件服务器必不可少。使用 Nginx 可以非常快速便捷的搭建一个简易的文件服务。 - -Nginx 中的配置要点: - -- 将 autoindex 开启可以显示目录,默认不开启。 -- 将 autoindex_exact_size 开启可以显示文件的大小。 -- 将 autoindex_localtime 开启可以显示文件的修改时间。 -- root 用来设置开放为文件服务的根路径。 -- charset 设置为 `charset utf-8,gbk;`,可以避免中文乱码问题(windows 服务器下设置后,依然乱码,本人暂时没有找到解决方法)。 - -一个最简化的配置如下: - -```nginx -autoindex on;# 显示目录 -autoindex_exact_size on;# 显示文件大小 -autoindex_localtime on;# 显示文件时间 - -server { - charset utf-8,gbk; # windows 服务器下设置后,依然乱码,暂时无解 - listen 9050 default_server; - listen [::]:9050 default_server; - server_name _; - root /share/fs; -} -``` - -### 解决跨域 - -web 领域开发中,经常采用前后端分离模式。这种模式下,前端和后端分别是独立的 web 应用程序,例如:后端是 Java 程序,前端是 React 或 Vue 应用。 - -各自独立的 web app 在互相访问时,势必存在跨域问题。解决跨域问题一般有两种思路: - -1. **CORS** - -在后端服务器设置 HTTP 响应头,把你需要允许访问的域名加入 `Access-Control-Allow-Origin` 中。 - -2. **jsonp** - -把后端根据请求,构造 json 数据,并返回,前端用 jsonp 跨域。 - -这两种思路,本文不展开讨论。 - -需要说明的是,nginx 根据第一种思路,也提供了一种解决跨域的解决方案。 - -举例:www.helloworld.com 网站是由一个前端 app ,一个后端 app 组成的。前端端口号为 9000, 后端端口号为 8080。 - -前端和后端如果使用 http 进行交互时,请求会被拒绝,因为存在跨域问题。来看看,nginx 是怎么解决的吧: - -首先,在 enable-cors.conf 文件中设置 cors : - -```nginx -# allow origin list -set $ACAO '*'; - -# set single origin -if ($http_origin ~* (www.helloworld.com)$) { - set $ACAO $http_origin; -} - -if ($cors = "trueget") { - add_header 'Access-Control-Allow-Origin' "$http_origin"; - add_header 'Access-Control-Allow-Credentials' 'true'; - add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; - add_header 'Access-Control-Allow-Headers' 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type'; -} - -if ($request_method = 'OPTIONS') { - set $cors "${cors}options"; -} - -if ($request_method = 'GET') { - set $cors "${cors}get"; -} - -if ($request_method = 'POST') { - set $cors "${cors}post"; -} -``` - -接下来,在你的服务器中 `include enable-cors.conf` 来引入跨域配置: - -```nginx -# ---------------------------------------------------- -# 此文件为项目 nginx 配置片段 -# 可以直接在 nginx config 中 include(推荐) -# 或者 copy 到现有 nginx 中,自行配置 -# www.helloworld.com 域名需配合 dns hosts 进行配置 -# 其中,api 开启了 cors,需配合本目录下另一份配置文件 -# ---------------------------------------------------- -upstream front_server{ - server www.helloworld.com:9000; -} -upstream api_server{ - server www.helloworld.com:8080; -} - -server { - listen 80; - server_name www.helloworld.com; - - location ~ ^/api/ { - include enable-cors.conf; - proxy_pass http://api_server; - rewrite "^/api/(.*)$" /$1 break; - } - - location ~ ^/ { - proxy_pass http://front_server; - } -} -``` - -到此,就完成了。 - -## 参考 - -- [Nginx 的中文维基](http://tool.oschina.net/apidocs/apidoc?api=nginx-zh) -- [Nginx开发从入门到精通](http://tengine.taobao.org/book/index.html) -- https://github.com/trimstray/nginx-admins-handbook -- [nginxconfig.io](https://nginxconfig.io/) - 一款 Nginx 配置生成器 +- [Nginx 快速教程](nginx-quickstart.md) +- [Nginx 安装](nginx-install.md) +- [Nginx 配置](nginx-configuration.md) +- [Nginx 问题](nginx-faq.md) diff --git a/docs/coverpage.md b/docs/coverpage.md index d7a8204..14aaf0b 100644 --- a/docs/coverpage.md +++ b/docs/coverpage.md @@ -1,7 +1,7 @@ -
- -# Nginx Tutorial +
+# nginx-tutorial > Nginx 极简教程 [开始阅读](README.md) + diff --git a/docs/index.html b/docs/index.html index ec2f567..fd50b9f 100644 --- a/docs/index.html +++ b/docs/index.html @@ -9,7 +9,7 @@ content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" name="viewport" /> - + - - - + + Nginx Tutorial + + + + + + + + +
正在加载...
diff --git a/docs/package.json b/docs/package.json index 002375a..4f249a8 100644 --- a/docs/package.json +++ b/docs/package.json @@ -1,9 +1,9 @@ { - "name": "nginx-tutorial", - "version": "1.0.0", - "scripts": { - "start": "docsify serve ./ --port 4000" - }, - "dependencies": {}, - "devDependencies": {} + "name": "nginx-tutorial", + "version": "1.0.0", + "scripts": { + "start": "docsify serve ./ --port 4000" + }, + "dependencies": {}, + "devDependencies": {} } diff --git a/examples/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java b/examples/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java index 4be1d34..7f3f401 100644 --- a/examples/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java +++ b/examples/javaapp/src/main/java/io/github/dunwu/web/controller/ApiController.java @@ -22,7 +22,7 @@ * 配合前端请求的 API 接口 * * @author zhangpeng0913 - * @date 2017/8/23. + * @since 2017/8/23. */ @Controller public class ApiController { diff --git a/examples/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java b/examples/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java index db118bb..41dcc84 100644 --- a/examples/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java +++ b/examples/javaapp/src/main/java/io/github/dunwu/web/controller/IndexController.java @@ -10,7 +10,7 @@ /** * @author Zhang Peng - * @date 2017/4/12. + * @since 2017/4/12. */ @Controller public class IndexController { From 9bc37e8165ef366e380abac03024d0a6a827e727 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Wed, 13 Nov 2019 09:15:35 +0800 Subject: [PATCH 15/25] delete --- examples/reactadmin/package-lock.json | 17351 ------------------------ 1 file changed, 17351 deletions(-) delete mode 100644 examples/reactadmin/package-lock.json diff --git a/examples/reactadmin/package-lock.json b/examples/reactadmin/package-lock.json deleted file mode 100644 index c368c90..0000000 --- a/examples/reactadmin/package-lock.json +++ /dev/null @@ -1,17351 +0,0 @@ -{ - "name": "react-admin", - "version": "0.1.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@babel/code-frame": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/code-frame/download/@babel/code-frame-7.0.0.tgz", - "integrity": "sha1-BuKrGb21NThVWaq7W6WXKUgoAPg=", - "requires": { - "@babel/highlight": "^7.0.0" - } - }, - "@babel/core": { - "version": "7.1.6", - "resolved": "http://r.cnpmjs.org/@babel/core/download/@babel/core-7.1.6.tgz", - "integrity": "sha1-NzPL7kMXQpvIfGKynPhYfbp7rrM=", - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.1.6", - "@babel/helpers": "^7.1.5", - "@babel/parser": "^7.1.6", - "@babel/template": "^7.1.2", - "@babel/traverse": "^7.1.6", - "@babel/types": "^7.1.6", - "convert-source-map": "^1.1.0", - "debug": "^4.1.0", - "json5": "^2.1.0", - "lodash": "^4.17.10", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - } - }, - "@babel/generator": { - "version": "7.3.3", - "resolved": "http://r.cnpmjs.org/@babel/generator/download/@babel/generator-7.3.3.tgz", - "integrity": "sha1-GFlireWaUuAMor38/R1Y5SjU454=", - "requires": { - "@babel/types": "^7.3.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.11", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-annotate-as-pure/download/@babel/helper-annotate-as-pure-7.0.0.tgz", - "integrity": "sha1-Mj053QtQ4Qx8Bsp9djjmhk2MXDI=", - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.1.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/download/@babel/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz", - "integrity": "sha1-a2lijf5Ah3mODE7Zjj1Kay+9L18=", - "requires": { - "@babel/helper-explode-assignable-expression": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-builder-react-jsx": { - "version": "7.3.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-builder-react-jsx/download/@babel/helper-builder-react-jsx-7.3.0.tgz", - "integrity": "sha1-oayVpdKz6Irl5UhGv0Yu64GzGKQ=", - "requires": { - "@babel/types": "^7.3.0", - "esutils": "^2.0.0" - } - }, - "@babel/helper-call-delegate": { - "version": "7.1.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-call-delegate/download/@babel/helper-call-delegate-7.1.0.tgz", - "integrity": "sha1-apV/EF83dV6GRTQ9MDiiLhRJzEo=", - "requires": { - "@babel/helper-hoist-variables": "^7.0.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.3.2", - "resolved": "http://r.cnpmjs.org/@babel/helper-create-class-features-plugin/download/@babel/helper-create-class-features-plugin-7.3.2.tgz", - "integrity": "sha1-uhaFYD6xyfL1HJEG1RgBNcFj/nM=", - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.2.3" - } - }, - "@babel/helper-define-map": { - "version": "7.1.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-define-map/download/@babel/helper-define-map-7.1.0.tgz", - "integrity": "sha1-O3TK7DKbPIDBFikIh8DdmuRowgw=", - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/types": "^7.0.0", - "lodash": "^4.17.10" - } - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.1.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-explode-assignable-expression/download/@babel/helper-explode-assignable-expression-7.1.0.tgz", - "integrity": "sha1-U3+hP28WdN90WwwA7I/k6ZaByPY=", - "requires": { - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-function-name/download/@babel/helper-function-name-7.1.0.tgz", - "integrity": "sha1-oM6wFoX3M1XUNgwSR/WCv6/I/1M=", - "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha1-g1ctQyDipGVyY3NBE8QoaLZOScM=", - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-hoist-variables/download/@babel/helper-hoist-variables-7.0.0.tgz", - "integrity": "sha1-Rq3ExedYZFrnpF3rkrqwkYwju4g=", - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-member-expression-to-functions/download/@babel/helper-member-expression-to-functions-7.0.0.tgz", - "integrity": "sha1-jNFLCg33/wDwCefXpDaUX0fHoW8=", - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-module-imports": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-module-imports/download/@babel/helper-module-imports-7.0.0.tgz", - "integrity": "sha1-lggbcRHkhtpNLNlxrRpP4hbMLj0=", - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-module-transforms": { - "version": "7.2.2", - "resolved": "http://r.cnpmjs.org/@babel/helper-module-transforms/download/@babel/helper-module-transforms-7.2.2.tgz", - "integrity": "sha1-qy+OjSMUCfg3DIg9IMM1GQKEuWM=", - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/template": "^7.2.2", - "@babel/types": "^7.2.2", - "lodash": "^4.17.10" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-optimise-call-expression/download/@babel/helper-optimise-call-expression-7.0.0.tgz", - "integrity": "sha1-opIMVwKwc8Fd5REGIAqoytIEl9U=", - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-plugin-utils/download/@babel/helper-plugin-utils-7.0.0.tgz", - "integrity": "sha1-u7P77phmHFaQNCN8wDlnupm08lA=" - }, - "@babel/helper-regex": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-regex/download/@babel/helper-regex-7.0.0.tgz", - "integrity": "sha1-LBcYkjtX+bvmRwX/5WQKxk2b2yc=", - "requires": { - "lodash": "^4.17.10" - } - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.1.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-remap-async-to-generator/download/@babel/helper-remap-async-to-generator-7.1.0.tgz", - "integrity": "sha1-Nh2AghtvONp1vT8HheziCojF/n8=", - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-wrap-function": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-replace-supers": { - "version": "7.2.3", - "resolved": "http://r.cnpmjs.org/@babel/helper-replace-supers/download/@babel/helper-replace-supers-7.2.3.tgz", - "integrity": "sha1-GZcAIM8iZ31is6aJVh29lkTYxeU=", - "requires": { - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/traverse": "^7.2.3", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-simple-access": { - "version": "7.1.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-simple-access/download/@babel/helper-simple-access-7.1.0.tgz", - "integrity": "sha1-Ze65VMjCRb6qToWdphiPOdceWFw=", - "requires": { - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.0.0.tgz", - "integrity": "sha1-Oq4oXAMRwqsJXZl7jJqUytVH2BM=", - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-wrap-function": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/helper-wrap-function/download/@babel/helper-wrap-function-7.2.0.tgz", - "integrity": "sha1-xOABJEV2nigVtVKW6tQ6lYVJ9vo=", - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.2.0" - } - }, - "@babel/helpers": { - "version": "7.3.1", - "resolved": "http://r.cnpmjs.org/@babel/helpers/download/@babel/helpers-7.3.1.tgz", - "integrity": "sha1-lJ7snqS0XTIQ/rfcHCLbZkyeRLk=", - "requires": { - "@babel/template": "^7.1.2", - "@babel/traverse": "^7.1.5", - "@babel/types": "^7.3.0" - } - }, - "@babel/highlight": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/highlight/download/@babel/highlight-7.0.0.tgz", - "integrity": "sha1-9xDDjI1Fjm3ZogGvtjf8t4HOmeQ=", - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.3.3", - "resolved": "http://r.cnpmjs.org/@babel/parser/download/@babel/parser-7.3.3.tgz", - "integrity": "sha1-CS1FDbAr22zLHKj/1H2HdKka74c=" - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-proposal-async-generator-functions/download/@babel/plugin-proposal-async-generator-functions-7.2.0.tgz", - "integrity": "sha1-somzBmadzkrSCwJSiJoVdoydQX4=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0", - "@babel/plugin-syntax-async-generators": "^7.2.0" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.3.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-proposal-class-properties/download/@babel/plugin-proposal-class-properties-7.3.0.tgz", - "integrity": "sha1-JyY2vA+hmgvEbmAex4E2oXPqNs0=", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.3.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-proposal-decorators": { - "version": "7.3.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-proposal-decorators/download/@babel/plugin-proposal-decorators-7.3.0.tgz", - "integrity": "sha1-Y3ugdfp4Cx910IGG6PtDV9A6cqc=", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.3.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-decorators": "^7.2.0" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-proposal-json-strings/download/@babel/plugin-proposal-json-strings-7.2.0.tgz", - "integrity": "sha1-Vo7MRGxhSK5rJn8CVREwiR4p8xc=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-json-strings": "^7.2.0" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.3.2", - "resolved": "http://r.cnpmjs.org/@babel/plugin-proposal-object-rest-spread/download/@babel/plugin-proposal-object-rest-spread-7.3.2.tgz", - "integrity": "sha1-bRhZiC1Nd4V45B+CzF1789Xa9sE=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-proposal-optional-catch-binding/download/@babel/plugin-proposal-optional-catch-binding-7.2.0.tgz", - "integrity": "sha1-E12B7baKCB5V5W7EhUHs6AZcOPU=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-proposal-unicode-property-regex/download/@babel/plugin-proposal-unicode-property-regex-7.2.0.tgz", - "integrity": "sha1-q+coH+Rsld3BQ6ZeU1hkd5IDlSA=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0", - "regexpu-core": "^4.2.0" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-syntax-async-generators/download/@babel/plugin-syntax-async-generators-7.2.0.tgz", - "integrity": "sha1-aeHw2zTG9aDPfiszI78VmnbIy38=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-decorators": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-syntax-decorators/download/@babel/plugin-syntax-decorators-7.2.0.tgz", - "integrity": "sha1-xQsblX3MaeSxEntl4cM+72FXDBs=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-syntax-dynamic-import/download/@babel/plugin-syntax-dynamic-import-7.2.0.tgz", - "integrity": "sha1-acFZ/69JmBIhYa2OvF5tH1XfhhI=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-flow": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-syntax-flow/download/@babel/plugin-syntax-flow-7.2.0.tgz", - "integrity": "sha1-p2XwYfgDvEjyQMJvh0f6+Xwmv3w=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-syntax-json-strings/download/@babel/plugin-syntax-json-strings-7.2.0.tgz", - "integrity": "sha1-cr0T9v/h0lk4Ep0qGGsR/WKVFHA=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-syntax-jsx/download/@babel/plugin-syntax-jsx-7.2.0.tgz", - "integrity": "sha1-C4WjtLx830zEuL8jYzW5B8oi58c=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-syntax-object-rest-spread/download/@babel/plugin-syntax-object-rest-spread-7.2.0.tgz", - "integrity": "sha1-O3o+czUQxX6CC5FCpleayLDfrS4=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-syntax-optional-catch-binding/download/@babel/plugin-syntax-optional-catch-binding-7.2.0.tgz", - "integrity": "sha1-qUAT1u2okI3+akd+f57ahWVuz1w=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-syntax-typescript": { - "version": "7.3.3", - "resolved": "http://r.cnpmjs.org/@babel/plugin-syntax-typescript/download/@babel/plugin-syntax-typescript-7.3.3.tgz", - "integrity": "sha1-p8w/ZhGan36+LeU4PM4ZNHPWWZE=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-arrow-functions/download/@babel/plugin-transform-arrow-functions-7.2.0.tgz", - "integrity": "sha1-mur75Nb/xlY7+Pg3IJFijwB3lVA=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-async-to-generator/download/@babel/plugin-transform-async-to-generator-7.2.0.tgz", - "integrity": "sha1-aLikOGY+iFGeZbd2+JOPNEWxov8=", - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-block-scoped-functions/download/@babel/plugin-transform-block-scoped-functions-7.2.0.tgz", - "integrity": "sha1-XTzBHo1d3XUqpkyRSNDbbLef0ZA=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-block-scoping/download/@babel/plugin-transform-block-scoping-7.2.0.tgz", - "integrity": "sha1-8XxJ2R7tvN9d1QWX0W9fL3cBMtQ=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "lodash": "^4.17.10" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.3.3", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-classes/download/@babel/plugin-transform-classes-7.3.3.tgz", - "integrity": "sha1-oFMtaInFNNCV6PYE6SV/kThsS1E=", - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-define-map": "^7.1.0", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-computed-properties/download/@babel/plugin-transform-computed-properties-7.2.0.tgz", - "integrity": "sha1-g6ffamWIZbHI9kHVEMbzryICFto=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.3.2", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-destructuring/download/@babel/plugin-transform-destructuring-7.3.2.tgz", - "integrity": "sha1-8vVSC+BVuhw4xBwOCU2KRh3Xjy0=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-dotall-regex/download/@babel/plugin-transform-dotall-regex-7.2.0.tgz", - "integrity": "sha1-8Kq7k9EgqKxh6SXqC6RAgS2+Dkk=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0", - "regexpu-core": "^4.1.3" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-duplicate-keys/download/@babel/plugin-transform-duplicate-keys-7.2.0.tgz", - "integrity": "sha1-2VLEkw8xKk2//xjwspFOYMNVMLM=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-exponentiation-operator/download/@babel/plugin-transform-exponentiation-operator-7.2.0.tgz", - "integrity": "sha1-pjhoKJ5bQAf3BU1GSRr1FDV2YAg=", - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-flow-strip-types": { - "version": "7.2.3", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-flow-strip-types/download/@babel/plugin-transform-flow-strip-types-7.2.3.tgz", - "integrity": "sha1-46wqWUlIRU50McfbM+HQLVG1zWk=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-flow": "^7.2.0" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-for-of/download/@babel/plugin-transform-for-of-7.2.0.tgz", - "integrity": "sha1-q3RovvqA92S7A9PLXu+MyZjhytk=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-function-name/download/@babel/plugin-transform-function-name-7.2.0.tgz", - "integrity": "sha1-95MDYoKf+ZoxdMOfCvzAJO9Zcxo=", - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-literals/download/@babel/plugin-transform-literals-7.2.0.tgz", - "integrity": "sha1-aQNT6B+SZ9rU/Yz9d+r6hqulPqE=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-modules-amd/download/@babel/plugin-transform-modules-amd-7.2.0.tgz", - "integrity": "sha1-gqm85FuVRB9heiQBHcidEtp/TuY=", - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-modules-commonjs/download/@babel/plugin-transform-modules-commonjs-7.2.0.tgz", - "integrity": "sha1-xPGTP1mR1RRenPrR39hI6hcn9AQ=", - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-modules-systemjs/download/@babel/plugin-transform-modules-systemjs-7.2.0.tgz", - "integrity": "sha1-kSv+nl/5gpJMgdCTfJLSSZS7kGg=", - "requires": { - "@babel/helper-hoist-variables": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-modules-umd/download/@babel/plugin-transform-modules-umd-7.2.0.tgz", - "integrity": "sha1-dnjOdRafCHe46yI1U4wHQmjdAa4=", - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.3.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-named-capturing-groups-regex/download/@babel/plugin-transform-named-capturing-groups-regex-7.3.0.tgz", - "integrity": "sha1-FAtSmFstbvDLCS7zspUCuZD5zVA=", - "requires": { - "regexp-tree": "^0.1.0" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-new-target/download/@babel/plugin-transform-new-target-7.0.0.tgz", - "integrity": "sha1-ro+9iVF/p4ktIOZWTmQeh3DDqko=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-object-super/download/@babel/plugin-transform-object-super-7.2.0.tgz", - "integrity": "sha1-s11MEPVrq11lAEfa0PHY6IFLZZg=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.3.3", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-parameters/download/@babel/plugin-transform-parameters-7.3.3.tgz", - "integrity": "sha1-Ooc+BxFOGlvuF9BIFWYsgxfxDjA=", - "requires": { - "@babel/helper-call-delegate": "^7.1.0", - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-react-constant-elements": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-react-constant-elements/download/@babel/plugin-transform-react-constant-elements-7.2.0.tgz", - "integrity": "sha1-7WAtwti/8vDLGlzikmPb3sQHefc=", - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-react-display-name": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-react-display-name/download/@babel/plugin-transform-react-display-name-7.2.0.tgz", - "integrity": "sha1-6/rth4NM6NxCeWCaTwwyTBVuPrA=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-react-jsx": { - "version": "7.3.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-react-jsx/download/@babel/plugin-transform-react-jsx-7.3.0.tgz", - "integrity": "sha1-8sq5kCZjHHZ+J0WlNoszHP6PUpA=", - "requires": { - "@babel/helper-builder-react-jsx": "^7.3.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.2.0" - } - }, - "@babel/plugin-transform-react-jsx-self": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-react-jsx-self/download/@babel/plugin-transform-react-jsx-self-7.2.0.tgz", - "integrity": "sha1-Rh4hrZR48QMd1eJ2EI0CfxtSQLo=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.2.0" - } - }, - "@babel/plugin-transform-react-jsx-source": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-react-jsx-source/download/@babel/plugin-transform-react-jsx-source-7.2.0.tgz", - "integrity": "sha1-IMjGDwFA9d081jQY1FKAHPP3GA8=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.2.0" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-regenerator/download/@babel/plugin-transform-regenerator-7.0.0.tgz", - "integrity": "sha1-W0Foa07UC++HTX7WqEvdhJwT4ME=", - "requires": { - "regenerator-transform": "^0.13.3" - } - }, - "@babel/plugin-transform-runtime": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-runtime/download/@babel/plugin-transform-runtime-7.2.0.tgz", - "integrity": "sha1-VmvEP30K7ciA6t29KRaNDySJZuo=", - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "resolve": "^1.8.1", - "semver": "^5.5.1" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-shorthand-properties/download/@babel/plugin-transform-shorthand-properties-7.2.0.tgz", - "integrity": "sha1-YzOu4vjW7n4oYVRXKYk0o7RhmPA=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.2.2", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-spread/download/@babel/plugin-transform-spread-7.2.2.tgz", - "integrity": "sha1-MQOpq+IvdCttQG7NPNSbd0kZtAY=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-sticky-regex/download/@babel/plugin-transform-sticky-regex-7.2.0.tgz", - "integrity": "sha1-oeRUtZlVYKnB4NU338FQYf0mh+E=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-template-literals/download/@babel/plugin-transform-template-literals-7.2.0.tgz", - "integrity": "sha1-2H7QG46qx6kkc/YIyXwIneK6Hls=", - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-typeof-symbol/download/@babel/plugin-transform-typeof-symbol-7.2.0.tgz", - "integrity": "sha1-EX0rzsL79ktLWdH5gZiUaC0p8rI=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, - "@babel/plugin-transform-typescript": { - "version": "7.3.2", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-typescript/download/@babel/plugin-transform-typescript-7.3.2.tgz", - "integrity": "sha1-WacicWPlVziELwQ9nlvXwEBEfZY=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-typescript": "^7.2.0" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.2.0", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-unicode-regex/download/@babel/plugin-transform-unicode-regex-7.2.0.tgz", - "integrity": "sha1-TrjbFvly+Ku1BiwWG4sRVUat4Is=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0", - "regexpu-core": "^4.1.3" - } - }, - "@babel/preset-env": { - "version": "7.3.1", - "resolved": "http://r.cnpmjs.org/@babel/preset-env/download/@babel/preset-env-7.3.1.tgz", - "integrity": "sha1-OJ6MprF65nqvmiERZlAwvpI1Fds=", - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-async-generator-functions": "^7.2.0", - "@babel/plugin-proposal-json-strings": "^7.2.0", - "@babel/plugin-proposal-object-rest-spread": "^7.3.1", - "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.2.0", - "@babel/plugin-syntax-async-generators": "^7.2.0", - "@babel/plugin-syntax-json-strings": "^7.2.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", - "@babel/plugin-transform-arrow-functions": "^7.2.0", - "@babel/plugin-transform-async-to-generator": "^7.2.0", - "@babel/plugin-transform-block-scoped-functions": "^7.2.0", - "@babel/plugin-transform-block-scoping": "^7.2.0", - "@babel/plugin-transform-classes": "^7.2.0", - "@babel/plugin-transform-computed-properties": "^7.2.0", - "@babel/plugin-transform-destructuring": "^7.2.0", - "@babel/plugin-transform-dotall-regex": "^7.2.0", - "@babel/plugin-transform-duplicate-keys": "^7.2.0", - "@babel/plugin-transform-exponentiation-operator": "^7.2.0", - "@babel/plugin-transform-for-of": "^7.2.0", - "@babel/plugin-transform-function-name": "^7.2.0", - "@babel/plugin-transform-literals": "^7.2.0", - "@babel/plugin-transform-modules-amd": "^7.2.0", - "@babel/plugin-transform-modules-commonjs": "^7.2.0", - "@babel/plugin-transform-modules-systemjs": "^7.2.0", - "@babel/plugin-transform-modules-umd": "^7.2.0", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.3.0", - "@babel/plugin-transform-new-target": "^7.0.0", - "@babel/plugin-transform-object-super": "^7.2.0", - "@babel/plugin-transform-parameters": "^7.2.0", - "@babel/plugin-transform-regenerator": "^7.0.0", - "@babel/plugin-transform-shorthand-properties": "^7.2.0", - "@babel/plugin-transform-spread": "^7.2.0", - "@babel/plugin-transform-sticky-regex": "^7.2.0", - "@babel/plugin-transform-template-literals": "^7.2.0", - "@babel/plugin-transform-typeof-symbol": "^7.2.0", - "@babel/plugin-transform-unicode-regex": "^7.2.0", - "browserslist": "^4.3.4", - "invariant": "^2.2.2", - "js-levenshtein": "^1.1.3", - "semver": "^5.3.0" - } - }, - "@babel/preset-react": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/@babel/preset-react/download/@babel/preset-react-7.0.0.tgz", - "integrity": "sha1-6GtLPZlDPHs+npF0fiZTlYvGs8A=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-transform-react-display-name": "^7.0.0", - "@babel/plugin-transform-react-jsx": "^7.0.0", - "@babel/plugin-transform-react-jsx-self": "^7.0.0", - "@babel/plugin-transform-react-jsx-source": "^7.0.0" - } - }, - "@babel/preset-typescript": { - "version": "7.1.0", - "resolved": "http://r.cnpmjs.org/@babel/preset-typescript/download/@babel/preset-typescript-7.1.0.tgz", - "integrity": "sha1-Sa1uIIT/C/tfH3+ztedsQ01ELH8=", - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-transform-typescript": "^7.1.0" - } - }, - "@babel/runtime": { - "version": "7.3.1", - "resolved": "http://r.cnpmjs.org/@babel/runtime/download/@babel/runtime-7.3.1.tgz", - "integrity": "sha1-V0sD6OipiY6vSocqkuogt4Rvbyo=", - "requires": { - "regenerator-runtime": "^0.12.0" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.12.1", - "resolved": "http://r.cnpmjs.org/regenerator-runtime/download/regenerator-runtime-0.12.1.tgz", - "integrity": "sha1-+hpxVEdkwDb4xJsToIsllMn4oN4=" - } - } - }, - "@babel/template": { - "version": "7.2.2", - "resolved": "http://r.cnpmjs.org/@babel/template/download/@babel/template-7.2.2.tgz", - "integrity": "sha1-AFs/3w7ZbogEEzA3ng2ppwjrKQc=", - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.2.2", - "@babel/types": "^7.2.2" - } - }, - "@babel/traverse": { - "version": "7.2.3", - "resolved": "http://r.cnpmjs.org/@babel/traverse/download/@babel/traverse-7.2.3.tgz", - "integrity": "sha1-f/UM76nHwL0tgSMf2sEi85V3SNg=", - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.2.2", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/parser": "^7.2.3", - "@babel/types": "^7.2.2", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.10" - } - }, - "@babel/types": { - "version": "7.3.3", - "resolved": "http://r.cnpmjs.org/@babel/types/download/@babel/types-7.3.3.tgz", - "integrity": "sha1-bETRzawqdiW2JCFmV9W8bBB6tDY=", - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.11", - "to-fast-properties": "^2.0.0" - } - }, - "@csstools/convert-colors": { - "version": "1.4.0", - "resolved": "http://r.cnpmjs.org/@csstools/convert-colors/download/@csstools/convert-colors-1.4.0.tgz", - "integrity": "sha1-rUldxBsS511YjG24uYNPCPoTHrc=" - }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "http://r.cnpmjs.org/@mrmlnc/readdir-enhanced/download/@mrmlnc/readdir-enhanced-2.2.1.tgz", - "integrity": "sha1-UkryQNGjYFJ7cwR17PoTRKpUDd4=", - "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - } - }, - "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "http://r.cnpmjs.org/@nodelib/fs.stat/download/@nodelib/fs.stat-1.1.3.tgz", - "integrity": "sha1-K1o6s/kYzKSKjHVMCBaOPwPrphs=" - }, - "@svgr/core": { - "version": "2.4.1", - "resolved": "http://r.cnpmjs.org/@svgr/core/download/@svgr/core-2.4.1.tgz", - "integrity": "sha1-A6QHwoxKHYQwWulQIejqv9qPpzE=", - "requires": { - "camelcase": "^5.0.0", - "cosmiconfig": "^5.0.6", - "h2x-core": "^1.1.0", - "h2x-plugin-jsx": "^1.1.0", - "merge-deep": "^3.0.2", - "prettier": "^1.14.2", - "svgo": "^1.0.5" - } - }, - "@svgr/webpack": { - "version": "2.4.1", - "resolved": "http://r.cnpmjs.org/@svgr/webpack/download/@svgr/webpack-2.4.1.tgz", - "integrity": "sha1-aLxYHstMCfret5Nr0a+s652pYNI=", - "requires": { - "@babel/core": "^7.0.1", - "@babel/plugin-transform-react-constant-elements": "^7.0.0", - "@babel/preset-env": "^7.0.0", - "@babel/preset-react": "^7.0.0", - "@svgr/core": "^2.4.1", - "loader-utils": "^1.1.0" - } - }, - "@types/q": { - "version": "1.5.1", - "resolved": "http://r.cnpmjs.org/@types/q/download/@types/q-1.5.1.tgz", - "integrity": "sha1-SP2YwVYf5xi2FzPa7Ub/EVtJbhg=" - }, - "@types/tapable": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/@types/tapable/download/@types/tapable-1.0.2.tgz", - "integrity": "sha1-4TGC4baYcaQi14Y+EaSm9bgUpL0=" - }, - "@webassemblyjs/ast": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/ast/download/@webassemblyjs/ast-1.7.6.tgz", - "integrity": "sha1-PvjEWz5elDoVOgUoExdHT+9j4h4=", - "requires": { - "@webassemblyjs/helper-module-context": "1.7.6", - "@webassemblyjs/helper-wasm-bytecode": "1.7.6", - "@webassemblyjs/wast-parser": "1.7.6", - "mamacro": "^0.0.3" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/floating-point-hex-parser/download/@webassemblyjs/floating-point-hex-parser-1.7.6.tgz", - "integrity": "sha1-fLN9UaBcP+CbRkrn5xHRqzg3gB8=" - }, - "@webassemblyjs/helper-api-error": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/helper-api-error/download/@webassemblyjs/helper-api-error-1.7.6.tgz", - "integrity": "sha1-mbfjDmb1UKJjgpmhCd2oSmIgcO8=" - }, - "@webassemblyjs/helper-buffer": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/helper-buffer/download/@webassemblyjs/helper-buffer-1.7.6.tgz", - "integrity": "sha1-ugZIvhK75WDCXJl+F1wgGN85yj4=" - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/helper-code-frame/download/@webassemblyjs/helper-code-frame-1.7.6.tgz", - "integrity": "sha1-WpTSGwBXtpp0A/ygwlPDqsqVsaU=", - "requires": { - "@webassemblyjs/wast-printer": "1.7.6" - } - }, - "@webassemblyjs/helper-fsm": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/helper-fsm/download/@webassemblyjs/helper-fsm-1.7.6.tgz", - "integrity": "sha1-rhdBxvYSEhPHoLWH+5ZPrEktPkk=" - }, - "@webassemblyjs/helper-module-context": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/helper-module-context/download/@webassemblyjs/helper-module-context-1.7.6.tgz", - "integrity": "sha1-EW0ZpRps68iQCtU8o0/4JpxmjCM=", - "requires": { - "mamacro": "^0.0.3" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/helper-wasm-bytecode/download/@webassemblyjs/helper-wasm-bytecode-1.7.6.tgz", - "integrity": "sha1-mOUV6u5hGqaDTrX2p/j1sp/vtvE=" - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/helper-wasm-section/download/@webassemblyjs/helper-wasm-section-1.7.6.tgz", - "integrity": "sha1-eDg1hnvdaG33qVN3q2T1GidegzM=", - "requires": { - "@webassemblyjs/ast": "1.7.6", - "@webassemblyjs/helper-buffer": "1.7.6", - "@webassemblyjs/helper-wasm-bytecode": "1.7.6", - "@webassemblyjs/wasm-gen": "1.7.6" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/ieee754/download/@webassemblyjs/ieee754-1.7.6.tgz", - "integrity": "sha1-w0/AWPL4MfrgYyqLuYA88tNGLrE=", - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/leb128/download/@webassemblyjs/leb128-1.7.6.tgz", - "integrity": "sha1-GX91N2op9u1qzhWJijENhx2S8Ds=", - "requires": { - "@xtuc/long": "4.2.1" - } - }, - "@webassemblyjs/utf8": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/utf8/download/@webassemblyjs/utf8-1.7.6.tgz", - "integrity": "sha1-62LGb5Bq8r5w3gMC4pBV0lGIeX0=" - }, - "@webassemblyjs/wasm-edit": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/wasm-edit/download/@webassemblyjs/wasm-edit-1.7.6.tgz", - "integrity": "sha1-+kGSkWDNfWdtTCjs70IO7Vs3M8U=", - "requires": { - "@webassemblyjs/ast": "1.7.6", - "@webassemblyjs/helper-buffer": "1.7.6", - "@webassemblyjs/helper-wasm-bytecode": "1.7.6", - "@webassemblyjs/helper-wasm-section": "1.7.6", - "@webassemblyjs/wasm-gen": "1.7.6", - "@webassemblyjs/wasm-opt": "1.7.6", - "@webassemblyjs/wasm-parser": "1.7.6", - "@webassemblyjs/wast-printer": "1.7.6" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/wasm-gen/download/@webassemblyjs/wasm-gen-1.7.6.tgz", - "integrity": "sha1-aVrDiGGrPXK/djyMdeXwh/+rwyI=", - "requires": { - "@webassemblyjs/ast": "1.7.6", - "@webassemblyjs/helper-wasm-bytecode": "1.7.6", - "@webassemblyjs/ieee754": "1.7.6", - "@webassemblyjs/leb128": "1.7.6", - "@webassemblyjs/utf8": "1.7.6" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/wasm-opt/download/@webassemblyjs/wasm-opt-1.7.6.tgz", - "integrity": "sha1-+6+njifhp1q3WaS2WP89ULRjbCE=", - "requires": { - "@webassemblyjs/ast": "1.7.6", - "@webassemblyjs/helper-buffer": "1.7.6", - "@webassemblyjs/wasm-gen": "1.7.6", - "@webassemblyjs/wasm-parser": "1.7.6" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/wasm-parser/download/@webassemblyjs/wasm-parser-1.7.6.tgz", - "integrity": "sha1-hOr+7/QFrW9MS1d31qKK5U7tUf4=", - "requires": { - "@webassemblyjs/ast": "1.7.6", - "@webassemblyjs/helper-api-error": "1.7.6", - "@webassemblyjs/helper-wasm-bytecode": "1.7.6", - "@webassemblyjs/ieee754": "1.7.6", - "@webassemblyjs/leb128": "1.7.6", - "@webassemblyjs/utf8": "1.7.6" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/wast-parser/download/@webassemblyjs/wast-parser-1.7.6.tgz", - "integrity": "sha1-yk0gsVFuAXyRmBdzvX6BnWvZxqc=", - "requires": { - "@webassemblyjs/ast": "1.7.6", - "@webassemblyjs/floating-point-hex-parser": "1.7.6", - "@webassemblyjs/helper-api-error": "1.7.6", - "@webassemblyjs/helper-code-frame": "1.7.6", - "@webassemblyjs/helper-fsm": "1.7.6", - "@xtuc/long": "4.2.1", - "mamacro": "^0.0.3" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.7.6", - "resolved": "http://r.cnpmjs.org/@webassemblyjs/wast-printer/download/@webassemblyjs/wast-printer-1.7.6.tgz", - "integrity": "sha1-pgAsUmrF+iMP4sbS8b2/SurUOl4=", - "requires": { - "@webassemblyjs/ast": "1.7.6", - "@webassemblyjs/wast-parser": "1.7.6", - "@xtuc/long": "4.2.1" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/@xtuc/ieee754/download/@xtuc/ieee754-1.2.0.tgz", - "integrity": "sha1-7vAUoxRa5Hehy8AM0eVSM23Ot5A=" - }, - "@xtuc/long": { - "version": "4.2.1", - "resolved": "http://r.cnpmjs.org/@xtuc/long/download/@xtuc/long-4.2.1.tgz", - "integrity": "sha1-XIXWYvdvodNFdXZsXc1mFavNMNg=" - }, - "abab": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/abab/download/abab-2.0.0.tgz", - "integrity": "sha1-q6CrTF7uLUx500h9hUUPsjduuw8=" - }, - "accepts": { - "version": "1.3.5", - "resolved": "http://r.cnpmjs.org/accepts/download/accepts-1.3.5.tgz", - "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", - "requires": { - "mime-types": "~2.1.18", - "negotiator": "0.6.1" - } - }, - "acorn": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/acorn/download/acorn-6.1.0.tgz", - "integrity": "sha1-sKO+MXUsl6D3ATxfSQO3GgXbaBg=" - }, - "acorn-dynamic-import": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/acorn-dynamic-import/download/acorn-dynamic-import-3.0.0.tgz", - "integrity": "sha1-kBzu5Mf6rvfgetKkfokGddpQong=", - "requires": { - "acorn": "^5.0.0" - }, - "dependencies": { - "acorn": { - "version": "5.7.3", - "resolved": "http://r.cnpmjs.org/acorn/download/acorn-5.7.3.tgz", - "integrity": "sha1-Z6ojG/iBKXS4UjWpZ3Hra9B+onk=" - } - } - }, - "acorn-globals": { - "version": "4.3.0", - "resolved": "http://r.cnpmjs.org/acorn-globals/download/acorn-globals-4.3.0.tgz", - "integrity": "sha1-47b42jwVUqla5idXH33Wkju1QQM=", - "requires": { - "acorn": "^6.0.1", - "acorn-walk": "^6.0.1" - } - }, - "acorn-jsx": { - "version": "5.0.1", - "resolved": "http://r.cnpmjs.org/acorn-jsx/download/acorn-jsx-5.0.1.tgz", - "integrity": "sha1-MqBk/ZJUKSFqCbFBECv90YX65A4=" - }, - "acorn-walk": { - "version": "6.1.1", - "resolved": "http://r.cnpmjs.org/acorn-walk/download/acorn-walk-6.1.1.tgz", - "integrity": "sha1-02O2b1+sXwGP+cOh57b44xDMORM=" - }, - "address": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/address/download/address-1.0.3.tgz", - "integrity": "sha1-tfUGMfjWzsi9IMljljr7VeBsvOk=" - }, - "ajv": { - "version": "6.9.1", - "resolved": "http://r.cnpmjs.org/ajv/download/ajv-6.9.1.tgz", - "integrity": "sha1-pNNoPXSrxWcOdfCxZSD3CiDqjcE=", - "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://r.cnpmjs.org/ajv-errors/download/ajv-errors-1.0.1.tgz", - "integrity": "sha1-81mGrOuRr63sQQL72FAUlQzvpk0=" - }, - "ajv-keywords": { - "version": "3.4.0", - "resolved": "http://r.cnpmjs.org/ajv-keywords/download/ajv-keywords-3.4.0.tgz", - "integrity": "sha1-S4Mee1MUFafMUYzUBOc/YZPGNJ0=" - }, - "alphanum-sort": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/alphanum-sort/download/alphanum-sort-1.0.2.tgz", - "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=" - }, - "ansi-colors": { - "version": "3.2.3", - "resolved": "http://r.cnpmjs.org/ansi-colors/download/ansi-colors-3.2.3.tgz", - "integrity": "sha1-V9NbhoboUeLMBMQD8cACA5dqGBM=" - }, - "ansi-escapes": { - "version": "3.2.0", - "resolved": "http://r.cnpmjs.org/ansi-escapes/download/ansi-escapes-3.2.0.tgz", - "integrity": "sha1-h4C5j/nb9WOBUtHx/lwde0RCl2s=" - }, - "ansi-html": { - "version": "0.0.7", - "resolved": "http://r.cnpmjs.org/ansi-html/download/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=" - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/ansi-regex/download/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "http://r.cnpmjs.org/ansi-styles/download/ansi-styles-3.2.1.tgz", - "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=", - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/anymatch/download/anymatch-2.0.0.tgz", - "integrity": "sha1-vLJLTzeTTZqnrBe0ra+J58du8us=", - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/arr-diff/download/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "http://r.cnpmjs.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "http://r.cnpmjs.org/expand-brackets/download/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "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": { - "define-property": { - "version": "0.2.5", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=" - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/extglob/download/extglob-2.0.4.tgz", - "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", - "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://r.cnpmjs.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - }, - "micromatch": { - "version": "3.1.10", - "resolved": "http://r.cnpmjs.org/micromatch/download/micromatch-3.1.10.tgz", - "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", - "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" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "append-transform": { - "version": "0.4.0", - "resolved": "http://r.cnpmjs.org/append-transform/download/append-transform-0.4.0.tgz", - "integrity": "sha1-126/jKlNJ24keja61EpLdKthGZE=", - "requires": { - "default-require-extensions": "^1.0.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/aproba/download/aproba-1.2.0.tgz", - "integrity": "sha1-aALmJk79GMeQobDVF/DyYnvyyUo=" - }, - "argparse": { - "version": "1.0.10", - "resolved": "http://r.cnpmjs.org/argparse/download/argparse-1.0.10.tgz", - "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "aria-query": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/aria-query/download/aria-query-3.0.0.tgz", - "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", - "requires": { - "ast-types-flow": "0.0.7", - "commander": "^2.11.0" - } - }, - "arr-diff": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/arr-diff/download/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/arr-flatten/download/arr-flatten-1.1.0.tgz", - "integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE=" - }, - "arr-union": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/arr-union/download/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" - }, - "array-equal": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/array-equal/download/array-equal-1.0.0.tgz", - "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=" - }, - "array-filter": { - "version": "0.0.1", - "resolved": "http://r.cnpmjs.org/array-filter/download/array-filter-0.0.1.tgz", - "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=" - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "http://r.cnpmjs.org/array-flatten/download/array-flatten-2.1.2.tgz", - "integrity": "sha1-JO+AoowaiTYX4hSbDG0NeIKTsJk=" - }, - "array-includes": { - "version": "3.0.3", - "resolved": "http://r.cnpmjs.org/array-includes/download/array-includes-3.0.3.tgz", - "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.7.0" - } - }, - "array-map": { - "version": "0.0.0", - "resolved": "http://r.cnpmjs.org/array-map/download/array-map-0.0.0.tgz", - "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=" - }, - "array-reduce": { - "version": "0.0.0", - "resolved": "http://r.cnpmjs.org/array-reduce/download/array-reduce-0.0.0.tgz", - "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=" - }, - "array-union": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/array-union/download/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/array-uniq/download/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" - }, - "array-unique": { - "version": "0.2.1", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" - }, - "arrify": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/arrify/download/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" - }, - "asap": { - "version": "2.0.6", - "resolved": "http://r.cnpmjs.org/asap/download/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" - }, - "asn1": { - "version": "0.2.4", - "resolved": "http://r.cnpmjs.org/asn1/download/asn1-0.2.4.tgz", - "integrity": "sha1-jSR136tVO7M+d7VOWeiAu4ziMTY=", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "asn1.js": { - "version": "4.10.1", - "resolved": "http://r.cnpmjs.org/asn1.js/download/asn1.js-4.10.1.tgz", - "integrity": "sha1-ucK/WAXx5kqt7tbfOiv6+1pz9aA=", - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "assert": { - "version": "1.4.1", - "resolved": "http://r.cnpmjs.org/assert/download/assert-1.4.1.tgz", - "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", - "requires": { - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/inherits/download/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" - }, - "util": { - "version": "0.10.3", - "resolved": "http://r.cnpmjs.org/util/download/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "requires": { - "inherits": "2.0.1" - } - } - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/assert-plus/download/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/assign-symbols/download/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" - }, - "ast-types-flow": { - "version": "0.0.7", - "resolved": "http://r.cnpmjs.org/ast-types-flow/download/ast-types-flow-0.0.7.tgz", - "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=" - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/astral-regex/download/astral-regex-1.0.0.tgz", - "integrity": "sha1-bIw/uCfdQ+45GPJ7gngqt2WKb9k=" - }, - "async": { - "version": "2.6.2", - "resolved": "http://r.cnpmjs.org/async/download/async-2.6.2.tgz", - "integrity": "sha1-GDMOp+bjE4h/XS8qkEusb+TdU4E=", - "requires": { - "lodash": "^4.17.11" - } - }, - "async-each": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/async-each/download/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=" - }, - "async-limiter": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/async-limiter/download/async-limiter-1.0.0.tgz", - "integrity": "sha1-ePrtjD0HSrgfIrTphdeehzj3IPg=" - }, - "asynckit": { - "version": "0.4.0", - "resolved": "http://r.cnpmjs.org/asynckit/download/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "2.1.2", - "resolved": "http://r.cnpmjs.org/atob/download/atob-2.1.2.tgz", - "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=" - }, - "autoprefixer": { - "version": "9.4.7", - "resolved": "http://r.cnpmjs.org/autoprefixer/download/autoprefixer-9.4.7.tgz", - "integrity": "sha1-+ZeZT5qBDq5Hs4+m2KEZdyBRxP8=", - "requires": { - "browserslist": "^4.4.1", - "caniuse-lite": "^1.0.30000932", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.14", - "postcss-value-parser": "^3.3.1" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "http://r.cnpmjs.org/aws-sign2/download/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "1.8.0", - "resolved": "http://r.cnpmjs.org/aws4/download/aws4-1.8.0.tgz", - "integrity": "sha1-8OAD2cqef1nHpQiUXXsu+aBKVC8=" - }, - "axobject-query": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/axobject-query/download/axobject-query-2.0.2.tgz", - "integrity": "sha1-6hh6vluQArN3+SXYv30cVhrfOPk=", - "requires": { - "ast-types-flow": "0.0.7" - } - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "http://r.cnpmjs.org/babel-code-frame/download/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "http://r.cnpmjs.org/ansi-styles/download/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" - }, - "chalk": { - "version": "1.1.3", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "http://r.cnpmjs.org/js-tokens/download/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "supports-color": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" - } - } - }, - "babel-core": { - "version": "7.0.0-bridge.0", - "resolved": "http://r.cnpmjs.org/babel-core/download/babel-core-7.0.0-bridge.0.tgz", - "integrity": "sha1-laSS3dkPm06aSh2hTrM1uHtjTs4=" - }, - "babel-eslint": { - "version": "9.0.0", - "resolved": "http://r.cnpmjs.org/babel-eslint/download/babel-eslint-9.0.0.tgz", - "integrity": "sha1-fZRF+B7Z9gr/OBFfg4lw358rYiA=", - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "eslint-scope": "3.7.1", - "eslint-visitor-keys": "^1.0.0" - } - }, - "babel-extract-comments": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/babel-extract-comments/download/babel-extract-comments-1.0.0.tgz", - "integrity": "sha1-Cirt+BQX7TkbheGLRhTmk6A1GiE=", - "requires": { - "babylon": "^6.18.0" - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "http://r.cnpmjs.org/babel-generator/download/babel-generator-6.26.1.tgz", - "integrity": "sha1-GERAjTuPDTWkBOp6wYDwh6YBvZA=", - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/jsesc/download/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" - } - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "http://r.cnpmjs.org/babel-helpers/download/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-jest": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/babel-jest/download/babel-jest-23.6.0.tgz", - "integrity": "sha1-pkQjI2ZVeiJAoMCD2msleGGFovE=", - "requires": { - "babel-plugin-istanbul": "^4.1.6", - "babel-preset-jest": "^23.2.0" - } - }, - "babel-loader": { - "version": "8.0.4", - "resolved": "http://r.cnpmjs.org/babel-loader/download/babel-loader-8.0.4.tgz", - "integrity": "sha1-e78gy+RWBini5BU0FHaS0/7L3OY=", - "requires": { - "find-cache-dir": "^1.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1", - "util.promisify": "^1.0.0" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "http://r.cnpmjs.org/babel-messages/download/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-dynamic-import-node": { - "version": "2.2.0", - "resolved": "http://r.cnpmjs.org/babel-plugin-dynamic-import-node/download/babel-plugin-dynamic-import-node-2.2.0.tgz", - "integrity": "sha1-wK37B9lfSkSV6aqsbsOGxNfCUk4=", - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-istanbul": { - "version": "4.1.6", - "resolved": "http://r.cnpmjs.org/babel-plugin-istanbul/download/babel-plugin-istanbul-4.1.6.tgz", - "integrity": "sha1-NsWbIZLvzoHFs3gyG3QXWt0cmkU=", - "requires": { - "babel-plugin-syntax-object-rest-spread": "^6.13.0", - "find-up": "^2.1.0", - "istanbul-lib-instrument": "^1.10.1", - "test-exclude": "^4.2.1" - } - }, - "babel-plugin-jest-hoist": { - "version": "23.2.0", - "resolved": "http://r.cnpmjs.org/babel-plugin-jest-hoist/download/babel-plugin-jest-hoist-23.2.0.tgz", - "integrity": "sha1-5h+uBaHKiAGq3uV6bWa4zvr0QWc=" - }, - "babel-plugin-macros": { - "version": "2.5.0", - "resolved": "http://r.cnpmjs.org/babel-plugin-macros/download/babel-plugin-macros-2.5.0.tgz", - "integrity": "sha1-AfTTtQ7VZ6Z7gKMLnaBm6U9Al7Y=", - "requires": { - "cosmiconfig": "^5.0.5", - "resolve": "^1.8.1" - } - }, - "babel-plugin-named-asset-import": { - "version": "0.3.1", - "resolved": "http://r.cnpmjs.org/babel-plugin-named-asset-import/download/babel-plugin-named-asset-import-0.3.1.tgz", - "integrity": "sha1-XsE+xEbQoeW7bFeh+Uyc3tsMUNY=" - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "http://r.cnpmjs.org/babel-plugin-syntax-object-rest-spread/download/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=" - }, - "babel-plugin-transform-object-rest-spread": { - "version": "6.26.0", - "resolved": "http://r.cnpmjs.org/babel-plugin-transform-object-rest-spread/download/babel-plugin-transform-object-rest-spread-6.26.0.tgz", - "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", - "requires": { - "babel-plugin-syntax-object-rest-spread": "^6.8.0", - "babel-runtime": "^6.26.0" - } - }, - "babel-plugin-transform-react-remove-prop-types": { - "version": "0.4.24", - "resolved": "http://r.cnpmjs.org/babel-plugin-transform-react-remove-prop-types/download/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz", - "integrity": "sha1-8u2vm0xqX75cHWeL+1MQeMFVXzo=" - }, - "babel-preset-jest": { - "version": "23.2.0", - "resolved": "http://r.cnpmjs.org/babel-preset-jest/download/babel-preset-jest-23.2.0.tgz", - "integrity": "sha1-jsegOhOPABoaj7HoETZSvxpV2kY=", - "requires": { - "babel-plugin-jest-hoist": "^23.2.0", - "babel-plugin-syntax-object-rest-spread": "^6.13.0" - } - }, - "babel-preset-react-app": { - "version": "7.0.1", - "resolved": "http://r.cnpmjs.org/babel-preset-react-app/download/babel-preset-react-app-7.0.1.tgz", - "integrity": "sha1-jdf+9z+6EkpuFA0kUYXKZXqUMxM=", - "requires": { - "@babel/core": "7.2.2", - "@babel/plugin-proposal-class-properties": "7.3.0", - "@babel/plugin-proposal-decorators": "7.3.0", - "@babel/plugin-proposal-object-rest-spread": "7.3.2", - "@babel/plugin-syntax-dynamic-import": "7.2.0", - "@babel/plugin-transform-classes": "7.2.2", - "@babel/plugin-transform-destructuring": "7.3.2", - "@babel/plugin-transform-flow-strip-types": "7.2.3", - "@babel/plugin-transform-react-constant-elements": "7.2.0", - "@babel/plugin-transform-react-display-name": "7.2.0", - "@babel/plugin-transform-runtime": "7.2.0", - "@babel/preset-env": "7.3.1", - "@babel/preset-react": "7.0.0", - "@babel/preset-typescript": "7.1.0", - "@babel/runtime": "7.3.1", - "babel-loader": "8.0.5", - "babel-plugin-dynamic-import-node": "2.2.0", - "babel-plugin-macros": "2.5.0", - "babel-plugin-transform-react-remove-prop-types": "0.4.24" - }, - "dependencies": { - "@babel/core": { - "version": "7.2.2", - "resolved": "http://r.cnpmjs.org/@babel/core/download/@babel/core-7.2.2.tgz", - "integrity": "sha1-B626bd4nu1rY2GcvFf3j4IGEpoc=", - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.2.2", - "@babel/helpers": "^7.2.0", - "@babel/parser": "^7.2.2", - "@babel/template": "^7.2.2", - "@babel/traverse": "^7.2.2", - "@babel/types": "^7.2.2", - "convert-source-map": "^1.1.0", - "debug": "^4.1.0", - "json5": "^2.1.0", - "lodash": "^4.17.10", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.2.2", - "resolved": "http://r.cnpmjs.org/@babel/plugin-transform-classes/download/@babel/plugin-transform-classes-7.2.2.tgz", - "integrity": "sha1-bJBULyEO6XWqKqjIta9/pzoSaVM=", - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-define-map": "^7.1.0", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "globals": "^11.1.0" - } - }, - "babel-loader": { - "version": "8.0.5", - "resolved": "http://r.cnpmjs.org/babel-loader/download/babel-loader-8.0.5.tgz", - "integrity": "sha1-IlMi11CcIVdlWEC7pS5GtsLy/jM=", - "requires": { - "find-cache-dir": "^2.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1", - "util.promisify": "^1.0.0" - } - }, - "find-cache-dir": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/find-cache-dir/download/find-cache-dir-2.0.0.tgz", - "integrity": "sha1-TB+u1Z9FGEUw+51/oSOk0EqYRy0=", - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/find-up/download/find-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/locate-path/download/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/p-limit/download/p-limit-2.1.0.tgz", - "integrity": "sha1-HVoNIPsScHx1imVfa7xDhrWTDWg=", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/p-locate/download/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/p-try/download/p-try-2.0.0.tgz", - "integrity": "sha1-hQgLuHxkaI+keZb+j3376CEXYLE=" - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/pkg-dir/download/pkg-dir-3.0.0.tgz", - "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=", - "requires": { - "find-up": "^3.0.0" - } - } - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "http://r.cnpmjs.org/babel-register/download/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - }, - "dependencies": { - "babel-core": { - "version": "6.26.3", - "resolved": "http://r.cnpmjs.org/babel-core/download/babel-core-6.26.3.tgz", - "integrity": "sha1-suLwnjQtDwyI4vAuBneUEl51wgc=", - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "json5": { - "version": "0.5.1", - "resolved": "http://r.cnpmjs.org/json5/download/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "http://r.cnpmjs.org/babel-runtime/download/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "http://r.cnpmjs.org/babel-template/download/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "http://r.cnpmjs.org/babel-traverse/download/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "http://r.cnpmjs.org/globals/download/globals-9.18.0.tgz", - "integrity": "sha1-qjiWs+abSH8X4x7SFD1pqOMMLYo=" - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "http://r.cnpmjs.org/babel-types/download/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - }, - "dependencies": { - "to-fast-properties": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/to-fast-properties/download/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" - } - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "http://r.cnpmjs.org/babylon/download/babylon-6.18.0.tgz", - "integrity": "sha1-ry87iPpvXB5MY00aD46sT1WzleM=" - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/balanced-match/download/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "base": { - "version": "0.11.2", - "resolved": "http://r.cnpmjs.org/base/download/base-0.11.2.tgz", - "integrity": "sha1-e95c7RRbbVUakNuH+DxVi060io8=", - "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://r.cnpmjs.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - } - } - }, - "base64-js": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/base64-js/download/base64-js-1.3.0.tgz", - "integrity": "sha1-yrHmEY8FEJXli1KBrqjBzSK/wOM=" - }, - "batch": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/batch/download/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bfj": { - "version": "6.1.1", - "resolved": "http://r.cnpmjs.org/bfj/download/bfj-6.1.1.tgz", - "integrity": "sha1-BaO3eE+9cs+jwi5WAC75kzZRbEg=", - "requires": { - "bluebird": "^3.5.1", - "check-types": "^7.3.0", - "hoopy": "^0.1.2", - "tryer": "^1.0.0" - } - }, - "big.js": { - "version": "5.2.2", - "resolved": "http://r.cnpmjs.org/big.js/download/big.js-5.2.2.tgz", - "integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=" - }, - "binary-extensions": { - "version": "1.13.0", - "resolved": "http://r.cnpmjs.org/binary-extensions/download/binary-extensions-1.13.0.tgz", - "integrity": "sha1-lSPgATBqMkRLkHQj8d4hZCIvarE=" - }, - "bluebird": { - "version": "3.5.3", - "resolved": "http://r.cnpmjs.org/bluebird/download/bluebird-3.5.3.tgz", - "integrity": "sha1-fQHG+WFsmlGrD4xUmnnf5uwz76c=" - }, - "bn.js": { - "version": "4.11.8", - "resolved": "http://r.cnpmjs.org/bn.js/download/bn.js-4.11.8.tgz", - "integrity": "sha1-LN4J617jQfSEdGuwMJsyU7GxRC8=" - }, - "body-parser": { - "version": "1.18.3", - "resolved": "http://r.cnpmjs.org/body-parser/download/body-parser-1.18.3.tgz", - "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", - "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://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.23", - "resolved": "http://r.cnpmjs.org/iconv-lite/download/iconv-lite-0.4.23.tgz", - "integrity": "sha1-KXhx9jvlB63Pv8pxXQzQ7thOmmM=", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "bonjour": { - "version": "3.5.0", - "resolved": "http://r.cnpmjs.org/bonjour/download/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", - "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://r.cnpmjs.org/boolbase/download/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "http://r.cnpmjs.org/brace-expansion/download/brace-expansion-1.1.11.tgz", - "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "1.8.5", - "resolved": "http://r.cnpmjs.org/braces/download/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/brorand/download/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "browser-process-hrtime": { - "version": "0.1.3", - "resolved": "http://r.cnpmjs.org/browser-process-hrtime/download/browser-process-hrtime-0.1.3.tgz", - "integrity": "sha1-YW8A+u8d9+wbW/nP4r3DFw8mx7Q=" - }, - "browser-resolve": { - "version": "1.11.3", - "resolved": "http://r.cnpmjs.org/browser-resolve/download/browser-resolve-1.11.3.tgz", - "integrity": "sha1-m3y7PQ9RDky4a9vXlhJNKLWJCvY=", - "requires": { - "resolve": "1.1.7" - }, - "dependencies": { - "resolve": { - "version": "1.1.7", - "resolved": "http://r.cnpmjs.org/resolve/download/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" - } - } - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/browserify-aes/download/browserify-aes-1.2.0.tgz", - "integrity": "sha1-Mmc0ZC9APavDADIJhTu3CtQo70g=", - "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://r.cnpmjs.org/browserify-cipher/download/browserify-cipher-1.0.1.tgz", - "integrity": "sha1-jWR0wbhwv9q807z8wZNKEOlPFfA=", - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/browserify-des/download/browserify-des-1.0.2.tgz", - "integrity": "sha1-OvTx9Zg5QDVy8cZiBDdfen9wPpw=", - "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://r.cnpmjs.org/browserify-rsa/download/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" - } - }, - "browserify-sign": { - "version": "4.0.4", - "resolved": "http://r.cnpmjs.org/browserify-sign/download/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", - "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://r.cnpmjs.org/browserify-zlib/download/browserify-zlib-0.2.0.tgz", - "integrity": "sha1-KGlFnZqjviRf6P4sofRuLn9U1z8=", - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.4.1", - "resolved": "http://r.cnpmjs.org/browserslist/download/browserslist-4.4.1.tgz", - "integrity": "sha1-QugolUtrKaelPjUid75ClHimkGI=", - "requires": { - "caniuse-lite": "^1.0.30000929", - "electron-to-chromium": "^1.3.103", - "node-releases": "^1.1.3" - } - }, - "bser": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/bser/download/bser-2.0.0.tgz", - "integrity": "sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk=", - "requires": { - "node-int64": "^0.4.0" - } - }, - "buffer": { - "version": "4.9.1", - "resolved": "http://r.cnpmjs.org/buffer/download/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/buffer-from/download/buffer-from-1.1.1.tgz", - "integrity": "sha1-MnE7wCj3XAL9txDXx7zsHyxgcO8=" - }, - "buffer-indexof": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/buffer-indexof/download/buffer-indexof-1.1.1.tgz", - "integrity": "sha1-Uvq8xqYG0aADAoAmSO9o9jnaJow=" - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/buffer-xor/download/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/builtin-status-codes/download/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" - }, - "bytes": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/bytes/download/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" - }, - "cacache": { - "version": "11.3.2", - "resolved": "http://r.cnpmjs.org/cacache/download/cacache-11.3.2.tgz", - "integrity": "sha1-LYHjCOPSWMo4Eltna5iyrJzmm/o=", - "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" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "http://r.cnpmjs.org/lru-cache/download/lru-cache-5.1.1.tgz", - "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=", - "requires": { - "yallist": "^3.0.2" - } - }, - "y18n": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/y18n/download/y18n-4.0.0.tgz", - "integrity": "sha1-le+U+F7MgdAHwmThkKEg8KPIVms=" - }, - "yallist": { - "version": "3.0.3", - "resolved": "http://r.cnpmjs.org/yallist/download/yallist-3.0.3.tgz", - "integrity": "sha1-tLBJ4xS+VF486AIjbWzSLNkcPek=" - } - } - }, - "cache-base": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/cache-base/download/cache-base-1.0.1.tgz", - "integrity": "sha1-Cn9GQWgxyLZi7jb+TnxZ129marI=", - "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" - } - }, - "call-me-maybe": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/call-me-maybe/download/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=" - }, - "caller-callsite": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/caller-callsite/download/caller-callsite-2.0.0.tgz", - "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", - "requires": { - "callsites": "^2.0.0" - } - }, - "caller-path": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/caller-path/download/caller-path-2.0.0.tgz", - "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", - "requires": { - "caller-callsite": "^2.0.0" - } - }, - "callsites": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/callsites/download/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=" - }, - "camel-case": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/camel-case/download/camel-case-3.0.0.tgz", - "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", - "requires": { - "no-case": "^2.2.0", - "upper-case": "^1.1.1" - } - }, - "camelcase": { - "version": "5.0.0", - "resolved": "http://r.cnpmjs.org/camelcase/download/camelcase-5.0.0.tgz", - "integrity": "sha1-AylVJ9WL081Kp1Nj81sujZe+L0I=" - }, - "caniuse-api": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/caniuse-api/download/caniuse-api-3.0.0.tgz", - "integrity": "sha1-Xk2Q4idJYdRikZl99Znj7QCO5MA=", - "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.30000938", - "resolved": "http://r.cnpmjs.org/caniuse-lite/download/caniuse-lite-1.0.30000938.tgz", - "integrity": "sha1-tkvxQnQ430AYP86RD+JONP7aej8=" - }, - "capture-exit": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/capture-exit/download/capture-exit-1.2.0.tgz", - "integrity": "sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28=", - "requires": { - "rsvp": "^3.3.3" - } - }, - "case-sensitive-paths-webpack-plugin": { - "version": "2.1.2", - "resolved": "http://r.cnpmjs.org/case-sensitive-paths-webpack-plugin/download/case-sensitive-paths-webpack-plugin-2.1.2.tgz", - "integrity": "sha1-yJm1IXV2NokiRXHa13h0LhM/AZI=" - }, - "caseless": { - "version": "0.12.0", - "resolved": "http://r.cnpmjs.org/caseless/download/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "chalk": { - "version": "2.4.1", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.1.tgz", - "integrity": "sha1-GMSasWoDe26wFSzIPjRxM4IVtm4=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "http://r.cnpmjs.org/chardet/download/chardet-0.7.0.tgz", - "integrity": "sha1-kAlISfCTfy7twkJdDSip5fDLrZ4=" - }, - "check-types": { - "version": "7.4.0", - "resolved": "http://r.cnpmjs.org/check-types/download/check-types-7.4.0.tgz", - "integrity": "sha1-A3jsG5YW7HH3dJMaPGUW+tjBUvQ=" - }, - "chokidar": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/chokidar/download/chokidar-2.1.1.tgz", - "integrity": "sha1-rcOa1Voq3yZUi9KvoEj2EQkfkYQ=", - "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.0" - }, - "dependencies": { - "array-unique": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "http://r.cnpmjs.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "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" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - } - }, - "fsevents": { - "version": "1.2.7", - "resolved": "http://r.cnpmjs.org/fsevents/download/fsevents-1.2.7.tgz", - "integrity": "sha1-SFG2ZKN4PlIAOzxm6w7uEHSTOqQ=", - "optional": true, - "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "bundled": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "debug": { - "version": "2.6.9", - "bundled": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": 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", - "bundled": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "optional": true - }, - "minipass": { - "version": "2.3.5", - "bundled": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "bundled": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "optional": true - }, - "needle": { - "version": "2.2.4", - "bundled": true, - "optional": true, - "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.10.3", - "bundled": 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", - "bundled": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.5", - "bundled": true, - "optional": true - }, - "npm-packlist": { - "version": "1.2.0", - "bundled": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": 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", - "bundled": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "optional": true - }, - "semver": { - "version": "5.6.0", - "bundled": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "bundled": 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", - "bundled": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "yallist": { - "version": "3.0.3", - "bundled": true, - "optional": true - } - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/glob-parent/download/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/is-glob/download/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/is-extglob/download/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - }, - "is-glob": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/is-glob/download/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/normalize-path/download/normalize-path-3.0.0.tgz", - "integrity": "sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU=" - } - } - }, - "chownr": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/chownr/download/chownr-1.1.1.tgz", - "integrity": "sha1-VHJri4//TfBTxCGH6AH7RBLfFJQ=" - }, - "chrome-trace-event": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/chrome-trace-event/download/chrome-trace-event-1.0.0.tgz", - "integrity": "sha1-Rakb0sIMlBHwljtarrmhuV4JzEg=", - "requires": { - "tslib": "^1.9.0" - } - }, - "ci-info": { - "version": "1.6.0", - "resolved": "http://r.cnpmjs.org/ci-info/download/ci-info-1.6.0.tgz", - "integrity": "sha1-LKINu5zrMtRSSmgzAzE/AwSx5Jc=" - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/cipher-base/download/cipher-base-1.0.4.tgz", - "integrity": "sha1-h2Dk7MJy9MNjUy+SbYdKriwTl94=", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "circular-json": { - "version": "0.3.3", - "resolved": "http://r.cnpmjs.org/circular-json/download/circular-json-0.3.3.tgz", - "integrity": "sha1-gVyZ6oT2gJUp0vRXkb34JxE1LWY=" - }, - "class-utils": { - "version": "0.3.6", - "resolved": "http://r.cnpmjs.org/class-utils/download/class-utils-0.3.6.tgz", - "integrity": "sha1-+TNprouafOAv1B+q0MqDAzGQxGM=", - "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://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "clean-css": { - "version": "4.2.1", - "resolved": "http://r.cnpmjs.org/clean-css/download/clean-css-4.2.1.tgz", - "integrity": "sha1-LUEe92uFabbQyEBo2r6FsKpeXBc=", - "requires": { - "source-map": "~0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - } - } - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/cli-cursor/download/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-width": { - "version": "2.2.0", - "resolved": "http://r.cnpmjs.org/cli-width/download/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=" - }, - "cliui": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/cliui/download/cliui-4.1.0.tgz", - "integrity": "sha1-NIQi2+gtgAswIu709qwQvy5NG0k=", - "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://r.cnpmjs.org/ansi-regex/download/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/strip-ansi/download/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "clone-deep": { - "version": "0.2.4", - "resolved": "http://r.cnpmjs.org/clone-deep/download/clone-deep-0.2.4.tgz", - "integrity": "sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY=", - "requires": { - "for-own": "^0.1.3", - "is-plain-object": "^2.0.1", - "kind-of": "^3.0.2", - "lazy-cache": "^1.0.3", - "shallow-clone": "^0.1.2" - } - }, - "co": { - "version": "4.6.0", - "resolved": "http://r.cnpmjs.org/co/download/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" - }, - "coa": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/coa/download/coa-2.0.2.tgz", - "integrity": "sha1-Q/bCEVG07yv1cYfbDXPeIp4+fsM=", - "requires": { - "@types/q": "^1.5.1", - "chalk": "^2.4.1", - "q": "^1.1.2" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/code-point-at/download/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/collection-visit/download/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/color/download/color-3.1.0.tgz", - "integrity": "sha1-2On7CWcyh1d0yEv5IoFd8DCND/w=", - "requires": { - "color-convert": "^1.9.1", - "color-string": "^1.5.2" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "http://r.cnpmjs.org/color-convert/download/color-convert-1.9.3.tgz", - "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "http://r.cnpmjs.org/color-name/download/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "color-string": { - "version": "1.5.3", - "resolved": "http://r.cnpmjs.org/color-string/download/color-string-1.5.3.tgz", - "integrity": "sha1-ybvF8BtYtUkvPWhXRZy2WQziBMw=", - "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "colors": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/colors/download/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=" - }, - "combined-stream": { - "version": "1.0.7", - "resolved": "http://r.cnpmjs.org/combined-stream/download/combined-stream-1.0.7.tgz", - "integrity": "sha1-LR0kMXr7ir6V1tLAsHtXgTU52Cg=", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.19.0", - "resolved": "http://r.cnpmjs.org/commander/download/commander-2.19.0.tgz", - "integrity": "sha1-9hmKqE5bg8RgVLlN3tv+1e6f8So=" - }, - "common-tags": { - "version": "1.8.0", - "resolved": "http://r.cnpmjs.org/common-tags/download/common-tags-1.8.0.tgz", - "integrity": "sha1-jjFT5ULUo56bEFVENK+q+YlWqTc=" - }, - "commondir": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/commondir/download/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" - }, - "component-emitter": { - "version": "1.2.1", - "resolved": "http://r.cnpmjs.org/component-emitter/download/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" - }, - "compressible": { - "version": "2.0.15", - "resolved": "http://r.cnpmjs.org/compressible/download/compressible-2.0.15.tgz", - "integrity": "sha1-hXqasKfloH2Ng37UP+Le//ZP4hI=", - "requires": { - "mime-db": ">= 1.36.0 < 2" - } - }, - "compression": { - "version": "1.7.3", - "resolved": "http://r.cnpmjs.org/compression/download/compression-1.7.3.tgz", - "integrity": "sha1-J+DhdqryYPfywoE8PkQK258Zk9s=", - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.14", - "debug": "2.6.9", - "on-headers": "~1.0.1", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "http://r.cnpmjs.org/concat-map/download/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "http://r.cnpmjs.org/concat-stream/download/concat-stream-1.6.2.tgz", - "integrity": "sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ=", - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "confusing-browser-globals": { - "version": "1.0.5", - "resolved": "http://r.cnpmjs.org/confusing-browser-globals/download/confusing-browser-globals-1.0.5.tgz", - "integrity": "sha1-AXEFDP3UJh4niXgHi8AMTYjhNfQ=" - }, - "connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "http://r.cnpmjs.org/connect-history-api-fallback/download/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha1-izIIk1kwjRERFdgcrT/Oq4iPl7w=" - }, - "console-browserify": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/console-browserify/download/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", - "requires": { - "date-now": "^0.1.4" - } - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/constants-browserify/download/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" - }, - "contains-path": { - "version": "0.1.0", - "resolved": "http://r.cnpmjs.org/contains-path/download/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=" - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "http://r.cnpmjs.org/content-disposition/download/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" - }, - "content-type": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/content-type/download/content-type-1.0.4.tgz", - "integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js=" - }, - "convert-source-map": { - "version": "1.6.0", - "resolved": "http://r.cnpmjs.org/convert-source-map/download/convert-source-map-1.6.0.tgz", - "integrity": "sha1-UbU3qMQ+DwTewZk7/83VBOdYrCA=", - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.3.1", - "resolved": "http://r.cnpmjs.org/cookie/download/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "http://r.cnpmjs.org/cookie-signature/download/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "http://r.cnpmjs.org/copy-concurrently/download/copy-concurrently-1.0.5.tgz", - "integrity": "sha1-kilzmMrjSTf8r9bsgTnBgFHwteA=", - "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://r.cnpmjs.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" - }, - "core-js": { - "version": "2.6.5", - "resolved": "http://r.cnpmjs.org/core-js/download/core-js-2.6.5.tgz", - "integrity": "sha1-RLyNJJ5/sv9dAOA0Gn/7lPv2eJU=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/core-util-is/download/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "cosmiconfig": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/cosmiconfig/download/cosmiconfig-5.1.0.tgz", - "integrity": "sha1-bFw16X83+YUGHN9lPxFHhCMRhc8=", - "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.9.0", - "lodash.get": "^4.4.2", - "parse-json": "^4.0.0" - } - }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "http://r.cnpmjs.org/create-ecdh/download/create-ecdh-4.0.3.tgz", - "integrity": "sha1-yREbbzMEXEaX8UR4f5JUzcd8Rf8=", - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/create-hash/download/create-hash-1.2.0.tgz", - "integrity": "sha1-iJB4rxGmN1a8+1m9IhmWvjqe8ZY=", - "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://r.cnpmjs.org/create-hmac/download/create-hmac-1.1.7.tgz", - "integrity": "sha1-aRcMeLOrlXFHsriwRXLkfq0iQ/8=", - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "http://r.cnpmjs.org/cross-spawn/download/cross-spawn-6.0.5.tgz", - "integrity": "sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q=", - "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://r.cnpmjs.org/crypto-browserify/download/crypto-browserify-3.12.0.tgz", - "integrity": "sha1-OWz58xN/A+S45TLFj2mCVOAPgOw=", - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "css-color-names": { - "version": "0.0.4", - "resolved": "http://r.cnpmjs.org/css-color-names/download/css-color-names-0.0.4.tgz", - "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=" - }, - "css-declaration-sorter": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/css-declaration-sorter/download/css-declaration-sorter-4.0.1.tgz", - "integrity": "sha1-wZiUD2OnbX42wecQGLABchBUyyI=", - "requires": { - "postcss": "^7.0.1", - "timsort": "^0.3.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "css-loader": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/css-loader/download/css-loader-1.0.0.tgz", - "integrity": "sha1-n0aqpcpB2+MYYOO2K44jxCkWv1Y=", - "requires": { - "babel-code-frame": "^6.26.0", - "css-selector-tokenizer": "^0.7.0", - "icss-utils": "^2.1.0", - "loader-utils": "^1.0.2", - "lodash.camelcase": "^4.3.0", - "postcss": "^6.0.23", - "postcss-modules-extract-imports": "^1.2.0", - "postcss-modules-local-by-default": "^1.2.0", - "postcss-modules-scope": "^1.1.0", - "postcss-modules-values": "^1.3.0", - "postcss-value-parser": "^3.3.0", - "source-list-map": "^2.0.0" - } - }, - "css-select": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/css-select/download/css-select-2.0.2.tgz", - "integrity": "sha1-q0OGzsnh9miFVWSxfDcztDsqXt4=", - "requires": { - "boolbase": "^1.0.0", - "css-what": "^2.1.2", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" - } - }, - "css-select-base-adapter": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/css-select-base-adapter/download/css-select-base-adapter-0.1.1.tgz", - "integrity": "sha1-Oy/0lyzDYquIVhUHqVQIoUMhNdc=" - }, - "css-selector-tokenizer": { - "version": "0.7.1", - "resolved": "http://r.cnpmjs.org/css-selector-tokenizer/download/css-selector-tokenizer-0.7.1.tgz", - "integrity": "sha1-oXcnGovKUBkXL0+JH8bu2cv2jV0=", - "requires": { - "cssesc": "^0.1.0", - "fastparse": "^1.1.1", - "regexpu-core": "^1.0.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "http://r.cnpmjs.org/jsesc/download/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" - }, - "regexpu-core": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/regexpu-core/download/regexpu-core-1.0.0.tgz", - "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "http://r.cnpmjs.org/regjsgen/download/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=" - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "http://r.cnpmjs.org/regjsparser/download/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "requires": { - "jsesc": "~0.5.0" - } - } - } - }, - "css-tree": { - "version": "1.0.0-alpha.28", - "resolved": "http://r.cnpmjs.org/css-tree/download/css-tree-1.0.0-alpha.28.tgz", - "integrity": "sha1-joloGQ2IbJR3vI1h6W9hrz9/+n8=", - "requires": { - "mdn-data": "~1.1.0", - "source-map": "^0.5.3" - } - }, - "css-unit-converter": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/css-unit-converter/download/css-unit-converter-1.1.1.tgz", - "integrity": "sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY=" - }, - "css-url-regex": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/css-url-regex/download/css-url-regex-1.1.0.tgz", - "integrity": "sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w=" - }, - "css-what": { - "version": "2.1.3", - "resolved": "http://r.cnpmjs.org/css-what/download/css-what-2.1.3.tgz", - "integrity": "sha1-ptdgRXM2X+dGhsPzEcVlE9iChfI=" - }, - "cssdb": { - "version": "4.3.0", - "resolved": "http://r.cnpmjs.org/cssdb/download/cssdb-4.3.0.tgz", - "integrity": "sha1-LhIpkAYW+Axm/y1WjqK0+S2xx4w=" - }, - "cssesc": { - "version": "0.1.0", - "resolved": "http://r.cnpmjs.org/cssesc/download/cssesc-0.1.0.tgz", - "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=" - }, - "cssnano": { - "version": "4.1.10", - "resolved": "http://r.cnpmjs.org/cssnano/download/cssnano-4.1.10.tgz", - "integrity": "sha1-CsQfCxPRPUZUh+ERt3jULaYxuLI=", - "requires": { - "cosmiconfig": "^5.0.0", - "cssnano-preset-default": "^4.0.7", - "is-resolvable": "^1.0.0", - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "cssnano-preset-default": { - "version": "4.0.7", - "resolved": "http://r.cnpmjs.org/cssnano-preset-default/download/cssnano-preset-default-4.0.7.tgz", - "integrity": "sha1-UexmLM/KD4izltzZZ5zbkxvhf3Y=", - "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" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "cssnano-util-get-arguments": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/cssnano-util-get-arguments/download/cssnano-util-get-arguments-4.0.0.tgz", - "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=" - }, - "cssnano-util-get-match": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/cssnano-util-get-match/download/cssnano-util-get-match-4.0.0.tgz", - "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=" - }, - "cssnano-util-raw-cache": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/cssnano-util-raw-cache/download/cssnano-util-raw-cache-4.0.1.tgz", - "integrity": "sha1-sm1f1fcqEd/np4RvtMZyYPlr8oI=", - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "cssnano-util-same-parent": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/cssnano-util-same-parent/download/cssnano-util-same-parent-4.0.1.tgz", - "integrity": "sha1-V0CC+yhZ0ttDOFWDXZqEVuoYu/M=" - }, - "csso": { - "version": "3.5.1", - "resolved": "http://r.cnpmjs.org/csso/download/csso-3.5.1.tgz", - "integrity": "sha1-e564vmFiiXPBsmHhadLwJACOdYs=", - "requires": { - "css-tree": "1.0.0-alpha.29" - }, - "dependencies": { - "css-tree": { - "version": "1.0.0-alpha.29", - "resolved": "http://r.cnpmjs.org/css-tree/download/css-tree-1.0.0-alpha.29.tgz", - "integrity": "sha1-P6nU7zFCy9HDAedmTB81K9gvWjk=", - "requires": { - "mdn-data": "~1.1.0", - "source-map": "^0.5.3" - } - } - } - }, - "cssom": { - "version": "0.3.6", - "resolved": "http://r.cnpmjs.org/cssom/download/cssom-0.3.6.tgz", - "integrity": "sha1-+FIGzuBO+oQfPFmCp0uparINZa0=" - }, - "cssstyle": { - "version": "1.2.1", - "resolved": "http://r.cnpmjs.org/cssstyle/download/cssstyle-1.2.1.tgz", - "integrity": "sha1-Os6ydZ6vUUrBohYo1yPWBDqBlJU=", - "requires": { - "cssom": "0.3.x" - } - }, - "cyclist": { - "version": "0.2.2", - "resolved": "http://r.cnpmjs.org/cyclist/download/cyclist-0.2.2.tgz", - "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=" - }, - "damerau-levenshtein": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/damerau-levenshtein/download/damerau-levenshtein-1.0.4.tgz", - "integrity": "sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ=" - }, - "dashdash": { - "version": "1.14.1", - "resolved": "http://r.cnpmjs.org/dashdash/download/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "data-urls": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/data-urls/download/data-urls-1.1.0.tgz", - "integrity": "sha1-Fe4Fgrql4iu1nHcUDaj5x2lju/4=", - "requires": { - "abab": "^2.0.0", - "whatwg-mimetype": "^2.2.0", - "whatwg-url": "^7.0.0" - } - }, - "date-now": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/date-now/download/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" - }, - "debug": { - "version": "4.1.1", - "resolved": "http://r.cnpmjs.org/debug/download/debug-4.1.1.tgz", - "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", - "requires": { - "ms": "^2.1.1" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/decamelize/download/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "http://r.cnpmjs.org/decode-uri-component/download/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "deep-equal": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/deep-equal/download/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=" - }, - "deep-is": { - "version": "0.1.3", - "resolved": "http://r.cnpmjs.org/deep-is/download/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - }, - "default-gateway": { - "version": "2.7.2", - "resolved": "http://r.cnpmjs.org/default-gateway/download/default-gateway-2.7.2.tgz", - "integrity": "sha1-t+8znl4CSwRUZ69APVA0jbRkLQ8=", - "requires": { - "execa": "^0.10.0", - "ip-regex": "^2.1.0" - }, - "dependencies": { - "execa": { - "version": "0.10.0", - "resolved": "http://r.cnpmjs.org/execa/download/execa-0.10.0.tgz", - "integrity": "sha1-/0Vqj1P5D47MxxqW0Rvfx/CCy1A=", - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^3.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" - } - } - } - }, - "default-require-extensions": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/default-require-extensions/download/default-require-extensions-1.0.0.tgz", - "integrity": "sha1-836hXT4T/9m0N9M+GnW1+5eHTLg=", - "requires": { - "strip-bom": "^2.0.0" - } - }, - "define-properties": { - "version": "1.1.3", - "resolved": "http://r.cnpmjs.org/define-properties/download/define-properties-1.1.3.tgz", - "integrity": "sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=", - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-2.0.2.tgz", - "integrity": "sha1-1Flono1lS6d+AqgX+HENcCyxbp0=", - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - } - } - }, - "del": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/del/download/del-3.0.0.tgz", - "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", - "requires": { - "globby": "^6.1.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "p-map": "^1.1.1", - "pify": "^3.0.0", - "rimraf": "^2.2.8" - }, - "dependencies": { - "globby": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/globby/download/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "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://r.cnpmjs.org/pify/download/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - } - } - }, - "pify": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/delayed-stream/download/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "depd": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/depd/download/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "des.js": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/des.js/download/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "destroy": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/destroy/download/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/detect-indent/download/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "requires": { - "repeating": "^2.0.0" - } - }, - "detect-newline": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/detect-newline/download/detect-newline-2.1.0.tgz", - "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=" - }, - "detect-node": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/detect-node/download/detect-node-2.0.4.tgz", - "integrity": "sha1-AU7o+PZpxcWAI9pkuBecCDooxGw=" - }, - "detect-port-alt": { - "version": "1.1.6", - "resolved": "http://r.cnpmjs.org/detect-port-alt/download/detect-port-alt-1.1.6.tgz", - "integrity": "sha1-JHB96r6TLUo89iEwICfCsmZWgnU=", - "requires": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "diff": { - "version": "3.5.0", - "resolved": "http://r.cnpmjs.org/diff/download/diff-3.5.0.tgz", - "integrity": "sha1-gAwN0eCov7yVg1wgKtIg/jF+WhI=" - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "http://r.cnpmjs.org/diffie-hellman/download/diffie-hellman-5.0.3.tgz", - "integrity": "sha1-QOjumPVaIUlgcUaSHGPhrl89KHU=", - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "dir-glob": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/dir-glob/download/dir-glob-2.0.0.tgz", - "integrity": "sha1-CyBdK2rvmCOMooZZioIE0p0KADQ=", - "requires": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - }, - "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/path-type/download/path-type-3.0.0.tgz", - "integrity": "sha1-zvMdyOCho7sNEFwM2Xzzv0f0428=", - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/dns-equal/download/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=" - }, - "dns-packet": { - "version": "1.3.1", - "resolved": "http://r.cnpmjs.org/dns-packet/download/dns-packet-1.3.1.tgz", - "integrity": "sha1-EqpCaYEHW+UAuRDu3NC0fdfe2lo=", - "requires": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" - } - }, - "dns-txt": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/dns-txt/download/dns-txt-2.0.2.tgz", - "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", - "requires": { - "buffer-indexof": "^1.0.0" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/doctrine/download/doctrine-2.1.0.tgz", - "integrity": "sha1-XNAfwQFiG0LEzX9dGmYkNxbT850=", - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-converter": { - "version": "0.2.0", - "resolved": "http://r.cnpmjs.org/dom-converter/download/dom-converter-0.2.0.tgz", - "integrity": "sha1-ZyGp2u4uKTaClVtq/kFncWJ7t2g=", - "requires": { - "utila": "~0.4" - } - }, - "dom-serializer": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/dom-serializer/download/dom-serializer-0.1.1.tgz", - "integrity": "sha1-HsQFnihLq+027sKUHUqXChic58A=", - "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" - } - }, - "domain-browser": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/domain-browser/download/domain-browser-1.2.0.tgz", - "integrity": "sha1-PTH1AZGmdJ3RN1p/Ui6CPULlTto=" - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "http://r.cnpmjs.org/domelementtype/download/domelementtype-1.3.1.tgz", - "integrity": "sha1-0EjESzew0Qp/Kj1f7j9DM9eQSB8=" - }, - "domexception": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/domexception/download/domexception-1.0.1.tgz", - "integrity": "sha1-k3RCZEymoxJh7zbj7Gd/6AVYLJA=", - "requires": { - "webidl-conversions": "^4.0.2" - } - }, - "domhandler": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/domhandler/download/domhandler-2.1.0.tgz", - "integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=", - "requires": { - "domelementtype": "1" - } - }, - "domutils": { - "version": "1.7.0", - "resolved": "http://r.cnpmjs.org/domutils/download/domutils-1.7.0.tgz", - "integrity": "sha1-Vuo0HoNOBuZ0ivehyyXaZ+qfjCo=", - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "dot-prop": { - "version": "4.2.0", - "resolved": "http://r.cnpmjs.org/dot-prop/download/dot-prop-4.2.0.tgz", - "integrity": "sha1-HxngwuGqDjJ5fEl5nyg3rGr2nFc=", - "requires": { - "is-obj": "^1.0.0" - } - }, - "dotenv": { - "version": "6.0.0", - "resolved": "http://r.cnpmjs.org/dotenv/download/dotenv-6.0.0.tgz", - "integrity": "sha1-JON8BBdBxfSyUySVjrvDS8qWWTU=" - }, - "dotenv-expand": { - "version": "4.2.0", - "resolved": "http://r.cnpmjs.org/dotenv-expand/download/dotenv-expand-4.2.0.tgz", - "integrity": "sha1-3vHxyl1gWdJKdm5YeULCEQbOEnU=" - }, - "duplexer": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/duplexer/download/duplexer-0.1.1.tgz", - "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=" - }, - "duplexify": { - "version": "3.7.1", - "resolved": "http://r.cnpmjs.org/duplexify/download/duplexify-3.7.1.tgz", - "integrity": "sha1-Kk31MX9sz9kfhtb9JdjYoQO4gwk=", - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "http://r.cnpmjs.org/ecc-jsbn/download/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/ee-first/download/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "electron-to-chromium": { - "version": "1.3.113", - "resolved": "http://r.cnpmjs.org/electron-to-chromium/download/electron-to-chromium-1.3.113.tgz", - "integrity": "sha1-scz2Gd9yla6he8aVHcaJYyYp5Kk=" - }, - "elliptic": { - "version": "6.4.1", - "resolved": "http://r.cnpmjs.org/elliptic/download/elliptic-6.4.1.tgz", - "integrity": "sha1-wtC3d2kRuGcixjLDwGxg8vgZk5o=", - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - } - }, - "emoji-regex": { - "version": "6.5.1", - "resolved": "http://r.cnpmjs.org/emoji-regex/download/emoji-regex-6.5.1.tgz", - "integrity": "sha1-m66pKbFVVlwR6kHGYm6qZc75ksI=" - }, - "emojis-list": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/emojis-list/download/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/encodeurl/download/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" - }, - "end-of-stream": { - "version": "1.4.1", - "resolved": "http://r.cnpmjs.org/end-of-stream/download/end-of-stream-1.4.1.tgz", - "integrity": "sha1-7SljTRm6ukY7bOa4CjchPqtx7EM=", - "requires": { - "once": "^1.4.0" - } - }, - "enhanced-resolve": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/enhanced-resolve/download/enhanced-resolve-4.1.0.tgz", - "integrity": "sha1-Qcfgv9/nSsH/4eV61qXGyfN0Kn8=", - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "tapable": "^1.0.0" - } - }, - "entities": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/entities/download/entities-1.1.2.tgz", - "integrity": "sha1-vfpzUplmTfr9NFKe1PhSKidf6lY=" - }, - "errno": { - "version": "0.1.7", - "resolved": "http://r.cnpmjs.org/errno/download/errno-0.1.7.tgz", - "integrity": "sha1-RoTXF3mtOa8Xfj8AeZb3xnyFJhg=", - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "http://r.cnpmjs.org/error-ex/download/error-ex-1.3.2.tgz", - "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.13.0", - "resolved": "http://r.cnpmjs.org/es-abstract/download/es-abstract-1.13.0.tgz", - "integrity": "sha1-rIYUX91QmdjdSVWMy6Lq+biOJOk=", - "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://r.cnpmjs.org/es-to-primitive/download/es-to-primitive-1.2.0.tgz", - "integrity": "sha1-7fckeAM0VujdqO8J4ArZZQcH83c=", - "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://r.cnpmjs.org/escape-html/download/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "http://r.cnpmjs.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "escodegen": { - "version": "1.11.0", - "resolved": "http://r.cnpmjs.org/escodegen/download/escodegen-1.11.0.tgz", - "integrity": "sha1-snqTiUgdW/1b7Hb3ux6z+PRVZYk=", - "requires": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "http://r.cnpmjs.org/esprima/download/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "optional": true - } - } - }, - "eslint": { - "version": "5.6.0", - "resolved": "http://r.cnpmjs.org/eslint/download/eslint-5.6.0.tgz", - "integrity": "sha1-tveAYEGvAfcbPxiVy7IJcepLYiM=", - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.5.3", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^3.1.0", - "doctrine": "^2.1.0", - "eslint-scope": "^4.0.0", - "eslint-utils": "^1.3.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^4.0.0", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^2.0.0", - "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.7.0", - "ignore": "^4.0.6", - "imurmurhash": "^0.1.4", - "inquirer": "^6.1.0", - "is-resolvable": "^1.1.0", - "js-yaml": "^3.12.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.5", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "pluralize": "^7.0.0", - "progress": "^2.0.0", - "regexpp": "^2.0.0", - "require-uncached": "^1.0.3", - "semver": "^5.5.1", - "strip-ansi": "^4.0.0", - "strip-json-comments": "^2.0.1", - "table": "^4.0.3", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/ansi-regex/download/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, - "debug": { - "version": "3.2.6", - "resolved": "http://r.cnpmjs.org/debug/download/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", - "requires": { - "ms": "^2.1.1" - } - }, - "eslint-scope": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/eslint-scope/download/eslint-scope-4.0.0.tgz", - "integrity": "sha1-UL8wcekzi83EMzF5Sgy1M/ATYXI=", - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/strip-ansi/download/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "eslint-config-react-app": { - "version": "3.0.7", - "resolved": "http://r.cnpmjs.org/eslint-config-react-app/download/eslint-config-react-app-3.0.7.tgz", - "integrity": "sha1-1YySFv8oXitN4OuEA8KLBgDkWz4=", - "requires": { - "confusing-browser-globals": "^1.0.5" - } - }, - "eslint-import-resolver-node": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/eslint-import-resolver-node/download/eslint-import-resolver-node-0.3.2.tgz", - "integrity": "sha1-WPFfuDm40FdsqYBBNHaqskcttmo=", - "requires": { - "debug": "^2.6.9", - "resolve": "^1.5.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "eslint-loader": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/eslint-loader/download/eslint-loader-2.1.1.tgz", - "integrity": "sha1-KpJRUjZSQwv91kPv2wr8GiqJVGo=", - "requires": { - "loader-fs-cache": "^1.0.0", - "loader-utils": "^1.0.2", - "object-assign": "^4.0.1", - "object-hash": "^1.1.4", - "rimraf": "^2.6.1" - } - }, - "eslint-module-utils": { - "version": "2.3.0", - "resolved": "http://r.cnpmjs.org/eslint-module-utils/download/eslint-module-utils-2.3.0.tgz", - "integrity": "sha1-VGF42rXgRsi1Yru1BwXiRW172kk=", - "requires": { - "debug": "^2.6.8", - "pkg-dir": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "eslint-plugin-flowtype": { - "version": "2.50.1", - "resolved": "http://r.cnpmjs.org/eslint-plugin-flowtype/download/eslint-plugin-flowtype-2.50.1.tgz", - "integrity": "sha1-NtTJYayLnp4dwJHT+6BTfa00roo=", - "requires": { - "lodash": "^4.17.10" - } - }, - "eslint-plugin-import": { - "version": "2.14.0", - "resolved": "http://r.cnpmjs.org/eslint-plugin-import/download/eslint-plugin-import-2.14.0.tgz", - "integrity": "sha1-axdibS4+atUs/OiAeoRdFeIhEag=", - "requires": { - "contains-path": "^0.1.0", - "debug": "^2.6.8", - "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.1", - "eslint-module-utils": "^2.2.0", - "has": "^1.0.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.3", - "read-pkg-up": "^2.0.0", - "resolve": "^1.6.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "doctrine": { - "version": "1.5.0", - "resolved": "http://r.cnpmjs.org/doctrine/download/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", - "requires": { - "esutils": "^2.0.2", - "isarray": "^1.0.0" - } - }, - "load-json-file": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/load-json-file/download/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "parse-json": { - "version": "2.2.0", - "resolved": "http://r.cnpmjs.org/parse-json/download/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-type": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/path-type/download/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "requires": { - "pify": "^2.0.0" - } - }, - "read-pkg": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/read-pkg/download/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/read-pkg-up/download/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/strip-bom/download/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - } - } - }, - "eslint-plugin-jsx-a11y": { - "version": "6.1.2", - "resolved": "http://r.cnpmjs.org/eslint-plugin-jsx-a11y/download/eslint-plugin-jsx-a11y-6.1.2.tgz", - "integrity": "sha1-abykiQs23PD+Ft0hKdLYi5jzP4g=", - "requires": { - "aria-query": "^3.0.0", - "array-includes": "^3.0.3", - "ast-types-flow": "^0.0.7", - "axobject-query": "^2.0.1", - "damerau-levenshtein": "^1.0.4", - "emoji-regex": "^6.5.1", - "has": "^1.0.3", - "jsx-ast-utils": "^2.0.1" - } - }, - "eslint-plugin-react": { - "version": "7.11.1", - "resolved": "http://r.cnpmjs.org/eslint-plugin-react/download/eslint-plugin-react-7.11.1.tgz", - "integrity": "sha1-wBp69vF1GUV9YRaqlPxtLMrVRDw=", - "requires": { - "array-includes": "^3.0.3", - "doctrine": "^2.1.0", - "has": "^1.0.3", - "jsx-ast-utils": "^2.0.1", - "prop-types": "^15.6.2" - } - }, - "eslint-scope": { - "version": "3.7.1", - "resolved": "http://r.cnpmjs.org/eslint-scope/download/eslint-scope-3.7.1.tgz", - "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", - "requires": { - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", - "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==" - } - } - }, - "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/eslint-visitor-keys/download/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha1-PzGA+y4pEBdxastMnW1bXDSmqB0=" - }, - "espree": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/espree/download/espree-4.1.0.tgz", - "integrity": "sha1-co1UUeD9FWwEOEp62J7VH/VOsl8=", - "requires": { - "acorn": "^6.0.2", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/esprima/download/esprima-4.0.1.tgz", - "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=" - }, - "esquery": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/esquery/download/esquery-1.0.1.tgz", - "integrity": "sha1-QGxRZYsfWZGl+bYrHcJbAOPlxwg=", - "requires": { - "estraverse": "^4.0.0" - } - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "http://r.cnpmjs.org/esrecurse/download/esrecurse-4.2.1.tgz", - "integrity": "sha1-AHo7n9vCs7uH5IeeoZyS/b05Qs8=", - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.2.0", - "resolved": "http://r.cnpmjs.org/estraverse/download/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" - }, - "esutils": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/esutils/download/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" - }, - "etag": { - "version": "1.8.1", - "resolved": "http://r.cnpmjs.org/etag/download/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" - }, - "eventemitter3": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/eventemitter3/download/eventemitter3-3.1.0.tgz", - "integrity": "sha1-CQtNbNvWRe0Qv3UNS1QHlC17oWM=" - }, - "events": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/events/download/events-3.0.0.tgz", - "integrity": "sha1-mgoN+vYok9krh1uPJpjKQRSXPog=" - }, - "eventsource": { - "version": "1.0.7", - "resolved": "http://r.cnpmjs.org/eventsource/download/eventsource-1.0.7.tgz", - "integrity": "sha1-j7xyyT/NNAiAkLwKTmT0tc7m2NA=", - "requires": { - "original": "^1.0.0" - } - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/evp_bytestokey/download/evp_bytestokey-1.0.3.tgz", - "integrity": "sha1-f8vbGY3HGVlDLv4ThCaE4FJaywI=", - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "exec-sh": { - "version": "0.2.2", - "resolved": "http://r.cnpmjs.org/exec-sh/download/exec-sh-0.2.2.tgz", - "integrity": "sha1-Kl5//L19C6J1W97LFuWkJ9+97DY=", - "requires": { - "merge": "^1.2.0" - } - }, - "execa": { - "version": "0.7.0", - "resolved": "http://r.cnpmjs.org/execa/download/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.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" - }, - "dependencies": { - "cross-spawn": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/cross-spawn/download/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - } - } - }, - "exit": { - "version": "0.1.2", - "resolved": "http://r.cnpmjs.org/exit/download/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=" - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "http://r.cnpmjs.org/expand-brackets/download/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "expand-range": { - "version": "1.8.2", - "resolved": "http://r.cnpmjs.org/expand-range/download/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "requires": { - "fill-range": "^2.1.0" - } - }, - "expect": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/expect/download/expect-23.6.0.tgz", - "integrity": "sha1-HgyNO6mlgch71x+5vIhi1ENCX5g=", - "requires": { - "ansi-styles": "^3.2.0", - "jest-diff": "^23.6.0", - "jest-get-type": "^22.1.0", - "jest-matcher-utils": "^23.6.0", - "jest-message-util": "^23.4.0", - "jest-regex-util": "^23.3.0" - } - }, - "express": { - "version": "4.16.4", - "resolved": "http://r.cnpmjs.org/express/download/express-4.16.4.tgz", - "integrity": "sha1-/d72GSYQniTFFeqX/S8b2/Yt8S4=", - "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://r.cnpmjs.org/array-flatten/download/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "http://r.cnpmjs.org/extend/download/extend-3.0.2.tgz", - "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo=" - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/is-extendable/download/is-extendable-1.0.1.tgz", - "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.0.3", - "resolved": "http://r.cnpmjs.org/external-editor/download/external-editor-3.0.3.tgz", - "integrity": "sha1-WGbbKal4Jtvkvzr9JAcOrZ6kOic=", - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/extglob/download/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "requires": { - "is-extglob": "^1.0.0" - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/extsprintf/download/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/fast-deep-equal/download/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" - }, - "fast-glob": { - "version": "2.2.6", - "resolved": "http://r.cnpmjs.org/fast-glob/download/fast-glob-2.2.6.tgz", - "integrity": "sha1-pdW2l+yN7aRo2Fp0A1KQoCWpUpU=", - "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/arr-diff/download/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "http://r.cnpmjs.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "http://r.cnpmjs.org/expand-brackets/download/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "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": { - "define-property": { - "version": "0.2.5", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=" - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/extglob/download/extglob-2.0.4.tgz", - "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", - "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://r.cnpmjs.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/glob-parent/download/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/is-glob/download/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/is-extglob/download/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - }, - "is-glob": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/is-glob/download/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - }, - "micromatch": { - "version": "3.1.10", - "resolved": "http://r.cnpmjs.org/micromatch/download/micromatch-3.1.10.tgz", - "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", - "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" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "http://r.cnpmjs.org/fast-levenshtein/download/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - }, - "fastparse": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/fastparse/download/fastparse-1.1.2.tgz", - "integrity": "sha1-kXKMWllC7O2FMSg8eUQe5BIsNak=" - }, - "faye-websocket": { - "version": "0.11.1", - "resolved": "http://r.cnpmjs.org/faye-websocket/download/faye-websocket-0.11.1.tgz", - "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "fb-watchman": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/fb-watchman/download/fb-watchman-2.0.0.tgz", - "integrity": "sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=", - "requires": { - "bser": "^2.0.0" - } - }, - "figgy-pudding": { - "version": "3.5.1", - "resolved": "http://r.cnpmjs.org/figgy-pudding/download/figgy-pudding-3.5.1.tgz", - "integrity": "sha1-hiRwESkBxyeg5JWoB0S9W6odZ5A=" - }, - "figures": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/figures/download/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/file-entry-cache/download/file-entry-cache-2.0.0.tgz", - "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", - "requires": { - "flat-cache": "^1.2.1", - "object-assign": "^4.0.1" - } - }, - "file-loader": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/file-loader/download/file-loader-2.0.0.tgz", - "integrity": "sha1-OXScgvAguehZAdz/mOgATmQBz94=", - "requires": { - "loader-utils": "^1.0.2", - "schema-utils": "^1.0.0" - } - }, - "filename-regex": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/filename-regex/download/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" - }, - "fileset": { - "version": "2.0.3", - "resolved": "http://r.cnpmjs.org/fileset/download/fileset-2.0.3.tgz", - "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", - "requires": { - "glob": "^7.0.3", - "minimatch": "^3.0.3" - } - }, - "filesize": { - "version": "3.6.1", - "resolved": "http://r.cnpmjs.org/filesize/download/filesize-3.6.1.tgz", - "integrity": "sha1-CQuz7gG2+AGoqL6Z0xcQs0Irsxc=" - }, - "fill-range": { - "version": "2.2.4", - "resolved": "http://r.cnpmjs.org/fill-range/download/fill-range-2.2.4.tgz", - "integrity": "sha1-6x53OrsFbc2N8r/favWbizqTZWU=", - "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/isobject/download/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "finalhandler": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/finalhandler/download/finalhandler-1.1.1.tgz", - "integrity": "sha1-7r9O2EAHnIP0JJA4ydcDAIMBsQU=", - "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://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "find-cache-dir": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/find-cache-dir/download/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/find-up/download/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "requires": { - "locate-path": "^2.0.0" - } - }, - "flat-cache": { - "version": "1.3.4", - "resolved": "http://r.cnpmjs.org/flat-cache/download/flat-cache-1.3.4.tgz", - "integrity": "sha1-LC73dSXMKSkAff/6HdMUqpyd7m8=", - "requires": { - "circular-json": "^0.3.1", - "graceful-fs": "^4.1.2", - "rimraf": "~2.6.2", - "write": "^0.2.1" - } - }, - "flatten": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/flatten/download/flatten-1.0.2.tgz", - "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=" - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/flush-write-stream/download/flush-write-stream-1.1.1.tgz", - "integrity": "sha1-jdfYc6G6vCB9lOrQwuDkQnbr8ug=", - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, - "follow-redirects": { - "version": "1.7.0", - "resolved": "http://r.cnpmjs.org/follow-redirects/download/follow-redirects-1.7.0.tgz", - "integrity": "sha1-SJ68GY3A5/ZBZ70jsDxMGbV4THY=", - "requires": { - "debug": "^3.2.6" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "http://r.cnpmjs.org/debug/download/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/for-in/download/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" - }, - "for-own": { - "version": "0.1.5", - "resolved": "http://r.cnpmjs.org/for-own/download/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "requires": { - "for-in": "^1.0.1" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/forever-agent/download/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "fork-ts-checker-webpack-plugin-alt": { - "version": "0.4.14", - "resolved": "http://r.cnpmjs.org/fork-ts-checker-webpack-plugin-alt/download/fork-ts-checker-webpack-plugin-alt-0.4.14.tgz", - "integrity": "sha1-G9bA2Xt9RoLd5hJV/L14ty90c6A=", - "requires": { - "babel-code-frame": "^6.22.0", - "chalk": "^2.4.1", - "chokidar": "^2.0.4", - "lodash": "^4.17.11", - "micromatch": "^3.1.10", - "minimatch": "^3.0.4", - "resolve": "^1.5.0", - "tapable": "^1.0.0" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/arr-diff/download/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "http://r.cnpmjs.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "http://r.cnpmjs.org/expand-brackets/download/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "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": { - "define-property": { - "version": "0.2.5", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=" - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/extglob/download/extglob-2.0.4.tgz", - "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", - "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://r.cnpmjs.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - }, - "micromatch": { - "version": "3.1.10", - "resolved": "http://r.cnpmjs.org/micromatch/download/micromatch-3.1.10.tgz", - "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", - "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" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "form-data": { - "version": "2.3.3", - "resolved": "http://r.cnpmjs.org/form-data/download/form-data-2.3.3.tgz", - "integrity": "sha1-3M5SwF9kTymManq5Nr1yTO/786Y=", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.1.2", - "resolved": "http://r.cnpmjs.org/forwarded/download/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "http://r.cnpmjs.org/fragment-cache/download/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "requires": { - "map-cache": "^0.2.2" - } - }, - "fresh": { - "version": "0.5.2", - "resolved": "http://r.cnpmjs.org/fresh/download/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" - }, - "from2": { - "version": "2.3.0", - "resolved": "http://r.cnpmjs.org/from2/download/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "fs-extra": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/fs-extra/download/fs-extra-7.0.0.tgz", - "integrity": "sha1-jMP0fOB+97NZOhG5+yRffjTAQdY=", - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "http://r.cnpmjs.org/fs-write-stream-atomic/download/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/fs.realpath/download/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "1.2.4", - "resolved": "http://r.cnpmjs.org/fsevents/download/fsevents-1.2.4.tgz", - "integrity": "sha1-9B3LGvJYKvNpLaNvxVy9jhBBxCY=", - "optional": true, - "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.0.1", - "bundled": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "debug": { - "version": "2.6.9", - "bundled": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.5.1", - "bundled": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": 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.2", - "bundled": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.21", - "bundled": true, - "optional": true, - "requires": { - "safer-buffer": "^2.1.0" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "optional": true - }, - "minipass": { - "version": "2.2.4", - "bundled": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.1", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.1.0", - "bundled": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "optional": true - }, - "needle": { - "version": "2.2.0", - "bundled": true, - "optional": true, - "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.10.0", - "bundled": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.0", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.1.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.3", - "bundled": true, - "optional": true - }, - "npm-packlist": { - "version": "1.1.10", - "bundled": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "optional": true - }, - "rc": { - "version": "1.2.7", - "bundled": true, - "optional": true, - "requires": { - "deep-extend": "^0.5.1", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": 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.2", - "bundled": true, - "optional": true, - "requires": { - "glob": "^7.0.5" - } - }, - "safe-buffer": { - "version": "5.1.1", - "bundled": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "optional": true - }, - "semver": { - "version": "5.5.0", - "bundled": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "optional": true - }, - "tar": { - "version": "4.4.1", - "bundled": true, - "optional": true, - "requires": { - "chownr": "^1.0.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.2.4", - "minizlib": "^1.1.0", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.1", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "optional": true, - "requires": { - "string-width": "^1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "optional": true - }, - "yallist": { - "version": "3.0.2", - "bundled": true, - "optional": true - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/function-bind/download/function-bind-1.1.1.tgz", - "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=" - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/functional-red-black-tree/download/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/get-caller-file/download/get-caller-file-1.0.3.tgz", - "integrity": "sha1-+Xj6TJDR3+f/LWvtoqUV5xO9z0o=" - }, - "get-own-enumerable-property-symbols": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/get-own-enumerable-property-symbols/download/get-own-enumerable-property-symbols-3.0.0.tgz", - "integrity": "sha1-uHe0mlwWrvrDZV8u0upbaE340gM=" - }, - "get-stream": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/get-stream/download/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" - }, - "get-value": { - "version": "2.0.6", - "resolved": "http://r.cnpmjs.org/get-value/download/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" - }, - "getpass": { - "version": "0.1.7", - "resolved": "http://r.cnpmjs.org/getpass/download/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "http://r.cnpmjs.org/glob/download/glob-7.1.3.tgz", - "integrity": "sha1-OWCDLT8VdBCDQtr9OmezMsCWnfE=", - "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-base": { - "version": "0.3.0", - "resolved": "http://r.cnpmjs.org/glob-base/download/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/glob-parent/download/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "requires": { - "is-glob": "^2.0.0" - } - }, - "glob-to-regexp": { - "version": "0.3.0", - "resolved": "http://r.cnpmjs.org/glob-to-regexp/download/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=" - }, - "global-modules": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/global-modules/download/global-modules-2.0.0.tgz", - "integrity": "sha1-mXYFrSNF8n9RU5vqJldEISFcd4A=", - "requires": { - "global-prefix": "^3.0.0" - } - }, - "global-prefix": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/global-prefix/download/global-prefix-3.0.0.tgz", - "integrity": "sha1-/IX3MGTfafUEIfR/iD/luRO6m5c=", - "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - } - } - }, - "globals": { - "version": "11.11.0", - "resolved": "http://r.cnpmjs.org/globals/download/globals-11.11.0.tgz", - "integrity": "sha1-3Pk3V/ot5Uhvvu1xGFOK33ienC4=" - }, - "globby": { - "version": "8.0.2", - "resolved": "http://r.cnpmjs.org/globby/download/globby-8.0.2.tgz", - "integrity": "sha1-VpdhnM2VxSdduy1vqkIIfBqUHY0=", - "requires": { - "array-union": "^1.0.1", - "dir-glob": "2.0.0", - "fast-glob": "^2.0.2", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - }, - "dependencies": { - "ignore": { - "version": "3.3.10", - "resolved": "http://r.cnpmjs.org/ignore/download/ignore-3.3.10.tgz", - "integrity": "sha1-Cpf7h2mG6AgcYxFg+PnziRV/AEM=" - }, - "pify": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "http://r.cnpmjs.org/graceful-fs/download/graceful-fs-4.1.15.tgz", - "integrity": "sha1-/7cD4QZuig7qpMi4C6klPu77+wA=" - }, - "growly": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/growly/download/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=" - }, - "gzip-size": { - "version": "5.0.0", - "resolved": "http://r.cnpmjs.org/gzip-size/download/gzip-size-5.0.0.tgz", - "integrity": "sha1-pV7NmSIvTEj9jAHGJc47NJ0KDoA=", - "requires": { - "duplexer": "^0.1.1", - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } - } - }, - "h2x-core": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/h2x-core/download/h2x-core-1.1.1.tgz", - "integrity": "sha1-f7Maso4w6/EYGOPH0YNIfs9In58=", - "requires": { - "h2x-generate": "^1.1.0", - "h2x-parse": "^1.1.1", - "h2x-traverse": "^1.1.0" - } - }, - "h2x-generate": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/h2x-generate/download/h2x-generate-1.1.0.tgz", - "integrity": "sha1-wsmMYAcOHu0jHkgtWCbDxdqyqbo=", - "requires": { - "h2x-traverse": "^1.1.0" - } - }, - "h2x-parse": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/h2x-parse/download/h2x-parse-1.1.1.tgz", - "integrity": "sha1-h1cSzTvnXPc2xhDSebhlOyT1g4U=", - "requires": { - "h2x-types": "^1.1.0", - "jsdom": ">=11.0.0" - } - }, - "h2x-plugin-jsx": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/h2x-plugin-jsx/download/h2x-plugin-jsx-1.2.0.tgz", - "integrity": "sha1-IR+gLlxOCgcwewAFYpkjkQ5jHAE=", - "requires": { - "h2x-types": "^1.1.0" - } - }, - "h2x-traverse": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/h2x-traverse/download/h2x-traverse-1.1.0.tgz", - "integrity": "sha1-GUs2xZP04gp1Te5H+msiiGR7InE=", - "requires": { - "h2x-types": "^1.1.0" - } - }, - "h2x-types": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/h2x-types/download/h2x-types-1.1.0.tgz", - "integrity": "sha1-7A1eNnTiIHJp8yl2rJyCqv9IGOY=" - }, - "handle-thing": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/handle-thing/download/handle-thing-2.0.0.tgz", - "integrity": "sha1-DgOWlf9QyT/CiFV9aW88HcZ3Z1Q=" - }, - "handlebars": { - "version": "4.4.5", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.5.tgz", - "integrity": "sha512-0Ce31oWVB7YidkaTq33ZxEbN+UDxMMgThvCe8ptgQViymL5DPis9uLdTA13MiRPhgvqyxIegugrP97iK3JeBHg==", - "requires": { - "neo-async": "^2.6.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/har-schema/download/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" - }, - "har-validator": { - "version": "5.1.3", - "resolved": "http://r.cnpmjs.org/har-validator/download/har-validator-5.1.3.tgz", - "integrity": "sha1-HvievT5JllV2de7ZiTEQ3DUPoIA=", - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "harmony-reflect": { - "version": "1.6.1", - "resolved": "http://r.cnpmjs.org/harmony-reflect/download/harmony-reflect-1.6.1.tgz", - "integrity": "sha1-wQjU8rtFHv73o3hh/b2ucsm976k=" - }, - "has": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/has/download/has-1.0.3.tgz", - "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=", - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/has-ansi/download/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/has-flag/download/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "has-symbols": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/has-symbols/download/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=" - }, - "has-value": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/has-value/download/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/has-values/download/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "hash-base": { - "version": "3.0.4", - "resolved": "http://r.cnpmjs.org/hash-base/download/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "http://r.cnpmjs.org/hash.js/download/hash.js-1.1.7.tgz", - "integrity": "sha1-C6vKU46NTuSg+JiNaIZlN6ADz0I=", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "he": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/he/download/he-1.2.0.tgz", - "integrity": "sha1-hK5l+n6vsWX922FWauFLrwVmTw8=" - }, - "hex-color-regex": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/hex-color-regex/download/hex-color-regex-1.1.0.tgz", - "integrity": "sha1-TAb8y0YC/iYCs8k9+C1+fb8aio4=" - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/hmac-drbg/download/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hoek": { - "version": "4.2.1", - "resolved": "http://r.cnpmjs.org/hoek/download/hoek-4.2.1.tgz", - "integrity": "sha1-ljRQKqEsRF3Vp8VzS1cruHOKrLs=" - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/home-or-tmp/download/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, - "hoopy": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/hoopy/download/hoopy-0.1.4.tgz", - "integrity": "sha1-YJIH1mEQADOpqUAq096mdzgcGx0=" - }, - "hosted-git-info": { - "version": "2.7.1", - "resolved": "http://r.cnpmjs.org/hosted-git-info/download/hosted-git-info-2.7.1.tgz", - "integrity": "sha1-l/I2l3vW4SVAiTD/bePuxigewEc=" - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "http://r.cnpmjs.org/hpack.js/download/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "hsl-regex": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/hsl-regex/download/hsl-regex-1.0.0.tgz", - "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=" - }, - "hsla-regex": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/hsla-regex/download/hsla-regex-1.0.0.tgz", - "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=" - }, - "html-comment-regex": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/html-comment-regex/download/html-comment-regex-1.1.2.tgz", - "integrity": "sha1-l9RoiutcgYhqNk+qDK0d2hTUM6c=" - }, - "html-encoding-sniffer": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/html-encoding-sniffer/download/html-encoding-sniffer-1.0.2.tgz", - "integrity": "sha1-5w2EuU2lOqN14R/jo1G+ZkLKRvg=", - "requires": { - "whatwg-encoding": "^1.0.1" - } - }, - "html-entities": { - "version": "1.2.1", - "resolved": "http://r.cnpmjs.org/html-entities/download/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=" - }, - "html-minifier": { - "version": "3.5.21", - "resolved": "http://r.cnpmjs.org/html-minifier/download/html-minifier-3.5.21.tgz", - "integrity": "sha1-0AQOBUcw41TbAIRjWTGUAVIS0gw=", - "requires": { - "camel-case": "3.0.x", - "clean-css": "4.2.x", - "commander": "2.17.x", - "he": "1.2.x", - "param-case": "2.1.x", - "relateurl": "0.2.x", - "uglify-js": "3.4.x" - }, - "dependencies": { - "commander": { - "version": "2.17.1", - "resolved": "http://r.cnpmjs.org/commander/download/commander-2.17.1.tgz", - "integrity": "sha1-vXerfebelCBc6sxy8XFtKfIKd78=" - } - } - }, - "html-webpack-plugin": { - "version": "4.0.0-alpha.2", - "resolved": "http://r.cnpmjs.org/html-webpack-plugin/download/html-webpack-plugin-4.0.0-alpha.2.tgz", - "integrity": "sha1-d0WWfjiaV6CY4mlj8yjr5MGbWY0=", - "requires": { - "@types/tapable": "1.0.2", - "html-minifier": "^3.2.3", - "loader-utils": "^1.1.0", - "lodash": "^4.17.10", - "pretty-error": "^2.0.2", - "tapable": "^1.0.0", - "util.promisify": "1.0.0" - } - }, - "htmlparser2": { - "version": "3.3.0", - "resolved": "http://r.cnpmjs.org/htmlparser2/download/htmlparser2-3.3.0.tgz", - "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", - "requires": { - "domelementtype": "1", - "domhandler": "2.1", - "domutils": "1.1", - "readable-stream": "1.0" - }, - "dependencies": { - "domutils": { - "version": "1.1.6", - "resolved": "http://r.cnpmjs.org/domutils/download/domutils-1.1.6.tgz", - "integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=", - "requires": { - "domelementtype": "1" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "http://r.cnpmjs.org/isarray/download/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "readable-stream": { - "version": "1.0.34", - "resolved": "http://r.cnpmjs.org/readable-stream/download/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "http://r.cnpmjs.org/string_decoder/download/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - } - } - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "http://r.cnpmjs.org/http-deceiver/download/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" - }, - "http-errors": { - "version": "1.6.3", - "resolved": "http://r.cnpmjs.org/http-errors/download/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "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://r.cnpmjs.org/http-parser-js/download/http-parser-js-0.5.0.tgz", - "integrity": "sha1-1l7b7ehDSdDcMDIIFaFdOcw8u9g=" - }, - "http-proxy": { - "version": "1.17.0", - "resolved": "http://r.cnpmjs.org/http-proxy/download/http-proxy-1.17.0.tgz", - "integrity": "sha1-etOElGWPhGBeL220Q230EPTlvpo=", - "requires": { - "eventemitter3": "^3.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-middleware": { - "version": "0.18.0", - "resolved": "http://r.cnpmjs.org/http-proxy-middleware/download/http-proxy-middleware-0.18.0.tgz", - "integrity": "sha1-CYfmu1pWBuWmkWjY+WeofxXdiqs=", - "requires": { - "http-proxy": "^1.16.2", - "is-glob": "^4.0.0", - "lodash": "^4.17.5", - "micromatch": "^3.1.9" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/arr-diff/download/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "http://r.cnpmjs.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "http://r.cnpmjs.org/expand-brackets/download/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "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": { - "define-property": { - "version": "0.2.5", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=" - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/extglob/download/extglob-2.0.4.tgz", - "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", - "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://r.cnpmjs.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/is-extglob/download/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - }, - "is-glob": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/is-glob/download/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - }, - "micromatch": { - "version": "3.1.10", - "resolved": "http://r.cnpmjs.org/micromatch/download/micromatch-3.1.10.tgz", - "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", - "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" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/http-signature/download/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/https-browserify/download/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "http://r.cnpmjs.org/iconv-lite/download/iconv-lite-0.4.24.tgz", - "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-replace-symbols": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/icss-replace-symbols/download/icss-replace-symbols-1.1.0.tgz", - "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=" - }, - "icss-utils": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/icss-utils/download/icss-utils-2.1.0.tgz", - "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", - "requires": { - "postcss": "^6.0.1" - } - }, - "identity-obj-proxy": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/identity-obj-proxy/download/identity-obj-proxy-3.0.0.tgz", - "integrity": "sha1-lNK9qWCERT7zb7xarsN+D3nx/BQ=", - "requires": { - "harmony-reflect": "^1.4.6" - } - }, - "ieee754": { - "version": "1.1.12", - "resolved": "http://r.cnpmjs.org/ieee754/download/ieee754-1.1.12.tgz", - "integrity": "sha1-UL8k5bnIu5ivSWTJQc2wkY2ntgs=" - }, - "iferr": { - "version": "0.1.5", - "resolved": "http://r.cnpmjs.org/iferr/download/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" - }, - "ignore": { - "version": "4.0.6", - "resolved": "http://r.cnpmjs.org/ignore/download/ignore-4.0.6.tgz", - "integrity": "sha1-dQ49tYYgh7RzfrrIIH/9HvJ7Jfw=" - }, - "immer": { - "version": "1.10.0", - "resolved": "http://r.cnpmjs.org/immer/download/immer-1.10.0.tgz", - "integrity": "sha1-utZ2BbqcgQJ12R4cKkfUWC6YKG0=" - }, - "import-cwd": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/import-cwd/download/import-cwd-2.1.0.tgz", - "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", - "requires": { - "import-from": "^2.1.0" - } - }, - "import-fresh": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/import-fresh/download/import-fresh-2.0.0.tgz", - "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", - "requires": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - } - }, - "import-from": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/import-from/download/import-from-2.1.0.tgz", - "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", - "requires": { - "resolve-from": "^3.0.0" - } - }, - "import-local": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/import-local/download/import-local-1.0.0.tgz", - "integrity": "sha1-Xk/9wD9P5sAJxnKb6yljHC+CJ7w=", - "requires": { - "pkg-dir": "^2.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/imurmurhash/download/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" - }, - "indexes-of": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/indexes-of/download/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=" - }, - "indexof": { - "version": "0.0.1", - "resolved": "http://r.cnpmjs.org/indexof/download/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" - }, - "inflight": { - "version": "1.0.6", - "resolved": "http://r.cnpmjs.org/inflight/download/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "http://r.cnpmjs.org/inherits/download/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "http://r.cnpmjs.org/ini/download/ini-1.3.5.tgz", - "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=" - }, - "inquirer": { - "version": "6.2.2", - "resolved": "http://r.cnpmjs.org/inquirer/download/inquirer-6.2.2.tgz", - "integrity": "sha1-RpQRdvZcnrIIBGJxSbdDohjyVAY=", - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.11", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/ansi-regex/download/ansi-regex-4.0.0.tgz", - "integrity": "sha1-cN55Ht8CFATD/WFaqJEYrgQy5ak=" - }, - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "strip-ansi": { - "version": "5.0.0", - "resolved": "http://r.cnpmjs.org/strip-ansi/download/strip-ansi-5.0.0.tgz", - "integrity": "sha1-949otdCGbCCyybjGG1KYUI3IdW8=", - "requires": { - "ansi-regex": "^4.0.0" - } - } - } - }, - "internal-ip": { - "version": "3.0.1", - "resolved": "http://r.cnpmjs.org/internal-ip/download/internal-ip-3.0.1.tgz", - "integrity": "sha1-31yZh24dLrLqLXT1IOP2aaAOzic=", - "requires": { - "default-gateway": "^2.6.0", - "ipaddr.js": "^1.5.2" - } - }, - "invariant": { - "version": "2.2.4", - "resolved": "http://r.cnpmjs.org/invariant/download/invariant-2.2.4.tgz", - "integrity": "sha1-YQ88ksk1nOHbYW5TgAjSP/NRWOY=", - "requires": { - "loose-envify": "^1.0.0" - } - }, - "invert-kv": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/invert-kv/download/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" - }, - "ip": { - "version": "1.1.5", - "resolved": "http://r.cnpmjs.org/ip/download/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" - }, - "ip-regex": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/ip-regex/download/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=" - }, - "ipaddr.js": { - "version": "1.8.0", - "resolved": "http://r.cnpmjs.org/ipaddr.js/download/ipaddr.js-1.8.0.tgz", - "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=" - }, - "is-absolute-url": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/is-absolute-url/download/is-absolute-url-2.1.0.tgz", - "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=" - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "http://r.cnpmjs.org/is-arrayish/download/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/is-binary-path/download/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "http://r.cnpmjs.org/is-buffer/download/is-buffer-1.1.6.tgz", - "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=" - }, - "is-callable": { - "version": "1.1.4", - "resolved": "http://r.cnpmjs.org/is-callable/download/is-callable-1.1.4.tgz", - "integrity": "sha1-HhrfIZ4e62hNaR+dagX/DTCiTXU=" - }, - "is-ci": { - "version": "1.2.1", - "resolved": "http://r.cnpmjs.org/is-ci/download/is-ci-1.2.1.tgz", - "integrity": "sha1-43ecjuF/zPQoSI9uKBGH8uYyhBw=", - "requires": { - "ci-info": "^1.5.0" - } - }, - "is-color-stop": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/is-color-stop/download/is-color-stop-1.1.0.tgz", - "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=", - "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://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-date-object": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/is-date-object/download/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=" - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "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://r.cnpmjs.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=" - } - } - }, - "is-directory": { - "version": "0.3.1", - "resolved": "http://r.cnpmjs.org/is-directory/download/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=" - }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/is-dotfile/download/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=" - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "http://r.cnpmjs.org/is-equal-shallow/download/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "requires": { - "is-primitive": "^2.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/is-extendable/download/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-extglob/download/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" - }, - "is-finite": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-finite/download/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, - "is-generator-fn": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-generator-fn/download/is-generator-fn-1.0.0.tgz", - "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=" - }, - "is-glob": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/is-glob/download/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "requires": { - "is-extglob": "^1.0.0" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/is-obj/download/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" - }, - "is-path-cwd": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-path-cwd/download/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=" - }, - "is-path-in-cwd": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/is-path-in-cwd/download/is-path-in-cwd-1.0.1.tgz", - "integrity": "sha1-WsSLNF72dTOb1sekipEhELJBz1I=", - "requires": { - "is-path-inside": "^1.0.0" - } - }, - "is-path-inside": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/is-path-inside/download/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/is-plain-object/download/is-plain-object-2.0.4.tgz", - "integrity": "sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc=", - "requires": { - "isobject": "^3.0.1" - } - }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/is-posix-bracket/download/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/is-primitive/download/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" - }, - "is-promise": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/is-promise/download/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" - }, - "is-regex": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/is-regex/download/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "requires": { - "has": "^1.0.1" - } - }, - "is-regexp": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-regexp/download/is-regexp-1.0.0.tgz", - "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=" - }, - "is-resolvable": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/is-resolvable/download/is-resolvable-1.1.0.tgz", - "integrity": "sha1-+xj4fOH+uSUWnJpAfBkxijIG7Yg=" - }, - "is-root": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/is-root/download/is-root-2.0.0.tgz", - "integrity": "sha1-g40egjGBROWm93gZ2QIHZFrMcBk=" - }, - "is-stream": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/is-stream/download/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, - "is-svg": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-svg/download/is-svg-3.0.0.tgz", - "integrity": "sha1-kyHb0pwhLlypnE+peUxxS8r6L3U=", - "requires": { - "html-comment-regex": "^1.1.0" - } - }, - "is-symbol": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-symbol/download/is-symbol-1.0.2.tgz", - "integrity": "sha1-oFX2rlcZLK7jKeeoYBGLSXqVDzg=", - "requires": { - "has-symbols": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-typedarray/download/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "http://r.cnpmjs.org/is-utf8/download/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" - }, - "is-windows": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-windows/download/is-windows-1.0.2.tgz", - "integrity": "sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0=" - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/is-wsl/download/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" - }, - "isarray": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isemail": { - "version": "3.2.0", - "resolved": "http://r.cnpmjs.org/isemail/download/isemail-3.2.0.tgz", - "integrity": "sha1-WTEKAhkxqfsGu7UeFVzgs/I2gyw=", - "requires": { - "punycode": "2.x.x" - } - }, - "isexe": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/isexe/download/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, - "isobject": { - "version": "3.0.1", - "resolved": "http://r.cnpmjs.org/isobject/download/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "http://r.cnpmjs.org/isstream/download/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "istanbul-api": { - "version": "1.3.7", - "resolved": "http://r.cnpmjs.org/istanbul-api/download/istanbul-api-1.3.7.tgz", - "integrity": "sha1-qGx3DSsD4R4/d4zXrt2C0nIgkqo=", - "requires": { - "async": "^2.1.4", - "fileset": "^2.0.2", - "istanbul-lib-coverage": "^1.2.1", - "istanbul-lib-hook": "^1.2.2", - "istanbul-lib-instrument": "^1.10.2", - "istanbul-lib-report": "^1.1.5", - "istanbul-lib-source-maps": "^1.2.6", - "istanbul-reports": "^1.5.1", - "js-yaml": "^3.7.0", - "mkdirp": "^0.5.1", - "once": "^1.4.0" - } - }, - "istanbul-lib-coverage": { - "version": "1.2.1", - "resolved": "http://r.cnpmjs.org/istanbul-lib-coverage/download/istanbul-lib-coverage-1.2.1.tgz", - "integrity": "sha1-zPftzQoLubj3Kf7rCTBHD5r2ZPA=" - }, - "istanbul-lib-hook": { - "version": "1.2.2", - "resolved": "http://r.cnpmjs.org/istanbul-lib-hook/download/istanbul-lib-hook-1.2.2.tgz", - "integrity": "sha1-vGvwfxKmQfvxyFOR0Nqo8K6mv4Y=", - "requires": { - "append-transform": "^0.4.0" - } - }, - "istanbul-lib-instrument": { - "version": "1.10.2", - "resolved": "http://r.cnpmjs.org/istanbul-lib-instrument/download/istanbul-lib-instrument-1.10.2.tgz", - "integrity": "sha1-H1XtEKw8R/K93dUweTUSZ1TQqco=", - "requires": { - "babel-generator": "^6.18.0", - "babel-template": "^6.16.0", - "babel-traverse": "^6.18.0", - "babel-types": "^6.18.0", - "babylon": "^6.18.0", - "istanbul-lib-coverage": "^1.2.1", - "semver": "^5.3.0" - } - }, - "istanbul-lib-report": { - "version": "1.1.5", - "resolved": "http://r.cnpmjs.org/istanbul-lib-report/download/istanbul-lib-report-1.1.5.tgz", - "integrity": "sha1-8qZX/GKC+WFwqvKB6zCkWPf0Fww=", - "requires": { - "istanbul-lib-coverage": "^1.2.1", - "mkdirp": "^0.5.1", - "path-parse": "^1.0.5", - "supports-color": "^3.1.2" - }, - "dependencies": { - "has-flag": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/has-flag/download/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=" - }, - "supports-color": { - "version": "3.2.3", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "requires": { - "has-flag": "^1.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "1.2.6", - "resolved": "http://r.cnpmjs.org/istanbul-lib-source-maps/download/istanbul-lib-source-maps-1.2.6.tgz", - "integrity": "sha1-N7n/ZhWA+PyhEjJ1LuQuCMZnXY8=", - "requires": { - "debug": "^3.1.0", - "istanbul-lib-coverage": "^1.2.1", - "mkdirp": "^0.5.1", - "rimraf": "^2.6.1", - "source-map": "^0.5.3" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "http://r.cnpmjs.org/debug/download/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "istanbul-reports": { - "version": "1.5.1", - "resolved": "http://r.cnpmjs.org/istanbul-reports/download/istanbul-reports-1.5.1.tgz", - "integrity": "sha1-l+Tb87UV6MSEyuoV1lJO69P/Tho=", - "requires": { - "handlebars": "^4.0.3" - } - }, - "jest": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest/download/jest-23.6.0.tgz", - "integrity": "sha1-rVg16SPr9uGeeh11KaQy7f7ngT0=", - "requires": { - "import-local": "^1.0.0", - "jest-cli": "^23.6.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/ansi-regex/download/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, - "jest-cli": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-cli/download/jest-cli-23.6.0.tgz", - "integrity": "sha1-YauRd0Qzj0Q+8rqigt3/3WWKXaQ=", - "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.1", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.1.11", - "import-local": "^1.0.0", - "is-ci": "^1.0.10", - "istanbul-api": "^1.3.1", - "istanbul-lib-coverage": "^1.2.0", - "istanbul-lib-instrument": "^1.10.1", - "istanbul-lib-source-maps": "^1.2.4", - "jest-changed-files": "^23.4.2", - "jest-config": "^23.6.0", - "jest-environment-jsdom": "^23.4.0", - "jest-get-type": "^22.1.0", - "jest-haste-map": "^23.6.0", - "jest-message-util": "^23.4.0", - "jest-regex-util": "^23.3.0", - "jest-resolve-dependencies": "^23.6.0", - "jest-runner": "^23.6.0", - "jest-runtime": "^23.6.0", - "jest-snapshot": "^23.6.0", - "jest-util": "^23.4.0", - "jest-validate": "^23.6.0", - "jest-watcher": "^23.4.0", - "jest-worker": "^23.2.0", - "micromatch": "^2.3.11", - "node-notifier": "^5.2.1", - "prompts": "^0.1.9", - "realpath-native": "^1.0.0", - "rimraf": "^2.5.4", - "slash": "^1.0.0", - "string-length": "^2.0.0", - "strip-ansi": "^4.0.0", - "which": "^1.2.12", - "yargs": "^11.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/strip-ansi/download/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "jest-changed-files": { - "version": "23.4.2", - "resolved": "http://r.cnpmjs.org/jest-changed-files/download/jest-changed-files-23.4.2.tgz", - "integrity": "sha1-Hu1og3DNXuuv5K6T00uztklo/oM=", - "requires": { - "throat": "^4.0.0" - } - }, - "jest-config": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-config/download/jest-config-23.6.0.tgz", - "integrity": "sha1-+CVGqQreLYxwJvv2rFIH/CL46x0=", - "requires": { - "babel-core": "^6.0.0", - "babel-jest": "^23.6.0", - "chalk": "^2.0.1", - "glob": "^7.1.1", - "jest-environment-jsdom": "^23.4.0", - "jest-environment-node": "^23.4.0", - "jest-get-type": "^22.1.0", - "jest-jasmine2": "^23.6.0", - "jest-regex-util": "^23.3.0", - "jest-resolve": "^23.6.0", - "jest-util": "^23.4.0", - "jest-validate": "^23.6.0", - "micromatch": "^2.3.11", - "pretty-format": "^23.6.0" - }, - "dependencies": { - "babel-core": { - "version": "6.26.3", - "resolved": "http://r.cnpmjs.org/babel-core/download/babel-core-6.26.3.tgz", - "integrity": "sha1-suLwnjQtDwyI4vAuBneUEl51wgc=", - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "json5": { - "version": "0.5.1", - "resolved": "http://r.cnpmjs.org/json5/download/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "jest-diff": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-diff/download/jest-diff-23.6.0.tgz", - "integrity": "sha1-FQDz8W6FC7PXEjNAgIm+CZ9hDH0=", - "requires": { - "chalk": "^2.0.1", - "diff": "^3.2.0", - "jest-get-type": "^22.1.0", - "pretty-format": "^23.6.0" - } - }, - "jest-docblock": { - "version": "23.2.0", - "resolved": "http://r.cnpmjs.org/jest-docblock/download/jest-docblock-23.2.0.tgz", - "integrity": "sha1-8IXh8YVI2Z/dabICB+b9VdkTg6c=", - "requires": { - "detect-newline": "^2.1.0" - } - }, - "jest-each": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-each/download/jest-each-23.6.0.tgz", - "integrity": "sha1-ugw6gqgFQ4cBYTnHM6BSQtPXFXU=", - "requires": { - "chalk": "^2.0.1", - "pretty-format": "^23.6.0" - } - }, - "jest-environment-jsdom": { - "version": "23.4.0", - "resolved": "http://r.cnpmjs.org/jest-environment-jsdom/download/jest-environment-jsdom-23.4.0.tgz", - "integrity": "sha1-BWp5UrP+pROsYqFAosNox52eYCM=", - "requires": { - "jest-mock": "^23.2.0", - "jest-util": "^23.4.0", - "jsdom": "^11.5.1" - }, - "dependencies": { - "acorn": { - "version": "5.7.3", - "resolved": "http://r.cnpmjs.org/acorn/download/acorn-5.7.3.tgz", - "integrity": "sha1-Z6ojG/iBKXS4UjWpZ3Hra9B+onk=" - }, - "jsdom": { - "version": "11.12.0", - "resolved": "http://r.cnpmjs.org/jsdom/download/jsdom-11.12.0.tgz", - "integrity": "sha1-GoDUDd03ih3lllbp5txaO6hle8g=", - "requires": { - "abab": "^2.0.0", - "acorn": "^5.5.3", - "acorn-globals": "^4.1.0", - "array-equal": "^1.0.0", - "cssom": ">= 0.3.2 < 0.4.0", - "cssstyle": "^1.0.0", - "data-urls": "^1.0.0", - "domexception": "^1.0.1", - "escodegen": "^1.9.1", - "html-encoding-sniffer": "^1.0.2", - "left-pad": "^1.3.0", - "nwsapi": "^2.0.7", - "parse5": "4.0.0", - "pn": "^1.1.0", - "request": "^2.87.0", - "request-promise-native": "^1.0.5", - "sax": "^1.2.4", - "symbol-tree": "^3.2.2", - "tough-cookie": "^2.3.4", - "w3c-hr-time": "^1.0.1", - "webidl-conversions": "^4.0.2", - "whatwg-encoding": "^1.0.3", - "whatwg-mimetype": "^2.1.0", - "whatwg-url": "^6.4.1", - "ws": "^5.2.0", - "xml-name-validator": "^3.0.0" - } - }, - "parse5": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/parse5/download/parse5-4.0.0.tgz", - "integrity": "sha1-bXhlbj2o14tOwLkG98CO8d/j9gg=" - }, - "whatwg-url": { - "version": "6.5.0", - "resolved": "http://r.cnpmjs.org/whatwg-url/download/whatwg-url-6.5.0.tgz", - "integrity": "sha1-8t8Cv/F2/WUHDfdK1cy7WhmZZag=", - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "ws": { - "version": "5.2.2", - "resolved": "http://r.cnpmjs.org/ws/download/ws-5.2.2.tgz", - "integrity": "sha1-3/7xSGa46NyRM1glFNG++vlumA8=", - "requires": { - "async-limiter": "~1.0.0" - } - } - } - }, - "jest-environment-node": { - "version": "23.4.0", - "resolved": "http://r.cnpmjs.org/jest-environment-node/download/jest-environment-node-23.4.0.tgz", - "integrity": "sha1-V+gO0IQd6jAxZ8zozXlSHeuv3hA=", - "requires": { - "jest-mock": "^23.2.0", - "jest-util": "^23.4.0" - } - }, - "jest-get-type": { - "version": "22.4.3", - "resolved": "http://r.cnpmjs.org/jest-get-type/download/jest-get-type-22.4.3.tgz", - "integrity": "sha1-46hQTYR5NC3UQgI2syKGnxiQDOQ=" - }, - "jest-haste-map": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-haste-map/download/jest-haste-map-23.6.0.tgz", - "integrity": "sha1-Lj65l4FMppbWKv2z8lKfW7yTXhY=", - "requires": { - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.1.11", - "invariant": "^2.2.4", - "jest-docblock": "^23.2.0", - "jest-serializer": "^23.0.1", - "jest-worker": "^23.2.0", - "micromatch": "^2.3.11", - "sane": "^2.0.0" - } - }, - "jest-jasmine2": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-jasmine2/download/jest-jasmine2-23.6.0.tgz", - "integrity": "sha1-hA6Tf4SKbIY43yQ2CrhpzHGFkuA=", - "requires": { - "babel-traverse": "^6.0.0", - "chalk": "^2.0.1", - "co": "^4.6.0", - "expect": "^23.6.0", - "is-generator-fn": "^1.0.0", - "jest-diff": "^23.6.0", - "jest-each": "^23.6.0", - "jest-matcher-utils": "^23.6.0", - "jest-message-util": "^23.4.0", - "jest-snapshot": "^23.6.0", - "jest-util": "^23.4.0", - "pretty-format": "^23.6.0" - } - }, - "jest-leak-detector": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-leak-detector/download/jest-leak-detector-23.6.0.tgz", - "integrity": "sha1-5CMP1CzzgaGhlxI3rVaJfefhcd4=", - "requires": { - "pretty-format": "^23.6.0" - } - }, - "jest-matcher-utils": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-matcher-utils/download/jest-matcher-utils-23.6.0.tgz", - "integrity": "sha1-cmvOoMUpQmGnQXr7baMYa0uMrIA=", - "requires": { - "chalk": "^2.0.1", - "jest-get-type": "^22.1.0", - "pretty-format": "^23.6.0" - } - }, - "jest-message-util": { - "version": "23.4.0", - "resolved": "http://r.cnpmjs.org/jest-message-util/download/jest-message-util-23.4.0.tgz", - "integrity": "sha1-F2EMUJQjSVCNAaPR4L2iwHkIap8=", - "requires": { - "@babel/code-frame": "^7.0.0-beta.35", - "chalk": "^2.0.1", - "micromatch": "^2.3.11", - "slash": "^1.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-mock": { - "version": "23.2.0", - "resolved": "http://r.cnpmjs.org/jest-mock/download/jest-mock-23.2.0.tgz", - "integrity": "sha1-rRxg8p6HGdR8JuETgJi20YsmETQ=" - }, - "jest-pnp-resolver": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/jest-pnp-resolver/download/jest-pnp-resolver-1.0.1.tgz", - "integrity": "sha1-85fNcdvNShlHsuQ19tqOmjRzCPo=" - }, - "jest-regex-util": { - "version": "23.3.0", - "resolved": "http://r.cnpmjs.org/jest-regex-util/download/jest-regex-util-23.3.0.tgz", - "integrity": "sha1-X4ZylUfCeFxAAs6qj4Sf6MpHG8U=" - }, - "jest-resolve": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-resolve/download/jest-resolve-23.6.0.tgz", - "integrity": "sha1-zx0aJM5+57I9ZhwzuiFQ866/oK4=", - "requires": { - "browser-resolve": "^1.11.3", - "chalk": "^2.0.1", - "realpath-native": "^1.0.0" - } - }, - "jest-resolve-dependencies": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-resolve-dependencies/download/jest-resolve-dependencies-23.6.0.tgz", - "integrity": "sha1-tFJq8kyFQNmj+rECwVCBz1Cbcj0=", - "requires": { - "jest-regex-util": "^23.3.0", - "jest-snapshot": "^23.6.0" - } - }, - "jest-runner": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-runner/download/jest-runner-23.6.0.tgz", - "integrity": "sha1-OJS9IZ/8Pzy5TcSKQXCi5vI6Wjg=", - "requires": { - "exit": "^0.1.2", - "graceful-fs": "^4.1.11", - "jest-config": "^23.6.0", - "jest-docblock": "^23.2.0", - "jest-haste-map": "^23.6.0", - "jest-jasmine2": "^23.6.0", - "jest-leak-detector": "^23.6.0", - "jest-message-util": "^23.4.0", - "jest-runtime": "^23.6.0", - "jest-util": "^23.4.0", - "jest-worker": "^23.2.0", - "source-map-support": "^0.5.6", - "throat": "^4.0.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "source-map-support": { - "version": "0.5.10", - "resolved": "http://r.cnpmjs.org/source-map-support/download/source-map-support-0.5.10.tgz", - "integrity": "sha1-IhQIC8nVGDJRHuK6uW48L5NTEgw=", - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - } - } - }, - "jest-runtime": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-runtime/download/jest-runtime-23.6.0.tgz", - "integrity": "sha1-BZ5YyKtEWRfNDg2ErCumjejyMII=", - "requires": { - "babel-core": "^6.0.0", - "babel-plugin-istanbul": "^4.1.6", - "chalk": "^2.0.1", - "convert-source-map": "^1.4.0", - "exit": "^0.1.2", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.1.11", - "jest-config": "^23.6.0", - "jest-haste-map": "^23.6.0", - "jest-message-util": "^23.4.0", - "jest-regex-util": "^23.3.0", - "jest-resolve": "^23.6.0", - "jest-snapshot": "^23.6.0", - "jest-util": "^23.4.0", - "jest-validate": "^23.6.0", - "micromatch": "^2.3.11", - "realpath-native": "^1.0.0", - "slash": "^1.0.0", - "strip-bom": "3.0.0", - "write-file-atomic": "^2.1.0", - "yargs": "^11.0.0" - }, - "dependencies": { - "babel-core": { - "version": "6.26.3", - "resolved": "http://r.cnpmjs.org/babel-core/download/babel-core-6.26.3.tgz", - "integrity": "sha1-suLwnjQtDwyI4vAuBneUEl51wgc=", - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "json5": { - "version": "0.5.1", - "resolved": "http://r.cnpmjs.org/json5/download/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/strip-bom/download/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - } - } - }, - "jest-serializer": { - "version": "23.0.1", - "resolved": "http://r.cnpmjs.org/jest-serializer/download/jest-serializer-23.0.1.tgz", - "integrity": "sha1-o3dq6zEekP6D+rnlM+hRAr0WQWU=" - }, - "jest-snapshot": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-snapshot/download/jest-snapshot-23.6.0.tgz", - "integrity": "sha1-+cJiXRsYrNoB7C0rgmwM5YpaoXo=", - "requires": { - "babel-types": "^6.0.0", - "chalk": "^2.0.1", - "jest-diff": "^23.6.0", - "jest-matcher-utils": "^23.6.0", - "jest-message-util": "^23.4.0", - "jest-resolve": "^23.6.0", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^23.6.0", - "semver": "^5.5.0" - } - }, - "jest-util": { - "version": "23.4.0", - "resolved": "http://r.cnpmjs.org/jest-util/download/jest-util-23.4.0.tgz", - "integrity": "sha1-TQY8uSe68KI4Mf9hvsLLv0l5NWE=", - "requires": { - "callsites": "^2.0.0", - "chalk": "^2.0.1", - "graceful-fs": "^4.1.11", - "is-ci": "^1.0.10", - "jest-message-util": "^23.4.0", - "mkdirp": "^0.5.1", - "slash": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - } - } - }, - "jest-validate": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/jest-validate/download/jest-validate-23.6.0.tgz", - "integrity": "sha1-NnYfmdHtM/zUJbTkxVldYrZZdHQ=", - "requires": { - "chalk": "^2.0.1", - "jest-get-type": "^22.1.0", - "leven": "^2.1.0", - "pretty-format": "^23.6.0" - } - }, - "jest-watcher": { - "version": "23.4.0", - "resolved": "http://r.cnpmjs.org/jest-watcher/download/jest-watcher-23.4.0.tgz", - "integrity": "sha1-0uKM50+NrWxq/JIrksq+9u0FyRw=", - "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.1", - "string-length": "^2.0.0" - } - }, - "jest-worker": { - "version": "23.2.0", - "resolved": "http://r.cnpmjs.org/jest-worker/download/jest-worker-23.2.0.tgz", - "integrity": "sha1-+vcGqNo2+uYOsmlXJX+ntdjqArk=", - "requires": { - "merge-stream": "^1.0.1" - } - }, - "joi": { - "version": "11.4.0", - "resolved": "http://r.cnpmjs.org/joi/download/joi-11.4.0.tgz", - "integrity": "sha1-9nSJdTe2JemsPQt+FgTIKK2RPMs=", - "requires": { - "hoek": "4.x.x", - "isemail": "3.x.x", - "topo": "2.x.x" - } - }, - "js-levenshtein": { - "version": "1.1.6", - "resolved": "http://r.cnpmjs.org/js-levenshtein/download/js-levenshtein-1.1.6.tgz", - "integrity": "sha1-xs7ljrNVA3LfjeuF+tXOZs4B1Z0=" - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/js-tokens/download/js-tokens-4.0.0.tgz", - "integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk=" - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/jsbn/download/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "jsdom": { - "version": "13.2.0", - "resolved": "http://r.cnpmjs.org/jsdom/download/jsdom-13.2.0.tgz", - "integrity": "sha1-saDb2twlVDUmK+jqNyPS26DX6zo=", - "requires": { - "abab": "^2.0.0", - "acorn": "^6.0.4", - "acorn-globals": "^4.3.0", - "array-equal": "^1.0.0", - "cssom": "^0.3.4", - "cssstyle": "^1.1.1", - "data-urls": "^1.1.0", - "domexception": "^1.0.1", - "escodegen": "^1.11.0", - "html-encoding-sniffer": "^1.0.2", - "nwsapi": "^2.0.9", - "parse5": "5.1.0", - "pn": "^1.1.0", - "request": "^2.88.0", - "request-promise-native": "^1.0.5", - "saxes": "^3.1.5", - "symbol-tree": "^3.2.2", - "tough-cookie": "^2.5.0", - "w3c-hr-time": "^1.0.1", - "w3c-xmlserializer": "^1.0.1", - "webidl-conversions": "^4.0.2", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^7.0.0", - "ws": "^6.1.2", - "xml-name-validator": "^3.0.0" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "http://r.cnpmjs.org/jsesc/download/jsesc-2.5.2.tgz", - "integrity": "sha1-gFZNLkg9rPbo7yCWUKZ98/DCg6Q=" - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/json-parse-better-errors/download/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk=" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "http://r.cnpmjs.org/json-schema/download/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "http://r.cnpmjs.org/json-schema-traverse/download/json-schema-traverse-0.4.1.tgz", - "integrity": "sha1-afaofZUTq4u4/mO9sJecRI5oRmA=" - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/json-stable-stringify/download/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/json-stable-stringify-without-jsonify/download/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "http://r.cnpmjs.org/json-stringify-safe/download/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "json3": { - "version": "3.3.2", - "resolved": "http://r.cnpmjs.org/json3/download/json3-3.3.2.tgz", - "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=" - }, - "json5": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/json5/download/json5-2.1.0.tgz", - "integrity": "sha1-56DGLEgoXGKNIKELhcibuAfDKFA=", - "requires": { - "minimist": "^1.2.0" - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/jsonfile/download/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.0", - "resolved": "http://r.cnpmjs.org/jsonify/download/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" - }, - "jsprim": { - "version": "1.4.1", - "resolved": "http://r.cnpmjs.org/jsprim/download/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "jsx-ast-utils": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/jsx-ast-utils/download/jsx-ast-utils-2.0.1.tgz", - "integrity": "sha1-6AGxs5mF4g//yHtA43SAgOLcrH8=", - "requires": { - "array-includes": "^3.0.3" - } - }, - "killable": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/killable/download/killable-1.0.1.tgz", - "integrity": "sha1-TIzkQRh6Bhx0dPuHygjipjgZSJI=" - }, - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - }, - "kleur": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/kleur/download/kleur-2.0.2.tgz", - "integrity": "sha1-twT0lE2V4lXQOPDLBfuKYCxVowA=" - }, - "last-call-webpack-plugin": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/last-call-webpack-plugin/download/last-call-webpack-plugin-3.0.0.tgz", - "integrity": "sha1-l0LfDhDjz0blwDgcLekNOnotdVU=", - "requires": { - "lodash": "^4.17.5", - "webpack-sources": "^1.1.0" - } - }, - "lazy-cache": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/lazy-cache/download/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" - }, - "lcid": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/lcid/download/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "requires": { - "invert-kv": "^1.0.0" - } - }, - "left-pad": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/left-pad/download/left-pad-1.3.0.tgz", - "integrity": "sha1-W4o6d2Xf4AEmHd6RVYnngvjJTR4=" - }, - "leven": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/leven/download/leven-2.1.0.tgz", - "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=" - }, - "levn": { - "version": "0.3.0", - "resolved": "http://r.cnpmjs.org/levn/download/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/load-json-file/download/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - }, - "dependencies": { - "parse-json": { - "version": "2.2.0", - "resolved": "http://r.cnpmjs.org/parse-json/download/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "requires": { - "error-ex": "^1.2.0" - } - } - } - }, - "loader-fs-cache": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/loader-fs-cache/download/loader-fs-cache-1.0.1.tgz", - "integrity": "sha1-VuC/CL2XCLJqdltoUJhAyN7J/bw=", - "requires": { - "find-cache-dir": "^0.1.1", - "mkdirp": "0.5.1" - }, - "dependencies": { - "find-cache-dir": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/find-cache-dir/download/find-cache-dir-0.1.1.tgz", - "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", - "requires": { - "commondir": "^1.0.1", - "mkdirp": "^0.5.1", - "pkg-dir": "^1.0.0" - } - }, - "find-up": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/find-up/download/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/path-exists/download/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "pkg-dir": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/pkg-dir/download/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "requires": { - "find-up": "^1.0.0" - } - } - } - }, - "loader-runner": { - "version": "2.4.0", - "resolved": "http://r.cnpmjs.org/loader-runner/download/loader-runner-2.4.0.tgz", - "integrity": "sha1-7UcGa/5TTX6ExMe5mYwqdWB9k1c=" - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "http://r.cnpmjs.org/loader-utils/download/loader-utils-1.2.3.tgz", - "integrity": "sha1-H/XcaRHJ8KBiUxpMBLYJQGEIwsc=", - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/json5/download/json5-1.0.1.tgz", - "integrity": "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=", - "requires": { - "minimist": "^1.2.0" - } - } - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/locate-path/download/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "http://r.cnpmjs.org/lodash/download/lodash-4.17.11.tgz", - "integrity": "sha1-s56mIp72B+zYniyN8SU2iRysm40=" - }, - "lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/lodash._reinterpolate/download/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=" - }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "http://r.cnpmjs.org/lodash.camelcase/download/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "http://r.cnpmjs.org/lodash.get/download/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" - }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "http://r.cnpmjs.org/lodash.memoize/download/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=" - }, - "lodash.sortby": { - "version": "4.7.0", - "resolved": "http://r.cnpmjs.org/lodash.sortby/download/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" - }, - "lodash.tail": { - "version": "4.1.1", - "resolved": "http://r.cnpmjs.org/lodash.tail/download/lodash.tail-4.1.1.tgz", - "integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ=" - }, - "lodash.template": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", - "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", - "requires": { - "lodash._reinterpolate": "^3.0.0", - "lodash.templatesettings": "^4.0.0" - } - }, - "lodash.templatesettings": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/lodash.templatesettings/download/lodash.templatesettings-4.1.0.tgz", - "integrity": "sha1-K01OlbpEDZFf8IvImeRVNmZxMxY=", - "requires": { - "lodash._reinterpolate": "~3.0.0" - } - }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "http://r.cnpmjs.org/lodash.uniq/download/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" - }, - "loglevel": { - "version": "1.6.1", - "resolved": "http://r.cnpmjs.org/loglevel/download/loglevel-1.6.1.tgz", - "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=" - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "http://r.cnpmjs.org/loose-envify/download/loose-envify-1.4.0.tgz", - "integrity": "sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8=", - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "lower-case": { - "version": "1.1.4", - "resolved": "http://r.cnpmjs.org/lower-case/download/lower-case-1.1.4.tgz", - "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=" - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "http://r.cnpmjs.org/lru-cache/download/lru-cache-4.1.5.tgz", - "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-dir": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/make-dir/download/make-dir-1.3.0.tgz", - "integrity": "sha1-ecEDO4BRW9bSTsmTPoYMp17ifww=", - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } - } - }, - "makeerror": { - "version": "1.0.11", - "resolved": "http://r.cnpmjs.org/makeerror/download/makeerror-1.0.11.tgz", - "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", - "requires": { - "tmpl": "1.0.x" - } - }, - "mamacro": { - "version": "0.0.3", - "resolved": "http://r.cnpmjs.org/mamacro/download/mamacro-0.0.3.tgz", - "integrity": "sha1-rSyVdhl8nxq/MI0Hh4Zb2XWj8+Q=" - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "http://r.cnpmjs.org/map-age-cleaner/download/map-age-cleaner-0.1.3.tgz", - "integrity": "sha1-fVg6cwZDTAVf5HSw9FB45uG0uSo=", - "requires": { - "p-defer": "^1.0.0" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "http://r.cnpmjs.org/map-cache/download/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" - }, - "map-visit": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/map-visit/download/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "requires": { - "object-visit": "^1.0.0" - } - }, - "math-random": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/math-random/download/math-random-1.0.4.tgz", - "integrity": "sha1-XdaUPJOFSCZwFtTjTwV1gwgMUUw=" - }, - "md5.js": { - "version": "1.3.5", - "resolved": "http://r.cnpmjs.org/md5.js/download/md5.js-1.3.5.tgz", - "integrity": "sha1-tdB7jjIW4+J81yjXL3DR5qNCAF8=", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "mdn-data": { - "version": "1.1.4", - "resolved": "http://r.cnpmjs.org/mdn-data/download/mdn-data-1.1.4.tgz", - "integrity": "sha1-ULXU/8RXUnZXPE7tuHgIEqhBnwE=" - }, - "media-typer": { - "version": "0.3.0", - "resolved": "http://r.cnpmjs.org/media-typer/download/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "mem": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/mem/download/mem-1.1.0.tgz", - "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "http://r.cnpmjs.org/memory-fs/download/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "merge": { - "version": "1.2.1", - "resolved": "http://r.cnpmjs.org/merge/download/merge-1.2.1.tgz", - "integrity": "sha1-OL6/gMMiCopIe2/Ps5QbsRcgwUU=" - }, - "merge-deep": { - "version": "3.0.2", - "resolved": "http://r.cnpmjs.org/merge-deep/download/merge-deep-3.0.2.tgz", - "integrity": "sha1-85+hAKTxvTT/KffSv0UI+7jYOtI=", - "requires": { - "arr-union": "^3.1.0", - "clone-deep": "^0.2.4", - "kind-of": "^3.0.2" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/merge-descriptors/download/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "merge-stream": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/merge-stream/download/merge-stream-1.0.1.tgz", - "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", - "requires": { - "readable-stream": "^2.0.1" - } - }, - "merge2": { - "version": "1.2.3", - "resolved": "http://r.cnpmjs.org/merge2/download/merge2-1.2.3.tgz", - "integrity": "sha1-fumdvWm7ZIFoklPwGEiKG5ArDtU=" - }, - "methods": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/methods/download/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "micromatch": { - "version": "2.3.11", - "resolved": "http://r.cnpmjs.org/micromatch/download/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - } - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/miller-rabin/download/miller-rabin-4.0.1.tgz", - "integrity": "sha1-8IA1HIZbDcViqEYpZtqlNUPHik0=", - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - } - }, - "mime": { - "version": "2.4.0", - "resolved": "http://r.cnpmjs.org/mime/download/mime-2.4.0.tgz", - "integrity": "sha1-4FH9iBNYWF8yed8zP+aU2gvP/dY=" - }, - "mime-db": { - "version": "1.38.0", - "resolved": "http://r.cnpmjs.org/mime-db/download/mime-db-1.38.0.tgz", - "integrity": "sha1-GiqrFtqesWe0nG5N8tnGjWPY4q0=" - }, - "mime-types": { - "version": "2.1.22", - "resolved": "http://r.cnpmjs.org/mime-types/download/mime-types-2.1.22.tgz", - "integrity": "sha1-/ms1WhkJJqt2mMmgVWoRGZshmb0=", - "requires": { - "mime-db": "~1.38.0" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/mimic-fn/download/mimic-fn-1.2.0.tgz", - "integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI=" - }, - "mini-css-extract-plugin": { - "version": "0.4.3", - "resolved": "http://r.cnpmjs.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.4.3.tgz", - "integrity": "sha1-mNYPzF0ijD42qb0VodaBbWWAvrg=", - "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/minimalistic-assert/download/minimalistic-assert-1.0.1.tgz", - "integrity": "sha1-LhlN4ERibUoQ5/f7wAznPoPk1cc=" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/minimalistic-crypto-utils/download/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.0.4", - "resolved": "http://r.cnpmjs.org/minimatch/download/minimatch-3.0.4.tgz", - "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/minimist/download/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "mississippi": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/mississippi/download/mississippi-3.0.0.tgz", - "integrity": "sha1-6goykfl+C16HdrNj1fChLZTGcCI=", - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mixin-object": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/mixin-object/download/mixin-object-2.0.1.tgz", - "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", - "requires": { - "for-in": "^0.1.3", - "is-extendable": "^0.1.1" - }, - "dependencies": { - "for-in": { - "version": "0.1.8", - "resolved": "http://r.cnpmjs.org/for-in/download/for-in-0.1.8.tgz", - "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=" - } - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "http://r.cnpmjs.org/mkdirp/download/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "http://r.cnpmjs.org/minimist/download/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - } - } - }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/move-concurrently/download/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "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://r.cnpmjs.org/ms/download/ms-2.1.1.tgz", - "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=" - }, - "multicast-dns": { - "version": "6.2.3", - "resolved": "http://r.cnpmjs.org/multicast-dns/download/multicast-dns-6.2.3.tgz", - "integrity": "sha1-oOx72QVcQoL3kMPIL04o2zsxsik=", - "requires": { - "dns-packet": "^1.3.1", - "thunky": "^1.0.2" - } - }, - "multicast-dns-service-types": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/multicast-dns-service-types/download/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "http://r.cnpmjs.org/mute-stream/download/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" - }, - "nan": { - "version": "2.12.1", - "resolved": "http://r.cnpmjs.org/nan/download/nan-2.12.1.tgz", - "integrity": "sha1-exqhk+mqhgV+PHu9CsRI53CSVVI=", - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "http://r.cnpmjs.org/nanomatch/download/nanomatch-1.2.13.tgz", - "integrity": "sha1-uHqKpPwN6P5r6IiVs4mD/yZb0Rk=", - "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" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/arr-diff/download/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - } - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "http://r.cnpmjs.org/natural-compare/download/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" - }, - "negotiator": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/negotiator/download/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" - }, - "neo-async": { - "version": "2.6.0", - "resolved": "http://r.cnpmjs.org/neo-async/download/neo-async-2.6.0.tgz", - "integrity": "sha1-udFeTXHGdikIZUtRg+04t1M0CDU=" - }, - "nice-try": { - "version": "1.0.5", - "resolved": "http://r.cnpmjs.org/nice-try/download/nice-try-1.0.5.tgz", - "integrity": "sha1-ozeKdpbOfSI+iPybdkvX7xCJ42Y=" - }, - "no-case": { - "version": "2.3.2", - "resolved": "http://r.cnpmjs.org/no-case/download/no-case-2.3.2.tgz", - "integrity": "sha1-YLgTOWvjmz8SiKTB7V0efSi0ZKw=", - "requires": { - "lower-case": "^1.1.1" - } - }, - "node-forge": { - "version": "0.7.5", - "resolved": "http://r.cnpmjs.org/node-forge/download/node-forge-0.7.5.tgz", - "integrity": "sha1-bBUsNFzhHFL0ZcKr2VfoY5zWdN8=" - }, - "node-int64": { - "version": "0.4.0", - "resolved": "http://r.cnpmjs.org/node-int64/download/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=" - }, - "node-libs-browser": { - "version": "2.2.0", - "resolved": "http://r.cnpmjs.org/node-libs-browser/download/node-libs-browser-2.2.0.tgz", - "integrity": "sha1-xy9g2dRt4IqUDe27JfP/ovm7qnc=", - "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": { - "punycode": { - "version": "1.4.1", - "resolved": "http://r.cnpmjs.org/punycode/download/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - } - } - }, - "node-notifier": { - "version": "5.4.0", - "resolved": "http://r.cnpmjs.org/node-notifier/download/node-notifier-5.4.0.tgz", - "integrity": "sha1-e0Vf3On33gxjU4KXNU89tGhCbmo=", - "requires": { - "growly": "^1.3.0", - "is-wsl": "^1.1.0", - "semver": "^5.5.0", - "shellwords": "^0.1.1", - "which": "^1.3.0" - } - }, - "node-releases": { - "version": "1.1.7", - "resolved": "http://r.cnpmjs.org/node-releases/download/node-releases-1.1.7.tgz", - "integrity": "sha1-sJoQOU0O2Pd3j3K7hh3eaLFGMDs=", - "requires": { - "semver": "^5.3.0" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "http://r.cnpmjs.org/normalize-package-data/download/normalize-package-data-2.5.0.tgz", - "integrity": "sha1-5m2xg4sgDB38IzIl0SyzZSDiNKg=", - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "resolve": { - "version": "1.10.0", - "resolved": "http://r.cnpmjs.org/resolve/download/resolve-1.10.0.tgz", - "integrity": "sha1-O9qur0XMB/N1ZW39LlTtCBCxAbo=", - "requires": { - "path-parse": "^1.0.6" - } - } - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/normalize-path/download/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "^1.0.1" - } - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "http://r.cnpmjs.org/normalize-range/download/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=" - }, - "normalize-url": { - "version": "3.3.0", - "resolved": "http://r.cnpmjs.org/normalize-url/download/normalize-url-3.3.0.tgz", - "integrity": "sha1-suHE3E98bVd0PfczpPWXjRhlBVk=" - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/npm-run-path/download/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "requires": { - "path-key": "^2.0.0" - } - }, - "nth-check": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/nth-check/download/nth-check-1.0.2.tgz", - "integrity": "sha1-sr0pXDfj3VijvwcAN2Zjuk2c8Fw=", - "requires": { - "boolbase": "~1.0.0" - } - }, - "num2fraction": { - "version": "1.2.2", - "resolved": "http://r.cnpmjs.org/num2fraction/download/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=" - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/number-is-nan/download/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "nwsapi": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/nwsapi/download/nwsapi-2.1.0.tgz", - "integrity": "sha1-eBBllArtkNm7AcpdDOD8+BwycS8=" - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "http://r.cnpmjs.org/oauth-sign/download/oauth-sign-0.9.0.tgz", - "integrity": "sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "http://r.cnpmjs.org/object-assign/download/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-copy": { - "version": "0.1.0", - "resolved": "http://r.cnpmjs.org/object-copy/download/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "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://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "object-hash": { - "version": "1.3.1", - "resolved": "http://r.cnpmjs.org/object-hash/download/object-hash-1.3.1.tgz", - "integrity": "sha1-/eRSCYqVHLFF8Dm7fUVUSd3BJt8=" - }, - "object-keys": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/object-keys/download/object-keys-1.1.0.tgz", - "integrity": "sha1-Eb0iNI3S4JagRasG9shbzDQPoDI=" - }, - "object-visit": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/object-visit/download/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "requires": { - "isobject": "^3.0.0" - } - }, - "object.assign": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/object.assign/download/object.assign-4.1.0.tgz", - "integrity": "sha1-lovxEA15Vrs8oIbwBvhGs7xACNo=", - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "http://r.cnpmjs.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" - } - }, - "object.omit": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/object.omit/download/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/object.pick/download/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "requires": { - "isobject": "^3.0.1" - } - }, - "object.values": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/object.values/download/object.values-1.1.0.tgz", - "integrity": "sha1-v2gQ712j5TJXkOqqK+IT6oRiTak=", - "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://r.cnpmjs.org/obuf/download/obuf-1.1.2.tgz", - "integrity": "sha1-Cb6jND1BhZ69RGKS0RydTbYZCE4=" - }, - "on-finished": { - "version": "2.3.0", - "resolved": "http://r.cnpmjs.org/on-finished/download/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/on-headers/download/on-headers-1.0.1.tgz", - "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=" - }, - "once": { - "version": "1.4.0", - "resolved": "http://r.cnpmjs.org/once/download/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/onetime/download/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "opn": { - "version": "5.4.0", - "resolved": "http://r.cnpmjs.org/opn/download/opn-5.4.0.tgz", - "integrity": "sha1-y1Reeqt4VivrEao7+rxwQuF2EDU=", - "requires": { - "is-wsl": "^1.1.0" - } - }, - "optimist": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/optimist/download/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "http://r.cnpmjs.org/minimist/download/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=" - }, - "wordwrap": { - "version": "0.0.3", - "resolved": "http://r.cnpmjs.org/wordwrap/download/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=" - } - } - }, - "optimize-css-assets-webpack-plugin": { - "version": "5.0.1", - "resolved": "http://r.cnpmjs.org/optimize-css-assets-webpack-plugin/download/optimize-css-assets-webpack-plugin-5.0.1.tgz", - "integrity": "sha1-nrUAcR01FltF5/1gui30DLPrkVk=", - "requires": { - "cssnano": "^4.1.0", - "last-call-webpack-plugin": "^3.0.0" - } - }, - "optionator": { - "version": "0.8.2", - "resolved": "http://r.cnpmjs.org/optionator/download/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "wordwrap": "~1.0.0" - } - }, - "original": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/original/download/original-1.0.2.tgz", - "integrity": "sha1-5EKmHP/hxf0gpl8yYcJmY7MD8l8=", - "requires": { - "url-parse": "^1.4.3" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "http://r.cnpmjs.org/os-browserify/download/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/os-homedir/download/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "os-locale": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/os-locale/download/os-locale-2.1.0.tgz", - "integrity": "sha1-QrwpAKa1uL0XN2yOiCtlr8zyS/I=", - "requires": { - "execa": "^0.7.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/os-tmpdir/download/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "p-defer": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/p-defer/download/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=" - }, - "p-finally": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/p-finally/download/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" - }, - "p-is-promise": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/p-is-promise/download/p-is-promise-2.0.0.tgz", - "integrity": "sha1-dVTj1XIQmofh8/U/an2F0bGU9MU=" - }, - "p-limit": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/p-limit/download/p-limit-1.3.0.tgz", - "integrity": "sha1-uGvV8MJWkJEcdZD8v8IBDVSzzLg=", - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/p-locate/download/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-map": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/p-map/download/p-map-1.2.0.tgz", - "integrity": "sha1-5OlPMR6rvIYzoeeZCBZfyiYkG2s=" - }, - "p-try": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/p-try/download/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" - }, - "pako": { - "version": "1.0.8", - "resolved": "http://r.cnpmjs.org/pako/download/pako-1.0.8.tgz", - "integrity": "sha1-aESJCqucY1r4aK1f7MYuisu6PqQ=" - }, - "parallel-transform": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/parallel-transform/download/parallel-transform-1.1.0.tgz", - "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", - "requires": { - "cyclist": "~0.2.2", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, - "param-case": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/param-case/download/param-case-2.1.1.tgz", - "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", - "requires": { - "no-case": "^2.2.0" - } - }, - "parse-asn1": { - "version": "5.1.4", - "resolved": "http://r.cnpmjs.org/parse-asn1/download/parse-asn1-5.1.4.tgz", - "integrity": "sha1-N/Zij4I/vesic7TVQENKIvPvH8w=", - "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-glob": { - "version": "3.0.4", - "resolved": "http://r.cnpmjs.org/parse-glob/download/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/parse-json/download/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parse5": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/parse5/download/parse5-5.1.0.tgz", - "integrity": "sha1-xZNByXI/QUxFKXVWTHwApo1YrNI=" - }, - "parseurl": { - "version": "1.3.2", - "resolved": "http://r.cnpmjs.org/parseurl/download/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/pascalcase/download/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" - }, - "path-browserify": { - "version": "0.0.0", - "resolved": "http://r.cnpmjs.org/path-browserify/download/path-browserify-0.0.0.tgz", - "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/path-dirname/download/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" - }, - "path-exists": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/path-exists/download/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/path-is-inside/download/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" - }, - "path-key": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/path-key/download/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" - }, - "path-parse": { - "version": "1.0.6", - "resolved": "http://r.cnpmjs.org/path-parse/download/path-parse-1.0.6.tgz", - "integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw=" - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "http://r.cnpmjs.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "path-type": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/path-type/download/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pbkdf2": { - "version": "3.0.17", - "resolved": "http://r.cnpmjs.org/pbkdf2/download/pbkdf2-3.0.17.tgz", - "integrity": "sha1-l2wgZTBhexTrsyEUI597CTNuk6Y=", - "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://r.cnpmjs.org/performance-now/download/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "pify": { - "version": "2.3.0", - "resolved": "http://r.cnpmjs.org/pify/download/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - }, - "pinkie": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/pinkie/download/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/pinkie-promise/download/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "requires": { - "pinkie": "^2.0.0" - } - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/pkg-dir/download/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "requires": { - "find-up": "^2.1.0" - } - }, - "pkg-up": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/pkg-up/download/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "requires": { - "find-up": "^2.1.0" - } - }, - "pluralize": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/pluralize/download/pluralize-7.0.0.tgz", - "integrity": "sha1-KYuJ34uTsCIdv0Ia0rGx6iP8Z3c=" - }, - "pn": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/pn/download/pn-1.1.0.tgz", - "integrity": "sha1-4vTO8OIZ9GPBeas3Rj5OHs3Muvs=" - }, - "pnp-webpack-plugin": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/pnp-webpack-plugin/download/pnp-webpack-plugin-1.1.0.tgz", - "integrity": "sha1-lHqW0duUu1ofwBTYO1geQoaZrIw=" - }, - "portfinder": { - "version": "1.0.20", - "resolved": "http://r.cnpmjs.org/portfinder/download/portfinder-1.0.20.tgz", - "integrity": "sha1-vqaGMuVLLhOrewxHdem0G/Jw5Eo=", - "requires": { - "async": "^1.5.2", - "debug": "^2.2.0", - "mkdirp": "0.5.x" - }, - "dependencies": { - "async": { - "version": "1.5.2", - "resolved": "http://r.cnpmjs.org/async/download/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=" - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/posix-character-classes/download/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" - }, - "postcss": { - "version": "6.0.23", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-6.0.23.tgz", - "integrity": "sha1-YcgswyisYOZ3ZF+XkFTrmLwOMyQ=", - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - } - } - }, - "postcss-attribute-case-insensitive": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-attribute-case-insensitive/download/postcss-attribute-case-insensitive-4.0.1.tgz", - "integrity": "sha1-sqchoNJ5wvkQOjYzHIiYFSZCjMc=", - "requires": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-calc": { - "version": "7.0.1", - "resolved": "http://r.cnpmjs.org/postcss-calc/download/postcss-calc-7.0.1.tgz", - "integrity": "sha1-Ntd7qwI7Dsu5eJ2E3LI8SUEUVDY=", - "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": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-color-functional-notation": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/postcss-color-functional-notation/download/postcss-color-functional-notation-2.0.1.tgz", - "integrity": "sha1-Xv03qI+6vrAKKWbR5T2Yztk/dOA=", - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-color-gray": { - "version": "5.0.0", - "resolved": "http://r.cnpmjs.org/postcss-color-gray/download/postcss-color-gray-5.0.0.tgz", - "integrity": "sha1-Uyox65CfjaiYzv/ilv3B+GS+hUc=", - "requires": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.5", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-color-hex-alpha": { - "version": "5.0.2", - "resolved": "http://r.cnpmjs.org/postcss-color-hex-alpha/download/postcss-color-hex-alpha-5.0.2.tgz", - "integrity": "sha1-6bGIa7A42u0z9jlBaMIQtAu0/bY=", - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-color-mod-function": { - "version": "3.0.3", - "resolved": "http://r.cnpmjs.org/postcss-color-mod-function/download/postcss-color-mod-function-3.0.3.tgz", - "integrity": "sha1-gWuhRawRzDy2uqkFp1pJ+QPk0x0=", - "requires": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-color-rebeccapurple": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-color-rebeccapurple/download/postcss-color-rebeccapurple-4.0.1.tgz", - "integrity": "sha1-x6ib6HK7dORbHjAiv+V0iCPm3nc=", - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-colormin": { - "version": "4.0.3", - "resolved": "http://r.cnpmjs.org/postcss-colormin/download/postcss-colormin-4.0.3.tgz", - "integrity": "sha1-rgYLzpPteUrHEmTwgTLVUJVr04E=", - "requires": { - "browserslist": "^4.0.0", - "color": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-convert-values": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-convert-values/download/postcss-convert-values-4.0.1.tgz", - "integrity": "sha1-yjgT7U2g+BL51DcDWE5Enr4Ymn8=", - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-custom-media": { - "version": "7.0.7", - "resolved": "http://r.cnpmjs.org/postcss-custom-media/download/postcss-custom-media-7.0.7.tgz", - "integrity": "sha1-u8aY7TCJ3tYarQ9b+x+0i/aWnnM=", - "requires": { - "postcss": "^7.0.5" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-custom-properties": { - "version": "8.0.9", - "resolved": "http://r.cnpmjs.org/postcss-custom-properties/download/postcss-custom-properties-8.0.9.tgz", - "integrity": "sha1-iUOHBSim6uTI6NKFtszJ/R+X5pw=", - "requires": { - "postcss": "^7.0.5", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-custom-selectors": { - "version": "5.1.2", - "resolved": "http://r.cnpmjs.org/postcss-custom-selectors/download/postcss-custom-selectors-5.1.2.tgz", - "integrity": "sha1-ZIWMbrLs/y+0HQsoyd17PbTef7o=", - "requires": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0-rc.3" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-dir-pseudo-class": { - "version": "5.0.0", - "resolved": "http://r.cnpmjs.org/postcss-dir-pseudo-class/download/postcss-dir-pseudo-class-5.0.0.tgz", - "integrity": "sha1-bjpBd9Dts6vMhf22+7HCbauuq6I=", - "requires": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0-rc.3" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-discard-comments": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-discard-comments/download/postcss-discard-comments-4.0.2.tgz", - "integrity": "sha1-H7q9LCRr/2qq15l7KwkY9NevQDM=", - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-discard-duplicates": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-discard-duplicates/download/postcss-discard-duplicates-4.0.2.tgz", - "integrity": "sha1-P+EzzTyCKC5VD8myORdqkge3hOs=", - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-discard-empty": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-discard-empty/download/postcss-discard-empty-4.0.1.tgz", - "integrity": "sha1-yMlR6fc+2UKAGUWERKAq2Qu592U=", - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-discard-overridden": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-discard-overridden/download/postcss-discard-overridden-4.0.1.tgz", - "integrity": "sha1-ZSrvipZybwKfXj4AFG7npOdV/1c=", - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-double-position-gradients": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/postcss-double-position-gradients/download/postcss-double-position-gradients-1.0.0.tgz", - "integrity": "sha1-/JJ9Uv3ciWyzooEuvF3xR+EQUi4=", - "requires": { - "postcss": "^7.0.5", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-env-function": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/postcss-env-function/download/postcss-env-function-2.0.2.tgz", - "integrity": "sha1-Dz49PFfwlKksK69LYkHwsNpTZdc=", - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-flexbugs-fixes": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/postcss-flexbugs-fixes/download/postcss-flexbugs-fixes-4.1.0.tgz", - "integrity": "sha1-4JSp3xeD4iALexn4ddytOzr/iyA=", - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-focus-visible": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/postcss-focus-visible/download/postcss-focus-visible-4.0.0.tgz", - "integrity": "sha1-R30QcROt5gJLFBKDF63ivR4XBG4=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-focus-within": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/postcss-focus-within/download/postcss-focus-within-3.0.0.tgz", - "integrity": "sha1-djuHiFls7puHTJmSAc3egGWe9oA=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-font-variant": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/postcss-font-variant/download/postcss-font-variant-4.0.0.tgz", - "integrity": "sha1-cd08bBCg2EbF7aB4A0OWF7u6usw=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-gap-properties": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/postcss-gap-properties/download/postcss-gap-properties-2.0.0.tgz", - "integrity": "sha1-QxwZKrPtlqPD0J8v9hWWD5AsFxU=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-image-set-function": { - "version": "3.0.1", - "resolved": "http://r.cnpmjs.org/postcss-image-set-function/download/postcss-image-set-function-3.0.1.tgz", - "integrity": "sha1-KJIKLymUW+1MMZjX32SW1BDT8og=", - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-initial": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/postcss-initial/download/postcss-initial-3.0.0.tgz", - "integrity": "sha1-F3JRL68RQht5H7LKaHnfX2iqBRc=", - "requires": { - "lodash.template": "^4.2.4", - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-lab-function": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/postcss-lab-function/download/postcss-lab-function-2.0.1.tgz", - "integrity": "sha1-u1GmhWzRIomrSuINseOCHvE9fS4=", - "requires": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-load-config": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/postcss-load-config/download/postcss-load-config-2.0.0.tgz", - "integrity": "sha1-8TEt2/WRLNdHF3CDxe96GdYu5IQ=", - "requires": { - "cosmiconfig": "^4.0.0", - "import-cwd": "^2.0.0" - }, - "dependencies": { - "cosmiconfig": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/cosmiconfig/download/cosmiconfig-4.0.0.tgz", - "integrity": "sha1-dgORVJWAu9LfHlYrwXexPCkJctw=", - "requires": { - "is-directory": "^0.3.1", - "js-yaml": "^3.9.0", - "parse-json": "^4.0.0", - "require-from-string": "^2.0.1" - } - } - } - }, - "postcss-loader": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/postcss-loader/download/postcss-loader-3.0.0.tgz", - "integrity": "sha1-a5eUPkfHLYRfqeA/Jzdz1OjdbC0=", - "requires": { - "loader-utils": "^1.1.0", - "postcss": "^7.0.0", - "postcss-load-config": "^2.0.0", - "schema-utils": "^1.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-logical": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/postcss-logical/download/postcss-logical-3.0.0.tgz", - "integrity": "sha1-JJXQ+LgunyYnJfdflAGzTntF1bU=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-media-minmax": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/postcss-media-minmax/download/postcss-media-minmax-4.0.0.tgz", - "integrity": "sha1-t1u2y8IXyKxJQz4S8iBIgUpPXtU=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-merge-longhand": { - "version": "4.0.11", - "resolved": "http://r.cnpmjs.org/postcss-merge-longhand/download/postcss-merge-longhand-4.0.11.tgz", - "integrity": "sha1-YvSaE+Sg7gTnuY9CuxYGLKJUniQ=", - "requires": { - "css-color-names": "0.0.4", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "stylehacks": "^4.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-merge-rules": { - "version": "4.0.3", - "resolved": "http://r.cnpmjs.org/postcss-merge-rules/download/postcss-merge-rules-4.0.3.tgz", - "integrity": "sha1-NivqT/Wh+Y5AdacTxsslrv75plA=", - "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": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "http://r.cnpmjs.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", - "requires": { - "dot-prop": "^4.1.1", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-minify-font-values": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-minify-font-values/download/postcss-minify-font-values-4.0.2.tgz", - "integrity": "sha1-zUw0TM5HQ0P6xdgiBqssvLiv1aY=", - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-minify-gradients": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-minify-gradients/download/postcss-minify-gradients-4.0.2.tgz", - "integrity": "sha1-k7KcL/UJnFNe7NpWxKpuZlpmNHE=", - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "is-color-stop": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-minify-params": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-minify-params/download/postcss-minify-params-4.0.2.tgz", - "integrity": "sha1-a5zvAwwR41Jh+V9hjJADbWgNuHQ=", - "requires": { - "alphanum-sort": "^1.0.0", - "browserslist": "^4.0.0", - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "uniqs": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-minify-selectors": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-minify-selectors/download/postcss-minify-selectors-4.0.2.tgz", - "integrity": "sha1-4uXrQL/uUA0M2SQ1APX46kJi+9g=", - "requires": { - "alphanum-sort": "^1.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "http://r.cnpmjs.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", - "requires": { - "dot-prop": "^4.1.1", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-modules-extract-imports": { - "version": "1.2.1", - "resolved": "http://r.cnpmjs.org/postcss-modules-extract-imports/download/postcss-modules-extract-imports-1.2.1.tgz", - "integrity": "sha1-3IfjQUjsfqtfeR981YSYMzdbdBo=", - "requires": { - "postcss": "^6.0.1" - } - }, - "postcss-modules-local-by-default": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/postcss-modules-local-by-default/download/postcss-modules-local-by-default-1.2.0.tgz", - "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", - "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - } - }, - "postcss-modules-scope": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/postcss-modules-scope/download/postcss-modules-scope-1.1.0.tgz", - "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", - "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - } - }, - "postcss-modules-values": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/postcss-modules-values/download/postcss-modules-values-1.3.0.tgz", - "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", - "requires": { - "icss-replace-symbols": "^1.1.0", - "postcss": "^6.0.1" - } - }, - "postcss-nesting": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/postcss-nesting/download/postcss-nesting-7.0.0.tgz", - "integrity": "sha1-biancKDI/LozeCprbzUIReGkSPY=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-charset": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-normalize-charset/download/postcss-normalize-charset-4.0.1.tgz", - "integrity": "sha1-izWt067oOhNrBHHg1ZvlilAoXdQ=", - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-display-values": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-normalize-display-values/download/postcss-normalize-display-values-4.0.2.tgz", - "integrity": "sha1-Db4EpM6QY9RmftK+R2u4MMglk1o=", - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-positions": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-normalize-positions/download/postcss-normalize-positions-4.0.2.tgz", - "integrity": "sha1-BfdX+E8mBDc3g2ipH4ky1LECkX8=", - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-repeat-style": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-normalize-repeat-style/download/postcss-normalize-repeat-style-4.0.2.tgz", - "integrity": "sha1-xOu8KJ85kaAo1EdRy90RkYsXkQw=", - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-string": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-normalize-string/download/postcss-normalize-string-4.0.2.tgz", - "integrity": "sha1-zUTECrB6DHo23F6Zqs4eyk7CaQw=", - "requires": { - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-timing-functions": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-normalize-timing-functions/download/postcss-normalize-timing-functions-4.0.2.tgz", - "integrity": "sha1-jgCcoqOUnNr4rSPmtquZy159KNk=", - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-unicode": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-normalize-unicode/download/postcss-normalize-unicode-4.0.1.tgz", - "integrity": "sha1-hBvUj9zzAZrUuqdJOj02O1KuHPs=", - "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-url": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-normalize-url/download/postcss-normalize-url-4.0.1.tgz", - "integrity": "sha1-EOQ3+GvHx+WPe5ZS7YeNqqlfquE=", - "requires": { - "is-absolute-url": "^2.0.0", - "normalize-url": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-normalize-whitespace": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-normalize-whitespace/download/postcss-normalize-whitespace-4.0.2.tgz", - "integrity": "sha1-vx1AcP5Pzqh9E0joJdjMDF+qfYI=", - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-ordered-values": { - "version": "4.1.2", - "resolved": "http://r.cnpmjs.org/postcss-ordered-values/download/postcss-ordered-values-4.1.2.tgz", - "integrity": "sha1-DPdcgg7H1cTSgBiVWeC1ceusDu4=", - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-overflow-shorthand": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/postcss-overflow-shorthand/download/postcss-overflow-shorthand-2.0.0.tgz", - "integrity": "sha1-MezzUOnG9t3CUKePDD4RHzLdTDA=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-page-break": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/postcss-page-break/download/postcss-page-break-2.0.0.tgz", - "integrity": "sha1-rdUtDgpSjKvmr+6LRuKrsnffRr8=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-place": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-place/download/postcss-place-4.0.1.tgz", - "integrity": "sha1-6fOdM9LcWE5G7h20Wtt3yp0dzGI=", - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-preset-env": { - "version": "6.3.1", - "resolved": "http://r.cnpmjs.org/postcss-preset-env/download/postcss-preset-env-6.3.1.tgz", - "integrity": "sha1-vQ9jU8RPQdC+YdonivM6ZVngqmo=", - "requires": { - "autoprefixer": "^9.3.1", - "browserslist": "^4.3.4", - "caniuse-lite": "^1.0.30000905", - "cssdb": "^4.1.0", - "postcss": "^7.0.5", - "postcss-attribute-case-insensitive": "^4.0.0", - "postcss-color-functional-notation": "^2.0.1", - "postcss-color-gray": "^5.0.0", - "postcss-color-hex-alpha": "^5.0.2", - "postcss-color-mod-function": "^3.0.3", - "postcss-color-rebeccapurple": "^4.0.1", - "postcss-custom-media": "^7.0.7", - "postcss-custom-properties": "^8.0.9", - "postcss-custom-selectors": "^5.1.2", - "postcss-dir-pseudo-class": "^5.0.0", - "postcss-double-position-gradients": "^1.0.0", - "postcss-env-function": "^2.0.2", - "postcss-focus-visible": "^4.0.0", - "postcss-focus-within": "^3.0.0", - "postcss-font-variant": "^4.0.0", - "postcss-gap-properties": "^2.0.0", - "postcss-image-set-function": "^3.0.1", - "postcss-initial": "^3.0.0", - "postcss-lab-function": "^2.0.1", - "postcss-logical": "^3.0.0", - "postcss-media-minmax": "^4.0.0", - "postcss-nesting": "^7.0.0", - "postcss-overflow-shorthand": "^2.0.0", - "postcss-page-break": "^2.0.0", - "postcss-place": "^4.0.1", - "postcss-pseudo-class-any-link": "^6.0.0", - "postcss-replace-overflow-wrap": "^3.0.0", - "postcss-selector-matches": "^4.0.0", - "postcss-selector-not": "^4.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-pseudo-class-any-link": { - "version": "6.0.0", - "resolved": "http://r.cnpmjs.org/postcss-pseudo-class-any-link/download/postcss-pseudo-class-any-link-6.0.0.tgz", - "integrity": "sha1-LtPu05OzcCh53sSocDKyENrrBNE=", - "requires": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0-rc.3" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-reduce-initial": { - "version": "4.0.3", - "resolved": "http://r.cnpmjs.org/postcss-reduce-initial/download/postcss-reduce-initial-4.0.3.tgz", - "integrity": "sha1-f9QuvqXpyBRgljniwuhK4nC6SN8=", - "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-reduce-transforms": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-reduce-transforms/download/postcss-reduce-transforms-4.0.2.tgz", - "integrity": "sha1-F++kBerMbge+NBSlyi0QdGgdTik=", - "requires": { - "cssnano-util-get-match": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-replace-overflow-wrap": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/postcss-replace-overflow-wrap/download/postcss-replace-overflow-wrap-3.0.0.tgz", - "integrity": "sha1-YbNg/9rtyoTHyRjSsPDQ6lWasBw=", - "requires": { - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-safe-parser": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-safe-parser/download/postcss-safe-parser-4.0.1.tgz", - "integrity": "sha1-h1bZ5MNv3OLHKwkbvIyhdqsfzeo=", - "requires": { - "postcss": "^7.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-selector-matches": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/postcss-selector-matches/download/postcss-selector-matches-4.0.0.tgz", - "integrity": "sha1-ccgkj5F7osyTA3yWN+4JxkQ2/P8=", - "requires": { - "balanced-match": "^1.0.0", - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-selector-not": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/postcss-selector-not/download/postcss-selector-not-4.0.0.tgz", - "integrity": "sha1-xo/3upZSdJnoMnJKJnTWVgO2RcA=", - "requires": { - "balanced-match": "^1.0.0", - "postcss": "^7.0.2" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-selector-parser": { - "version": "5.0.0", - "resolved": "http://r.cnpmjs.org/postcss-selector-parser/download/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha1-JJBENWaXsztk8aj3yAki3d7nGVw=", - "requires": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "dependencies": { - "cssesc": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/cssesc/download/cssesc-2.0.0.tgz", - "integrity": "sha1-OxO9G7HLNuG8taTc0n9UxdyzVwM=" - } - } - }, - "postcss-svgo": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/postcss-svgo/download/postcss-svgo-4.0.2.tgz", - "integrity": "sha1-F7mXvHEbMzurFDqu07jT1uPTglg=", - "requires": { - "is-svg": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "svgo": "^1.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-unique-selectors": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/postcss-unique-selectors/download/postcss-unique-selectors-4.0.1.tgz", - "integrity": "sha1-lEaRHzKJv9ZMbWgPBzwDsfnuS6w=", - "requires": { - "alphanum-sort": "^1.0.0", - "postcss": "^7.0.0", - "uniqs": "^2.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "http://r.cnpmjs.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz", - "integrity": "sha1-n/giVH4okyE88cMO+lGsX9G6goE=" - }, - "postcss-values-parser": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/postcss-values-parser/download/postcss-values-parser-2.0.1.tgz", - "integrity": "sha1-2otHLZAdoeIFtHvcmGN7np5VDl8=", - "requires": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/prelude-ls/download/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" - }, - "preserve": { - "version": "0.2.0", - "resolved": "http://r.cnpmjs.org/preserve/download/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" - }, - "prettier": { - "version": "1.16.4", - "resolved": "http://r.cnpmjs.org/prettier/download/prettier-1.16.4.tgz", - "integrity": "sha1-c+N+c+AYrS25x2dC4mR+IXkMlxc=" - }, - "pretty-bytes": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/pretty-bytes/download/pretty-bytes-4.0.2.tgz", - "integrity": "sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk=" - }, - "pretty-error": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/pretty-error/download/pretty-error-2.1.1.tgz", - "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", - "requires": { - "renderkid": "^2.0.1", - "utila": "~0.4" - } - }, - "pretty-format": { - "version": "23.6.0", - "resolved": "http://r.cnpmjs.org/pretty-format/download/pretty-format-23.6.0.tgz", - "integrity": "sha1-XqrI7razO5h7f+YJfqaooUarV2A=", - "requires": { - "ansi-regex": "^3.0.0", - "ansi-styles": "^3.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/ansi-regex/download/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - } - } - }, - "private": { - "version": "0.1.8", - "resolved": "http://r.cnpmjs.org/private/download/private-0.1.8.tgz", - "integrity": "sha1-I4Hts2ifelPWUxkAYPz4ItLzaP8=" - }, - "process": { - "version": "0.11.10", - "resolved": "http://r.cnpmjs.org/process/download/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/process-nextick-args/download/process-nextick-args-2.0.0.tgz", - "integrity": "sha1-o31zL0JxtKsa0HDTVQjoKQeI/6o=" - }, - "progress": { - "version": "2.0.3", - "resolved": "http://r.cnpmjs.org/progress/download/progress-2.0.3.tgz", - "integrity": "sha1-foz42PW48jnBvGi+tOt4Vn1XLvg=" - }, - "promise": { - "version": "8.0.2", - "resolved": "http://r.cnpmjs.org/promise/download/promise-8.0.2.tgz", - "integrity": "sha1-nc0GchksWJR31WiRJxvcJ1R66fA=", - "requires": { - "asap": "~2.0.6" - } - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/promise-inflight/download/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" - }, - "prompts": { - "version": "0.1.14", - "resolved": "http://r.cnpmjs.org/prompts/download/prompts-0.1.14.tgz", - "integrity": "sha1-qOFcYSxcnsj4ERhH3zM3ycvUQ7I=", - "requires": { - "kleur": "^2.0.1", - "sisteransi": "^0.1.1" - } - }, - "prop-types": { - "version": "15.7.2", - "resolved": "http://r.cnpmjs.org/prop-types/download/prop-types-15.7.2.tgz", - "integrity": "sha1-UsQedbjIfnK52TYOAga5ncv/psU=", - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "proxy-addr": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/proxy-addr/download/proxy-addr-2.0.4.tgz", - "integrity": "sha1-7PxzO/Iv+Mb0B/onUye5q2fki5M=", - "requires": { - "forwarded": "~0.1.2", - "ipaddr.js": "1.8.0" - } - }, - "prr": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/prr/download/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/pseudomap/download/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" - }, - "psl": { - "version": "1.1.31", - "resolved": "http://r.cnpmjs.org/psl/download/psl-1.1.31.tgz", - "integrity": "sha1-6aqG0BAbWxBcvpOsa3hM1UcnYYQ=" - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "http://r.cnpmjs.org/public-encrypt/download/public-encrypt-4.0.3.tgz", - "integrity": "sha1-T8ydd6B+SLp1J+fL4N4z0HATMeA=", - "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://r.cnpmjs.org/pump/download/pump-3.0.0.tgz", - "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "http://r.cnpmjs.org/pumpify/download/pumpify-1.5.1.tgz", - "integrity": "sha1-NlE74karJ1cLGjdKXOJ4v9dDcM4=", - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/pump/download/pump-2.0.1.tgz", - "integrity": "sha1-Ejma3W5M91Jtlzy8i1zi4pCLOQk=", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/punycode/download/punycode-2.1.1.tgz", - "integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew=" - }, - "q": { - "version": "1.5.1", - "resolved": "http://r.cnpmjs.org/q/download/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" - }, - "qs": { - "version": "6.5.2", - "resolved": "http://r.cnpmjs.org/qs/download/qs-6.5.2.tgz", - "integrity": "sha1-yzroBuh0BERYTvFUzo7pjUA/PjY=" - }, - "querystring": { - "version": "0.2.0", - "resolved": "http://r.cnpmjs.org/querystring/download/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "http://r.cnpmjs.org/querystring-es3/download/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" - }, - "querystringify": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/querystringify/download/querystringify-2.1.0.tgz", - "integrity": "sha1-fe2N+/eHncxg0KZErGdUsoOtF+8=" - }, - "raf": { - "version": "3.4.1", - "resolved": "http://r.cnpmjs.org/raf/download/raf-3.4.1.tgz", - "integrity": "sha1-B0LpmkplUvRF1z4+4DKK8P8e3jk=", - "requires": { - "performance-now": "^2.1.0" - } - }, - "randomatic": { - "version": "3.1.1", - "resolved": "http://r.cnpmjs.org/randomatic/download/randomatic-3.1.1.tgz", - "integrity": "sha1-t3bvxZN1mE42xTey9RofCv8Noe0=", - "requires": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-4.0.0.tgz", - "integrity": "sha1-ACbjf1RU1z41bf5lZGmYZ8an8P8=" - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - } - } - }, - "randombytes": { - "version": "2.0.6", - "resolved": "http://r.cnpmjs.org/randombytes/download/randombytes-2.0.6.tgz", - "integrity": "sha1-0wLFIpSFiISKjTAMkytEwkIx2oA=", - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/randomfill/download/randomfill-1.0.4.tgz", - "integrity": "sha1-ySGW/IarQr6YPxvzF3giSTHWFFg=", - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/range-parser/download/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" - }, - "raw-body": { - "version": "2.3.3", - "resolved": "http://r.cnpmjs.org/raw-body/download/raw-body-2.3.3.tgz", - "integrity": "sha1-GzJOzmtXBuFThVvBFIxlu39uoMM=", - "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://r.cnpmjs.org/iconv-lite/download/iconv-lite-0.4.23.tgz", - "integrity": "sha1-KXhx9jvlB63Pv8pxXQzQ7thOmmM=", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "react": { - "version": "16.8.2", - "resolved": "http://r.cnpmjs.org/react/download/react-16.8.2.tgz", - "integrity": "sha1-gwZFlv6qmNnChXxN6uGEi1QsnAw=", - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.13.2" - } - }, - "react-app-polyfill": { - "version": "0.2.1", - "resolved": "http://r.cnpmjs.org/react-app-polyfill/download/react-app-polyfill-0.2.1.tgz", - "integrity": "sha1-lscBpAuWcchUf3C9u0pH9NV2d5A=", - "requires": { - "core-js": "2.6.4", - "object-assign": "4.1.1", - "promise": "8.0.2", - "raf": "3.4.1", - "whatwg-fetch": "3.0.0" - }, - "dependencies": { - "core-js": { - "version": "2.6.4", - "resolved": "http://r.cnpmjs.org/core-js/download/core-js-2.6.4.tgz", - "integrity": "sha1-uIl8BixNdp3TCgrFxzl2xH+S6g0=" - } - } - }, - "react-dev-utils": { - "version": "7.0.3", - "resolved": "http://r.cnpmjs.org/react-dev-utils/download/react-dev-utils-7.0.3.tgz", - "integrity": "sha1-8TFs//15L9QbDCitXbhsHXRITW8=", - "requires": { - "@babel/code-frame": "7.0.0", - "address": "1.0.3", - "browserslist": "4.4.1", - "chalk": "2.4.2", - "cross-spawn": "6.0.5", - "detect-port-alt": "1.1.6", - "escape-string-regexp": "1.0.5", - "filesize": "3.6.1", - "find-up": "3.0.0", - "global-modules": "2.0.0", - "globby": "8.0.2", - "gzip-size": "5.0.0", - "immer": "1.10.0", - "inquirer": "6.2.1", - "is-root": "2.0.0", - "loader-utils": "1.2.3", - "opn": "5.4.0", - "pkg-up": "2.0.0", - "react-error-overlay": "^5.1.3", - "recursive-readdir": "2.2.2", - "shell-quote": "1.6.1", - "sockjs-client": "1.3.0", - "strip-ansi": "5.0.0", - "text-table": "0.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/ansi-regex/download/ansi-regex-4.0.0.tgz", - "integrity": "sha1-cN55Ht8CFATD/WFaqJEYrgQy5ak=" - }, - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/find-up/download/find-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", - "requires": { - "locate-path": "^3.0.0" - } - }, - "inquirer": { - "version": "6.2.1", - "resolved": "http://r.cnpmjs.org/inquirer/download/inquirer-6.2.1.tgz", - "integrity": "sha1-mUP8SIIWG9sLDJJ2dpx1sy2/zVI=", - "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.0", - "figures": "^2.0.0", - "lodash": "^4.17.10", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.1.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.0.0", - "through": "^2.3.6" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/locate-path/download/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/p-limit/download/p-limit-2.1.0.tgz", - "integrity": "sha1-HVoNIPsScHx1imVfa7xDhrWTDWg=", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/p-locate/download/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/p-try/download/p-try-2.0.0.tgz", - "integrity": "sha1-hQgLuHxkaI+keZb+j3376CEXYLE=" - }, - "strip-ansi": { - "version": "5.0.0", - "resolved": "http://r.cnpmjs.org/strip-ansi/download/strip-ansi-5.0.0.tgz", - "integrity": "sha1-949otdCGbCCyybjGG1KYUI3IdW8=", - "requires": { - "ansi-regex": "^4.0.0" - } - } - } - }, - "react-dom": { - "version": "16.8.2", - "resolved": "http://r.cnpmjs.org/react-dom/download/react-dom-16.8.2.tgz", - "integrity": "sha1-fIppVF3VVNRdZkQiMLoEpqCjw9M=", - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.13.2" - } - }, - "react-error-overlay": { - "version": "5.1.3", - "resolved": "http://r.cnpmjs.org/react-error-overlay/download/react-error-overlay-5.1.3.tgz", - "integrity": "sha1-Fvy9517U3GFh3G3JWbSOksb/qa0=" - }, - "react-is": { - "version": "16.8.2", - "resolved": "http://r.cnpmjs.org/react-is/download/react-is-16.8.2.tgz", - "integrity": "sha1-CYkdMkytHLDB8tkfcKcaS+403w8=" - }, - "react-scripts": { - "version": "2.1.3", - "resolved": "http://r.cnpmjs.org/react-scripts/download/react-scripts-2.1.3.tgz", - "integrity": "sha1-bkm+J59AOfufMw0rNSm5M7jpCUU=", - "requires": { - "@babel/core": "7.1.6", - "@svgr/webpack": "2.4.1", - "babel-core": "7.0.0-bridge.0", - "babel-eslint": "9.0.0", - "babel-jest": "23.6.0", - "babel-loader": "8.0.4", - "babel-plugin-named-asset-import": "^0.3.0", - "babel-preset-react-app": "^7.0.0", - "bfj": "6.1.1", - "case-sensitive-paths-webpack-plugin": "2.1.2", - "chalk": "2.4.1", - "css-loader": "1.0.0", - "dotenv": "6.0.0", - "dotenv-expand": "4.2.0", - "eslint": "5.6.0", - "eslint-config-react-app": "^3.0.6", - "eslint-loader": "2.1.1", - "eslint-plugin-flowtype": "2.50.1", - "eslint-plugin-import": "2.14.0", - "eslint-plugin-jsx-a11y": "6.1.2", - "eslint-plugin-react": "7.11.1", - "file-loader": "2.0.0", - "fork-ts-checker-webpack-plugin-alt": "0.4.14", - "fs-extra": "7.0.0", - "fsevents": "1.2.4", - "html-webpack-plugin": "4.0.0-alpha.2", - "identity-obj-proxy": "3.0.0", - "jest": "23.6.0", - "jest-pnp-resolver": "1.0.1", - "jest-resolve": "23.6.0", - "mini-css-extract-plugin": "0.4.3", - "optimize-css-assets-webpack-plugin": "5.0.1", - "pnp-webpack-plugin": "1.1.0", - "postcss-flexbugs-fixes": "4.1.0", - "postcss-loader": "3.0.0", - "postcss-preset-env": "6.3.1", - "postcss-safe-parser": "4.0.1", - "react-app-polyfill": "^0.2.0", - "react-dev-utils": "^7.0.1", - "resolve": "1.8.1", - "sass-loader": "7.1.0", - "style-loader": "0.23.0", - "terser-webpack-plugin": "1.1.0", - "url-loader": "1.1.1", - "webpack": "4.19.1", - "webpack-dev-server": "3.1.14", - "webpack-manifest-plugin": "2.0.4", - "workbox-webpack-plugin": "3.6.3" - } - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/read-pkg/download/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/read-pkg-up/download/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/find-up/download/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/path-exists/download/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "requires": { - "pinkie-promise": "^2.0.0" - } - } - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://r.cnpmjs.org/readable-stream/download/readable-stream-2.3.6.tgz", - "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "http://r.cnpmjs.org/readdirp/download/readdirp-2.2.1.tgz", - "integrity": "sha1-DodiKjMlqjPokihcr4tOhGUppSU=", - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/arr-diff/download/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "http://r.cnpmjs.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "http://r.cnpmjs.org/expand-brackets/download/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "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": { - "define-property": { - "version": "0.2.5", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=" - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/extglob/download/extglob-2.0.4.tgz", - "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", - "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://r.cnpmjs.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - }, - "micromatch": { - "version": "3.1.10", - "resolved": "http://r.cnpmjs.org/micromatch/download/micromatch-3.1.10.tgz", - "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", - "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" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "realpath-native": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/realpath-native/download/realpath-native-1.1.0.tgz", - "integrity": "sha1-IAMpT+oj+wZy8kduviL89Jii1lw=", - "requires": { - "util.promisify": "^1.0.0" - } - }, - "recursive-readdir": { - "version": "2.2.2", - "resolved": "http://r.cnpmjs.org/recursive-readdir/download/recursive-readdir-2.2.2.tgz", - "integrity": "sha1-mUb7MnThYo3m42svZxSVO0hFCU8=", - "requires": { - "minimatch": "3.0.4" - } - }, - "regenerate": { - "version": "1.4.0", - "resolved": "http://r.cnpmjs.org/regenerate/download/regenerate-1.4.0.tgz", - "integrity": "sha1-SoVuxLVuQHfFV1icroXnpMiGmhE=" - }, - "regenerate-unicode-properties": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/regenerate-unicode-properties/download/regenerate-unicode-properties-7.0.0.tgz", - "integrity": "sha1-EHQFr8xKGQ7F7UUOyqAO0Mr6ekw=", - "requires": { - "regenerate": "^1.4.0" - } - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "http://r.cnpmjs.org/regenerator-runtime/download/regenerator-runtime-0.11.1.tgz", - "integrity": "sha1-vgWtf5v30i4Fb5cmzuUBf78Z4uk=" - }, - "regenerator-transform": { - "version": "0.13.3", - "resolved": "http://r.cnpmjs.org/regenerator-transform/download/regenerator-transform-0.13.3.tgz", - "integrity": "sha1-JkvZ/zioziSwbgY2SWsshWtXvLs=", - "requires": { - "private": "^0.1.6" - } - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "http://r.cnpmjs.org/regex-cache/download/regex-cache-0.4.4.tgz", - "integrity": "sha1-db3FiioUls7EihKDW8VMjVYjNt0=", - "requires": { - "is-equal-shallow": "^0.1.3" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/regex-not/download/regex-not-1.0.2.tgz", - "integrity": "sha1-H07OJ+ALC2XgJHpoEOaoXYOldSw=", - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexp-tree": { - "version": "0.1.3", - "resolved": "http://r.cnpmjs.org/regexp-tree/download/regexp-tree-0.1.3.tgz", - "integrity": "sha1-/KijagDNTD893B1IF9ol/fR2Wig=" - }, - "regexpp": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/regexpp/download/regexpp-2.0.1.tgz", - "integrity": "sha1-jRnTHPYySCtYkEn4KB+T28uk0H8=" - }, - "regexpu-core": { - "version": "4.4.0", - "resolved": "http://r.cnpmjs.org/regexpu-core/download/regexpu-core-4.4.0.tgz", - "integrity": "sha1-jUPg0SZog5aXIDRecMJ17grsDTI=", - "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^7.0.0", - "regjsgen": "^0.5.0", - "regjsparser": "^0.6.0", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.0.2" - } - }, - "regjsgen": { - "version": "0.5.0", - "resolved": "http://r.cnpmjs.org/regjsgen/download/regjsgen-0.5.0.tgz", - "integrity": "sha1-p2NNwI+JIJwgSa3aNSVxH7lyZd0=" - }, - "regjsparser": { - "version": "0.6.0", - "resolved": "http://r.cnpmjs.org/regjsparser/download/regjsparser-0.6.0.tgz", - "integrity": "sha1-8eaui32iuulsmTmbhozWyTOiupw=", - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "http://r.cnpmjs.org/jsesc/download/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" - } - } - }, - "relateurl": { - "version": "0.2.7", - "resolved": "http://r.cnpmjs.org/relateurl/download/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=" - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/remove-trailing-separator/download/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" - }, - "renderkid": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/renderkid/download/renderkid-2.0.2.tgz", - "integrity": "sha1-EtMQ8lU2DAetj94lP2yeneNy0qo=", - "requires": { - "css-select": "^1.1.0", - "dom-converter": "~0.2", - "htmlparser2": "~3.3.0", - "strip-ansi": "^3.0.0", - "utila": "^0.4.0" - }, - "dependencies": { - "css-select": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/css-select/download/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "domutils": { - "version": "1.5.1", - "resolved": "http://r.cnpmjs.org/domutils/download/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - } - } - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "http://r.cnpmjs.org/repeat-element/download/repeat-element-1.1.3.tgz", - "integrity": "sha1-eC4NglwMWjuzlzH4Tv7mt0Lmsc4=" - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "http://r.cnpmjs.org/repeat-string/download/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" - }, - "repeating": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/repeating/download/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "requires": { - "is-finite": "^1.0.0" - } - }, - "request": { - "version": "2.88.0", - "resolved": "http://r.cnpmjs.org/request/download/request-2.88.0.tgz", - "integrity": "sha1-nC/KT301tZLv5Xx/ClXoEFIST+8=", - "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" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "http://r.cnpmjs.org/punycode/download/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "http://r.cnpmjs.org/tough-cookie/download/tough-cookie-2.4.3.tgz", - "integrity": "sha1-U/Nto/R3g7CSWvoG/587FlKA94E=", - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - } - } - } - }, - "request-promise-core": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/request-promise-core/download/request-promise-core-1.1.2.tgz", - "integrity": "sha1-M59qq6vK/bMceZ/xWHADNjAdM0Y=", - "requires": { - "lodash": "^4.17.11" - } - }, - "request-promise-native": { - "version": "1.0.7", - "resolved": "http://r.cnpmjs.org/request-promise-native/download/request-promise-native-1.0.7.tgz", - "integrity": "sha1-pJhopiS96lBp8SUdCoNuDYmqLFk=", - "requires": { - "request-promise-core": "1.1.2", - "stealthy-require": "^1.1.1", - "tough-cookie": "^2.3.3" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/require-directory/download/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/require-from-string/download/require-from-string-2.0.2.tgz", - "integrity": "sha1-iaf92TgmEmcxjq/hT5wy5ZjDaQk=" - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/require-main-filename/download/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" - }, - "require-uncached": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/require-uncached/download/require-uncached-1.0.3.tgz", - "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", - "requires": { - "caller-path": "^0.1.0", - "resolve-from": "^1.0.0" - }, - "dependencies": { - "caller-path": { - "version": "0.1.0", - "resolved": "http://r.cnpmjs.org/caller-path/download/caller-path-0.1.0.tgz", - "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", - "requires": { - "callsites": "^0.2.0" - } - }, - "callsites": { - "version": "0.2.0", - "resolved": "http://r.cnpmjs.org/callsites/download/callsites-0.2.0.tgz", - "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=" - }, - "resolve-from": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/resolve-from/download/resolve-from-1.0.1.tgz", - "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=" - } - } - }, - "requires-port": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/requires-port/download/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" - }, - "resolve": { - "version": "1.8.1", - "resolved": "http://r.cnpmjs.org/resolve/download/resolve-1.8.1.tgz", - "integrity": "sha1-gvHsGaQjrB+9CAsLqwa6NuhKeiY=", - "requires": { - "path-parse": "^1.0.5" - } - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/resolve-cwd/download/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "requires": { - "resolve-from": "^3.0.0" - } - }, - "resolve-from": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/resolve-from/download/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "http://r.cnpmjs.org/resolve-url/download/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/restore-cursor/download/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "http://r.cnpmjs.org/ret/download/ret-0.1.15.tgz", - "integrity": "sha1-uKSCXVvbH8P29Twrwz+BOIaBx7w=" - }, - "rgb-regex": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/rgb-regex/download/rgb-regex-1.0.1.tgz", - "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=" - }, - "rgba-regex": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/rgba-regex/download/rgba-regex-1.0.0.tgz", - "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=" - }, - "rimraf": { - "version": "2.6.3", - "resolved": "http://r.cnpmjs.org/rimraf/download/rimraf-2.6.3.tgz", - "integrity": "sha1-stEE/g2Psnz54KHNqCYt04M8bKs=", - "requires": { - "glob": "^7.1.3" - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/ripemd160/download/ripemd160-2.0.2.tgz", - "integrity": "sha1-ocGm9iR1FXe6XQeRTLyShQWFiQw=", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "rsvp": { - "version": "3.6.2", - "resolved": "http://r.cnpmjs.org/rsvp/download/rsvp-3.6.2.tgz", - "integrity": "sha1-LpZJFZmpbN4bUV1WdKj3qRRSkmo=" - }, - "run-async": { - "version": "2.3.0", - "resolved": "http://r.cnpmjs.org/run-async/download/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "requires": { - "is-promise": "^2.1.0" - } - }, - "run-queue": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/run-queue/download/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "requires": { - "aproba": "^1.1.1" - } - }, - "rxjs": { - "version": "6.4.0", - "resolved": "http://r.cnpmjs.org/rxjs/download/rxjs-6.4.0.tgz", - "integrity": "sha1-87sP572n+2nerAwW8XtQsLh5BQQ=", - "requires": { - "tslib": "^1.9.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "http://r.cnpmjs.org/safe-buffer/download/safe-buffer-5.1.2.tgz", - "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=" - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/safe-regex/download/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "http://r.cnpmjs.org/safer-buffer/download/safer-buffer-2.1.2.tgz", - "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=" - }, - "sane": { - "version": "2.5.2", - "resolved": "http://r.cnpmjs.org/sane/download/sane-2.5.2.tgz", - "integrity": "sha1-tNwYYcIbQn6SlQej51HiosuKs/o=", - "requires": { - "anymatch": "^2.0.0", - "capture-exit": "^1.2.0", - "exec-sh": "^0.2.0", - "fb-watchman": "^2.0.0", - "fsevents": "^1.2.3", - "micromatch": "^3.1.4", - "minimist": "^1.1.1", - "walker": "~1.0.5", - "watch": "~0.18.0" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/arr-diff/download/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "http://r.cnpmjs.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "http://r.cnpmjs.org/expand-brackets/download/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "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": { - "define-property": { - "version": "0.2.5", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=" - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/extglob/download/extglob-2.0.4.tgz", - "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", - "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://r.cnpmjs.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - }, - "micromatch": { - "version": "3.1.10", - "resolved": "http://r.cnpmjs.org/micromatch/download/micromatch-3.1.10.tgz", - "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", - "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" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "sass-loader": { - "version": "7.1.0", - "resolved": "http://r.cnpmjs.org/sass-loader/download/sass-loader-7.1.0.tgz", - "integrity": "sha1-Fv1ROMuLQkv4p1lSihly1yqtBp0=", - "requires": { - "clone-deep": "^2.0.1", - "loader-utils": "^1.0.1", - "lodash.tail": "^4.1.1", - "neo-async": "^2.5.0", - "pify": "^3.0.0", - "semver": "^5.5.0" - }, - "dependencies": { - "clone-deep": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/clone-deep/download/clone-deep-2.0.2.tgz", - "integrity": "sha1-ANs6Hhc2VnMNEYjD1qztbX6pdxM=", - "requires": { - "for-own": "^1.0.0", - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.0", - "shallow-clone": "^1.0.0" - } - }, - "for-own": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/for-own/download/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", - "requires": { - "for-in": "^1.0.1" - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - }, - "pify": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - }, - "shallow-clone": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/shallow-clone/download/shallow-clone-1.0.0.tgz", - "integrity": "sha1-RIDNBuiC72iyrYij6lSDLixItXE=", - "requires": { - "is-extendable": "^0.1.1", - "kind-of": "^5.0.0", - "mixin-object": "^2.0.1" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=" - } - } - } - } - }, - "sax": { - "version": "1.2.4", - "resolved": "http://r.cnpmjs.org/sax/download/sax-1.2.4.tgz", - "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=" - }, - "saxes": { - "version": "3.1.6", - "resolved": "http://r.cnpmjs.org/saxes/download/saxes-3.1.6.tgz", - "integrity": "sha1-LZSKR7VJGFFsWmQJbwiGXetb2M0=", - "requires": { - "xmlchars": "^1.3.1" - } - }, - "scheduler": { - "version": "0.13.2", - "resolved": "http://r.cnpmjs.org/scheduler/download/scheduler-0.13.2.tgz", - "integrity": "sha1-lp6u4nZKUdLpeyCmCWOyVGvv+Po=", - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/schema-utils/download/schema-utils-1.0.0.tgz", - "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - }, - "select-hose": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/select-hose/download/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" - }, - "selfsigned": { - "version": "1.10.4", - "resolved": "http://r.cnpmjs.org/selfsigned/download/selfsigned-1.10.4.tgz", - "integrity": "sha1-zdfsz8pO12NdR6CL8tXTB0CS4s0=", - "requires": { - "node-forge": "0.7.5" - } - }, - "semver": { - "version": "5.6.0", - "resolved": "http://r.cnpmjs.org/semver/download/semver-5.6.0.tgz", - "integrity": "sha1-fnQlb7qknHWqfHogXMInmcrIAAQ=" - }, - "send": { - "version": "0.16.2", - "resolved": "http://r.cnpmjs.org/send/download/send-0.16.2.tgz", - "integrity": "sha1-bsyh4PjBVtFBWXVZhI32RzCmu8E=", - "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://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "mime": { - "version": "1.4.1", - "resolved": "http://r.cnpmjs.org/mime/download/mime-1.4.1.tgz", - "integrity": "sha1-Eh+evEnjdm8xGnbh+hyAA8SwOqY=" - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "serialize-javascript": { - "version": "1.6.1", - "resolved": "http://r.cnpmjs.org/serialize-javascript/download/serialize-javascript-1.6.1.tgz", - "integrity": "sha1-TR9pfsSUKahHym9EKip1USbE2Hk=" - }, - "serve-index": { - "version": "1.9.1", - "resolved": "http://r.cnpmjs.org/serve-index/download/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", - "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://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "serve-static": { - "version": "1.13.2", - "resolved": "http://r.cnpmjs.org/serve-static/download/serve-static-1.13.2.tgz", - "integrity": "sha1-CV6Ecv1bRiN9tQzkhqQ/S4bGzsE=", - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.2", - "send": "0.16.2" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/set-blocking/download/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "set-value": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/set-value/download/set-value-2.0.0.tgz", - "integrity": "sha1-ca5KiPD+77v1LR6mBPP7MV67YnQ=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "http://r.cnpmjs.org/setimmediate/download/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/setprototypeof/download/setprototypeof-1.1.0.tgz", - "integrity": "sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY=" - }, - "sha.js": { - "version": "2.4.11", - "resolved": "http://r.cnpmjs.org/sha.js/download/sha.js-2.4.11.tgz", - "integrity": "sha1-N6XPC4HsvGlD3hCbopYNGyZYSuc=", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "shallow-clone": { - "version": "0.1.2", - "resolved": "http://r.cnpmjs.org/shallow-clone/download/shallow-clone-0.1.2.tgz", - "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", - "requires": { - "is-extendable": "^0.1.1", - "kind-of": "^2.0.1", - "lazy-cache": "^0.2.3", - "mixin-object": "^2.0.1" - }, - "dependencies": { - "kind-of": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-2.0.1.tgz", - "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", - "requires": { - "is-buffer": "^1.0.2" - } - }, - "lazy-cache": { - "version": "0.2.7", - "resolved": "http://r.cnpmjs.org/lazy-cache/download/lazy-cache-0.2.7.tgz", - "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=" - } - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "http://r.cnpmjs.org/shebang-command/download/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/shebang-regex/download/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" - }, - "shell-quote": { - "version": "1.6.1", - "resolved": "http://r.cnpmjs.org/shell-quote/download/shell-quote-1.6.1.tgz", - "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", - "requires": { - "array-filter": "~0.0.0", - "array-map": "~0.0.0", - "array-reduce": "~0.0.0", - "jsonify": "~0.0.0" - } - }, - "shellwords": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/shellwords/download/shellwords-0.1.1.tgz", - "integrity": "sha1-1rkYHBpI05cyTISHHvvPxz/AZUs=" - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "http://r.cnpmjs.org/signal-exit/download/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "simple-swizzle": { - "version": "0.2.2", - "resolved": "http://r.cnpmjs.org/simple-swizzle/download/simple-swizzle-0.2.2.tgz", - "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", - "requires": { - "is-arrayish": "^0.3.1" - }, - "dependencies": { - "is-arrayish": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/is-arrayish/download/is-arrayish-0.3.2.tgz", - "integrity": "sha1-RXSirlb3qyBolvtDHq7tBm/fjwM=" - } - } - }, - "sisteransi": { - "version": "0.1.1", - "resolved": "http://r.cnpmjs.org/sisteransi/download/sisteransi-0.1.1.tgz", - "integrity": "sha1-VDFEfV99FnWqxmfM0LhlpJlMs84=" - }, - "slash": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/slash/download/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" - }, - "slice-ansi": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/slice-ansi/download/slice-ansi-1.0.0.tgz", - "integrity": "sha1-BE8aSdiEL/MHqta1Be0Xi9lQE00=", - "requires": { - "is-fullwidth-code-point": "^2.0.0" - } - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "http://r.cnpmjs.org/snapdragon/download/snapdragon-0.8.2.tgz", - "integrity": "sha1-ZJIufFZbDhQgS6GqfWlkJ40lGC0=", - "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://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/snapdragon-node/download/snapdragon-node-2.1.1.tgz", - "integrity": "sha1-bBdfhv8UvbByRWPo88GwIaKGhTs=", - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "http://r.cnpmjs.org/snapdragon-util/download/snapdragon-util-3.0.1.tgz", - "integrity": "sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI=", - "requires": { - "kind-of": "^3.2.0" - } - }, - "sockjs": { - "version": "0.3.19", - "resolved": "http://r.cnpmjs.org/sockjs/download/sockjs-0.3.19.tgz", - "integrity": "sha1-2Xa76ACve9IK4IWY1YI5NQiZPA0=", - "requires": { - "faye-websocket": "^0.10.0", - "uuid": "^3.0.1" - }, - "dependencies": { - "faye-websocket": { - "version": "0.10.0", - "resolved": "http://r.cnpmjs.org/faye-websocket/download/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", - "requires": { - "websocket-driver": ">=0.5.1" - } - } - } - }, - "sockjs-client": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/sockjs-client/download/sockjs-client-1.3.0.tgz", - "integrity": "sha1-EvydbLZj2lc509xftuhofalcsXc=", - "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://r.cnpmjs.org/debug/download/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "source-list-map": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/source-list-map/download/source-list-map-2.0.1.tgz", - "integrity": "sha1-OZO9hzv8SEecyp6jpUeDXHwVSzQ=" - }, - "source-map": { - "version": "0.5.7", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "source-map-resolve": { - "version": "0.5.2", - "resolved": "http://r.cnpmjs.org/source-map-resolve/download/source-map-resolve-0.5.2.tgz", - "integrity": "sha1-cuLMNAlVQ+Q7LGKyxMENSpBU8lk=", - "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.4.18", - "resolved": "http://r.cnpmjs.org/source-map-support/download/source-map-support-0.4.18.tgz", - "integrity": "sha1-Aoam3ovkJkEzhZTpfM6nXwosWF8=", - "requires": { - "source-map": "^0.5.6" - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "http://r.cnpmjs.org/source-map-url/download/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" - }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/spdx-correct/download/spdx-correct-3.1.0.tgz", - "integrity": "sha1-+4PlBERSaPFUsHTiGMh8ADzTHfQ=", - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "http://r.cnpmjs.org/spdx-exceptions/download/spdx-exceptions-2.2.0.tgz", - "integrity": "sha1-LqRQrudPKom/uUUZwH/Nb0EyKXc=" - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/spdx-expression-parse/download/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha1-meEZt6XaAOBUkcn6M4t5BII7QdA=", - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.3", - "resolved": "http://r.cnpmjs.org/spdx-license-ids/download/spdx-license-ids-3.0.3.tgz", - "integrity": "sha1-gcDOjyFHR1YUi7tfO/wPNr8V124=" - }, - "spdy": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/spdy/download/spdy-4.0.0.tgz", - "integrity": "sha1-gfIitadDoymqEs6mo5DmDpthPFI=", - "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://r.cnpmjs.org/spdy-transport/download/spdy-transport-3.0.0.tgz", - "integrity": "sha1-ANSGOmQArXXfkzYaFghgXl3NzzE=", - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - }, - "dependencies": { - "readable-stream": { - "version": "3.1.1", - "resolved": "http://r.cnpmjs.org/readable-stream/download/readable-stream-3.1.1.tgz", - "integrity": "sha1-7Wu8bFuliwkAOf8YzmcFFXla6wY=", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "split-string": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/split-string/download/split-string-3.1.0.tgz", - "integrity": "sha1-fLCd2jqGWFcFxks5pkZgOGguj+I=", - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/sprintf-js/download/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "sshpk": { - "version": "1.16.1", - "resolved": "http://r.cnpmjs.org/sshpk/download/sshpk-1.16.1.tgz", - "integrity": "sha1-+2YcC+8ps520B2nuOfpwCT1vaHc=", - "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://r.cnpmjs.org/ssri/download/ssri-6.0.1.tgz", - "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "stable": { - "version": "0.1.8", - "resolved": "http://r.cnpmjs.org/stable/download/stable-0.1.8.tgz", - "integrity": "sha1-g26zyDgv4pNv6vVEYxAXzn1Ho88=" - }, - "stack-utils": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/stack-utils/download/stack-utils-1.0.2.tgz", - "integrity": "sha1-M+ujiXeIVYvr/C2wWdwVjsNs67g=" - }, - "static-extend": { - "version": "0.1.2", - "resolved": "http://r.cnpmjs.org/static-extend/download/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "statuses": { - "version": "1.4.0", - "resolved": "http://r.cnpmjs.org/statuses/download/statuses-1.4.0.tgz", - "integrity": "sha1-u3PURtonlhBu/MG2AaJT1sRr0Ic=" - }, - "stealthy-require": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/stealthy-require/download/stealthy-require-1.1.1.tgz", - "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=" - }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/stream-browserify/download/stream-browserify-2.0.2.tgz", - "integrity": "sha1-h1IdOKRKp+6RzhzSpH3wy0ndZgs=", - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "stream-each": { - "version": "1.2.3", - "resolved": "http://r.cnpmjs.org/stream-each/download/stream-each-1.2.3.tgz", - "integrity": "sha1-6+J6DDibBPvMIzZClS4Qcxr6m64=", - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-http": { - "version": "2.8.3", - "resolved": "http://r.cnpmjs.org/stream-http/download/stream-http-2.8.3.tgz", - "integrity": "sha1-stJCRpKIpaJ+xP6JM6z2I95lFPw=", - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "stream-shift": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/stream-shift/download/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=" - }, - "string-length": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/string-length/download/string-length-2.0.0.tgz", - "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", - "requires": { - "astral-regex": "^1.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/ansi-regex/download/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/strip-ansi/download/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "http://r.cnpmjs.org/string-width/download/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/ansi-regex/download/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/strip-ansi/download/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "stringify-object": { - "version": "3.3.0", - "resolved": "http://r.cnpmjs.org/stringify-object/download/stringify-object-3.3.0.tgz", - "integrity": "sha1-cDBlrvyhkwDTzoivT1s5VtdVZik=", - "requires": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "http://r.cnpmjs.org/strip-ansi/download/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/strip-bom/download/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "requires": { - "is-utf8": "^0.2.0" - } - }, - "strip-comments": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/strip-comments/download/strip-comments-1.0.2.tgz", - "integrity": "sha1-grnEXn8FhzvuU/NxaK+TCqNoZ50=", - "requires": { - "babel-extract-comments": "^1.0.0", - "babel-plugin-transform-object-rest-spread": "^6.26.0" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/strip-eof/download/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/strip-json-comments/download/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "style-loader": { - "version": "0.23.0", - "resolved": "http://r.cnpmjs.org/style-loader/download/style-loader-0.23.0.tgz", - "integrity": "sha1-g3f++raEFqLgXxyr2MOjrPzOdPE=", - "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^0.4.5" - }, - "dependencies": { - "schema-utils": { - "version": "0.4.7", - "resolved": "http://r.cnpmjs.org/schema-utils/download/schema-utils-0.4.7.tgz", - "integrity": "sha1-unT1l9K+LqiAExdG7hfQoJPGgYc=", - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, - "stylehacks": { - "version": "4.0.3", - "resolved": "http://r.cnpmjs.org/stylehacks/download/stylehacks-4.0.3.tgz", - "integrity": "sha1-Zxj8r00eB9ihMYaQiB6NlnJqcdU=", - "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss": { - "version": "7.0.14", - "resolved": "http://r.cnpmjs.org/postcss/download/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "postcss-selector-parser": { - "version": "3.1.1", - "resolved": "http://r.cnpmjs.org/postcss-selector-parser/download/postcss-selector-parser-3.1.1.tgz", - "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", - "requires": { - "dot-prop": "^4.1.1", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-6.1.0.tgz", - "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "http://r.cnpmjs.org/supports-color/download/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "requires": { - "has-flag": "^3.0.0" - } - }, - "svgo": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/svgo/download/svgo-1.1.1.tgz", - "integrity": "sha1-EjhLAzNbzs2Fz6X04zdf7WccuYU=", - "requires": { - "coa": "~2.0.1", - "colors": "~1.1.2", - "css-select": "^2.0.0", - "css-select-base-adapter": "~0.1.0", - "css-tree": "1.0.0-alpha.28", - "css-url-regex": "^1.1.0", - "csso": "^3.5.0", - "js-yaml": "^3.12.0", - "mkdirp": "~0.5.1", - "object.values": "^1.0.4", - "sax": "~1.2.4", - "stable": "~0.1.6", - "unquote": "~1.1.1", - "util.promisify": "~1.0.0" - } - }, - "symbol-tree": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/symbol-tree/download/symbol-tree-3.2.2.tgz", - "integrity": "sha1-rifbOPZgp64uHDt9G8KQgZuFGeY=" - }, - "table": { - "version": "4.0.3", - "resolved": "http://r.cnpmjs.org/table/download/table-4.0.3.tgz", - "integrity": "sha1-ALXitgLxeUuayvnKkIp2OGp4E7w=", - "requires": { - "ajv": "^6.0.1", - "ajv-keywords": "^3.0.0", - "chalk": "^2.1.0", - "lodash": "^4.17.4", - "slice-ansi": "1.0.0", - "string-width": "^2.1.1" - } - }, - "tapable": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/tapable/download/tapable-1.1.1.tgz", - "integrity": "sha1-TSl5I8WnKkI2DeKrUtrfquwAAY4=" - }, - "terser": { - "version": "3.16.1", - "resolved": "http://r.cnpmjs.org/terser/download/terser-3.16.1.tgz", - "integrity": "sha1-Ww3U+h/9CwtDwkk7LDZP0XkWBJM=", - "requires": { - "commander": "~2.17.1", - "source-map": "~0.6.1", - "source-map-support": "~0.5.9" - }, - "dependencies": { - "commander": { - "version": "2.17.1", - "resolved": "http://r.cnpmjs.org/commander/download/commander-2.17.1.tgz", - "integrity": "sha1-vXerfebelCBc6sxy8XFtKfIKd78=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "source-map-support": { - "version": "0.5.10", - "resolved": "http://r.cnpmjs.org/source-map-support/download/source-map-support-0.5.10.tgz", - "integrity": "sha1-IhQIC8nVGDJRHuK6uW48L5NTEgw=", - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - } - } - }, - "terser-webpack-plugin": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/terser-webpack-plugin/download/terser-webpack-plugin-1.1.0.tgz", - "integrity": "sha1-z3wloe7iW/Eh9KWHu54ATj+A5Sg=", - "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.8.1", - "webpack-sources": "^1.1.0", - "worker-farm": "^1.5.2" - }, - "dependencies": { - "find-cache-dir": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/find-cache-dir/download/find-cache-dir-2.0.0.tgz", - "integrity": "sha1-TB+u1Z9FGEUw+51/oSOk0EqYRy0=", - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/find-up/download/find-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/locate-path/download/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/p-limit/download/p-limit-2.1.0.tgz", - "integrity": "sha1-HVoNIPsScHx1imVfa7xDhrWTDWg=", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/p-locate/download/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/p-try/download/p-try-2.0.0.tgz", - "integrity": "sha1-hQgLuHxkaI+keZb+j3376CEXYLE=" - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/pkg-dir/download/pkg-dir-3.0.0.tgz", - "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=", - "requires": { - "find-up": "^3.0.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - } - } - }, - "test-exclude": { - "version": "4.2.3", - "resolved": "http://r.cnpmjs.org/test-exclude/download/test-exclude-4.2.3.tgz", - "integrity": "sha1-qaXmRHTkOYM5JFoKdprXwvSpfCA=", - "requires": { - "arrify": "^1.0.1", - "micromatch": "^2.3.11", - "object-assign": "^4.1.0", - "read-pkg-up": "^1.0.1", - "require-main-filename": "^1.0.1" - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "http://r.cnpmjs.org/text-table/download/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" - }, - "throat": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/throat/download/throat-4.1.0.tgz", - "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=" - }, - "through": { - "version": "2.3.8", - "resolved": "http://r.cnpmjs.org/through/download/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "through2": { - "version": "2.0.5", - "resolved": "http://r.cnpmjs.org/through2/download/through2-2.0.5.tgz", - "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "thunky": { - "version": "1.0.3", - "resolved": "http://r.cnpmjs.org/thunky/download/thunky-1.0.3.tgz", - "integrity": "sha1-9d9zJFNAewkZHa5z4qjMc/OBqCY=" - }, - "timers-browserify": { - "version": "2.0.10", - "resolved": "http://r.cnpmjs.org/timers-browserify/download/timers-browserify-2.0.10.tgz", - "integrity": "sha1-HSjj0qrfHVpZlsTp+VYBzQU0gK4=", - "requires": { - "setimmediate": "^1.0.4" - } - }, - "timsort": { - "version": "0.3.0", - "resolved": "http://r.cnpmjs.org/timsort/download/timsort-0.3.0.tgz", - "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=" - }, - "tmp": { - "version": "0.0.33", - "resolved": "http://r.cnpmjs.org/tmp/download/tmp-0.0.33.tgz", - "integrity": "sha1-bTQzWIl2jSGyvNoKonfO07G/rfk=", - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "tmpl": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/tmpl/download/tmpl-1.0.4.tgz", - "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=" - }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/to-arraybuffer/download/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/to-fast-properties/download/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "http://r.cnpmjs.org/to-object-path/download/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "http://r.cnpmjs.org/to-regex/download/to-regex-3.0.2.tgz", - "integrity": "sha1-E8/dmzNlUvMLUfM6iuG0Knp1mc4=", - "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://r.cnpmjs.org/to-regex-range/download/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - } - } - } - }, - "topo": { - "version": "2.0.2", - "resolved": "http://r.cnpmjs.org/topo/download/topo-2.0.2.tgz", - "integrity": "sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI=", - "requires": { - "hoek": "4.x.x" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "http://r.cnpmjs.org/tough-cookie/download/tough-cookie-2.5.0.tgz", - "integrity": "sha1-zZ+yoKodWhK0c72fuW+j3P9lreI=", - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tr46": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/tr46/download/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "requires": { - "punycode": "^2.1.0" - } - }, - "trim-right": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/trim-right/download/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" - }, - "tryer": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/tryer/download/tryer-1.0.1.tgz", - "integrity": "sha1-8shUBoALmw90yfdGW4HqrSQSUvg=" - }, - "tslib": { - "version": "1.9.3", - "resolved": "http://r.cnpmjs.org/tslib/download/tslib-1.9.3.tgz", - "integrity": "sha1-1+TdeSRdhUKMTX5IIqeZF5VMooY=" - }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "http://r.cnpmjs.org/tty-browserify/download/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "http://r.cnpmjs.org/tunnel-agent/download/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "http://r.cnpmjs.org/tweetnacl/download/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - }, - "type-check": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/type-check/download/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-is": { - "version": "1.6.16", - "resolved": "http://r.cnpmjs.org/type-is/download/type-is-1.6.16.tgz", - "integrity": "sha1-+JzjQVQcZysl7nrjxz3uOyvlAZQ=", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.18" - } - }, - "typedarray": { - "version": "0.0.6", - "resolved": "http://r.cnpmjs.org/typedarray/download/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" - }, - "uglify-js": { - "version": "3.4.9", - "resolved": "http://r.cnpmjs.org/uglify-js/download/uglify-js-3.4.9.tgz", - "integrity": "sha1-rwLxgMEgfXZDLkc+0koo9KeCuuM=", - "requires": { - "commander": "~2.17.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.17.1", - "resolved": "http://r.cnpmjs.org/commander/download/commander-2.17.1.tgz", - "integrity": "sha1-vXerfebelCBc6sxy8XFtKfIKd78=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - } - } - }, - "uglifyjs-webpack-plugin": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/uglifyjs-webpack-plugin/download/uglifyjs-webpack-plugin-1.3.0.tgz", - "integrity": "sha1-dfVIFghYFjoIZD4IbV/v4YpdZ94=", - "requires": { - "cacache": "^10.0.4", - "find-cache-dir": "^1.0.0", - "schema-utils": "^0.4.5", - "serialize-javascript": "^1.4.0", - "source-map": "^0.6.1", - "uglify-es": "^3.3.4", - "webpack-sources": "^1.1.0", - "worker-farm": "^1.5.2" - }, - "dependencies": { - "cacache": { - "version": "10.0.4", - "resolved": "http://r.cnpmjs.org/cacache/download/cacache-10.0.4.tgz", - "integrity": "sha1-ZFI2eZnv+dQYiu/ZoU6dfGomNGA=", - "requires": { - "bluebird": "^3.5.1", - "chownr": "^1.0.1", - "glob": "^7.1.2", - "graceful-fs": "^4.1.11", - "lru-cache": "^4.1.1", - "mississippi": "^2.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.2", - "ssri": "^5.2.4", - "unique-filename": "^1.1.0", - "y18n": "^4.0.0" - } - }, - "commander": { - "version": "2.13.0", - "resolved": "http://r.cnpmjs.org/commander/download/commander-2.13.0.tgz", - "integrity": "sha1-aWS8pnaF33wfFDDFhPB9dZeIW5w=" - }, - "mississippi": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/mississippi/download/mississippi-2.0.0.tgz", - "integrity": "sha1-NEKlCPr8KFAEhv7qmUCWduTuWm8=", - "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": "^2.0.1", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, - "pump": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/pump/download/pump-2.0.1.tgz", - "integrity": "sha1-Ejma3W5M91Jtlzy8i1zi4pCLOQk=", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "schema-utils": { - "version": "0.4.7", - "resolved": "http://r.cnpmjs.org/schema-utils/download/schema-utils-0.4.7.tgz", - "integrity": "sha1-unT1l9K+LqiAExdG7hfQoJPGgYc=", - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - }, - "ssri": { - "version": "5.3.0", - "resolved": "http://r.cnpmjs.org/ssri/download/ssri-5.3.0.tgz", - "integrity": "sha1-ujhyycbTOgcEp9cf8EXl7EiZnQY=", - "requires": { - "safe-buffer": "^5.1.1" - } - }, - "uglify-es": { - "version": "3.3.9", - "resolved": "http://r.cnpmjs.org/uglify-es/download/uglify-es-3.3.9.tgz", - "integrity": "sha1-DBxPBwC+2NvBJM2zBNJZLKID5nc=", - "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - } - }, - "y18n": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/y18n/download/y18n-4.0.0.tgz", - "integrity": "sha1-le+U+F7MgdAHwmThkKEg8KPIVms=" - } - } - }, - "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/unicode-canonical-property-names-ecmascript/download/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha1-JhmADEyCWADv3YNDr33Zkzy+KBg=" - }, - "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/unicode-match-property-ecmascript/download/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha1-jtKjJWmWG86SJ9Cc0/+7j+1fAgw=", - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/unicode-match-property-value-ecmascript/download/unicode-match-property-value-ecmascript-1.0.2.tgz", - "integrity": "sha1-nx3HaSbWzPRSMQVk/YNKzgWWY9Q=" - }, - "unicode-property-aliases-ecmascript": { - "version": "1.0.4", - "resolved": "http://r.cnpmjs.org/unicode-property-aliases-ecmascript/download/unicode-property-aliases-ecmascript-1.0.4.tgz", - "integrity": "sha1-WlM/MbQxfqdvF9gH+g0RZUYRHdA=" - }, - "union-value": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/union-value/download/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "http://r.cnpmjs.org/set-value/download/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "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://r.cnpmjs.org/uniq/download/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=" - }, - "uniqs": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/uniqs/download/uniqs-2.0.0.tgz", - "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=" - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/unique-filename/download/unique-filename-1.1.1.tgz", - "integrity": "sha1-HWl2k2mtoFgxA6HmrodoG1ZXMjA=", - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/unique-slug/download/unique-slug-2.0.1.tgz", - "integrity": "sha1-Xp7cbRzo+yZNsYpQfvm9hURFHKY=", - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "http://r.cnpmjs.org/universalify/download/universalify-0.1.2.tgz", - "integrity": "sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY=" - }, - "unpipe": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/unpipe/download/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" - }, - "unquote": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/unquote/download/unquote-1.1.1.tgz", - "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=" - }, - "unset-value": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/unset-value/download/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "http://r.cnpmjs.org/has-value/download/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/isobject/download/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/has-values/download/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" - } - } - }, - "upath": { - "version": "1.1.0", - "resolved": "http://r.cnpmjs.org/upath/download/upath-1.1.0.tgz", - "integrity": "sha1-NSVll+RqWB20eT0M5H+prr/J+r0=" - }, - "upper-case": { - "version": "1.1.3", - "resolved": "http://r.cnpmjs.org/upper-case/download/upper-case-1.1.3.tgz", - "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=" - }, - "uri-js": { - "version": "4.2.2", - "resolved": "http://r.cnpmjs.org/uri-js/download/uri-js-4.2.2.tgz", - "integrity": "sha1-lMVA4f93KVbiKZUHwBCupsiDjrA=", - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "http://r.cnpmjs.org/urix/download/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" - }, - "url": { - "version": "0.11.0", - "resolved": "http://r.cnpmjs.org/url/download/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "http://r.cnpmjs.org/punycode/download/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" - } - } - }, - "url-loader": { - "version": "1.1.1", - "resolved": "http://r.cnpmjs.org/url-loader/download/url-loader-1.1.1.tgz", - "integrity": "sha1-TR87T5Dd6J8CwAjmYtYE11ERZ8E=", - "requires": { - "loader-utils": "^1.1.0", - "mime": "^2.0.3", - "schema-utils": "^1.0.0" - } - }, - "url-parse": { - "version": "1.4.4", - "resolved": "http://r.cnpmjs.org/url-parse/download/url-parse-1.4.4.tgz", - "integrity": "sha1-ysFVbpX6oDA2kf7Fz51aG8NGSPg=", - "requires": { - "querystringify": "^2.0.0", - "requires-port": "^1.0.0" - } - }, - "use": { - "version": "3.1.1", - "resolved": "http://r.cnpmjs.org/use/download/use-3.1.1.tgz", - "integrity": "sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8=" - }, - "util": { - "version": "0.11.1", - "resolved": "http://r.cnpmjs.org/util/download/util-0.11.1.tgz", - "integrity": "sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE=", - "requires": { - "inherits": "2.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/util-deprecate/download/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "util.promisify": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/util.promisify/download/util.promisify-1.0.0.tgz", - "integrity": "sha1-RA9xZaRZyaFtwUXrjnLzVocJcDA=", - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "utila": { - "version": "0.4.0", - "resolved": "http://r.cnpmjs.org/utila/download/utila-0.4.0.tgz", - "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/utils-merge/download/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" - }, - "uuid": { - "version": "3.3.2", - "resolved": "http://r.cnpmjs.org/uuid/download/uuid-3.3.2.tgz", - "integrity": "sha1-G0r0lV6zB3xQHCOHL8ZROBFYcTE=" - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "http://r.cnpmjs.org/validate-npm-package-license/download/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha1-/JH2uce6FchX9MssXe/uw51PQQo=", - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "http://r.cnpmjs.org/vary/download/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" - }, - "vendors": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/vendors/download/vendors-1.0.2.tgz", - "integrity": "sha1-f8te759WI7FWvOqJ7DfWNnbyGAE=" - }, - "verror": { - "version": "1.10.0", - "resolved": "http://r.cnpmjs.org/verror/download/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vm-browserify": { - "version": "0.0.4", - "resolved": "http://r.cnpmjs.org/vm-browserify/download/vm-browserify-0.0.4.tgz", - "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", - "requires": { - "indexof": "0.0.1" - } - }, - "w3c-hr-time": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/w3c-hr-time/download/w3c-hr-time-1.0.1.tgz", - "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", - "requires": { - "browser-process-hrtime": "^0.1.2" - } - }, - "w3c-xmlserializer": { - "version": "1.0.1", - "resolved": "http://r.cnpmjs.org/w3c-xmlserializer/download/w3c-xmlserializer-1.0.1.tgz", - "integrity": "sha1-BUzc01ncXR8+yb5OJyx1avSyHTk=", - "requires": { - "domexception": "^1.0.1", - "webidl-conversions": "^4.0.2", - "xml-name-validator": "^3.0.0" - } - }, - "walker": { - "version": "1.0.7", - "resolved": "http://r.cnpmjs.org/walker/download/walker-1.0.7.tgz", - "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", - "requires": { - "makeerror": "1.0.x" - } - }, - "watch": { - "version": "0.18.0", - "resolved": "http://r.cnpmjs.org/watch/download/watch-0.18.0.tgz", - "integrity": "sha1-KAlUdsbffJDJYxOJkMClQj60uYY=", - "requires": { - "exec-sh": "^0.2.0", - "minimist": "^1.2.0" - } - }, - "watchpack": { - "version": "1.6.0", - "resolved": "http://r.cnpmjs.org/watchpack/download/watchpack-1.6.0.tgz", - "integrity": "sha1-S8EsLr6KonenHx0/FNaFx7RGzQA=", - "requires": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "http://r.cnpmjs.org/wbuf/download/wbuf-1.7.3.tgz", - "integrity": "sha1-wdjRSTFtPqhShIiVy2oL/oh7h98=", - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "webidl-conversions": { - "version": "4.0.2", - "resolved": "http://r.cnpmjs.org/webidl-conversions/download/webidl-conversions-4.0.2.tgz", - "integrity": "sha1-qFWYCx8LazWbodXZ+zmulB+qY60=" - }, - "webpack": { - "version": "4.19.1", - "resolved": "http://r.cnpmjs.org/webpack/download/webpack-4.19.1.tgz", - "integrity": "sha1-CWZ0vDtXP4dWx2J1Q2blszPWV28=", - "requires": { - "@webassemblyjs/ast": "1.7.6", - "@webassemblyjs/helper-module-context": "1.7.6", - "@webassemblyjs/wasm-edit": "1.7.6", - "@webassemblyjs/wasm-parser": "1.7.6", - "acorn": "^5.6.2", - "acorn-dynamic-import": "^3.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": "^0.4.4", - "tapable": "^1.1.0", - "uglifyjs-webpack-plugin": "^1.2.4", - "watchpack": "^1.5.0", - "webpack-sources": "^1.2.0" - }, - "dependencies": { - "acorn": { - "version": "5.7.3", - "resolved": "http://r.cnpmjs.org/acorn/download/acorn-5.7.3.tgz", - "integrity": "sha1-Z6ojG/iBKXS4UjWpZ3Hra9B+onk=" - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/arr-diff/download/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "http://r.cnpmjs.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "braces": { - "version": "2.3.2", - "resolved": "http://r.cnpmjs.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "debug": { - "version": "2.6.9", - "resolved": "http://r.cnpmjs.org/debug/download/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "2.0.0" - } - }, - "eslint-scope": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/eslint-scope/download/eslint-scope-4.0.0.tgz", - "integrity": "sha1-UL8wcekzi83EMzF5Sgy1M/ATYXI=", - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "http://r.cnpmjs.org/expand-brackets/download/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "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": { - "define-property": { - "version": "0.2.5", - "resolved": "http://r.cnpmjs.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=" - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/extglob/download/extglob-2.0.4.tgz", - "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", - "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://r.cnpmjs.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "http://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "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://r.cnpmjs.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "6.0.2", - "resolved": "http://r.cnpmjs.org/kind-of/download/kind-of-6.0.2.tgz", - "integrity": "sha1-ARRrNqYhjmTljzqNZt5df8b20FE=" - }, - "micromatch": { - "version": "3.1.10", - "resolved": "http://r.cnpmjs.org/micromatch/download/micromatch-3.1.10.tgz", - "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", - "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" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "schema-utils": { - "version": "0.4.7", - "resolved": "http://r.cnpmjs.org/schema-utils/download/schema-utils-0.4.7.tgz", - "integrity": "sha1-unT1l9K+LqiAExdG7hfQoJPGgYc=", - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, - "webpack-dev-middleware": { - "version": "3.4.0", - "resolved": "http://r.cnpmjs.org/webpack-dev-middleware/download/webpack-dev-middleware-3.4.0.tgz", - "integrity": "sha1-ETL+zJAm/ZDw7O2sXL/3XR+0WJA=", - "requires": { - "memory-fs": "~0.4.1", - "mime": "^2.3.1", - "range-parser": "^1.0.3", - "webpack-log": "^2.0.0" - } - }, - "webpack-dev-server": { - "version": "3.1.14", - "resolved": "http://r.cnpmjs.org/webpack-dev-server/download/webpack-dev-server-3.1.14.tgz", - "integrity": "sha1-YPsim5l/xaCh/GI3QhAwGAlZ1Gk=", - "requires": { - "ansi-html": "0.0.7", - "bonjour": "^3.5.0", - "chokidar": "^2.0.0", - "compression": "^1.5.2", - "connect-history-api-fallback": "^1.3.0", - "debug": "^3.1.0", - "del": "^3.0.0", - "express": "^4.16.2", - "html-entities": "^1.2.0", - "http-proxy-middleware": "~0.18.0", - "import-local": "^2.0.0", - "internal-ip": "^3.0.1", - "ip": "^1.1.5", - "killable": "^1.0.0", - "loglevel": "^1.4.1", - "opn": "^5.1.0", - "portfinder": "^1.0.9", - "schema-utils": "^1.0.0", - "selfsigned": "^1.9.1", - "semver": "^5.6.0", - "serve-index": "^1.7.2", - "sockjs": "0.3.19", - "sockjs-client": "1.3.0", - "spdy": "^4.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^5.1.0", - "url": "^0.11.0", - "webpack-dev-middleware": "3.4.0", - "webpack-log": "^2.0.0", - "yargs": "12.0.2" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/camelcase/download/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" - }, - "debug": { - "version": "3.2.6", - "resolved": "http://r.cnpmjs.org/debug/download/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", - "requires": { - "ms": "^2.1.1" - } - }, - "decamelize": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/decamelize/download/decamelize-2.0.0.tgz", - "integrity": "sha1-ZW17vICUxMeI6lPFhAkIycfQY8c=", - "requires": { - "xregexp": "4.0.0" - } - }, - "execa": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/execa/download/execa-1.0.0.tgz", - "integrity": "sha1-xiNqW7TfbW8V6I5/AXeYIWdJ3dg=", - "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" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/find-up/download/find-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", - "requires": { - "locate-path": "^3.0.0" - } - }, - "get-stream": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/get-stream/download/get-stream-4.1.0.tgz", - "integrity": "sha1-wbJVV189wh1Zv8ec09K0axw6VLU=", - "requires": { - "pump": "^3.0.0" - } - }, - "import-local": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/import-local/download/import-local-2.0.0.tgz", - "integrity": "sha1-VQcL44pZk88Y72236WH1vuXFoJ0=", - "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/invert-kv/download/invert-kv-2.0.0.tgz", - "integrity": "sha1-c5P1r6Weyf9fZ6J2INEcIm4+7AI=" - }, - "lcid": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/lcid/download/lcid-2.0.0.tgz", - "integrity": "sha1-bvXS32DlL4LrIopMNz6NHzlyU88=", - "requires": { - "invert-kv": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/locate-path/download/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "mem": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/mem/download/mem-4.1.0.tgz", - "integrity": "sha1-rrm+LSH0fnivKeSsWXjor6LKW4o=", - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^1.0.0", - "p-is-promise": "^2.0.0" - } - }, - "os-locale": { - "version": "3.1.0", - "resolved": "http://r.cnpmjs.org/os-locale/download/os-locale-3.1.0.tgz", - "integrity": "sha1-qAKm7hfyTBBIOrmTVxnO9O0Wvxo=", - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-limit": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/p-limit/download/p-limit-2.1.0.tgz", - "integrity": "sha1-HVoNIPsScHx1imVfa7xDhrWTDWg=", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/p-locate/download/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/p-try/download/p-try-2.0.0.tgz", - "integrity": "sha1-hQgLuHxkaI+keZb+j3376CEXYLE=" - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/pkg-dir/download/pkg-dir-3.0.0.tgz", - "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=", - "requires": { - "find-up": "^3.0.0" - } - }, - "yargs": { - "version": "12.0.2", - "resolved": "http://r.cnpmjs.org/yargs/download/yargs-12.0.2.tgz", - "integrity": "sha1-/lgjQ2k5KvM+y+9TgZFx7/D1qtw=", - "requires": { - "cliui": "^4.0.0", - "decamelize": "^2.0.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": "^10.1.0" - } - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "http://r.cnpmjs.org/yargs-parser/download/yargs-parser-10.1.0.tgz", - "integrity": "sha1-cgImW4n36eny5XZeD+c1qQXtuqg=", - "requires": { - "camelcase": "^4.1.0" - } - } - } - }, - "webpack-log": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/webpack-log/download/webpack-log-2.0.0.tgz", - "integrity": "sha1-W3ko4GN1k/EZ0y9iJ8HgrDHhtH8=", - "requires": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" - } - }, - "webpack-manifest-plugin": { - "version": "2.0.4", - "resolved": "http://r.cnpmjs.org/webpack-manifest-plugin/download/webpack-manifest-plugin-2.0.4.tgz", - "integrity": "sha1-5MopmbCVV3Fri6RHX7efq1mG8M0=", - "requires": { - "fs-extra": "^7.0.0", - "lodash": ">=3.5 <5", - "tapable": "^1.0.0" - } - }, - "webpack-sources": { - "version": "1.3.0", - "resolved": "http://r.cnpmjs.org/webpack-sources/download/webpack-sources-1.3.0.tgz", - "integrity": "sha1-KijcufH0X+lg2PFJMlK17mUw+oU=", - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "http://r.cnpmjs.org/source-map/download/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" - } - } - }, - "websocket-driver": { - "version": "0.7.0", - "resolved": "http://r.cnpmjs.org/websocket-driver/download/websocket-driver-0.7.0.tgz", - "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", - "requires": { - "http-parser-js": ">=0.4.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.3", - "resolved": "http://r.cnpmjs.org/websocket-extensions/download/websocket-extensions-0.1.3.tgz", - "integrity": "sha1-XS/yKXcAPsaHpLhwc9+7rBRszyk=" - }, - "whatwg-encoding": { - "version": "1.0.5", - "resolved": "http://r.cnpmjs.org/whatwg-encoding/download/whatwg-encoding-1.0.5.tgz", - "integrity": "sha1-WrrPd3wyFmpR0IXWtPPn0nET3bA=", - "requires": { - "iconv-lite": "0.4.24" - } - }, - "whatwg-fetch": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/whatwg-fetch/download/whatwg-fetch-3.0.0.tgz", - "integrity": "sha1-/IBORYzEYACbGiuWa8iBfSV4rvs=" - }, - "whatwg-mimetype": { - "version": "2.3.0", - "resolved": "http://r.cnpmjs.org/whatwg-mimetype/download/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha1-PUseAxLSB5h5+Cav8Y2+7KWWD78=" - }, - "whatwg-url": { - "version": "7.0.0", - "resolved": "http://r.cnpmjs.org/whatwg-url/download/whatwg-url-7.0.0.tgz", - "integrity": "sha1-/ekm+lSlmfOt+C3/Jan3vgLcbt0=", - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "which": { - "version": "1.3.1", - "resolved": "http://r.cnpmjs.org/which/download/which-1.3.1.tgz", - "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=", - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "http://r.cnpmjs.org/which-module/download/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/wordwrap/download/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" - }, - "workbox-background-sync": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-background-sync/download/workbox-background-sync-3.6.3.tgz", - "integrity": "sha1-Zgmg+sntozanxS5qoie6KuUyrZQ=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-broadcast-cache-update": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-broadcast-cache-update/download/workbox-broadcast-cache-update-3.6.3.tgz", - "integrity": "sha1-P13/Iq2oyT45f7OMHcEAYGp7kto=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-build": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-build/download/workbox-build-3.6.3.tgz", - "integrity": "sha1-dxEPn1LcXYL6bBw4TG9eIiWty9g=", - "requires": { - "babel-runtime": "^6.26.0", - "common-tags": "^1.4.0", - "fs-extra": "^4.0.2", - "glob": "^7.1.2", - "joi": "^11.1.1", - "lodash.template": "^4.4.0", - "pretty-bytes": "^4.0.2", - "stringify-object": "^3.2.2", - "strip-comments": "^1.0.2", - "workbox-background-sync": "^3.6.3", - "workbox-broadcast-cache-update": "^3.6.3", - "workbox-cache-expiration": "^3.6.3", - "workbox-cacheable-response": "^3.6.3", - "workbox-core": "^3.6.3", - "workbox-google-analytics": "^3.6.3", - "workbox-navigation-preload": "^3.6.3", - "workbox-precaching": "^3.6.3", - "workbox-range-requests": "^3.6.3", - "workbox-routing": "^3.6.3", - "workbox-strategies": "^3.6.3", - "workbox-streams": "^3.6.3", - "workbox-sw": "^3.6.3" - }, - "dependencies": { - "fs-extra": { - "version": "4.0.3", - "resolved": "http://r.cnpmjs.org/fs-extra/download/fs-extra-4.0.3.tgz", - "integrity": "sha1-DYUhIuW8W+tFP7Ao6cDJvzY0DJQ=", - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "workbox-cache-expiration": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-cache-expiration/download/workbox-cache-expiration-3.6.3.tgz", - "integrity": "sha1-SBlpclSnIJihP5S1lDJaKKHpA3I=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-cacheable-response": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-cacheable-response/download/workbox-cacheable-response-3.6.3.tgz", - "integrity": "sha1-hp8aaPzpBj9oad2/f6Ci4Khos6o=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-core": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-core/download/workbox-core-3.6.3.tgz", - "integrity": "sha1-aau6cKTz8qXAWSlabzt8Yr0A4Vw=" - }, - "workbox-google-analytics": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-google-analytics/download/workbox-google-analytics-3.6.3.tgz", - "integrity": "sha1-md8qPXDW6Rlh4YpnUrrBLpH79yc=", - "requires": { - "workbox-background-sync": "^3.6.3", - "workbox-core": "^3.6.3", - "workbox-routing": "^3.6.3", - "workbox-strategies": "^3.6.3" - } - }, - "workbox-navigation-preload": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-navigation-preload/download/workbox-navigation-preload-3.6.3.tgz", - "integrity": "sha1-osNOt8F+dIW3lRJQkSFfdXs8SWQ=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-precaching": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-precaching/download/workbox-precaching-3.6.3.tgz", - "integrity": "sha1-U0FRXp1YcsWO3gJqMeGbr6+k4cE=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-range-requests": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-range-requests/download/workbox-range-requests-3.6.3.tgz", - "integrity": "sha1-PMIcujHy3YxDxSoZa8yPbNvN6AM=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-routing": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-routing/download/workbox-routing-3.6.3.tgz", - "integrity": "sha1-ZZzY+SdJhs+pj9oNBQ3mQiB1rPc=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-strategies": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-strategies/download/workbox-strategies-3.6.3.tgz", - "integrity": "sha1-EaDcJJp7wj00ZewTItKPpmQ9ZKA=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-streams": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-streams/download/workbox-streams-3.6.3.tgz", - "integrity": "sha1-vq6l1bIwI5g2zDJ7B9RxqmEBlVo=", - "requires": { - "workbox-core": "^3.6.3" - } - }, - "workbox-sw": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-sw/download/workbox-sw-3.6.3.tgz", - "integrity": "sha1-J46kwYMbkrvi1CDag5kXbEsnif8=" - }, - "workbox-webpack-plugin": { - "version": "3.6.3", - "resolved": "http://r.cnpmjs.org/workbox-webpack-plugin/download/workbox-webpack-plugin-3.6.3.tgz", - "integrity": "sha1-qAe7iRtOTjyAjfB+WPF94tW6YYI=", - "requires": { - "babel-runtime": "^6.26.0", - "json-stable-stringify": "^1.0.1", - "workbox-build": "^3.6.3" - } - }, - "worker-farm": { - "version": "1.6.0", - "resolved": "http://r.cnpmjs.org/worker-farm/download/worker-farm-1.6.0.tgz", - "integrity": "sha1-rsxAWXb6talVJhgIRvDboojzpKA=", - "requires": { - "errno": "~0.1.7" - } - }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "http://r.cnpmjs.org/wrap-ansi/download/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "http://r.cnpmjs.org/is-fullwidth-code-point/download/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/string-width/download/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "http://r.cnpmjs.org/wrappy/download/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write": { - "version": "0.2.1", - "resolved": "http://r.cnpmjs.org/write/download/write-0.2.1.tgz", - "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", - "requires": { - "mkdirp": "^0.5.1" - } - }, - "write-file-atomic": { - "version": "2.4.2", - "resolved": "http://r.cnpmjs.org/write-file-atomic/download/write-file-atomic-2.4.2.tgz", - "integrity": "sha1-pxgXBt+6F4VdIhFAqcBuFfzdh7k=", - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "ws": { - "version": "6.1.4", - "resolved": "http://r.cnpmjs.org/ws/download/ws-6.1.4.tgz", - "integrity": "sha1-W1yIAK+rkl6UzLKdFTyNAsF3bvk=", - "requires": { - "async-limiter": "~1.0.0" - } - }, - "xml-name-validator": { - "version": "3.0.0", - "resolved": "http://r.cnpmjs.org/xml-name-validator/download/xml-name-validator-3.0.0.tgz", - "integrity": "sha1-auc+Bt5NjG5H+fsYH3jWSK1FfGo=" - }, - "xmlchars": { - "version": "1.3.1", - "resolved": "http://r.cnpmjs.org/xmlchars/download/xmlchars-1.3.1.tgz", - "integrity": "sha1-HdoDX4M9u0+GoMKOqmynaSFHk88=" - }, - "xregexp": { - "version": "4.0.0", - "resolved": "http://r.cnpmjs.org/xregexp/download/xregexp-4.0.0.tgz", - "integrity": "sha1-5pgYneSd0qGMxWh7BeF8jkOUMCA=" - }, - "xtend": { - "version": "4.0.1", - "resolved": "http://r.cnpmjs.org/xtend/download/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" - }, - "y18n": { - "version": "3.2.1", - "resolved": "http://r.cnpmjs.org/y18n/download/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" - }, - "yallist": { - "version": "2.1.2", - "resolved": "http://r.cnpmjs.org/yallist/download/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - }, - "yargs": { - "version": "11.1.0", - "resolved": "http://r.cnpmjs.org/yargs/download/yargs-11.1.0.tgz", - "integrity": "sha1-kLhpk07W6HERXqL/WLA/RyTtLXc=", - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.1.1", - "find-up": "^2.1.0", - "get-caller-file": "^1.0.1", - "os-locale": "^2.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", - "yargs-parser": "^9.0.2" - } - }, - "yargs-parser": { - "version": "9.0.2", - "resolved": "http://r.cnpmjs.org/yargs-parser/download/yargs-parser-9.0.2.tgz", - "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", - "requires": { - "camelcase": "^4.1.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "http://r.cnpmjs.org/camelcase/download/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" - } - } - } - } -} From 978a58daac53dc1c8258da7cd7c41e0ee1c01aa5 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Wed, 13 Nov 2019 09:15:50 +0800 Subject: [PATCH 16/25] delete --- examples/reactadmin/yarn.lock | 10065 -------------------------------- 1 file changed, 10065 deletions(-) delete mode 100644 examples/reactadmin/yarn.lock diff --git a/examples/reactadmin/yarn.lock b/examples/reactadmin/yarn.lock deleted file mode 100644 index db5b504..0000000 --- a/examples/reactadmin/yarn.lock +++ /dev/null @@ -1,10065 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@babel/code-frame@7.0.0", "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.0.0-beta.35": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" - integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== - dependencies: - "@babel/highlight" "^7.0.0" - -"@babel/core@7.1.6": - version "7.1.6" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.1.6.tgz#3733cbee4317429bc87c62b29cf8587dba7baeb3" - integrity sha512-Hz6PJT6e44iUNpAn8AoyAs6B3bl60g7MJQaI0rZEar6ECzh6+srYO1xlIdssio34mPaUtAb1y+XlkkSJzok3yw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.1.6" - "@babel/helpers" "^7.1.5" - "@babel/parser" "^7.1.6" - "@babel/template" "^7.1.2" - "@babel/traverse" "^7.1.6" - "@babel/types" "^7.1.6" - convert-source-map "^1.1.0" - debug "^4.1.0" - json5 "^2.1.0" - lodash "^4.17.10" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.0.1": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.2.2.tgz#07adba6dde27bb5ad8d8672f15fde3e08184a687" - integrity sha512-59vB0RWt09cAct5EIe58+NzGP4TFSD3Bz//2/ELy3ZeTeKF6VTD1AXlH8BGGbCX0PuobZBsIzO7IAI9PH67eKw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.2.2" - "@babel/helpers" "^7.2.0" - "@babel/parser" "^7.2.2" - "@babel/template" "^7.2.2" - "@babel/traverse" "^7.2.2" - "@babel/types" "^7.2.2" - convert-source-map "^1.1.0" - debug "^4.1.0" - json5 "^2.1.0" - lodash "^4.17.10" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/generator@^7.1.6", "@babel/generator@^7.2.2": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.2.2.tgz#18c816c70962640eab42fe8cae5f3947a5c65ccc" - integrity sha512-I4o675J/iS8k+P38dvJ3IBGqObLXyQLTxtrR4u9cSUJOURvafeEWb/pFMOTwtNrmq73mJzyF6ueTbO1BtN0Zeg== - dependencies: - "@babel/types" "^7.2.2" - jsesc "^2.5.1" - lodash "^4.17.10" - source-map "^0.5.0" - trim-right "^1.0.1" - -"@babel/helper-annotate-as-pure@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" - integrity sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" - integrity sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w== - dependencies: - "@babel/helper-explode-assignable-expression" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-builder-react-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0.tgz#fa154cb53eb918cf2a9a7ce928e29eb649c5acdb" - integrity sha512-ebJ2JM6NAKW0fQEqN8hOLxK84RbRz9OkUhGS/Xd5u56ejMfVbayJ4+LykERZCOUM6faa6Fp3SZNX3fcT16MKHw== - dependencies: - "@babel/types" "^7.0.0" - esutils "^2.0.0" - -"@babel/helper-call-delegate@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz#6a957f105f37755e8645343d3038a22e1449cc4a" - integrity sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ== - dependencies: - "@babel/helper-hoist-variables" "^7.0.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-define-map@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz#3b74caec329b3c80c116290887c0dd9ae468c20c" - integrity sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/types" "^7.0.0" - lodash "^4.17.10" - -"@babel/helper-explode-assignable-expression@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" - integrity sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA== - dependencies: - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-function-name@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" - integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== - dependencies: - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-get-function-arity@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" - integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-hoist-variables@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz#46adc4c5e758645ae7a45deb92bab0918c23bb88" - integrity sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-member-expression-to-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz#8cd14b0a0df7ff00f009e7d7a436945f47c7a16f" - integrity sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-module-imports@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz#96081b7111e486da4d2cd971ad1a4fe216cc2e3d" - integrity sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-module-transforms@^7.1.0": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.2.2.tgz#ab2f8e8d231409f8370c883d20c335190284b963" - integrity sha512-YRD7I6Wsv+IHuTPkAmAS4HhY0dkPobgLftHp0cRGZSdrRvmZY8rFvae/GVu3bD00qscuvK3WPHB3YdNpBXUqrA== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/template" "^7.2.2" - "@babel/types" "^7.2.2" - lodash "^4.17.10" - -"@babel/helper-optimise-call-expression@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" - integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-plugin-utils@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" - integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== - -"@babel/helper-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.0.0.tgz#2c1718923b57f9bbe64705ffe5640ac64d9bdb27" - integrity sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg== - dependencies: - lodash "^4.17.10" - -"@babel/helper-remap-async-to-generator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz#361d80821b6f38da75bd3f0785ece20a88c5fe7f" - integrity sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-wrap-function" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-replace-supers@^7.1.0": - version "7.2.3" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.2.3.tgz#19970020cf22677d62b3a689561dbd9644d8c5e5" - integrity sha512-GyieIznGUfPXPWu0yLS6U55Mz67AZD9cUk0BfirOWlPrXlBcan9Gz+vHGz+cPfuoweZSnPzPIm67VtQM0OWZbA== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.0.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/traverse" "^7.2.3" - "@babel/types" "^7.0.0" - -"@babel/helper-simple-access@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" - integrity sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w== - dependencies: - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-split-export-declaration@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" - integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-wrap-function@^7.1.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz#c4e0012445769e2815b55296ead43a958549f6fa" - integrity sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.2.0" - -"@babel/helpers@^7.1.5", "@babel/helpers@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.2.0.tgz#8335f3140f3144270dc63c4732a4f8b0a50b7a21" - integrity sha512-Fr07N+ea0dMcMN8nFpuK6dUIT7/ivt9yKQdEEnjVS83tG2pHwPi03gYmk/tyuwONnZ+sY+GFFPlWGgCtW1hF9A== - dependencies: - "@babel/template" "^7.1.2" - "@babel/traverse" "^7.1.5" - "@babel/types" "^7.2.0" - -"@babel/highlight@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" - integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== - dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^4.0.0" - -"@babel/parser@^7.0.0", "@babel/parser@^7.1.6", "@babel/parser@^7.2.2", "@babel/parser@^7.2.3": - version "7.2.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz#32f5df65744b70888d17872ec106b02434ba1489" - integrity sha512-0LyEcVlfCoFmci8mXx8A5oIkpkOgyo8dRHtxBnK9RRBwxO2+JZPNsqtVEZQ7mJFPxnXF9lfmU24mHOPI0qnlkA== - -"@babel/plugin-proposal-async-generator-functions@^7.1.0", "@babel/plugin-proposal-async-generator-functions@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz#b289b306669dce4ad20b0252889a15768c9d417e" - integrity sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.1.0" - "@babel/plugin-syntax-async-generators" "^7.2.0" - -"@babel/plugin-proposal-class-properties@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.1.0.tgz#9af01856b1241db60ec8838d84691aa0bd1e8df4" - integrity sha512-/PCJWN+CKt5v1xcGn4vnuu13QDoV+P7NcICP44BoonAJoPSGwVkgrXihFIQGiEjjPlUDBIw1cM7wYFLARS2/hw== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-member-expression-to-functions" "^7.0.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/plugin-syntax-class-properties" "^7.0.0" - -"@babel/plugin-proposal-decorators@7.1.6": - version "7.1.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.1.6.tgz#460c31edbd01953efe45d491583b3ec31661d689" - integrity sha512-U42f8KhUbtlhUDyV/wK4Rq/wWh8vWyttYABckG/v0vVnMPvayOewZC/83CbVdmyP+UhEqI368FEQ7hHMfhBpQA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/plugin-syntax-decorators" "^7.1.0" - -"@babel/plugin-proposal-json-strings@^7.0.0", "@babel/plugin-proposal-json-strings@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz#568ecc446c6148ae6b267f02551130891e29f317" - integrity sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-json-strings" "^7.2.0" - -"@babel/plugin-proposal-object-rest-spread@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0.tgz#9a17b547f64d0676b6c9cecd4edf74a82ab85e7e" - integrity sha512-14fhfoPcNu7itSen7Py1iGN0gEm87hX/B+8nZPqkdmANyyYWYMY2pjA3r8WXbWVKMzfnSNS0xY8GVS0IjXi/iw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - -"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.2.0.tgz#88f5fec3e7ad019014c97f7ee3c992f0adbf7fb8" - integrity sha512-1L5mWLSvR76XYUQJXkd/EEQgjq8HHRP6lQuZTTg0VA4tTGPpGemmCdAfQIz1rzEuWAm+ecP8PyyEm30jC1eQCg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" - -"@babel/plugin-proposal-optional-catch-binding@^7.0.0", "@babel/plugin-proposal-optional-catch-binding@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz#135d81edb68a081e55e56ec48541ece8065c38f5" - integrity sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" - -"@babel/plugin-proposal-unicode-property-regex@^7.0.0", "@babel/plugin-proposal-unicode-property-regex@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.2.0.tgz#abe7281fe46c95ddc143a65e5358647792039520" - integrity sha512-LvRVYb7kikuOtIoUeWTkOxQEV1kYvL5B6U3iWEGCzPNRus1MzJweFqORTj+0jkxozkTSYNJozPOddxmqdqsRpw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.2.0" - -"@babel/plugin-syntax-async-generators@^7.0.0", "@babel/plugin-syntax-async-generators@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz#69e1f0db34c6f5a0cf7e2b3323bf159a76c8cb7f" - integrity sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-class-properties@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.2.0.tgz#23b3b7b9bcdabd73672a9149f728cd3be6214812" - integrity sha512-UxYaGXYQ7rrKJS/PxIKRkv3exi05oH7rokBAsmCSsCxz1sVPZ7Fu6FzKoGgUvmY+0YgSkYHgUoCh5R5bCNBQlw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-decorators@^7.1.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.2.0.tgz#c50b1b957dcc69e4b1127b65e1c33eef61570c1b" - integrity sha512-38QdqVoXdHUQfTpZo3rQwqQdWtCn5tMv4uV6r2RMfTqNBuv4ZBhz79SfaQWKTVmxHjeFv/DnXVC/+agHCklYWA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-dynamic-import@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.0.0.tgz#6dfb7d8b6c3be14ce952962f658f3b7eb54c33ee" - integrity sha512-Gt9xNyRrCHCiyX/ZxDGOcBnlJl0I3IWicpZRC4CdC0P5a/I07Ya2OAMEBU+J7GmRFVmIetqEYRko6QYRuKOESw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-flow@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.2.0.tgz#a765f061f803bc48f240c26f8747faf97c26bf7c" - integrity sha512-r6YMuZDWLtLlu0kqIim5o/3TNRAlWb073HwT3e2nKf9I8IIvOggPrnILYPsrrKilmn/mYEMCf/Z07w3yQJF6dg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-json-strings@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz#72bd13f6ffe1d25938129d2a186b11fd62951470" - integrity sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-jsx@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.2.0.tgz#0b85a3b4bc7cdf4cc4b8bf236335b907ca22e7c7" - integrity sha512-VyN4QANJkRW6lDBmENzRszvZf3/4AXaj9YR7GwrWeeN9tEBPuXbmDYVU9bYBN0D70zCWVwUy0HWq2553VCb6Hw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz#3b7a3e733510c57e820b9142a6579ac8b0dfad2e" - integrity sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-optional-catch-binding@^7.0.0", "@babel/plugin-syntax-optional-catch-binding@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz#a94013d6eda8908dfe6a477e7f9eda85656ecf5c" - integrity sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-typescript@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.2.0.tgz#55d240536bd314dcbbec70fd949c5cabaed1de29" - integrity sha512-WhKr6yu6yGpGcNMVgIBuI9MkredpVc7Y3YR4UzEZmDztHoL6wV56YBHLhWnjO1EvId1B32HrD3DRFc+zSoKI1g== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz#9aeafbe4d6ffc6563bf8f8372091628f00779550" - integrity sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-async-to-generator@^7.1.0", "@babel/plugin-transform-async-to-generator@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.2.0.tgz#68b8a438663e88519e65b776f8938f3445b1a2ff" - integrity sha512-CEHzg4g5UraReozI9D4fblBYABs7IM6UerAVG7EJVrTLC5keh00aEuLUT+O40+mJCEzaXkYfTCUKIyeDfMOFFQ== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.1.0" - -"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz#5d3cc11e8d5ddd752aa64c9148d0db6cb79fd190" - integrity sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-block-scoping@^7.1.5", "@babel/plugin-transform-block-scoping@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.2.0.tgz#f17c49d91eedbcdf5dd50597d16f5f2f770132d4" - integrity sha512-vDTgf19ZEV6mx35yiPJe4fS02mPQUUcBNwWQSZFXSzTSbsJFQvHt7DqyS3LK8oOWALFOsJ+8bbqBgkirZteD5Q== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - lodash "^4.17.10" - -"@babel/plugin-transform-classes@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.1.0.tgz#ab3f8a564361800cbc8ab1ca6f21108038432249" - integrity sha512-rNaqoD+4OCBZjM7VaskladgqnZ1LO6o2UxuWSDzljzW21pN1KXkB7BstAVweZdxQkHAujps5QMNOTWesBciKFg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-define-map" "^7.1.0" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - globals "^11.1.0" - -"@babel/plugin-transform-classes@^7.1.0", "@babel/plugin-transform-classes@^7.2.0": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.2.2.tgz#6c90542f210ee975aa2aa8c8b5af7fa73a126953" - integrity sha512-gEZvgTy1VtcDOaQty1l10T3jQmJKlNVxLDCs+3rCVPr6nMkODLELxViq5X9l+rfxbie3XrfrMCYYY6eX3aOcOQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-define-map" "^7.1.0" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - globals "^11.1.0" - -"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz#83a7df6a658865b1c8f641d510c6f3af220216da" - integrity sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-destructuring@7.1.3": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.1.3.tgz#e69ff50ca01fac6cb72863c544e516c2b193012f" - integrity sha512-Mb9M4DGIOspH1ExHOUnn2UUXFOyVTiX84fXCd+6B5iWrQg/QMeeRmSwpZ9lnjYLSXtZwiw80ytVMr3zue0ucYw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.2.0.tgz#e75269b4b7889ec3a332cd0d0c8cff8fed0dc6f3" - integrity sha512-coVO2Ayv7g0qdDbrNiadE4bU7lvCd9H539m2gMknyVjjMdwF/iCOM7R+E8PkntoqLkltO0rk+3axhpp/0v68VQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-dotall-regex@^7.0.0", "@babel/plugin-transform-dotall-regex@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.2.0.tgz#f0aabb93d120a8ac61e925ea0ba440812dbe0e49" - integrity sha512-sKxnyHfizweTgKZf7XsXu/CNupKhzijptfTM+bozonIuyVrLWVUvYjE2bhuSBML8VQeMxq4Mm63Q9qvcvUcciQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.1.3" - -"@babel/plugin-transform-duplicate-keys@^7.0.0", "@babel/plugin-transform-duplicate-keys@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.2.0.tgz#d952c4930f312a4dbfff18f0b2914e60c35530b3" - integrity sha512-q+yuxW4DsTjNceUiTzK0L+AfQ0zD9rWaTLiUqHA8p0gxx7lu1EylenfzjeIWNkPy6e/0VG/Wjw9uf9LueQwLOw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-exponentiation-operator@^7.1.0", "@babel/plugin-transform-exponentiation-operator@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz#a63868289e5b4007f7054d46491af51435766008" - integrity sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-flow-strip-types@7.1.6": - version "7.1.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.1.6.tgz#4b7be62604d39e63cfe23b1d00d63e9fb7e763ba" - integrity sha512-0tyFAAjJmnRlr8MVJV39ASn1hv+PbdVP71hf7aAseqLfQ0o9QXk9htbMbq7/ZYXnUIp6gDw0lUUP0+PQMbbtmg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.0.0" - -"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.2.0.tgz#ab7468befa80f764bb03d3cb5eef8cc998e1cad9" - integrity sha512-Kz7Mt0SsV2tQk6jG5bBv5phVbkd0gd27SgYD4hH1aLMJRchM0dzHaXvrWhVZ+WxAlDoAKZ7Uy3jVTW2mKXQ1WQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-function-name@^7.1.0", "@babel/plugin-transform-function-name@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.2.0.tgz#f7930362829ff99a3174c39f0afcc024ef59731a" - integrity sha512-kWgksow9lHdvBC2Z4mxTsvc7YdY7w/V6B2vy9cTIPtLEE9NhwoWivaxdNM/S37elu5bqlLP/qOY906LukO9lkQ== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz#690353e81f9267dad4fd8cfd77eafa86aba53ea1" - integrity sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-modules-amd@^7.1.0", "@babel/plugin-transform-modules-amd@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.2.0.tgz#82a9bce45b95441f617a24011dc89d12da7f4ee6" - integrity sha512-mK2A8ucqz1qhrdqjS9VMIDfIvvT2thrEsIQzbaTdc5QFzhDjQv2CkJJ5f6BXIkgbmaoax3zBr2RyvV/8zeoUZw== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-modules-commonjs@^7.1.0", "@babel/plugin-transform-modules-commonjs@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.2.0.tgz#c4f1933f5991d5145e9cfad1dfd848ea1727f404" - integrity sha512-V6y0uaUQrQPXUrmj+hgnks8va2L0zcZymeU7TtWEgdRLNkceafKXEduv7QzgQAE4lT+suwooG9dC7LFhdRAbVQ== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - -"@babel/plugin-transform-modules-systemjs@^7.0.0", "@babel/plugin-transform-modules-systemjs@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.2.0.tgz#912bfe9e5ff982924c81d0937c92d24994bb9068" - integrity sha512-aYJwpAhoK9a+1+O625WIjvMY11wkB/ok0WClVwmeo3mCjcNRjt+/8gHWrB5i+00mUju0gWsBkQnPpdvQ7PImmQ== - dependencies: - "@babel/helper-hoist-variables" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-modules-umd@^7.1.0", "@babel/plugin-transform-modules-umd@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz#7678ce75169f0877b8eb2235538c074268dd01ae" - integrity sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-new-target@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz#ae8fbd89517fa7892d20e6564e641e8770c3aa4a" - integrity sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-object-super@^7.1.0", "@babel/plugin-transform-object-super@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz#b35d4c10f56bab5d650047dad0f1d8e8814b6598" - integrity sha512-VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - -"@babel/plugin-transform-parameters@^7.1.0", "@babel/plugin-transform-parameters@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.2.0.tgz#0d5ad15dc805e2ea866df4dd6682bfe76d1408c2" - integrity sha512-kB9+hhUidIgUoBQ0MsxMewhzr8i60nMa2KgeJKQWYrqQpqcBYtnpR+JgkadZVZoaEZ/eKu9mclFaVwhRpLNSzA== - dependencies: - "@babel/helper-call-delegate" "^7.1.0" - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-constant-elements@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.0.0.tgz#ab413e33e9c46a766f5326014bcbf9e2b34ef7a4" - integrity sha512-z8yrW4KCVcqPYr0r9dHXe7fu3daLzn0r6TQEFoGbXahdrzEwT1d1ux+/EnFcqIHv9uPilUlnRnPIUf7GMO0ehg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-constant-elements@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.2.0.tgz#ed602dc2d8bff2f0cb1a5ce29263dbdec40779f7" - integrity sha512-YYQFg6giRFMsZPKUM9v+VcHOdfSQdz9jHCx3akAi3UYgyjndmdYGSXylQ/V+HswQt4fL8IklchD9HTsaOCrWQQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-display-name@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.0.0.tgz#93759e6c023782e52c2da3b75eca60d4f10533ee" - integrity sha512-BX8xKuQTO0HzINxT6j/GiCwoJB0AOMs0HmLbEnAvcte8U8rSkNa/eSCAY+l1OA4JnCVq2jw2p6U8QQryy2fTPg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-display-name@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.2.0.tgz#ebfaed87834ce8dc4279609a4f0c324c156e3eb0" - integrity sha512-Htf/tPa5haZvRMiNSQSFifK12gtr/8vwfr+A9y69uF0QcU77AVu4K7MiHEkTxF7lQoHOL0F9ErqgfNEAKgXj7A== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-jsx-self@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.2.0.tgz#461e21ad9478f1031dd5e276108d027f1b5240ba" - integrity sha512-v6S5L/myicZEy+jr6ielB0OR8h+EH/1QFx/YJ7c7Ua+7lqsjj/vW6fD5FR9hB/6y7mGbfT4vAURn3xqBxsUcdg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.2.0" - -"@babel/plugin-transform-react-jsx-source@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.2.0.tgz#20c8c60f0140f5dd3cd63418d452801cf3f7180f" - integrity sha512-A32OkKTp4i5U6aE88GwwcuV4HAprUgHcTq0sSafLxjr6AW0QahrCRCjxogkbbcdtpbXkuTOlgpjophCxb6sh5g== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.2.0" - -"@babel/plugin-transform-react-jsx@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.2.0.tgz#ca36b6561c4d3b45524f8efb6f0fbc9a0d1d622f" - integrity sha512-h/fZRel5wAfCqcKgq3OhbmYaReo7KkoJBpt8XnvpS7wqaNMqtw5xhxutzcm35iMUWucfAdT/nvGTsWln0JTg2Q== - dependencies: - "@babel/helper-builder-react-jsx" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.2.0" - -"@babel/plugin-transform-regenerator@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz#5b41686b4ed40bef874d7ed6a84bdd849c13e0c1" - integrity sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw== - dependencies: - regenerator-transform "^0.13.3" - -"@babel/plugin-transform-runtime@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.1.0.tgz#9f76920d42551bb577e2dc594df229b5f7624b63" - integrity sha512-WFLMgzu5DLQEah0lKTJzYb14vd6UiES7PTnXcvrPZ1VrwFeJ+mTbvr65fFAsXYMt2bIoOoC0jk76zY1S7HZjUg== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - resolve "^1.8.1" - semver "^5.5.1" - -"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz#6333aee2f8d6ee7e28615457298934a3b46198f0" - integrity sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.2.0": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz#3103a9abe22f742b6d406ecd3cd49b774919b406" - integrity sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-sticky-regex@^7.0.0", "@babel/plugin-transform-sticky-regex@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz#a1e454b5995560a9c1e0d537dfc15061fd2687e1" - integrity sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - -"@babel/plugin-transform-template-literals@^7.0.0", "@babel/plugin-transform-template-literals@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.2.0.tgz#d87ed01b8eaac7a92473f608c97c089de2ba1e5b" - integrity sha512-FkPix00J9A/XWXv4VoKJBMeSkyY9x/TqIh76wzcdfl57RJJcf8CehQ08uwfhCDNtRQYtHQKBTwKZDEyjE13Lwg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-typeof-symbol@^7.0.0", "@babel/plugin-transform-typeof-symbol@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz#117d2bcec2fbf64b4b59d1f9819894682d29f2b2" - integrity sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-typescript@^7.1.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.2.0.tgz#bce7c06300434de6a860ae8acf6a442ef74a99d1" - integrity sha512-EnI7i2/gJ7ZNr2MuyvN2Hu+BHJENlxWte5XygPvfj/MbvtOkWor9zcnHpMMQL2YYaaCcqtIvJUyJ7QVfoGs7ew== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-typescript" "^7.2.0" - -"@babel/plugin-transform-unicode-regex@^7.0.0", "@babel/plugin-transform-unicode-regex@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.2.0.tgz#4eb8db16f972f8abb5062c161b8b115546ade08b" - integrity sha512-m48Y0lMhrbXEJnVUaYly29jRXbQ3ksxPrS1Tg8t+MHqzXhtBYAvI51euOBaoAlZLPHsieY9XPVMf80a5x0cPcA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.1.3" - -"@babel/preset-env@7.1.6": - version "7.1.6" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.1.6.tgz#a0bf4b96b6bfcf6e000afc5b72b4abe7cc13ae97" - integrity sha512-YIBfpJNQMBkb6MCkjz/A9J76SNCSuGVamOVBgoUkLzpJD/z8ghHi9I42LQ4pulVX68N/MmImz6ZTixt7Azgexw== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.1.0" - "@babel/plugin-proposal-json-strings" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.0.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.0.0" - "@babel/plugin-syntax-async-generators" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-async-to-generator" "^7.1.0" - "@babel/plugin-transform-block-scoped-functions" "^7.0.0" - "@babel/plugin-transform-block-scoping" "^7.1.5" - "@babel/plugin-transform-classes" "^7.1.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.0.0" - "@babel/plugin-transform-dotall-regex" "^7.0.0" - "@babel/plugin-transform-duplicate-keys" "^7.0.0" - "@babel/plugin-transform-exponentiation-operator" "^7.1.0" - "@babel/plugin-transform-for-of" "^7.0.0" - "@babel/plugin-transform-function-name" "^7.1.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-modules-amd" "^7.1.0" - "@babel/plugin-transform-modules-commonjs" "^7.1.0" - "@babel/plugin-transform-modules-systemjs" "^7.0.0" - "@babel/plugin-transform-modules-umd" "^7.1.0" - "@babel/plugin-transform-new-target" "^7.0.0" - "@babel/plugin-transform-object-super" "^7.1.0" - "@babel/plugin-transform-parameters" "^7.1.0" - "@babel/plugin-transform-regenerator" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-template-literals" "^7.0.0" - "@babel/plugin-transform-typeof-symbol" "^7.0.0" - "@babel/plugin-transform-unicode-regex" "^7.0.0" - browserslist "^4.1.0" - invariant "^2.2.2" - js-levenshtein "^1.1.3" - semver "^5.3.0" - -"@babel/preset-env@^7.0.0": - version "7.2.3" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.2.3.tgz#948c8df4d4609c99c7e0130169f052ea6a7a8933" - integrity sha512-AuHzW7a9rbv5WXmvGaPX7wADxFkZIqKlbBh1dmZUQp4iwiPpkE/Qnrji6SC4UQCQzvWY/cpHET29eUhXS9cLPw== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.2.0" - "@babel/plugin-proposal-json-strings" "^7.2.0" - "@babel/plugin-proposal-object-rest-spread" "^7.2.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.2.0" - "@babel/plugin-syntax-async-generators" "^7.2.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" - "@babel/plugin-transform-arrow-functions" "^7.2.0" - "@babel/plugin-transform-async-to-generator" "^7.2.0" - "@babel/plugin-transform-block-scoped-functions" "^7.2.0" - "@babel/plugin-transform-block-scoping" "^7.2.0" - "@babel/plugin-transform-classes" "^7.2.0" - "@babel/plugin-transform-computed-properties" "^7.2.0" - "@babel/plugin-transform-destructuring" "^7.2.0" - "@babel/plugin-transform-dotall-regex" "^7.2.0" - "@babel/plugin-transform-duplicate-keys" "^7.2.0" - "@babel/plugin-transform-exponentiation-operator" "^7.2.0" - "@babel/plugin-transform-for-of" "^7.2.0" - "@babel/plugin-transform-function-name" "^7.2.0" - "@babel/plugin-transform-literals" "^7.2.0" - "@babel/plugin-transform-modules-amd" "^7.2.0" - "@babel/plugin-transform-modules-commonjs" "^7.2.0" - "@babel/plugin-transform-modules-systemjs" "^7.2.0" - "@babel/plugin-transform-modules-umd" "^7.2.0" - "@babel/plugin-transform-new-target" "^7.0.0" - "@babel/plugin-transform-object-super" "^7.2.0" - "@babel/plugin-transform-parameters" "^7.2.0" - "@babel/plugin-transform-regenerator" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.2.0" - "@babel/plugin-transform-spread" "^7.2.0" - "@babel/plugin-transform-sticky-regex" "^7.2.0" - "@babel/plugin-transform-template-literals" "^7.2.0" - "@babel/plugin-transform-typeof-symbol" "^7.2.0" - "@babel/plugin-transform-unicode-regex" "^7.2.0" - browserslist "^4.3.4" - invariant "^2.2.2" - js-levenshtein "^1.1.3" - semver "^5.3.0" - -"@babel/preset-react@7.0.0", "@babel/preset-react@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.0.0.tgz#e86b4b3d99433c7b3e9e91747e2653958bc6b3c0" - integrity sha512-oayxyPS4Zj+hF6Et11BwuBkmpgT/zMxyuZgFrMeZID6Hdh3dGlk4sHCAhdBCpuCKW2ppBfl2uCCetlrUIJRY3w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" - -"@babel/preset-typescript@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.1.0.tgz#49ad6e2084ff0bfb5f1f7fb3b5e76c434d442c7f" - integrity sha512-LYveByuF9AOM8WrsNne5+N79k1YxjNB6gmpCQsnuSBAcV8QUeB+ZUxQzL7Rz7HksPbahymKkq2qBR+o36ggFZA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-typescript" "^7.1.0" - -"@babel/runtime@7.1.5": - version "7.1.5" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.1.5.tgz#4170907641cf1f61508f563ece3725150cc6fe39" - integrity sha512-xKnPpXG/pvK1B90JkwwxSGii90rQGKtzcMt2gI5G6+M0REXaq6rOHsGC2ay6/d0Uje7zzvSzjEzfR3ENhFlrfA== - dependencies: - regenerator-runtime "^0.12.0" - -"@babel/template@^7.1.0", "@babel/template@^7.1.2", "@babel/template@^7.2.2": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.2.2.tgz#005b3fdf0ed96e88041330379e0da9a708eb2907" - integrity sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.2.2" - "@babel/types" "^7.2.2" - -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.1.5", "@babel/traverse@^7.1.6", "@babel/traverse@^7.2.2", "@babel/traverse@^7.2.3": - version "7.2.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.2.3.tgz#7ff50cefa9c7c0bd2d81231fdac122f3957748d8" - integrity sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.2.2" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/parser" "^7.2.3" - "@babel/types" "^7.2.2" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.10" - -"@babel/types@^7.0.0", "@babel/types@^7.1.6", "@babel/types@^7.2.0", "@babel/types@^7.2.2": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.2.2.tgz#44e10fc24e33af524488b716cdaee5360ea8ed1e" - integrity sha512-fKCuD6UFUMkR541eDWL+2ih/xFZBXPOg/7EQFeTluMDebfqR4jrpaCjLhkWlQS4hT6nRa2PMEgXKbRB5/H2fpg== - dependencies: - esutils "^2.0.2" - lodash "^4.17.10" - to-fast-properties "^2.0.0" - -"@csstools/convert-colors@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" - integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== - -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== - dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" - -"@nodelib/fs.stat@^1.1.2": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" - integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== - -"@svgr/core@^2.4.1": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@svgr/core/-/core-2.4.1.tgz#03a407c28c4a1d84305ae95021e8eabfda8fa731" - integrity sha512-2i1cUbjpKt1KcIP05e10vkmu9Aedp32EFqVcSQ08onbB8lVxJqMPci3Hr54aI14S9cLg4JdcpO0D35HHUtT8oQ== - dependencies: - camelcase "^5.0.0" - cosmiconfig "^5.0.6" - h2x-core "^1.1.0" - h2x-plugin-jsx "^1.1.0" - merge-deep "^3.0.2" - prettier "^1.14.2" - svgo "^1.0.5" - -"@svgr/webpack@2.4.1": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-2.4.1.tgz#68bc581ecb4c09fadeb7936bd1afaceb9da960d2" - integrity sha512-sMHYq0zbMtSHcc9kVfkYI2zrl88u4mKGyQLgKt7r+ul5nITcncm/EPBhzEUrJY5izdlaU6EvyH8zOhZnfaSmOA== - dependencies: - "@babel/core" "^7.0.1" - "@babel/plugin-transform-react-constant-elements" "^7.0.0" - "@babel/preset-env" "^7.0.0" - "@babel/preset-react" "^7.0.0" - "@svgr/core" "^2.4.1" - loader-utils "^1.1.0" - -"@types/q@^1.5.1": - version "1.5.1" - resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.1.tgz#48fd98c1561fe718b61733daed46ff115b496e18" - integrity sha512-eqz8c/0kwNi/OEHQfvIuJVLTst3in0e7uTKeuY+WL/zfKn0xVujOTp42bS/vUUokhK5P2BppLd9JXMOMHcgbjA== - -"@types/tapable@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.2.tgz#e13182e1b69871a422d7863e11a4a6f5b814a4bd" - integrity sha512-42zEJkBpNfMEAvWR5WlwtTH22oDzcMjFsL9gDGExwF8X8WvAiw7Vwop7hPw03QT8TKfec83LwbHj6SvpqM4ELQ== - -"@webassemblyjs/ast@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.7.6.tgz#3ef8c45b3e5e943a153a05281317474fef63e21e" - integrity sha512-8nkZS48EVsMUU0v6F1LCIOw4RYWLm2plMtbhFTjNgeXmsTNLuU3xTRtnljt9BFQB+iPbLRobkNrCWftWnNC7wQ== - dependencies: - "@webassemblyjs/helper-module-context" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/wast-parser" "1.7.6" - mamacro "^0.0.3" - -"@webassemblyjs/floating-point-hex-parser@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.6.tgz#7cb37d51a05c3fe09b464ae7e711d1ab3837801f" - integrity sha512-VBOZvaOyBSkPZdIt5VBMg3vPWxouuM13dPXGWI1cBh3oFLNcFJ8s9YA7S9l4mPI7+Q950QqOmqj06oa83hNWBA== - -"@webassemblyjs/helper-api-error@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.6.tgz#99b7e30e66f550a2638299a109dda84a622070ef" - integrity sha512-SCzhcQWHXfrfMSKcj8zHg1/kL9kb3aa5TN4plc/EREOs5Xop0ci5bdVBApbk2yfVi8aL+Ly4Qpp3/TRAUInjrg== - -"@webassemblyjs/helper-buffer@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.6.tgz#ba0648be12bbe560c25c997e175c2018df39ca3e" - integrity sha512-1/gW5NaGsEOZ02fjnFiU8/OEEXU1uVbv2um0pQ9YVL3IHSkyk6xOwokzyqqO1qDZQUAllb+V8irtClPWntbVqw== - -"@webassemblyjs/helper-code-frame@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.6.tgz#5a94d21b0057b69a7403fca0c253c3aaca95b1a5" - integrity sha512-+suMJOkSn9+vEvDvgyWyrJo5vJsWSDXZmJAjtoUq4zS4eqHyXImpktvHOZwXp1XQjO5H+YQwsBgqTQEc0J/5zg== - dependencies: - "@webassemblyjs/wast-printer" "1.7.6" - -"@webassemblyjs/helper-fsm@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.6.tgz#ae1741c6f6121213c7a0b587fb964fac492d3e49" - integrity sha512-HCS6KN3wgxUihGBW7WFzEC/o8Eyvk0d56uazusnxXthDPnkWiMv+kGi9xXswL2cvfYfeK5yiM17z2K5BVlwypw== - -"@webassemblyjs/helper-module-context@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.6.tgz#116d19a51a6cebc8900ad53ca34ff8269c668c23" - integrity sha512-e8/6GbY7OjLM+6OsN7f2krC2qYVNaSr0B0oe4lWdmq5sL++8dYDD1TFbD1TdAdWMRTYNr/Qq7ovXWzia2EbSjw== - dependencies: - mamacro "^0.0.3" - -"@webassemblyjs/helper-wasm-bytecode@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.6.tgz#98e515eaee611aa6834eb5f6a7f8f5b29fefb6f1" - integrity sha512-PzYFCb7RjjSdAOljyvLWVqd6adAOabJW+8yRT+NWhXuf1nNZWH+igFZCUK9k7Cx7CsBbzIfXjJc7u56zZgFj9Q== - -"@webassemblyjs/helper-wasm-section@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.6.tgz#783835867bdd686df7a95377ab64f51a275e8333" - integrity sha512-3GS628ppDPSuwcYlQ7cDCGr4W2n9c4hLzvnRKeuz+lGsJSmc/ADVoYpm1ts2vlB1tGHkjtQMni+yu8mHoMlKlA== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-buffer" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/wasm-gen" "1.7.6" - -"@webassemblyjs/ieee754@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.7.6.tgz#c34fc058f2f831fae0632a8bb9803cf2d3462eb1" - integrity sha512-V4cIp0ruyw+hawUHwQLn6o2mFEw4t50tk530oKsYXQhEzKR+xNGDxs/SFFuyTO7X3NzEu4usA3w5jzhl2RYyzQ== - dependencies: - "@xtuc/ieee754" "^1.2.0" - -"@webassemblyjs/leb128@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.7.6.tgz#197f75376a29f6ed6ace15898a310d871d92f03b" - integrity sha512-ojdlG8WpM394lBow4ncTGJoIVZ4aAtNOWHhfAM7m7zprmkVcKK+2kK5YJ9Bmj6/ketTtOn7wGSHCtMt+LzqgYQ== - dependencies: - "@xtuc/long" "4.2.1" - -"@webassemblyjs/utf8@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.7.6.tgz#eb62c66f906af2be70de0302e29055d25188797d" - integrity sha512-oId+tLxQ+AeDC34ELRYNSqJRaScB0TClUU6KQfpB8rNT6oelYlz8axsPhf6yPTg7PBJ/Z5WcXmUYiHEWgbbHJw== - -"@webassemblyjs/wasm-edit@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.6.tgz#fa41929160cd7d676d4c28ecef420eed5b3733c5" - integrity sha512-pTNjLO3o41v/Vz9VFLl+I3YLImpCSpodFW77pNoH4agn5I6GgSxXHXtvWDTvYJFty0jSeXZWLEmbaSIRUDlekg== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-buffer" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/helper-wasm-section" "1.7.6" - "@webassemblyjs/wasm-gen" "1.7.6" - "@webassemblyjs/wasm-opt" "1.7.6" - "@webassemblyjs/wasm-parser" "1.7.6" - "@webassemblyjs/wast-printer" "1.7.6" - -"@webassemblyjs/wasm-gen@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.6.tgz#695ac38861ab3d72bf763c8c75e5f087ffabc322" - integrity sha512-mQvFJVumtmRKEUXMohwn8nSrtjJJl6oXwF3FotC5t6e2hlKMh8sIaW03Sck2MDzw9xPogZD7tdP5kjPlbH9EcQ== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/ieee754" "1.7.6" - "@webassemblyjs/leb128" "1.7.6" - "@webassemblyjs/utf8" "1.7.6" - -"@webassemblyjs/wasm-opt@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.6.tgz#fbafa78e27e1a75ab759a4b658ff3d50b4636c21" - integrity sha512-go44K90fSIsDwRgtHhX14VtbdDPdK2sZQtZqUcMRvTojdozj5tLI0VVJAzLCfz51NOkFXezPeVTAYFqrZ6rI8Q== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-buffer" "1.7.6" - "@webassemblyjs/wasm-gen" "1.7.6" - "@webassemblyjs/wasm-parser" "1.7.6" - -"@webassemblyjs/wasm-parser@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.6.tgz#84eafeeff405ad6f4c4b5777d6a28ae54eed51fe" - integrity sha512-t1T6TfwNY85pDA/HWPA8kB9xA4sp9ajlRg5W7EKikqrynTyFo+/qDzIpvdkOkOGjlS6d4n4SX59SPuIayR22Yg== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-api-error" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/ieee754" "1.7.6" - "@webassemblyjs/leb128" "1.7.6" - "@webassemblyjs/utf8" "1.7.6" - -"@webassemblyjs/wast-parser@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.7.6.tgz#ca4d20b1516e017c91981773bd7e819d6bd9c6a7" - integrity sha512-1MaWTErN0ziOsNUlLdvwS+NS1QWuI/kgJaAGAMHX8+fMJFgOJDmN/xsG4h/A1Gtf/tz5VyXQciaqHZqp2q0vfg== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/floating-point-hex-parser" "1.7.6" - "@webassemblyjs/helper-api-error" "1.7.6" - "@webassemblyjs/helper-code-frame" "1.7.6" - "@webassemblyjs/helper-fsm" "1.7.6" - "@xtuc/long" "4.2.1" - mamacro "^0.0.3" - -"@webassemblyjs/wast-printer@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.7.6.tgz#a6002c526ac5fa230fe2c6d2f1bdbf4aead43a5e" - integrity sha512-vHdHSK1tOetvDcl1IV1OdDeGNe/NDDQ+KzuZHMtqTVP1xO/tZ/IKNpj5BaGk1OYFdsDWQqb31PIwdEyPntOWRQ== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/wast-parser" "1.7.6" - "@xtuc/long" "4.2.1" - -"@xtuc/ieee754@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== - -"@xtuc/long@4.2.1": - version "4.2.1" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.1.tgz#5c85d662f76fa1d34575766c5dcd6615abcd30d8" - integrity sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g== - -abab@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.0.tgz#aba0ab4c5eee2d4c79d3487d85450fb2376ebb0f" - integrity sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w== - -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - -accepts@~1.3.4, accepts@~1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" - integrity sha1-63d99gEXI6OxTopywIBcjoZ0a9I= - dependencies: - mime-types "~2.1.18" - negotiator "0.6.1" - -acorn-dynamic-import@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz#901ceee4c7faaef7e07ad2a47e890675da50a278" - integrity sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg== - dependencies: - acorn "^5.0.0" - -acorn-globals@^4.1.0, acorn-globals@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.0.tgz#e3b6f8da3c1552a95ae627571f7dd6923bb54103" - integrity sha512-hMtHj3s5RnuhvHPowpBYvJVj3rAar82JiDQHvGs1zO0l10ocX/xEdBShNHTJaboucJUsScghp74pH3s7EnHHQw== - dependencies: - acorn "^6.0.1" - acorn-walk "^6.0.1" - -acorn-jsx@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz#32a064fd925429216a09b141102bfdd185fae40e" - integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg== - -acorn-walk@^6.0.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.1.1.tgz#d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913" - integrity sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw== - -acorn@^5.0.0, acorn@^5.5.3, acorn@^5.6.2: - version "5.7.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" - integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== - -acorn@^6.0.1, acorn@^6.0.2, acorn@^6.0.4: - version "6.0.5" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.5.tgz#81730c0815f3f3b34d8efa95cb7430965f4d887a" - integrity sha512-i33Zgp3XWtmZBMNvCr4azvOFeWVw1Rk6p3hfi3LUDvIFraOMywb1kAtrbi+med14m4Xfpqm3zRZMT+c0FNE7kg== - -address@1.0.3, address@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/address/-/address-1.0.3.tgz#b5f50631f8d6cec8bd20c963963afb55e06cbce9" - integrity sha512-z55ocwKBRLryBs394Sm3ushTtBeg6VAeuku7utSoSnsJKvKcnXFIyC6vh27n3rXyxSgkJBBCAvyOn7gSUcTYjg== - -ajv-errors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" - integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== - -ajv-keywords@^3.0.0, ajv-keywords@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.2.0.tgz#e86b819c602cf8821ad637413698f1dec021847a" - integrity sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo= - -ajv@^6.0.1, ajv@^6.1.0, ajv@^6.5.3, ajv@^6.5.5: - version "6.6.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.6.2.tgz#caceccf474bf3fc3ce3b147443711a24063cc30d" - integrity sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g== - dependencies: - fast-deep-equal "^2.0.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -alphanum-sort@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - -ansi-colors@^3.0.0: - version "3.2.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" - integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== - -ansi-escapes@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" - integrity sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw== - -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= - -ansi-regex@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.0.0.tgz#70de791edf021404c3fd615aa89118ae0432e5a9" - integrity sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w== - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - -ansi-styles@^3.2.0, ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -append-transform@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" - integrity sha1-126/jKlNJ24keja61EpLdKthGZE= - dependencies: - default-require-extensions "^1.0.0" - -aproba@^1.0.3, aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -aria-query@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-3.0.0.tgz#65b3fcc1ca1155a8c9ae64d6eee297f15d5133cc" - integrity sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w= - dependencies: - ast-types-flow "0.0.7" - commander "^2.11.0" - -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= - dependencies: - arr-flatten "^1.0.1" - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= - -arr-flatten@^1.0.1, arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= - -array-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" - integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= - -array-filter@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" - integrity sha1-fajPLiZijtcygDWB/SH2fKzS7uw= - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= - -array-flatten@^2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - -array-includes@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" - integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.7.0" - -array-map@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" - integrity sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI= - -array-reduce@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" - integrity sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys= - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= - -arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= - -asap@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= - -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assert@^1.1.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" - integrity sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE= - dependencies: - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= - -ast-types-flow@0.0.7, ast-types-flow@^0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" - integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0= - -astral-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" - integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - integrity sha1-GdOGodntxufByF04iu28xW0zYC0= - -async-limiter@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" - integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg== - -async@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= - -async@^2.1.4: - version "2.6.1" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" - integrity sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ== - dependencies: - lodash "^4.17.10" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= - -atob@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -autoprefixer@^9.3.1: - version "9.4.4" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.4.4.tgz#40c42b335bdb22efe8cd80389ca82ffb5e32d68d" - integrity sha512-7tpjBadJyHKf+gOJEmKhZIksWxdZCSrnKbbTJNsw+/zX9+f//DLELRQPWjjjVoDbbWlCuNRkN7RfmZwDVgWMLw== - dependencies: - browserslist "^4.3.7" - caniuse-lite "^1.0.30000926" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^7.0.7" - postcss-value-parser "^3.3.1" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" - integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== - -axobject-query@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz#ea187abe5b9002b377f925d8bf7d1c561adf38f9" - integrity sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww== - dependencies: - ast-types-flow "0.0.7" - -babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@7.0.0-bridge.0: - version "7.0.0-bridge.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" - integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== - -babel-core@^6.0.0, babel-core@^6.26.0: - version "6.26.3" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" - integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.1" - debug "^2.6.9" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.8" - slash "^1.0.0" - source-map "^0.5.7" - -babel-eslint@9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-9.0.0.tgz#7d9445f81ed9f60aff38115f838970df9f2b6220" - integrity sha512-itv1MwE3TMbY0QtNfeL7wzak1mV47Uy+n6HtSOO4Xd7rvmO+tsGQSgyOEEgo6Y2vHZKZphaoelNeSVj4vkLA1g== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.0.0" - "@babel/traverse" "^7.0.0" - "@babel/types" "^7.0.0" - eslint-scope "3.7.1" - eslint-visitor-keys "^1.0.0" - -babel-extract-comments@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz#0a2aedf81417ed391b85e18b4614e693a0351a21" - integrity sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ== - dependencies: - babylon "^6.18.0" - -babel-generator@^6.18.0, babel-generator@^6.26.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-jest@23.6.0, babel-jest@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-23.6.0.tgz#a644232366557a2240a0c083da6b25786185a2f1" - integrity sha512-lqKGG6LYXYu+DQh/slrQ8nxXQkEkhugdXsU6St7GmhVS7Ilc/22ArwqXNJrf0QaOBjZB0360qZMwXqDYQHXaew== - dependencies: - babel-plugin-istanbul "^4.1.6" - babel-preset-jest "^23.2.0" - -babel-loader@8.0.4: - version "8.0.4" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.4.tgz#7bbf20cbe4560629e2e41534147692d3fecbdce6" - integrity sha512-fhBhNkUToJcW9nV46v8w87AJOwAJDz84c1CL57n3Stj73FANM/b9TbCUK4YhdOwEyZ+OxhYpdeZDNzSI29Firw== - dependencies: - find-cache-dir "^1.0.0" - loader-utils "^1.0.2" - mkdirp "^0.5.1" - util.promisify "^1.0.0" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-dynamic-import-node@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.2.0.tgz#c0adfb07d95f4a4495e9aaac6ec386c4d7c2524e" - integrity sha512-fP899ELUnTaBcIzmrW7nniyqqdYWrWuJUyPWHxFa/c7r7hS6KC8FscNfLlBNIoPSc55kYMGEEKjPjJGCLbE1qA== - dependencies: - object.assign "^4.1.0" - -babel-plugin-istanbul@^4.1.6: - version "4.1.6" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz#36c59b2192efce81c5b378321b74175add1c9a45" - integrity sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ== - dependencies: - babel-plugin-syntax-object-rest-spread "^6.13.0" - find-up "^2.1.0" - istanbul-lib-instrument "^1.10.1" - test-exclude "^4.2.1" - -babel-plugin-jest-hoist@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-23.2.0.tgz#e61fae05a1ca8801aadee57a6d66b8cefaf44167" - integrity sha1-5h+uBaHKiAGq3uV6bWa4zvr0QWc= - -babel-plugin-macros@2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.4.2.tgz#21b1a2e82e2130403c5ff785cba6548e9b644b28" - integrity sha512-NBVpEWN4OQ/bHnu1fyDaAaTPAjnhXCEPqr1RwqxrU7b6tZ2hypp+zX4hlNfmVGfClD5c3Sl6Hfj5TJNF5VG5aA== - dependencies: - cosmiconfig "^5.0.5" - resolve "^1.8.1" - -babel-plugin-named-asset-import@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.0.tgz#3289ec622d19cd1cc84df8d784b41f1b048bd524" - integrity sha512-to6Shd/r8fMRRg/MaOhDNfqpuXfjlQx3ypWDG6jh4ESCVZDJCgdgIalZbrnVlBPGgH/QeyHMjnGb2W+JJiy+NQ== - -babel-plugin-syntax-object-rest-spread@^6.13.0, babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= - -babel-plugin-transform-object-rest-spread@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - integrity sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY= - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.26.0" - -babel-plugin-transform-react-remove-prop-types@0.4.20: - version "0.4.20" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.20.tgz#688bdea1e27ea0023775dea817fa2d3f8df8802b" - integrity sha512-bWQ8e7LsgdFpyHU/RabjDAjVhL7KLAJXEt0nb0LANFje8YAGA8RlZv88a72aCswOxELWULkYuJqfFoKgs58Tng== - -babel-preset-jest@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-23.2.0.tgz#8ec7a03a138f001a1a8fb1e8113652bf1a55da46" - integrity sha1-jsegOhOPABoaj7HoETZSvxpV2kY= - dependencies: - babel-plugin-jest-hoist "^23.2.0" - babel-plugin-syntax-object-rest-spread "^6.13.0" - -babel-preset-react-app@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-7.0.0.tgz#86bf71e43cb8d36e40da69f8b4ad5d6f945dec93" - integrity sha512-LQKCB3xxdhAlRbk6IIZdO4ry1yA8gKGVV4phjOIgCEQr3oyaLPXf2j+lfD0zljOE2wkN2axRGOLTzdUPzVDO4w== - dependencies: - "@babel/core" "7.1.6" - "@babel/plugin-proposal-class-properties" "7.1.0" - "@babel/plugin-proposal-decorators" "7.1.6" - "@babel/plugin-proposal-object-rest-spread" "7.0.0" - "@babel/plugin-syntax-dynamic-import" "7.0.0" - "@babel/plugin-transform-classes" "7.1.0" - "@babel/plugin-transform-destructuring" "7.1.3" - "@babel/plugin-transform-flow-strip-types" "7.1.6" - "@babel/plugin-transform-react-constant-elements" "7.0.0" - "@babel/plugin-transform-react-display-name" "7.0.0" - "@babel/plugin-transform-runtime" "7.1.0" - "@babel/preset-env" "7.1.6" - "@babel/preset-react" "7.0.0" - "@babel/preset-typescript" "7.1.0" - "@babel/runtime" "7.1.5" - babel-loader "8.0.4" - babel-plugin-dynamic-import-node "2.2.0" - babel-plugin-macros "2.4.2" - babel-plugin-transform-react-remove-prop-types "0.4.20" - -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= - dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.22.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.0.0, babel-traverse@^6.18.0, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.0.0, babel-types@^6.18.0, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= - -base64-js@^1.0.2: - version "1.3.0" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" - integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - -bfj@6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/bfj/-/bfj-6.1.1.tgz#05a3b7784fbd72cfa3c22e56002ef99336516c48" - integrity sha512-+GUNvzHR4nRyGybQc2WpNJL4MJazMuvf92ueIyA0bIkPRwhhQu3IfZQ2PSoVPpCBJfmoSdOxu5rnotfFLlvYRQ== - dependencies: - bluebird "^3.5.1" - check-types "^7.3.0" - hoopy "^0.1.2" - tryer "^1.0.0" - -big.js@^3.1.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" - integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q== - -big.js@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" - integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== - -binary-extensions@^1.0.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.12.0.tgz#c2d780f53d45bba8317a8902d4ceeaf3a6385b14" - integrity sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg== - -bluebird@^3.5.1, bluebird@^3.5.3: - version "3.5.3" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.3.tgz#7d01c6f9616c9a51ab0f8c549a79dfe6ec33efa7" - integrity sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw== - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: - version "4.11.8" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" - integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== - -body-parser@1.18.3: - version "1.18.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.3.tgz#5b292198ffdd553b3a0f20ded0592b956955c8b4" - integrity sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ= - dependencies: - 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" - -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= - dependencies: - array-flatten "^2.1.0" - deep-equal "^1.0.1" - dns-equal "^1.0.0" - dns-txt "^2.0.2" - multicast-dns "^6.0.1" - multicast-dns-service-types "^1.1.0" - -boolbase@^1.0.0, boolbase@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -braces@^2.3.0, braces@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= - -browser-process-hrtime@^0.1.2: - version "0.1.3" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz#616f00faef1df7ec1b5bf9cfe2bdc3170f26c7b4" - integrity sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw== - -browser-resolve@^1.11.3: - version "1.11.3" - resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.3.tgz#9b7cbb3d0f510e4cb86bdbd796124d28b5890af6" - integrity sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ== - dependencies: - resolve "1.1.7" - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= - dependencies: - bn.js "^4.1.1" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.2" - elliptic "^6.0.0" - inherits "^2.0.1" - parse-asn1 "^5.0.0" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" - -browserslist@4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.1.1.tgz#328eb4ff1215b12df6589e9ab82f8adaa4fc8cd6" - integrity sha512-VBorw+tgpOtZ1BYhrVSVTzTt/3+vSE3eFUh0N2GCFK1HffceOaf32YS/bs6WiFhjDAblAFrx85jMy3BG9fBK2Q== - dependencies: - caniuse-lite "^1.0.30000884" - electron-to-chromium "^1.3.62" - node-releases "^1.0.0-alpha.11" - -browserslist@^4.0.0, browserslist@^4.1.0, browserslist@^4.3.4, browserslist@^4.3.7: - version "4.3.7" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.3.7.tgz#f1de479a6466ea47a0a26dcc725e7504817e624a" - integrity sha512-pWQv51Ynb0MNk9JGMCZ8VkM785/4MQNXiFYtPqI7EEP0TJO+/d/NqRVn1uiAN0DNbnlUSpL2sh16Kspasv3pUQ== - dependencies: - caniuse-lite "^1.0.30000925" - electron-to-chromium "^1.3.96" - node-releases "^1.1.3" - -bser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" - integrity sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk= - dependencies: - node-int64 "^0.4.0" - -buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== - -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= - -buffer@^4.3.0: - version "4.9.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" - integrity sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg= - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - -cacache@^10.0.4: - version "10.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.4.tgz#6452367999eff9d4188aefd9a14e9d7c6a263460" - integrity sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA== - dependencies: - bluebird "^3.5.1" - chownr "^1.0.1" - glob "^7.1.2" - graceful-fs "^4.1.11" - lru-cache "^4.1.1" - mississippi "^2.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.2" - ssri "^5.2.4" - unique-filename "^1.1.0" - y18n "^4.0.0" - -cacache@^11.0.2: - version "11.3.2" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.2.tgz#2d81e308e3d258ca38125b676b98b2ac9ce69bfa" - integrity sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg== - dependencies: - 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@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -call-me-maybe@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= - -caller-callsite@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" - integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= - dependencies: - callsites "^2.0.0" - -caller-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" - integrity sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8= - dependencies: - callsites "^0.2.0" - -caller-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" - integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= - dependencies: - caller-callsite "^2.0.0" - -callsites@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" - integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo= - -callsites@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" - integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= - -camel-case@3.0.x: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= - dependencies: - no-case "^2.2.0" - upper-case "^1.1.1" - -camelcase@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= - -camelcase@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.0.0.tgz#03295527d58bd3cd4aa75363f35b2e8d97be2f42" - integrity sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA== - -caniuse-api@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" - integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - dependencies: - browserslist "^4.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000884, caniuse-lite@^1.0.30000905, caniuse-lite@^1.0.30000925, caniuse-lite@^1.0.30000926: - version "1.0.30000927" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000927.tgz#114a9de4ff1e01f5790fe578ecd93421c7524665" - integrity sha512-ogq4NbUWf1uG/j66k0AmiO3GjqJAlQyF8n4w8a954cbCyFKmYGvRtgz6qkq2fWuduTXHibX7GyYL5Pg58Aks2g== - -capture-exit@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-1.2.0.tgz#1c5fcc489fd0ab00d4f1ac7ae1072e3173fbab6f" - integrity sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28= - dependencies: - rsvp "^3.3.3" - -case-sensitive-paths-webpack-plugin@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.1.2.tgz#c899b52175763689224571dad778742e133f0192" - integrity sha512-oEZgAFfEvKtjSRCu6VgYkuGxwrWXMnQzyBmlLPP7r6PWQVtHxP5Z5N6XsuJvtoVax78am/r7lr46bwo3IVEBOg== - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - -chalk@2.4.1, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" - integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - -check-types@^7.3.0: - version "7.4.0" - resolved "https://registry.yarnpkg.com/check-types/-/check-types-7.4.0.tgz#0378ec1b9616ec71f774931a3c6516fad8c152f4" - integrity sha512-YbulWHdfP99UfZ73NcUDlNJhEIDgm9Doq9GhpyXbF+7Aegi3CVV7qqMCKTTqJxlvEvnQBp9IA+dxsGN6xK/nSg== - -chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.4.tgz#356ff4e2b0e8e43e322d18a372460bbcf3accd26" - integrity sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.0" - braces "^2.3.0" - glob-parent "^3.1.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - lodash.debounce "^4.0.8" - normalize-path "^2.1.1" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - upath "^1.0.5" - optionalDependencies: - fsevents "^1.2.2" - -chownr@^1.0.1, chownr@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" - integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== - -chrome-trace-event@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz#45a91bd2c20c9411f0963b5aaeb9a1b95e09cc48" - integrity sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A== - dependencies: - tslib "^1.9.0" - -ci-info@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" - integrity sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A== - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -circular-json@^0.3.1: - version "0.3.3" - resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" - integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A== - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -clean-css@4.2.x: - version "4.2.1" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.1.tgz#2d411ef76b8569b6d0c84068dabe85b0aa5e5c17" - integrity sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g== - dependencies: - source-map "~0.6.0" - -cli-cursor@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" - integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= - dependencies: - restore-cursor "^2.0.0" - -cli-width@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" - integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= - -cliui@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" - integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - -clone-deep@^0.2.4: - version "0.2.4" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.2.4.tgz#4e73dd09e9fb971cc38670c5dced9c1896481cc6" - integrity sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY= - dependencies: - for-own "^0.1.3" - is-plain-object "^2.0.1" - kind-of "^3.0.2" - lazy-cache "^1.0.3" - shallow-clone "^0.1.2" - -clone-deep@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" - integrity sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ== - dependencies: - for-own "^1.0.0" - is-plain-object "^2.0.4" - kind-of "^6.0.0" - shallow-clone "^1.0.0" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - -coa@~2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" - integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== - dependencies: - "@types/q" "^1.5.1" - chalk "^2.4.1" - q "^1.1.2" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0, color-convert@^1.9.1: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -color-string@^1.5.2: - version "1.5.3" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" - integrity sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - -color@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/color/-/color-3.1.0.tgz#d8e9fb096732875774c84bf922815df0308d0ffc" - integrity sha512-CwyopLkuRYO5ei2EpzpIh6LqJMt6Mt+jZhO5VI5f/wJLZriXQE32/SSqzmrh+QB+AZT81Cj8yv+7zwToW8ahZg== - dependencies: - color-convert "^1.9.1" - color-string "^1.5.2" - -colors@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" - integrity sha1-FopHAXVran9RoSzgyXv6KMCE7WM= - -combined-stream@^1.0.6, combined-stream@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828" - integrity sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w== - dependencies: - delayed-stream "~1.0.0" - -commander@2.17.x, commander@~2.17.1: - version "2.17.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" - integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== - -commander@^2.11.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" - integrity sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg== - -commander@~2.13.0: - version "2.13.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" - integrity sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA== - -commander@~2.20.3: - version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - -common-tags@^1.4.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937" - integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - -component-emitter@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" - integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= - -compressible@~2.0.14: - version "2.0.15" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.15.tgz#857a9ab0a7e5a07d8d837ed43fe2defff64fe212" - integrity sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw== - dependencies: - mime-db ">= 1.36.0 < 2" - -compression@^1.5.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.3.tgz#27e0e176aaf260f7f2c2813c3e440adb9f1993db" - integrity sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.14" - debug "2.6.9" - on-headers "~1.0.1" - safe-buffer "5.1.2" - vary "~1.1.2" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -concat-stream@^1.5.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -confusing-browser-globals@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.5.tgz#0171050cfdd4261e278978078bc00c4d88e135f4" - integrity sha512-tHo1tQL/9Ox5RELbkCAJhnViqWlzBz3MG1bB2czbHjH2mWd4aYUgNCNLfysFL7c4LoDws7pjg2tj48Gmpw4QHA== - -connect-history-api-fallback@^1.3.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" - integrity sha1-sGhzk0vF40T+9hGhlqb6rgruAVo= - -console-browserify@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" - integrity sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA= - dependencies: - date-now "^0.1.4" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= - -contains-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" - integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= - -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= - -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" - integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== - dependencies: - safe-buffer "~5.1.1" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= - -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= - -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - -core-js@2.5.7: - version "2.5.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" - integrity sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw== - -core-js@^2.4.0, core-js@^2.5.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.1.tgz#87416ae817de957a3f249b3b5ca475d4aaed6042" - integrity sha512-L72mmmEayPJBejKIWe2pYtGis5r0tQ5NaJekdhyXgeMQTpJoBsH0NL4ElY2LfSoV15xeQWKQ+XTTOZdyero5Xg== - -core-util-is@1.0.2, core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= - -cosmiconfig@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-4.0.0.tgz#760391549580bbd2df1e562bc177b13c290972dc" - integrity sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ== - dependencies: - is-directory "^0.3.1" - js-yaml "^3.9.0" - parse-json "^4.0.0" - require-from-string "^2.0.1" - -cosmiconfig@^5.0.0, cosmiconfig@^5.0.5, cosmiconfig@^5.0.6: - version "5.0.7" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.7.tgz#39826b292ee0d78eda137dfa3173bd1c21a43b04" - integrity sha512-PcLqxTKiDmNT6pSpy4N6KtuPwb53W+2tzNvwOZw0WH9N6O0vLIBq0x8aj8Oj75ere4YcGi48bDFCL+3fRJdlNA== - dependencies: - import-fresh "^2.0.0" - is-directory "^0.3.1" - js-yaml "^3.9.0" - parse-json "^4.0.0" - -create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== - dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" - -create-hash@^1.1.0, create-hash@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - -css-color-names@0.0.4, css-color-names@^0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= - -css-declaration-sorter@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" - integrity sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA== - dependencies: - postcss "^7.0.1" - timsort "^0.3.0" - -css-loader@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-1.0.0.tgz#9f46aaa5ca41dbe31860e3b62b8e23c42916bf56" - integrity sha512-tMXlTYf3mIMt3b0dDCOQFJiVvxbocJ5Ho577WiGPYPZcqVEO218L2iU22pDXzkTZCLDE+9AmGSUkWxeh/nZReA== - dependencies: - babel-code-frame "^6.26.0" - css-selector-tokenizer "^0.7.0" - icss-utils "^2.1.0" - loader-utils "^1.0.2" - lodash.camelcase "^4.3.0" - postcss "^6.0.23" - postcss-modules-extract-imports "^1.2.0" - postcss-modules-local-by-default "^1.2.0" - postcss-modules-scope "^1.1.0" - postcss-modules-values "^1.3.0" - postcss-value-parser "^3.3.0" - source-list-map "^2.0.0" - -css-select-base-adapter@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== - -css-select@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" - -css-select@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.0.2.tgz#ab4386cec9e1f668855564b17c3733b43b2a5ede" - integrity sha512-dSpYaDVoWaELjvZ3mS6IKZM/y2PMPa/XYoEfYNZePL4U/XgyxZNroHEHReDx/d+VgXh9VbCTtFqLkFbmeqeaRQ== - dependencies: - boolbase "^1.0.0" - css-what "^2.1.2" - domutils "^1.7.0" - nth-check "^1.0.2" - -css-selector-tokenizer@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d" - integrity sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA== - dependencies: - cssesc "^0.1.0" - fastparse "^1.1.1" - regexpu-core "^1.0.0" - -css-tree@1.0.0-alpha.28: - version "1.0.0-alpha.28" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.28.tgz#8e8968190d886c9477bc8d61e96f61af3f7ffa7f" - integrity sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w== - dependencies: - mdn-data "~1.1.0" - source-map "^0.5.3" - -css-tree@1.0.0-alpha.29: - version "1.0.0-alpha.29" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.29.tgz#3fa9d4ef3142cbd1c301e7664c1f352bd82f5a39" - integrity sha512-sRNb1XydwkW9IOci6iB2xmy8IGCj6r/fr+JWitvJ2JxQRPzN3T4AGGVWCMlVmVwM1gtgALJRmGIlWv5ppnGGkg== - dependencies: - mdn-data "~1.1.0" - source-map "^0.5.3" - -css-unit-converter@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz#d9b9281adcfd8ced935bdbaba83786897f64e996" - integrity sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY= - -css-url-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/css-url-regex/-/css-url-regex-1.1.0.tgz#83834230cc9f74c457de59eebd1543feeb83b7ec" - integrity sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w= - -css-what@2.1, css-what@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.2.tgz#c0876d9d0480927d7d4920dcd72af3595649554d" - integrity sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ== - -cssdb@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-4.3.0.tgz#2e1229900616f80c66ff2d568ea2b4f92db1c78c" - integrity sha512-VHPES/+c9s+I0ryNj+PXvp84nz+ms843z/efpaEINwP/QfGsINL3gpLp5qjapzDNzNzbXxur8uxKxSXImrg4ag== - -cssesc@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" - integrity sha1-yBSQPkViM3GgR3tAEJqq++6t27Q= - -cssesc@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" - integrity sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg== - -cssnano-preset-default@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.6.tgz#92379e2a6db4a91c0ea727f5f556eeac693eab6a" - integrity sha512-UPboYbFaJFtDUhJ4fqctThWbbyF4q01/7UhsZbLzp35l+nUxtzh1SifoVlEfyLM3n3Z0htd8B1YlCxy9i+bQvg== - dependencies: - css-declaration-sorter "^4.0.1" - cssnano-util-raw-cache "^4.0.1" - postcss "^7.0.0" - postcss-calc "^7.0.0" - postcss-colormin "^4.0.2" - postcss-convert-values "^4.0.1" - postcss-discard-comments "^4.0.1" - postcss-discard-duplicates "^4.0.2" - postcss-discard-empty "^4.0.1" - postcss-discard-overridden "^4.0.1" - postcss-merge-longhand "^4.0.10" - postcss-merge-rules "^4.0.2" - postcss-minify-font-values "^4.0.2" - postcss-minify-gradients "^4.0.1" - postcss-minify-params "^4.0.1" - postcss-minify-selectors "^4.0.1" - postcss-normalize-charset "^4.0.1" - postcss-normalize-display-values "^4.0.1" - postcss-normalize-positions "^4.0.1" - postcss-normalize-repeat-style "^4.0.1" - postcss-normalize-string "^4.0.1" - postcss-normalize-timing-functions "^4.0.1" - postcss-normalize-unicode "^4.0.1" - postcss-normalize-url "^4.0.1" - postcss-normalize-whitespace "^4.0.1" - postcss-ordered-values "^4.1.1" - postcss-reduce-initial "^4.0.2" - postcss-reduce-transforms "^4.0.1" - postcss-svgo "^4.0.1" - postcss-unique-selectors "^4.0.1" - -cssnano-util-get-arguments@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" - integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= - -cssnano-util-get-match@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" - integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= - -cssnano-util-raw-cache@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" - integrity sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA== - dependencies: - postcss "^7.0.0" - -cssnano-util-same-parent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" - integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== - -cssnano@^4.1.0: - version "4.1.8" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.8.tgz#8014989679d5fd42491e4499a521dbfb85c95fd1" - integrity sha512-5GIY0VzAHORpbKiL3rMXp4w4M1Ki+XlXgEXyuWXVd3h6hlASb+9Vo76dNP56/elLMVBBsUfusCo1q56uW0UWig== - dependencies: - cosmiconfig "^5.0.0" - cssnano-preset-default "^4.0.6" - is-resolvable "^1.0.0" - postcss "^7.0.0" - -csso@^3.5.0: - version "3.5.1" - resolved "https://registry.yarnpkg.com/csso/-/csso-3.5.1.tgz#7b9eb8be61628973c1b261e169d2f024008e758b" - integrity sha512-vrqULLffYU1Q2tLdJvaCYbONStnfkfimRxXNaGjxMldI0C7JPBC4rB1RyjhfdZ4m1frm8pM9uRPKH3d2knZ8gg== - dependencies: - css-tree "1.0.0-alpha.29" - -cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0", cssom@^0.3.4: - version "0.3.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.4.tgz#8cd52e8a3acfd68d3aed38ee0a640177d2f9d797" - integrity sha512-+7prCSORpXNeR4/fUP3rL+TzqtiFfhMvTd7uEqMdgPvLPt4+uzFUeufx5RHjGTACCargg/DiEt/moMQmvnfkog== - -cssstyle@^1.0.0, cssstyle@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.1.1.tgz#18b038a9c44d65f7a8e428a653b9f6fe42faf5fb" - integrity sha512-364AI1l/M5TYcFH83JnOH/pSqgaNnKmYgKrm0didZMGKWjQB60dymwWy1rKUgL3J1ffdq9xVi2yGLHdSjjSNog== - dependencies: - cssom "0.3.x" - -cyclist@~0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" - integrity sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA= - -damerau-levenshtein@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514" - integrity sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ= - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - -data-urls@^1.0.0, data-urls@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe" - integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ== - dependencies: - abab "^2.0.0" - whatwg-mimetype "^2.2.0" - whatwg-url "^7.0.0" - -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" - integrity sha1-6vQ5/U1ISK105cx9vvIAZyueNFs= - -debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@=3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -debug@^3.1.0, debug@^3.2.5: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== - dependencies: - ms "^2.1.1" - -debug@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== - dependencies: - ms "^2.1.1" - -decamelize@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decamelize@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-2.0.0.tgz#656d7bbc8094c4c788ea53c5840908c9c7d063c7" - integrity sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg== - dependencies: - xregexp "4.0.0" - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= - -deep-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= - -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - -deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= - -default-gateway@^2.6.0: - version "2.7.2" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-2.7.2.tgz#b7ef339e5e024b045467af403d50348db4642d0f" - integrity sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ== - dependencies: - execa "^0.10.0" - ip-regex "^2.1.0" - -default-require-extensions@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8" - integrity sha1-836hXT4T/9m0N9M+GnW1+5eHTLg= - dependencies: - strip-bom "^2.0.0" - -define-properties@^1.1.2, define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -del@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" - integrity sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU= - dependencies: - globby "^6.1.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - p-map "^1.1.1" - pify "^3.0.0" - rimraf "^2.2.8" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - -des.js@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" - integrity sha1-wHTS4qpqipoH29YfmhXCzYPsjsw= - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= - dependencies: - repeating "^2.0.0" - -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - -detect-newline@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" - integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= - -detect-node@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" - integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== - -detect-port-alt@1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" - integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== - dependencies: - address "^1.0.1" - debug "^2.6.0" - -diff@^3.2.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== - -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dir-glob@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" - integrity sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag== - dependencies: - arrify "^1.0.1" - path-type "^3.0.0" - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= - -dns-packet@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" - integrity sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg== - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= - dependencies: - buffer-indexof "^1.0.0" - -doctrine@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" - integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= - dependencies: - esutils "^2.0.2" - isarray "^1.0.0" - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -dom-converter@~0.2: - version "0.2.0" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" - integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== - dependencies: - utila "~0.4" - -dom-serializer@0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" - integrity sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= - dependencies: - domelementtype "~1.1.1" - entities "~1.1.1" - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - -domelementtype@1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" - integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== - -domelementtype@~1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" - integrity sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= - -domexception@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" - integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug== - dependencies: - webidl-conversions "^4.0.2" - -domhandler@2.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594" - integrity sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ= - dependencies: - domelementtype "1" - -domutils@1.1: - version "1.1.6" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485" - integrity sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU= - dependencies: - domelementtype "1" - -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - -dot-prop@^4.1.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" - integrity sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ== - dependencies: - is-obj "^1.0.0" - -dotenv-expand@4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-4.2.0.tgz#def1f1ca5d6059d24a766e587942c21106ce1275" - integrity sha1-3vHxyl1gWdJKdm5YeULCEQbOEnU= - -dotenv@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.0.0.tgz#24e37c041741c5f4b25324958ebbc34bca965935" - integrity sha512-FlWbnhgjtwD+uNLUGHbMykMOYQaTivdHEmYwAKFjn6GKe/CqY0fNae93ZHTd20snh9ZLr8mTzIL9m0APQ1pjQg== - -duplexer@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= - -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.6.1.tgz#b1a7a29c4abfd639585efaecce80d666b1e34125" - integrity sha512-vM58DwdnKmty+FSPzT14K9JXb90H+j5emaR4KYbr2KTIz00WHGbWOe5ghQTx233ZCLZtrGDALzKwcjEtSt35mA== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= - -electron-to-chromium@^1.3.62, electron-to-chromium@^1.3.96: - version "1.3.96" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.96.tgz#25770ec99b8b07706dedf3a5f43fa50cb54c4f9a" - integrity sha512-ZUXBUyGLeoJxp4Nt6G/GjBRLnyz8IKQGexZ2ndWaoegThgMGFO1tdDYID5gBV32/1S83osjJHyfzvanE/8HY4Q== - -elliptic@^6.0.0: - version "6.4.1" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.1.tgz#c2d0b7776911b86722c632c3c06c60f2f819939a" - integrity sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ== - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -emoji-regex@^6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz#9baea929b155565c11ea41c6626eaa65cef992c2" - integrity sha512-PAHp6TxrCy7MGMFidro8uikr+zlJJKJ/Q6mm2ExZ7HwkyR9lSVFfE3kt36qcwa24BQL7y0G9axycGjK1A/0uNQ== - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" - integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== - dependencies: - once "^1.4.0" - -enhanced-resolve@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" - integrity sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.4.0" - tapable "^1.0.0" - -entities@~1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - -errno@^0.1.3, errno@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" - integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg== - dependencies: - prr "~1.0.1" - -error-ex@^1.2.0, error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.12.0, es-abstract@^1.5.1, es-abstract@^1.7.0: - version "1.13.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" - integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== - dependencies: - 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@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" - integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -escodegen@^1.11.0, escodegen@^1.9.1: - version "1.11.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.0.tgz#b27a9389481d5bfd5bec76f7bb1eb3f8f4556589" - integrity sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw== - dependencies: - esprima "^3.1.3" - estraverse "^4.2.0" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.6.1" - -eslint-config-react-app@^3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-3.0.6.tgz#addcae1359235941e95f3c96970b7ac8552e1130" - integrity sha512-VL5rA1EBZv7f9toc9x71or7nr4jRmwCH4V9JKB9DFVaTLOLI9+vjWLgQLjMu3xR9iUT80dty86RbCfNaKyrFFg== - dependencies: - confusing-browser-globals "^1.0.5" - -eslint-import-resolver-node@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" - integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== - dependencies: - debug "^2.6.9" - resolve "^1.5.0" - -eslint-loader@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/eslint-loader/-/eslint-loader-2.1.1.tgz#2a9251523652430bfdd643efdb0afc1a2a89546a" - integrity sha512-1GrJFfSevQdYpoDzx8mEE2TDWsb/zmFuY09l6hURg1AeFIKQOvZ+vH0UPjzmd1CZIbfTV5HUkMeBmFiDBkgIsQ== - dependencies: - loader-fs-cache "^1.0.0" - loader-utils "^1.0.2" - object-assign "^4.0.1" - object-hash "^1.1.4" - rimraf "^2.6.1" - -eslint-module-utils@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz#b270362cd88b1a48ad308976ce7fa54e98411746" - integrity sha1-snA2LNiLGkitMIl2zn+lTphBF0Y= - dependencies: - debug "^2.6.8" - pkg-dir "^1.0.0" - -eslint-plugin-flowtype@2.50.1: - version "2.50.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.50.1.tgz#36d4c961ac8b9e9e1dc091d3fba0537dad34ae8a" - integrity sha512-9kRxF9hfM/O6WGZcZPszOVPd2W0TLHBtceulLTsGfwMPtiCCLnCW0ssRiOOiXyqrCA20pm1iXdXm7gQeN306zQ== - dependencies: - lodash "^4.17.10" - -eslint-plugin-import@2.14.0: - version "2.14.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.14.0.tgz#6b17626d2e3e6ad52cfce8807a845d15e22111a8" - integrity sha512-FpuRtniD/AY6sXByma2Wr0TXvXJ4nA/2/04VPlfpmUDPOpOY264x+ILiwnrk/k4RINgDAyFZByxqPUbSQ5YE7g== - dependencies: - contains-path "^0.1.0" - debug "^2.6.8" - doctrine "1.5.0" - eslint-import-resolver-node "^0.3.1" - eslint-module-utils "^2.2.0" - has "^1.0.1" - lodash "^4.17.4" - minimatch "^3.0.3" - read-pkg-up "^2.0.0" - resolve "^1.6.0" - -eslint-plugin-jsx-a11y@6.1.2: - version "6.1.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.1.2.tgz#69bca4890b36dcf0fe16dd2129d2d88b98f33f88" - integrity sha512-7gSSmwb3A+fQwtw0arguwMdOdzmKUgnUcbSNlo+GjKLAQFuC2EZxWqG9XHRI8VscBJD5a8raz3RuxQNFW+XJbw== - dependencies: - aria-query "^3.0.0" - array-includes "^3.0.3" - ast-types-flow "^0.0.7" - axobject-query "^2.0.1" - damerau-levenshtein "^1.0.4" - emoji-regex "^6.5.1" - has "^1.0.3" - jsx-ast-utils "^2.0.1" - -eslint-plugin-react@7.11.1: - version "7.11.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.11.1.tgz#c01a7af6f17519457d6116aa94fc6d2ccad5443c" - integrity sha512-cVVyMadRyW7qsIUh3FHp3u6QHNhOgVrLQYdQEB1bPWBsgbNCHdFAeNMquBMCcZJu59eNthX053L70l7gRt4SCw== - dependencies: - array-includes "^3.0.3" - doctrine "^2.1.0" - has "^1.0.3" - jsx-ast-utils "^2.0.1" - prop-types "^15.6.2" - -eslint-scope@3.7.1: - version "3.7.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" - integrity sha1-PWPD7f2gLgbgGkUq2IyqzHzctug= - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-scope@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz#50bf3071e9338bcdc43331794a0cb533f0136172" - integrity sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-utils@^1.3.1: - version "1.4.3" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" - integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" - integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== - -eslint@5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.6.0.tgz#b6f7806041af01f71b3f1895cbb20971ea4b6223" - integrity sha512-/eVYs9VVVboX286mBK7bbKnO1yamUy2UCRjiY6MryhQL2PaaXCExsCQ2aO83OeYRhU2eCU/FMFP+tVMoOrzNrA== - dependencies: - "@babel/code-frame" "^7.0.0" - ajv "^6.5.3" - chalk "^2.1.0" - cross-spawn "^6.0.5" - debug "^3.1.0" - doctrine "^2.1.0" - eslint-scope "^4.0.0" - eslint-utils "^1.3.1" - eslint-visitor-keys "^1.0.0" - espree "^4.0.0" - esquery "^1.0.1" - esutils "^2.0.2" - file-entry-cache "^2.0.0" - functional-red-black-tree "^1.0.1" - glob "^7.1.2" - globals "^11.7.0" - ignore "^4.0.6" - imurmurhash "^0.1.4" - inquirer "^6.1.0" - is-resolvable "^1.1.0" - js-yaml "^3.12.0" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.5" - minimatch "^3.0.4" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - optionator "^0.8.2" - path-is-inside "^1.0.2" - pluralize "^7.0.0" - progress "^2.0.0" - regexpp "^2.0.0" - require-uncached "^1.0.3" - semver "^5.5.1" - strip-ansi "^4.0.0" - strip-json-comments "^2.0.1" - table "^4.0.3" - text-table "^0.2.0" - -espree@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-4.1.0.tgz#728d5451e0fd156c04384a7ad89ed51ff54eb25f" - integrity sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w== - dependencies: - acorn "^6.0.2" - acorn-jsx "^5.0.0" - eslint-visitor-keys "^1.0.0" - -esprima@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" - integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" - integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== - dependencies: - estraverse "^4.0.0" - -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== - dependencies: - estraverse "^4.1.0" - -estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= - -esutils@^2.0.0, esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - -eventemitter3@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" - integrity sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA== - -events@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= - -eventsource@0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" - integrity sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI= - dependencies: - original ">=0.0.5" - -eventsource@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0" - integrity sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ== - dependencies: - original "^1.0.0" - -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -exec-sh@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.2.tgz#2a5e7ffcbd7d0ba2755bdecb16e5a427dfbdec36" - integrity sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw== - dependencies: - merge "^1.2.0" - -execa@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50" - integrity sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw== - dependencies: - cross-spawn "^6.0.0" - get-stream "^3.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" - -execa@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.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" - -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= - -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= - dependencies: - is-posix-bracket "^0.1.0" - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= - dependencies: - fill-range "^2.1.0" - -expand-tilde@^2.0.0, expand-tilde@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" - integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= - dependencies: - homedir-polyfill "^1.0.1" - -expect@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-23.6.0.tgz#1e0c8d3ba9a581c87bd71fb9bc8862d443425f98" - integrity sha512-dgSoOHgmtn/aDGRVFWclQyPDKl2CQRq0hmIEoUAuQs/2rn2NcvCWcSCovm6BLeuB/7EZuLGu2QfnR+qRt5OM4w== - dependencies: - ansi-styles "^3.2.0" - jest-diff "^23.6.0" - jest-get-type "^22.1.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - -express@^4.16.2: - version "4.16.4" - resolved "https://registry.yarnpkg.com/express/-/express-4.16.4.tgz#fddef61926109e24c515ea97fd2f1bdbf62df12e" - integrity sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg== - dependencies: - 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" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -external-editor@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" - integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= - dependencies: - is-extglob "^1.0.0" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= - -fast-deep-equal@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" - integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= - -fast-glob@^2.0.2: - version "2.2.4" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.4.tgz#e54f4b66d378040e0e4d6a68ec36bbc5b04363c0" - integrity sha512-FjK2nCGI/McyzgNtTESqaWP3trPvHyRyoyY70hxjc3oKPNmDe8taohLZpoVKoUjW85tbU5txaYUZCNtVzygl1g== - dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.1.2" - glob-parent "^3.1.0" - is-glob "^4.0.0" - merge2 "^1.2.3" - micromatch "^3.1.10" - -fast-json-stable-stringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" - integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= - -fast-levenshtein@~2.0.4: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -fastparse@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" - integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ== - -faye-websocket@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= - dependencies: - websocket-driver ">=0.5.1" - -faye-websocket@~0.11.0, faye-websocket@~0.11.1: - version "0.11.1" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" - integrity sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg= - dependencies: - websocket-driver ">=0.5.1" - -fb-watchman@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58" - integrity sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg= - dependencies: - bser "^2.0.0" - -figgy-pudding@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790" - integrity sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w== - -figures@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" - integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= - dependencies: - escape-string-regexp "^1.0.5" - -file-entry-cache@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" - integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E= - dependencies: - flat-cache "^1.2.1" - object-assign "^4.0.1" - -file-loader@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-2.0.0.tgz#39749c82f020b9e85901dcff98e8004e6401cfde" - integrity sha512-YCsBfd1ZGCyonOKLxPiKPdu+8ld9HAaMEvJewzz+b2eTF7uL5Zm/HdBF6FjCrpCMRq25Mi0U1gl4pwn2TlH7hQ== - dependencies: - loader-utils "^1.0.2" - schema-utils "^1.0.0" - -filename-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= - -fileset@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" - integrity sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA= - dependencies: - glob "^7.0.3" - minimatch "^3.0.3" - -filesize@3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz#090bb3ee01b6f801a8a8be99d31710b3422bb317" - integrity sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg== - -fill-range@^2.1.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" - integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q== - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^3.0.0" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -finalhandler@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" - integrity sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg== - dependencies: - 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" - -find-cache-dir@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9" - integrity sha1-yN765XyKUqinhPnjHFfHQumToLk= - dependencies: - commondir "^1.0.1" - mkdirp "^0.5.1" - pkg-dir "^1.0.0" - -find-cache-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" - integrity sha1-kojj6ePMN0hxfTnq3hfPcfww7m8= - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^2.0.0" - -find-cache-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.0.0.tgz#4c1faed59f45184530fb9d7fa123a4d04a98472d" - integrity sha512-LDUY6V1Xs5eFskUVYtIwatojt6+9xC9Chnlk/jYOOvn3FAFfSaWddxahDGyNHh0b2dMXa6YW2m0tk8TdVaXHlA== - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^3.0.0" - -find-up@3.0.0, find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - -flat-cache@^1.2.1: - version "1.3.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.4.tgz#2c2ef77525cc2929007dfffa1dd314aa9c9dee6f" - integrity sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg== - dependencies: - circular-json "^0.3.1" - graceful-fs "^4.1.2" - rimraf "~2.6.2" - write "^0.2.1" - -flatten@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" - integrity sha1-2uRqnXj74lKSJYzB54CkHZXAN4I= - -flush-write-stream@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.3.tgz#c5d586ef38af6097650b49bc41b55fabb19f35bd" - integrity sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw== - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.4" - -follow-redirects@^1.0.0: - version "1.6.1" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.6.1.tgz#514973c44b5757368bad8bddfe52f81f015c94cb" - integrity sha512-t2JCjbzxQpWvbhts3l6SH1DKzSrx8a+SsaVf4h6bG4kOXUuPYS/kg2Lr4gQSb7eemaHqJkOThF1BGyjlUkO1GQ== - dependencies: - debug "=3.1.0" - -for-in@^0.1.3: - version "0.1.8" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" - integrity sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= - -for-in@^1.0.1, for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= - -for-own@^0.1.3, for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= - dependencies: - for-in "^1.0.1" - -for-own@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - integrity sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs= - dependencies: - for-in "^1.0.1" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - -fork-ts-checker-webpack-plugin-alt@0.4.14: - version "0.4.14" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin-alt/-/fork-ts-checker-webpack-plugin-alt-0.4.14.tgz#1bd6c0d97b7d4682dde61255fcbd78b72f7473a0" - integrity sha512-s0wjOBuPdylMRBzZ4yO8LSJuzem3g0MYZFxsjRXrFDQyL5KJBVSq30+GoHM/t/r2CRU4tI6zi04sq6OXK0UYnw== - dependencies: - babel-code-frame "^6.22.0" - chalk "^2.4.1" - chokidar "^2.0.4" - lodash "^4.17.11" - micromatch "^3.1.10" - minimatch "^3.0.4" - resolve "^1.5.0" - tapable "^1.0.0" - -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-extra@7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.0.tgz#8cc3f47ce07ef7b3593a11b9fb245f7e34c041d6" - integrity sha512-EglNDLRpmaTWiD/qraZn6HREAEAHJcJOmxNEYwq6xeMKnVMAy3GUcFB+wXt2C6k4CNvB/mP1y/U3dzvKKj5OtQ== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" - integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" - integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-minipass@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.5.tgz#06c277218454ec288df77ada54a03b8702aacb9d" - integrity sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ== - dependencies: - minipass "^2.2.1" - -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@1.2.4, fsevents@^1.2.2, fsevents@^1.2.3: - version "1.2.4" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426" - integrity sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg== - dependencies: - nan "^2.9.2" - node-pre-gyp "^0.10.0" - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -get-caller-file@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" - integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== - -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz#b877b49a5c16aefac3655f2ed2ea5b684df8d203" - integrity sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg== - -get-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= - -get-stream@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= - dependencies: - is-glob "^2.0.0" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= - -glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -global-modules@1.0.0, global-modules@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" - integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== - dependencies: - global-prefix "^1.0.1" - is-windows "^1.0.1" - resolve-dir "^1.0.0" - -global-prefix@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" - integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= - dependencies: - expand-tilde "^2.0.2" - homedir-polyfill "^1.0.1" - ini "^1.3.4" - is-windows "^1.0.1" - which "^1.2.14" - -globals@^11.1.0, globals@^11.7.0: - version "11.9.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.9.0.tgz#bde236808e987f290768a93d065060d78e6ab249" - integrity sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg== - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== - -globby@8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.1.tgz#b5ad48b8aa80b35b814fc1281ecc851f1d2b5b50" - integrity sha512-oMrYrJERnKBLXNLVTqhm3vPEdJ/b2ZE28xN4YARiix1NOIOBPEpOUnm844K1iu/BkphCaf2WNFwMszv8Soi1pw== - dependencies: - array-union "^1.0.1" - dir-glob "^2.0.0" - fast-glob "^2.0.2" - glob "^7.1.2" - ignore "^3.3.5" - pify "^3.0.0" - slash "^1.0.0" - -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.1.15" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" - integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== - -growly@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= - -gzip-size@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.0.0.tgz#a55ecd99222f4c48fd8c01c625ce3b349d0a0e80" - integrity sha512-5iI7omclyqrnWw4XbXAmGhPsABkSIDQonv2K0h61lybgofWa6iZyvrI3r2zsJH4P8Nb64fFVzlvfhs0g7BBxAA== - dependencies: - duplexer "^0.1.1" - pify "^3.0.0" - -h2x-core@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/h2x-core/-/h2x-core-1.1.1.tgz#7fb31ab28e30ebf11818e3c7d183487ecf489f9f" - integrity sha512-LdXe4Irs731knLtHgLyFrnJCumfiqXXQwKN1IMUhi37li29PLfLbMDvfK7Rk4wmgHLKP+sIITT1mcJV4QsC3nw== - dependencies: - h2x-generate "^1.1.0" - h2x-parse "^1.1.1" - h2x-traverse "^1.1.0" - -h2x-generate@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/h2x-generate/-/h2x-generate-1.1.0.tgz#c2c98c60070e1eed231e482d5826c3c5dab2a9ba" - integrity sha512-L7Hym0yb20QIjvqeULUPOeh/cyvScdOAyJ6oRlh5dF0+w92hf3OiTk1q15KBijde7jGEe+0R4aOmtW8gkPNIzg== - dependencies: - h2x-traverse "^1.1.0" - -h2x-parse@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/h2x-parse/-/h2x-parse-1.1.1.tgz#875712cd3be75cf736c610d279b8653b24f58385" - integrity sha512-WRSmPF+tIWuUXVEZaYRhcZx/JGEJx8LjZpDDtrvMr5m/GTR0NerydCik5dRzcKXPWCtfXxuJRLR4v2P4HB2B1A== - dependencies: - h2x-types "^1.1.0" - jsdom ">=11.0.0" - -h2x-plugin-jsx@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/h2x-plugin-jsx/-/h2x-plugin-jsx-1.2.0.tgz#211fa02e5c4e0a07307b0005629923910e631c01" - integrity sha512-a7Vb3BHhJJq0dPDNdqguEyQirENkVsFtvM2YkiaT5h/fmGhmM1nDy3BLeJeSKi2tL2g9v4ykm2Z+GG9QrhDgPA== - dependencies: - h2x-types "^1.1.0" - -h2x-traverse@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/h2x-traverse/-/h2x-traverse-1.1.0.tgz#194b36c593f4e20a754dee47fa6b2288647b2271" - integrity sha512-1ND8ZbISLSUgpLHYJRvhvElITvs0g44L7RxjeXViz5XP6rooa+FtXTFLByl2Yg01zj2txubifHIuU4pgvj8l+A== - dependencies: - h2x-types "^1.1.0" - -h2x-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/h2x-types/-/h2x-types-1.1.0.tgz#ec0d5e3674e2207269f32976ac9c82aaff4818e6" - integrity sha512-QdH5qfLcdF209UsCdM0ZNZ9Dwm2PHvMfeLZtivBrjX3Y/df4US2pwsUC4HBfWhye/mx/t6puODeC7Oacb/Ol8g== - -handle-thing@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.0.tgz#0e039695ff50c93fc288557d696f3c1dc6776754" - integrity sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ== - -handlebars@^4.0.3: - version "4.4.5" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.4.5.tgz#1b1f94f9bfe7379adda86a8b73fb570265a0dddd" - integrity sha512-0Ce31oWVB7YidkaTq33ZxEbN+UDxMMgThvCe8ptgQViymL5DPis9uLdTA13MiRPhgvqyxIegugrP97iK3JeBHg== - dependencies: - neo-async "^2.6.0" - optimist "^0.6.1" - source-map "^0.6.1" - optionalDependencies: - uglify-js "^3.1.4" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.0: - version "5.1.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" - integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== - dependencies: - ajv "^6.5.5" - har-schema "^2.0.0" - -harmony-reflect@^1.4.6: - version "1.6.1" - resolved "https://registry.yarnpkg.com/harmony-reflect/-/harmony-reflect-1.6.1.tgz#c108d4f2bb451efef7a37861fdbdae72c9bdefa9" - integrity sha512-WJTeyp0JzGtHcuMsi7rw2VwtkvLa+JyfEKJCFyfcS0+CDkjQ5lHPu7zEhFZP+PDSRrEgXa5Ah0l1MbgbE41XjA== - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - -has-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" - integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= - -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has@^1.0.0, has@^1.0.1, has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hash-base@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" - integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" - integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -he@1.2.x: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -hex-color-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" - integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hoek@4.x.x: - version "4.2.1" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.1.tgz#9634502aa12c445dd5a7c5734b572bb8738aacbb" - integrity sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA== - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -homedir-polyfill@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" - integrity sha1-TCu8inWJmP7r9e1oWA921GdotLw= - dependencies: - parse-passwd "^1.0.0" - -hoopy@^0.1.2: - version "0.1.4" - resolved "https://registry.yarnpkg.com/hoopy/-/hoopy-0.1.4.tgz#609207d661100033a9a9402ad3dea677381c1b1d" - integrity sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ== - -hosted-git-info@^2.1.4: - version "2.7.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" - integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -hsl-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" - integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= - -hsla-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" - integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= - -html-comment-regex@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" - integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== - -html-encoding-sniffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" - integrity sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw== - dependencies: - whatwg-encoding "^1.0.1" - -html-entities@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" - integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8= - -html-minifier@^3.2.3: - version "3.5.21" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.21.tgz#d0040e054730e354db008463593194015212d20c" - integrity sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA== - dependencies: - 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@4.0.0-alpha.2: - version "4.0.0-alpha.2" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.0.0-alpha.2.tgz#7745967e389a57a098e26963f328ebe4c19b598d" - integrity sha512-tyvhjVpuGqD7QYHi1l1drMQTg5i+qRxpQEGbdnYFREgOKy7aFDf/ocQ/V1fuEDlQx7jV2zMap3Hj2nE9i5eGXw== - dependencies: - "@types/tapable" "1.0.2" - html-minifier "^3.2.3" - loader-utils "^1.1.0" - lodash "^4.17.10" - pretty-error "^2.0.2" - tapable "^1.0.0" - util.promisify "1.0.0" - -htmlparser2@~3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe" - integrity sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4= - dependencies: - domelementtype "1" - domhandler "2.1" - domutils "1.1" - readable-stream "1.0" - -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= - -http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-parser-js@>=0.4.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.0.tgz#d65edbede84349d0dc30320815a15d39cc3cbbd8" - integrity sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w== - -http-proxy-middleware@~0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz#0987e6bb5a5606e5a69168d8f967a87f15dd8aab" - integrity sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q== - dependencies: - http-proxy "^1.16.2" - is-glob "^4.0.0" - lodash "^4.17.5" - micromatch "^3.1.9" - -http-proxy@^1.16.2: - version "1.17.0" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" - integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g== - dependencies: - eventemitter3 "^3.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= - -iconv-lite@0.4.23: - version "0.4.23" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" - integrity sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= - -icss-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" - integrity sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI= - dependencies: - postcss "^6.0.1" - -identity-obj-proxy@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz#94d2bda96084453ef36fbc5aaec37e0f79f1fc14" - integrity sha1-lNK9qWCERT7zb7xarsN+D3nx/BQ= - dependencies: - harmony-reflect "^1.4.6" - -ieee754@^1.1.4: - version "1.1.12" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b" - integrity sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA== - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= - -ignore-walk@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" - integrity sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ== - dependencies: - minimatch "^3.0.4" - -ignore@^3.3.5: - version "3.3.10" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" - integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -immer@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/immer/-/immer-1.7.2.tgz#a51e9723c50b27e132f6566facbec1c85fc69547" - integrity sha512-4Urocwu9+XLDJw4Tc6ZCg7APVjjLInCFvO4TwGsAYV5zT6YYSor14dsZR0+0tHlDIN92cFUOq+i7fC00G5vTxA== - -import-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" - integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= - dependencies: - import-from "^2.1.0" - -import-fresh@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" - integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= - dependencies: - caller-path "^2.0.0" - resolve-from "^3.0.0" - -import-from@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" - integrity sha1-M1238qev/VOqpHHUuAId7ja387E= - dependencies: - resolve-from "^3.0.0" - -import-local@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" - integrity sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ== - dependencies: - pkg-dir "^2.0.0" - resolve-cwd "^2.0.0" - -import-local@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" - integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== - dependencies: - pkg-dir "^3.0.0" - resolve-cwd "^2.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= - -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= - -ini@^1.3.4, ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== - -inquirer@6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.0.tgz#51adcd776f661369dc1e894859c2560a224abdd8" - integrity sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg== - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" - cli-cursor "^2.1.0" - cli-width "^2.0.0" - external-editor "^3.0.0" - figures "^2.0.0" - lodash "^4.17.10" - mute-stream "0.0.7" - run-async "^2.2.0" - rxjs "^6.1.0" - string-width "^2.1.0" - strip-ansi "^4.0.0" - through "^2.3.6" - -inquirer@^6.1.0: - version "6.2.1" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.1.tgz#9943fc4882161bdb0b0c9276769c75b32dbfcd52" - integrity sha512-088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg== - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" - cli-cursor "^2.1.0" - cli-width "^2.0.0" - external-editor "^3.0.0" - figures "^2.0.0" - lodash "^4.17.10" - mute-stream "0.0.7" - run-async "^2.2.0" - rxjs "^6.1.0" - string-width "^2.1.0" - strip-ansi "^5.0.0" - through "^2.3.6" - -internal-ip@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-3.0.1.tgz#df5c99876e1d2eb2ea2d74f520e3f669a00ece27" - integrity sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q== - dependencies: - default-gateway "^2.6.0" - ipaddr.js "^1.5.2" - -invariant@^2.2.2, invariant@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= - -invert-kv@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" - integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== - -ip-regex@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" - integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= - -ip@^1.1.0, ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= - -ipaddr.js@1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.0.tgz#eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e" - integrity sha1-6qM9bd16zo9/b+DJygRA5wZzix4= - -ipaddr.js@^1.5.2: - version "1.8.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.1.tgz#fa4b79fa47fd3def5e3b159825161c0a519c9427" - integrity sha1-+kt5+kf9Pe9eOxWYJRYcClGclCc= - -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= - dependencies: - binary-extensions "^1.0.0" - -is-buffer@^1.0.2, is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - integrity sha1-VAVy0096wxGfj3bDDLwbHgN6/74= - dependencies: - builtin-modules "^1.0.0" - -is-callable@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" - integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== - -is-ci@^1.0.10: - version "1.2.1" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" - integrity sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg== - dependencies: - ci-info "^1.5.0" - -is-color-stop@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" - integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= - dependencies: - 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@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= - -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= - -is-equal-shallow@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= - dependencies: - is-primitive "^2.0.0" - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= - -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - -is-generator-fn@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a" - integrity sha1-lp1J4bszKfa7fwkIm+JleLLd1Go= - -is-glob@^2.0.0, is-glob@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= - dependencies: - is-extglob "^1.0.0" - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" - integrity sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A= - dependencies: - is-extglob "^2.1.1" - -is-number@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= - dependencies: - kind-of "^3.0.2" - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== - -is-obj@^1.0.0, is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= - -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= - -is-path-in-cwd@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" - integrity sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ== - dependencies: - is-path-inside "^1.0.0" - -is-path-inside@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" - integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= - dependencies: - path-is-inside "^1.0.1" - -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-posix-bracket@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU= - -is-promise@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" - integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= - -is-regex@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= - dependencies: - has "^1.0.1" - -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - -is-resolvable@^1.0.0, is-resolvable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - -is-root@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.0.0.tgz#838d1e82318144e5a6f77819d90207645acc7019" - integrity sha512-F/pJIk8QD6OX5DNhRB7hWamLsUilmkDGho48KbgZ6xg/lmAZXHxzXQ91jzB3yRSw5kdQGGGc4yz8HYhTYIMWPg== - -is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - -is-svg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" - integrity sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ== - dependencies: - html-comment-regex "^1.1.0" - -is-symbol@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" - integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== - dependencies: - has-symbols "^1.0.0" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= - -is-windows@^1.0.1, is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - -isemail@3.x.x: - version "3.2.0" - resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.2.0.tgz#59310a021931a9fb06bbb51e155ce0b3f236832c" - integrity sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg== - dependencies: - punycode "2.x.x" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - -istanbul-api@^1.3.1: - version "1.3.7" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.3.7.tgz#a86c770d2b03e11e3f778cd7aedd82d2722092aa" - integrity sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA== - dependencies: - async "^2.1.4" - fileset "^2.0.2" - istanbul-lib-coverage "^1.2.1" - istanbul-lib-hook "^1.2.2" - istanbul-lib-instrument "^1.10.2" - istanbul-lib-report "^1.1.5" - istanbul-lib-source-maps "^1.2.6" - istanbul-reports "^1.5.1" - js-yaml "^3.7.0" - mkdirp "^0.5.1" - once "^1.4.0" - -istanbul-lib-coverage@^1.2.0, istanbul-lib-coverage@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0" - integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ== - -istanbul-lib-hook@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz#bc6bf07f12a641fbf1c85391d0daa8f0aea6bf86" - integrity sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw== - dependencies: - append-transform "^0.4.0" - -istanbul-lib-instrument@^1.10.1, istanbul-lib-instrument@^1.10.2: - version "1.10.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz#1f55ed10ac3c47f2bdddd5307935126754d0a9ca" - integrity sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A== - dependencies: - babel-generator "^6.18.0" - babel-template "^6.16.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" - babylon "^6.18.0" - istanbul-lib-coverage "^1.2.1" - semver "^5.3.0" - -istanbul-lib-report@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz#f2a657fc6282f96170aaf281eb30a458f7f4170c" - integrity sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw== - dependencies: - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - path-parse "^1.0.5" - supports-color "^3.1.2" - -istanbul-lib-source-maps@^1.2.4, istanbul-lib-source-maps@^1.2.6: - version "1.2.6" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz#37b9ff661580f8fca11232752ee42e08c6675d8f" - integrity sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg== - dependencies: - debug "^3.1.0" - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - rimraf "^2.6.1" - source-map "^0.5.3" - -istanbul-reports@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.5.1.tgz#97e4dbf3b515e8c484caea15d6524eebd3ff4e1a" - integrity sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw== - dependencies: - handlebars "^4.0.3" - -jest-changed-files@^23.4.2: - version "23.4.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-23.4.2.tgz#1eed688370cd5eebafe4ae93d34bb3b64968fe83" - integrity sha512-EyNhTAUWEfwnK0Is/09LxoqNDOn7mU7S3EHskG52djOFS/z+IT0jT3h3Ql61+dklcG7bJJitIWEMB4Sp1piHmA== - dependencies: - throat "^4.0.0" - -jest-cli@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-23.6.0.tgz#61ab917744338f443ef2baa282ddffdd658a5da4" - integrity sha512-hgeD1zRUp1E1zsiyOXjEn4LzRLWdJBV//ukAHGlx6s5mfCNJTbhbHjgxnDUXA8fsKWN/HqFFF6X5XcCwC/IvYQ== - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.1" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.1.11" - import-local "^1.0.0" - is-ci "^1.0.10" - istanbul-api "^1.3.1" - istanbul-lib-coverage "^1.2.0" - istanbul-lib-instrument "^1.10.1" - istanbul-lib-source-maps "^1.2.4" - jest-changed-files "^23.4.2" - jest-config "^23.6.0" - jest-environment-jsdom "^23.4.0" - jest-get-type "^22.1.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve-dependencies "^23.6.0" - jest-runner "^23.6.0" - jest-runtime "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - jest-watcher "^23.4.0" - jest-worker "^23.2.0" - micromatch "^2.3.11" - node-notifier "^5.2.1" - prompts "^0.1.9" - realpath-native "^1.0.0" - rimraf "^2.5.4" - slash "^1.0.0" - string-length "^2.0.0" - strip-ansi "^4.0.0" - which "^1.2.12" - yargs "^11.0.0" - -jest-config@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-23.6.0.tgz#f82546a90ade2d8c7026fbf6ac5207fc22f8eb1d" - integrity sha512-i8V7z9BeDXab1+VNo78WM0AtWpBRXJLnkT+lyT+Slx/cbP5sZJ0+NDuLcmBE5hXAoK0aUp7vI+MOxR+R4d8SRQ== - dependencies: - babel-core "^6.0.0" - babel-jest "^23.6.0" - chalk "^2.0.1" - glob "^7.1.1" - jest-environment-jsdom "^23.4.0" - jest-environment-node "^23.4.0" - jest-get-type "^22.1.0" - jest-jasmine2 "^23.6.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - pretty-format "^23.6.0" - -jest-diff@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-23.6.0.tgz#1500f3f16e850bb3d71233408089be099f610c7d" - integrity sha512-Gz9l5Ov+X3aL5L37IT+8hoCUsof1CVYBb2QEkOupK64XyRR3h+uRpYIm97K7sY8diFxowR8pIGEdyfMKTixo3g== - dependencies: - chalk "^2.0.1" - diff "^3.2.0" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" - -jest-docblock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.2.0.tgz#f085e1f18548d99fdd69b20207e6fd55d91383a7" - integrity sha1-8IXh8YVI2Z/dabICB+b9VdkTg6c= - dependencies: - detect-newline "^2.1.0" - -jest-each@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-23.6.0.tgz#ba0c3a82a8054387016139c733a05242d3d71575" - integrity sha512-x7V6M/WGJo6/kLoissORuvLIeAoyo2YqLOoCDkohgJ4XOXSqOtyvr8FbInlAWS77ojBsZrafbozWoKVRdtxFCg== - dependencies: - chalk "^2.0.1" - pretty-format "^23.6.0" - -jest-environment-jsdom@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-23.4.0.tgz#056a7952b3fea513ac62a140a2c368c79d9e6023" - integrity sha1-BWp5UrP+pROsYqFAosNox52eYCM= - dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" - jsdom "^11.5.1" - -jest-environment-node@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-23.4.0.tgz#57e80ed0841dea303167cce8cd79521debafde10" - integrity sha1-V+gO0IQd6jAxZ8zozXlSHeuv3hA= - dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" - -jest-get-type@^22.1.0: - version "22.4.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4" - integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w== - -jest-haste-map@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-23.6.0.tgz#2e3eb997814ca696d62afdb3f2529f5bbc935e16" - integrity sha512-uyNhMyl6dr6HaXGHp8VF7cK6KpC6G9z9LiMNsst+rJIZ8l7wY0tk8qwjPmEghczojZ2/ZhtEdIabZ0OQRJSGGg== - dependencies: - fb-watchman "^2.0.0" - graceful-fs "^4.1.11" - invariant "^2.2.4" - jest-docblock "^23.2.0" - jest-serializer "^23.0.1" - jest-worker "^23.2.0" - micromatch "^2.3.11" - sane "^2.0.0" - -jest-jasmine2@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-23.6.0.tgz#840e937f848a6c8638df24360ab869cc718592e0" - integrity sha512-pe2Ytgs1nyCs8IvsEJRiRTPC0eVYd8L/dXJGU08GFuBwZ4sYH/lmFDdOL3ZmvJR8QKqV9MFuwlsAi/EWkFUbsQ== - dependencies: - babel-traverse "^6.0.0" - chalk "^2.0.1" - co "^4.6.0" - expect "^23.6.0" - is-generator-fn "^1.0.0" - jest-diff "^23.6.0" - jest-each "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - pretty-format "^23.6.0" - -jest-leak-detector@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-23.6.0.tgz#e4230fd42cf381a1a1971237ad56897de7e171de" - integrity sha512-f/8zA04rsl1Nzj10HIyEsXvYlMpMPcy0QkQilVZDFOaPbv2ur71X5u2+C4ZQJGyV/xvVXtCCZ3wQ99IgQxftCg== - dependencies: - pretty-format "^23.6.0" - -jest-matcher-utils@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-23.6.0.tgz#726bcea0c5294261a7417afb6da3186b4b8cac80" - integrity sha512-rosyCHQfBcol4NsckTn01cdelzWLU9Cq7aaigDf8VwwpIRvWE/9zLgX2bON+FkEW69/0UuYslUe22SOdEf2nog== - dependencies: - chalk "^2.0.1" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" - -jest-message-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-23.4.0.tgz#17610c50942349508d01a3d1e0bda2c079086a9f" - integrity sha1-F2EMUJQjSVCNAaPR4L2iwHkIap8= - dependencies: - "@babel/code-frame" "^7.0.0-beta.35" - chalk "^2.0.1" - micromatch "^2.3.11" - slash "^1.0.0" - stack-utils "^1.0.1" - -jest-mock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-23.2.0.tgz#ad1c60f29e8719d47c26e1138098b6d18b261134" - integrity sha1-rRxg8p6HGdR8JuETgJi20YsmETQ= - -jest-pnp-resolver@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.0.1.tgz#f397cd71dbcd4a1947b2e435f6da8e9a347308fa" - integrity sha512-kzhvJQp+9k0a/hpvIIzOJgOwfOqmnohdrAMZW2EscH3kxR2VWD7EcPa10cio8EK9V7PcD75bhG1pFnO70zGwSQ== - -jest-regex-util@^23.3.0: - version "23.3.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-23.3.0.tgz#5f86729547c2785c4002ceaa8f849fe8ca471bc5" - integrity sha1-X4ZylUfCeFxAAs6qj4Sf6MpHG8U= - -jest-resolve-dependencies@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-23.6.0.tgz#b4526af24c8540d9a3fab102c15081cf509b723d" - integrity sha512-EkQWkFWjGKwRtRyIwRwI6rtPAEyPWlUC2MpzHissYnzJeHcyCn1Hc8j7Nn1xUVrS5C6W5+ZL37XTem4D4pLZdA== - dependencies: - jest-regex-util "^23.3.0" - jest-snapshot "^23.6.0" - -jest-resolve@23.6.0, jest-resolve@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-23.6.0.tgz#cf1d1a24ce7ee7b23d661c33ba2150f3aebfa0ae" - integrity sha512-XyoRxNtO7YGpQDmtQCmZjum1MljDqUCob7XlZ6jy9gsMugHdN2hY4+Acz9Qvjz2mSsOnPSH7skBmDYCHXVZqkA== - dependencies: - browser-resolve "^1.11.3" - chalk "^2.0.1" - realpath-native "^1.0.0" - -jest-runner@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-23.6.0.tgz#3894bd219ffc3f3cb94dc48a4170a2e6f23a5a38" - integrity sha512-kw0+uj710dzSJKU6ygri851CObtCD9cN8aNkg8jWJf4ewFyEa6kwmiH/r/M1Ec5IL/6VFa0wnAk6w+gzUtjJzA== - dependencies: - exit "^0.1.2" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-docblock "^23.2.0" - jest-haste-map "^23.6.0" - jest-jasmine2 "^23.6.0" - jest-leak-detector "^23.6.0" - jest-message-util "^23.4.0" - jest-runtime "^23.6.0" - jest-util "^23.4.0" - jest-worker "^23.2.0" - source-map-support "^0.5.6" - throat "^4.0.0" - -jest-runtime@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-23.6.0.tgz#059e58c8ab445917cd0e0d84ac2ba68de8f23082" - integrity sha512-ycnLTNPT2Gv+TRhnAYAQ0B3SryEXhhRj1kA6hBPSeZaNQkJ7GbZsxOLUkwg6YmvWGdX3BB3PYKFLDQCAE1zNOw== - dependencies: - babel-core "^6.0.0" - babel-plugin-istanbul "^4.1.6" - chalk "^2.0.1" - convert-source-map "^1.4.0" - exit "^0.1.2" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - realpath-native "^1.0.0" - slash "^1.0.0" - strip-bom "3.0.0" - write-file-atomic "^2.1.0" - yargs "^11.0.0" - -jest-serializer@^23.0.1: - version "23.0.1" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-23.0.1.tgz#a3776aeb311e90fe83fab9e533e85102bd164165" - integrity sha1-o3dq6zEekP6D+rnlM+hRAr0WQWU= - -jest-snapshot@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-23.6.0.tgz#f9c2625d1b18acda01ec2d2b826c0ce58a5aa17a" - integrity sha512-tM7/Bprftun6Cvj2Awh/ikS7zV3pVwjRYU2qNYS51VZHgaAMBs5l4o/69AiDHhQrj5+LA2Lq4VIvK7zYk/bswg== - dependencies: - babel-types "^6.0.0" - chalk "^2.0.1" - jest-diff "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-resolve "^23.6.0" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - pretty-format "^23.6.0" - semver "^5.5.0" - -jest-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-23.4.0.tgz#4d063cb927baf0a23831ff61bec2cbbf49793561" - integrity sha1-TQY8uSe68KI4Mf9hvsLLv0l5NWE= - dependencies: - callsites "^2.0.0" - chalk "^2.0.1" - graceful-fs "^4.1.11" - is-ci "^1.0.10" - jest-message-util "^23.4.0" - mkdirp "^0.5.1" - slash "^1.0.0" - source-map "^0.6.0" - -jest-validate@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-23.6.0.tgz#36761f99d1ed33fcd425b4e4c5595d62b6597474" - integrity sha512-OFKapYxe72yz7agrDAWi8v2WL8GIfVqcbKRCLbRG9PAxtzF9b1SEDdTpytNDN12z2fJynoBwpMpvj2R39plI2A== - dependencies: - chalk "^2.0.1" - jest-get-type "^22.1.0" - leven "^2.1.0" - pretty-format "^23.6.0" - -jest-watcher@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-23.4.0.tgz#d2e28ce74f8dad6c6afc922b92cabef6ed05c91c" - integrity sha1-0uKM50+NrWxq/JIrksq+9u0FyRw= - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.1" - string-length "^2.0.0" - -jest-worker@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.2.0.tgz#faf706a8da36fae60eb26957257fa7b5d8ea02b9" - integrity sha1-+vcGqNo2+uYOsmlXJX+ntdjqArk= - dependencies: - merge-stream "^1.0.1" - -jest@23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-23.6.0.tgz#ad5835e923ebf6e19e7a1d7529a432edfee7813d" - integrity sha512-lWzcd+HSiqeuxyhG+EnZds6iO3Y3ZEnMrfZq/OTGvF/C+Z4fPMCdhWTGSAiO2Oym9rbEXfwddHhh6jqrTF3+Lw== - dependencies: - import-local "^1.0.0" - jest-cli "^23.6.0" - -joi@^11.1.1: - version "11.4.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-11.4.0.tgz#f674897537b625e9ac3d0b7e1604c828ad913ccb" - integrity sha512-O7Uw+w/zEWgbL6OcHbyACKSj0PkQeUgmehdoXVSxt92QFCq4+1390Rwh5moI2K/OgC7D8RHRZqHZxT2husMJHA== - dependencies: - hoek "4.x.x" - isemail "3.x.x" - topo "2.x.x" - -js-levenshtein@^1.1.3: - version "1.1.4" - resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.4.tgz#3a56e3cbf589ca0081eb22cd9ba0b1290a16d26e" - integrity sha512-PxfGzSs0ztShKrUYPIn5r0MtyAhYcCwmndozzpz8YObbPnD1jFxzlBGbRnX2mIu6Z13xN6+PTu05TQFnZFlzow== - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@^3.12.0, js-yaml@^3.7.0, js-yaml@^3.9.0: - version "3.13.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" - integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsdom@>=11.0.0: - version "13.1.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-13.1.0.tgz#fa7356f0cc8111d0f1077cb7800d06f22f1d66c7" - integrity sha512-C2Kp0qNuopw0smXFaHeayvharqF3kkcNqlcIlSX71+3XrsOFwkEPLt/9f5JksMmaul2JZYIQuY+WTpqHpQQcLg== - dependencies: - abab "^2.0.0" - acorn "^6.0.4" - acorn-globals "^4.3.0" - array-equal "^1.0.0" - cssom "^0.3.4" - cssstyle "^1.1.1" - data-urls "^1.1.0" - domexception "^1.0.1" - escodegen "^1.11.0" - html-encoding-sniffer "^1.0.2" - nwsapi "^2.0.9" - parse5 "5.1.0" - pn "^1.1.0" - request "^2.88.0" - request-promise-native "^1.0.5" - saxes "^3.1.4" - symbol-tree "^3.2.2" - tough-cookie "^2.5.0" - w3c-hr-time "^1.0.1" - w3c-xmlserializer "^1.0.1" - webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^7.0.0" - ws "^6.1.2" - xml-name-validator "^3.0.0" - -jsdom@^11.5.1: - version "11.12.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8" - integrity sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw== - dependencies: - abab "^2.0.0" - acorn "^5.5.3" - acorn-globals "^4.1.0" - array-equal "^1.0.0" - cssom ">= 0.3.2 < 0.4.0" - cssstyle "^1.0.0" - data-urls "^1.0.0" - domexception "^1.0.1" - escodegen "^1.9.1" - html-encoding-sniffer "^1.0.2" - left-pad "^1.3.0" - nwsapi "^2.0.7" - parse5 "4.0.0" - pn "^1.1.0" - request "^2.87.0" - request-promise-native "^1.0.5" - sax "^1.2.4" - symbol-tree "^3.2.2" - tough-cookie "^2.3.4" - w3c-hr-time "^1.0.1" - webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.3" - whatwg-mimetype "^2.1.0" - whatwg-url "^6.4.1" - ws "^5.2.0" - xml-name-validator "^3.0.0" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= - -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= - -json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= - dependencies: - jsonify "~0.0.0" - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - -json3@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" - integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE= - -json5@^0.5.0, json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= - -json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== - dependencies: - minimist "^1.2.0" - -json5@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" - integrity sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ== - dependencies: - minimist "^1.2.0" - -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= - optionalDependencies: - graceful-fs "^4.1.6" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -jsx-ast-utils@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f" - integrity sha1-6AGxs5mF4g//yHtA43SAgOLcrH8= - dependencies: - array-includes "^3.0.3" - -killable@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" - integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg== - -kind-of@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5" - integrity sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU= - dependencies: - is-buffer "^1.0.2" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" - integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== - -kleur@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-2.0.2.tgz#b704f4944d95e255d038f0cb05fb8a602c55a300" - integrity sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ== - -last-call-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" - integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w== - dependencies: - lodash "^4.17.5" - webpack-sources "^1.1.0" - -lazy-cache@^0.2.3: - version "0.2.7" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65" - integrity sha1-f+3fLctu23fRHvHRF6tf/fCrG2U= - -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" - integrity sha1-odePw6UEdMuAhF07O24dpJpEbo4= - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= - dependencies: - invert-kv "^1.0.0" - -lcid@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" - integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== - dependencies: - invert-kv "^2.0.0" - -left-pad@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" - integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== - -leven@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" - integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= - -levn@^0.3.0, levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - -loader-fs-cache@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/loader-fs-cache/-/loader-fs-cache-1.0.1.tgz#56e0bf08bd9708b26a765b68509840c8dec9fdbc" - integrity sha1-VuC/CL2XCLJqdltoUJhAyN7J/bw= - dependencies: - find-cache-dir "^0.1.1" - mkdirp "0.5.1" - -loader-runner@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.1.tgz#026f12fe7c3115992896ac02ba022ba92971b979" - integrity sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw== - -loader-utils@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" - integrity sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0= - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - -loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" - integrity sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== - dependencies: - big.js "^5.2.2" - emojis-list "^2.0.0" - json5 "^1.0.1" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -lodash._reinterpolate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= - -lodash.camelcase@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" - integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= - -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= - -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= - -lodash.tail@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" - integrity sha1-0jM6NtnncXyK0vfKyv7HwytERmQ= - -lodash.template@^4.2.4, lodash.template@^4.4.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" - integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" - integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== - dependencies: - lodash._reinterpolate "^3.0.0" - -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - -"lodash@>=3.5 <5", lodash@^4.13.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== - -loglevel@^1.4.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" - integrity sha1-4PyVEztu8nbNyIh82vJKpvFW+Po= - -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lower-case@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= - -lru-cache@^4.0.1, lru-cache@^4.1.1: - version "4.1.5" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" - integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -make-dir@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== - dependencies: - pify "^3.0.0" - -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= - dependencies: - tmpl "1.0.x" - -mamacro@^0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/mamacro/-/mamacro-0.0.3.tgz#ad2c9576197c9f1abf308d0787865bd975a3f3e4" - integrity sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA== - -map-age-cleaner@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" - integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== - dependencies: - p-defer "^1.0.0" - -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= - dependencies: - object-visit "^1.0.0" - -math-random@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" - integrity sha1-izqsWIuKZuSXXjzepn97sylgH6w= - -md5.js@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -mdn-data@~1.1.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-1.1.4.tgz#50b5d4ffc4575276573c4eedb8780812a8419f01" - integrity sha512-FSYbp3lyKjyj3E7fMl6rYvUdX0FBXaluGqlFoYESWQlyUTq8R+wp0rkFxoYFqZlHCvsUXGjyJmLQSnXToYhOSA== - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= - -mem@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" - integrity sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y= - dependencies: - mimic-fn "^1.0.0" - -mem@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-4.0.0.tgz#6437690d9471678f6cc83659c00cbafcd6b0cdaf" - integrity sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA== - dependencies: - map-age-cleaner "^0.1.1" - mimic-fn "^1.0.0" - p-is-promise "^1.1.0" - -memory-fs@^0.4.0, memory-fs@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -merge-deep@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/merge-deep/-/merge-deep-3.0.2.tgz#f39fa100a4f1bd34ff29f7d2bf4508fbb8d83ad2" - integrity sha512-T7qC8kg4Zoti1cFd8Cr0M+qaZfOwjlPDEdZIIPPB2JZctjaPM4fX+i7HOId69tAti2fvO6X5ldfYUONDODsrkA== - dependencies: - arr-union "^3.1.0" - clone-deep "^0.2.4" - kind-of "^3.0.2" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= - -merge-stream@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" - integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= - dependencies: - readable-stream "^2.0.1" - -merge2@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.3.tgz#7ee99dbd69bb6481689253f018488a1b902b0ed5" - integrity sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA== - -merge@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145" - integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= - -micromatch@^2.3.11: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= - dependencies: - arr-diff "^2.0.0" - array-unique "^0.2.1" - braces "^1.8.2" - expand-brackets "^0.1.4" - extglob "^0.3.1" - filename-regex "^2.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.1" - kind-of "^3.0.2" - normalize-path "^2.0.1" - object.omit "^2.0.0" - parse-glob "^3.0.4" - regex-cache "^0.4.2" - -micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8, micromatch@^3.1.9: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -"mime-db@>= 1.36.0 < 2", mime-db@~1.37.0: - version "1.37.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.37.0.tgz#0b6a0ce6fdbe9576e25f1f2d2fde8830dc0ad0d8" - integrity sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg== - -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.19: - version "2.1.21" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.21.tgz#28995aa1ecb770742fe6ae7e58f9181c744b3f96" - integrity sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg== - dependencies: - mime-db "~1.37.0" - -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" - integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== - -mime@^2.0.3, mime@^2.3.1: - version "2.4.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.0.tgz#e051fd881358585f3279df333fe694da0bcffdd6" - integrity sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w== - -mimic-fn@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" - integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== - -mini-css-extract-plugin@0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.3.tgz#98d60fcc5d228c3e36a9bd15a1d6816d6580beb8" - integrity sha512-Mxs0nxzF1kxPv4TRi2NimewgXlJqh0rGE30vviCU2WHrpbta6wklnUV9dr9FUtoAHmB3p3LeXEC+ZjgHvB0Dzg== - dependencies: - loader-utils "^1.1.0" - schema-utils "^1.0.0" - webpack-sources "^1.1.0" - -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= - -minimatch@3.0.4, minimatch@^3.0.3, minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= - -minimist@^1.1.1, minimist@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= - -minimist@~0.0.1: - version "0.0.10" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" - integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= - -minipass@^2.2.1, minipass@^2.3.4: - version "2.3.5" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848" - integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.1.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.1.tgz#dd27ea6136243c7c880684e8672bb3a45fd9b614" - integrity sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA== - dependencies: - minipass "^2.2.1" - -mississippi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" - integrity sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^2.0.1" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mississippi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^3.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mixin-object@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" - integrity sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= - dependencies: - for-in "^0.1.3" - is-extendable "^0.1.1" - -mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= - dependencies: - minimist "0.0.8" - -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= - -multicast-dns@^6.0.1: - version "6.2.3" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" - integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== - dependencies: - dns-packet "^1.3.1" - thunky "^1.0.2" - -mute-stream@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" - integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= - -nan@^2.9.2: - version "2.12.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.12.1.tgz#7b1aa193e9aa86057e3c7bbd0ac448e770925552" - integrity sha512-JY7V6lRkStKcKTvHO5NVSQRv+RV+FIL5pvDoLiAtSL9pKlC5x9PKQcZDsq7m4FO4d57mkhC6Z+QhAh3Jdk5JFw== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -needle@^2.2.1: - version "2.2.4" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.4.tgz#51931bff82533b1928b7d1d69e01f1b00ffd2a4e" - integrity sha512-HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA== - dependencies: - debug "^2.1.2" - iconv-lite "^0.4.4" - sax "^1.2.4" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - integrity sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk= - -neo-async@^2.5.0, neo-async@^2.6.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" - integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== - -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - -no-case@^2.2.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" - integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== - dependencies: - lower-case "^1.1.1" - -node-forge@0.7.5: - version "0.7.5" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" - integrity sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ== - -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= - -node-libs-browser@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" - integrity sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^1.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.10.3" - vm-browserify "0.0.4" - -node-notifier@^5.2.1: - version "5.3.0" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.3.0.tgz#c77a4a7b84038733d5fb351aafd8a268bfe19a01" - integrity sha512-AhENzCSGZnZJgBARsUjnQ7DnZbzyP+HxlVXuD0xqAnvL8q+OqtSX7lGg9e8nHzwXkMMXNdVeqq4E2M3EUAqX6Q== - dependencies: - growly "^1.3.0" - semver "^5.5.0" - shellwords "^0.1.1" - which "^1.3.0" - -node-pre-gyp@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz#3070040716afdc778747b61b6887bf78880b80fc" - integrity sha512-d1xFs+C/IPS8Id0qPTZ4bUT8wWryfR/OzzAFxweG+uLN85oPzyo2Iw6bVlLQ/JOdgNonXLCoRyqDzDWq4iw72A== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4" - -node-releases@^1.0.0-alpha.11, node-releases@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.3.tgz#aad9ce0dcb98129c753f772c0aa01360fb90fbd2" - integrity sha512-6VrvH7z6jqqNFY200kdB6HdzkgM96Oaj9v3dqGfgp6mF+cHmU4wyQKZ2/WPDRVoR0Jz9KqbamaBN0ZhdUaysUQ== - dependencies: - semver "^5.3.0" - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= - dependencies: - abbrev "1" - osenv "^0.1.4" - -normalize-package-data@^2.3.2: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - integrity sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw== - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.0.1, normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= - dependencies: - remove-trailing-separator "^1.0.1" - -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= - -normalize-url@^3.0.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" - integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== - -npm-bundled@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.5.tgz#3c1732b7ba936b3a10325aef616467c0ccbcc979" - integrity sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g== - -npm-packlist@^1.1.6: - version "1.1.12" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.12.tgz#22bde2ebc12e72ca482abd67afc51eb49377243a" - integrity sha512-WJKFOVMeAlsU/pjXuqVdzU0WfgtIBCupkEVwn+1Y0ERAbUfWw8R4GjgVbaKnUjRoD2FoQbHOCbOyT5Mbs9Lw4g== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - -npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -nth-check@^1.0.2, nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.0.0" - -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - -nwsapi@^2.0.7, nwsapi@^2.0.9: - version "2.0.9" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.0.9.tgz#77ac0cdfdcad52b6a1151a84e73254edc33ed016" - integrity sha512-nlWFSCTYQcHk/6A9FFnfhKc14c3aFhfdNBXgo8Qgi9QTBu/qg3Ww+Uiz9wMzXd1T8GFxPc2QIHB6Qtf2XFryFQ== - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - -object-assign@4.1.1, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-hash@^1.1.4: - version "1.3.1" - resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.3.1.tgz#fde452098a951cb145f039bb7d455449ddc126df" - integrity sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA== - -object-keys@^1.0.11, object-keys@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2" - integrity sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag== - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= - dependencies: - isobject "^3.0.0" - -object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" - -object.getownpropertydescriptors@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" - integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.5.1" - -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= - dependencies: - isobject "^3.0.1" - -object.values@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz#bf6810ef5da3e5325790eaaa2be213ea84624da9" - integrity sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.12.0" - function-bind "^1.1.1" - has "^1.0.3" - -obuf@^1.0.0, obuf@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" - integrity sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c= - -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -onetime@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" - integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= - dependencies: - mimic-fn "^1.0.0" - -opn@5.4.0, opn@^5.1.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/opn/-/opn-5.4.0.tgz#cb545e7aab78562beb11aa3bfabc7042e1761035" - integrity sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw== - dependencies: - is-wsl "^1.1.0" - -optimist@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" - integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= - dependencies: - minimist "~0.0.1" - wordwrap "~0.0.2" - -optimize-css-assets-webpack-plugin@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.1.tgz#9eb500711d35165b45e7fd60ba2df40cb3eb9159" - integrity sha512-Rqm6sSjWtx9FchdP0uzTQDc7GXDKnwVEGoSxjezPkzMewx7gEWE9IMUYKmigTRC4U3RaNSwYVnUDLuIdtTpm0A== - dependencies: - cssnano "^4.1.0" - last-call-webpack-plugin "^3.0.0" - -optionator@^0.8.1, optionator@^0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" - integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.4" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - wordwrap "~1.0.0" - -original@>=0.0.5, original@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" - integrity sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg== - dependencies: - url-parse "^1.4.3" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - -os-locale@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" - integrity sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA== - dependencies: - execa "^0.7.0" - lcid "^1.0.0" - mem "^1.1.0" - -os-locale@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" - integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== - dependencies: - execa "^1.0.0" - lcid "^2.0.0" - mem "^4.0.0" - -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -p-defer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" - integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - -p-is-promise@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" - integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4= - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - -p-limit@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.1.0.tgz#1d5a0d20fb12707c758a655f6bbc4386b5930d68" - integrity sha512-NhURkNcrVB+8hNfLuysU8enY5xn2KXphsHBaC2YmRNTZRc7RWusw6apSpdEj3jo4CMb6W9nrF6tTnsJsJeyu6g== - dependencies: - p-try "^2.0.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - dependencies: - p-limit "^1.1.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" - integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA== - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - -p-try@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" - integrity sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ== - -pako@~1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.7.tgz#2473439021b57f1516c82f58be7275ad8ef1bb27" - integrity sha512-3HNK5tW4x8o5mO8RuHZp3Ydw9icZXx0RANAOMzlMzx7LVXhMJ4mo3MOBpzyd7r/+RUu8BmndP47LXT+vzjtWcQ== - -parallel-transform@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" - integrity sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY= - dependencies: - cyclist "~0.2.2" - inherits "^2.0.3" - readable-stream "^2.1.5" - -param-case@2.1.x: - version "2.1.1" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc= - dependencies: - no-case "^2.2.0" - -parse-asn1@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8" - integrity sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw== - dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= - dependencies: - error-ex "^1.2.0" - -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - -parse-passwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= - -parse5@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" - integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA== - -parse5@5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" - integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== - -parseurl@~1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" - integrity sha1-/CidTtiZMRlGDBViUyYs3I3mW/M= - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= - -path-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" - integrity sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo= - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= - dependencies: - pinkie-promise "^2.0.0" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-is-inside@^1.0.1, path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= - -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= - -path-parse@^1.0.5, path-parse@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= - -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= - dependencies: - pify "^2.0.0" - -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== - dependencies: - pify "^3.0.0" - -pbkdf2@^3.0.3: - version "3.0.17" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" - integrity sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= - -pkg-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" - integrity sha1-ektQio1bstYp1EcFb/TpyTFM89Q= - dependencies: - find-up "^1.0.0" - -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - -pkg-up@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" - integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= - dependencies: - find-up "^2.1.0" - -pluralize@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" - integrity sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow== - -pn@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" - integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== - -pnp-webpack-plugin@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.1.0.tgz#947a96d1db94bb5a1fc014d83b581e428699ac8c" - integrity sha512-CPCdcFxx7fEcDMWTDjXe2Wypt4JuMt4q5Q2UrpTcyBBkLiCIyPEh/mCGmUWIcNkKGyXwQ9Y2wVhlKm6ketiBNQ== - -portfinder@^1.0.9: - version "1.0.20" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.20.tgz#bea68632e54b2e13ab7b0c4775e9b41bf270e44a" - integrity sha512-Yxe4mTyDzTd59PZJY4ojZR8F+E5e97iq2ZOHPz3HDgSvYC5siNad2tLooQ5y5QHyQhc3xVqvyk/eNA3wuoa7Sw== - dependencies: - async "^1.5.2" - debug "^2.2.0" - mkdirp "0.5.x" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - -postcss-attribute-case-insensitive@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.0.tgz#807b6a797ad8bf1c821b2d51cf641e9dd3837624" - integrity sha512-K/zqdg0/UgUgC8qR0lDuxYzmowPpnvrrNC5YuoqzhHMubR9AuhsPlpVu3jjkLHgDAzR+ohD/m7//iGnN9WxbzQ== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-calc@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.1.tgz#36d77bab023b0ecbb9789d84dcb23c4941145436" - integrity sha512-oXqx0m6tb4N3JGdmeMSc/i91KppbYsFZKdH0xMOqK8V1rJlzrKlTdokz8ozUXLVejydRN6u2IddxpcijRj2FqQ== - dependencies: - css-unit-converter "^1.1.1" - postcss "^7.0.5" - postcss-selector-parser "^5.0.0-rc.4" - postcss-value-parser "^3.3.1" - -postcss-color-functional-notation@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz#5efd37a88fbabeb00a2966d1e53d98ced93f74e0" - integrity sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-gray@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz#532a31eb909f8da898ceffe296fdc1f864be8547" - integrity sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-color-hex-alpha@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.2.tgz#e9b1886bb038daed33f6394168c210b40bb4fdb6" - integrity sha512-8bIOzQMGdZVifoBQUJdw+yIY00omBd2EwkJXepQo9cjp1UOHHHoeRDeSzTP6vakEpaRc6GAIOfvcQR7jBYaG5Q== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-mod-function@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz#816ba145ac11cc3cb6baa905a75a49f903e4d31d" - integrity sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-rebeccapurple@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz#c7a89be872bb74e45b1e3022bfe5748823e6de77" - integrity sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-colormin@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.2.tgz#93cd1fa11280008696887db1a528048b18e7ed99" - integrity sha512-1QJc2coIehnVFsz0otges8kQLsryi4lo19WD+U5xCWvXd0uw/Z+KKYnbiNDCnO9GP+PvErPHCG0jNvWTngk9Rw== - dependencies: - 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@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" - integrity sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-custom-media@^7.0.7: - version "7.0.7" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-7.0.7.tgz#bbc698ed3089ded61aad0f5bfb1fb48bf6969e73" - integrity sha512-bWPCdZKdH60wKOTG4HKEgxWnZVjAIVNOJDvi3lkuTa90xo/K0YHa2ZnlKLC5e2qF8qCcMQXt0yzQITBp8d0OFA== - dependencies: - postcss "^7.0.5" - -postcss-custom-properties@^8.0.9: - version "8.0.9" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-8.0.9.tgz#8943870528a6eae4c8e8d285b6ccc9fd1f97e69c" - integrity sha512-/Lbn5GP2JkKhgUO2elMs4NnbUJcvHX4AaF5nuJDaNkd2chYW1KA5qtOGGgdkBEWcXtKSQfHXzT7C6grEVyb13w== - dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-custom-selectors@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz#64858c6eb2ecff2fb41d0b28c9dd7b3db4de7fba" - integrity sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-dir-pseudo-class@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz#6e3a4177d0edb3abcc85fdb6fbb1c26dabaeaba2" - integrity sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-discard-comments@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.1.tgz#30697735b0c476852a7a11050eb84387a67ef55d" - integrity sha512-Ay+rZu1Sz6g8IdzRjUgG2NafSNpp2MSMOQUb+9kkzzzP+kh07fP0yNbhtFejURnyVXSX3FYy2nVNW1QTnNjgBQ== - dependencies: - postcss "^7.0.0" - -postcss-discard-duplicates@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" - integrity sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ== - dependencies: - postcss "^7.0.0" - -postcss-discard-empty@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" - integrity sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w== - dependencies: - postcss "^7.0.0" - -postcss-discard-overridden@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" - integrity sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg== - dependencies: - postcss "^7.0.0" - -postcss-double-position-gradients@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz#fc927d52fddc896cb3a2812ebc5df147e110522e" - integrity sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA== - dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-env-function@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-2.0.2.tgz#0f3e3d3c57f094a92c2baf4b6241f0b0da5365d7" - integrity sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-flexbugs-fixes@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.1.0.tgz#e094a9df1783e2200b7b19f875dcad3b3aff8b20" - integrity sha512-jr1LHxQvStNNAHlgco6PzY308zvLklh7SJVYuWUwyUQncofaAlD2l+P/gxKHOdqWKe7xJSkVLFF/2Tp+JqMSZA== - dependencies: - postcss "^7.0.0" - -postcss-focus-visible@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz#477d107113ade6024b14128317ade2bd1e17046e" - integrity sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g== - dependencies: - postcss "^7.0.2" - -postcss-focus-within@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz#763b8788596cee9b874c999201cdde80659ef680" - integrity sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w== - dependencies: - postcss "^7.0.2" - -postcss-font-variant@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-4.0.0.tgz#71dd3c6c10a0d846c5eda07803439617bbbabacc" - integrity sha512-M8BFYKOvCrI2aITzDad7kWuXXTm0YhGdP9Q8HanmN4EF1Hmcgs1KK5rSHylt/lUJe8yLxiSwWAHdScoEiIxztg== - dependencies: - postcss "^7.0.2" - -postcss-gap-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz#431c192ab3ed96a3c3d09f2ff615960f902c1715" - integrity sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg== - dependencies: - postcss "^7.0.2" - -postcss-image-set-function@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz#28920a2f29945bed4c3198d7df6496d410d3f288" - integrity sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-initial@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.0.tgz#1772512faf11421b791fb2ca6879df5f68aa0517" - integrity sha512-WzrqZ5nG9R9fUtrA+we92R4jhVvEB32IIRTzfIG/PLL8UV4CvbF1ugTEHEFX6vWxl41Xt5RTCJPEZkuWzrOM+Q== - dependencies: - lodash.template "^4.2.4" - postcss "^7.0.2" - -postcss-lab-function@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz#bb51a6856cd12289ab4ae20db1e3821ef13d7d2e" - integrity sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-load-config@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.0.0.tgz#f1312ddbf5912cd747177083c5ef7a19d62ee484" - integrity sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ== - dependencies: - cosmiconfig "^4.0.0" - import-cwd "^2.0.0" - -postcss-loader@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" - integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA== - dependencies: - loader-utils "^1.1.0" - postcss "^7.0.0" - postcss-load-config "^2.0.0" - schema-utils "^1.0.0" - -postcss-logical@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-3.0.0.tgz#2495d0f8b82e9f262725f75f9401b34e7b45d5b5" - integrity sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA== - dependencies: - postcss "^7.0.2" - -postcss-media-minmax@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz#b75bb6cbc217c8ac49433e12f22048814a4f5ed5" - integrity sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw== - dependencies: - postcss "^7.0.2" - -postcss-merge-longhand@^4.0.10: - version "4.0.10" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.10.tgz#c4d63ab57bdc054ab4067ab075d488c8c2978380" - integrity sha512-hME10s6CSjm9nlVIcO1ukR7Jr5RisTaaC1y83jWCivpuBtPohA3pZE7cGTIVSYjXvLnXozHTiVOkG4dnnl756g== - dependencies: - css-color-names "0.0.4" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - stylehacks "^4.0.0" - -postcss-merge-rules@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.2.tgz#2be44401bf19856f27f32b8b12c0df5af1b88e74" - integrity sha512-UiuXwCCJtQy9tAIxsnurfF0mrNHKc4NnNx6NxqmzNNjXpQwLSukUxELHTRF0Rg1pAmcoKLih8PwvZbiordchag== - dependencies: - 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" - -postcss-minify-font-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" - integrity sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-gradients@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.1.tgz#6da95c6e92a809f956bb76bf0c04494953e1a7dd" - integrity sha512-pySEW3E6Ly5mHm18rekbWiAjVi/Wj8KKt2vwSfVFAWdW6wOIekgqxKxLU7vJfb107o3FDNPkaYFCxGAJBFyogA== - dependencies: - 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@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.1.tgz#5b2e2d0264dd645ef5d68f8fec0d4c38c1cf93d2" - integrity sha512-h4W0FEMEzBLxpxIVelRtMheskOKKp52ND6rJv+nBS33G1twu2tCyurYj/YtgU76+UDCvWeNs0hs8HFAWE2OUFg== - dependencies: - 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@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.1.tgz#a891c197977cc37abf60b3ea06b84248b1c1e9cd" - integrity sha512-8+plQkomve3G+CodLCgbhAKrb5lekAnLYuL1d7Nz+/7RANpBEVdgBkPNwljfSKvZ9xkkZTZITd04KP+zeJTJqg== - dependencies: - alphanum-sort "^1.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -postcss-modules-extract-imports@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz#dc87e34148ec7eab5f791f7cd5849833375b741a" - integrity sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw== - dependencies: - postcss "^6.0.1" - -postcss-modules-local-by-default@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" - integrity sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-scope@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" - integrity sha1-1upkmUx5+XtipytCb75gVqGUu5A= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-values@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" - integrity sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA= - dependencies: - icss-replace-symbols "^1.1.0" - postcss "^6.0.1" - -postcss-nesting@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.0.tgz#6e26a770a0c8fcba33782a6b6f350845e1a448f6" - integrity sha512-WSsbVd5Ampi3Y0nk/SKr5+K34n52PqMqEfswu6RtU4r7wA8vSD+gM8/D9qq4aJkHImwn1+9iEFTbjoWsQeqtaQ== - dependencies: - postcss "^7.0.2" - -postcss-normalize-charset@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" - integrity sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g== - dependencies: - postcss "^7.0.0" - -postcss-normalize-display-values@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.1.tgz#d9a83d47c716e8a980f22f632c8b0458cfb48a4c" - integrity sha512-R5mC4vaDdvsrku96yXP7zak+O3Mm9Y8IslUobk7IMP+u/g+lXvcN4jngmHY5zeJnrQvE13dfAg5ViU05ZFDwdg== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-positions@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.1.tgz#ee2d4b67818c961964c6be09d179894b94fd6ba1" - integrity sha512-GNoOaLRBM0gvH+ZRb2vKCIujzz4aclli64MBwDuYGU2EY53LwiP7MxOZGE46UGtotrSnmarPPZ69l2S/uxdaWA== - dependencies: - 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@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.1.tgz#5293f234b94d7669a9f805495d35b82a581c50e5" - integrity sha512-fFHPGIjBUyUiswY2rd9rsFcC0t3oRta4wxE1h3lpwfQZwFeFjXFSiDtdJ7APCmHQOnUZnqYBADNRPKPwFAONgA== - dependencies: - 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@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.1.tgz#23c5030c2cc24175f66c914fa5199e2e3c10fef3" - integrity sha512-IJoexFTkAvAq5UZVxWXAGE0yLoNN/012v7TQh5nDo6imZJl2Fwgbhy3J2qnIoaDBrtUP0H7JrXlX1jjn2YcvCQ== - dependencies: - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-timing-functions@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.1.tgz#8be83e0b9cb3ff2d1abddee032a49108f05f95d7" - integrity sha512-1nOtk7ze36+63ONWD8RCaRDYsnzorrj+Q6fxkQV+mlY5+471Qx9kspqv0O/qQNMeApg8KNrRf496zHwJ3tBZ7w== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-unicode@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" - integrity sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-url@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" - integrity sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA== - dependencies: - is-absolute-url "^2.0.0" - normalize-url "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-whitespace@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.1.tgz#d14cb639b61238418ac8bc8d3b7bdd65fc86575e" - integrity sha512-U8MBODMB2L+nStzOk6VvWWjZgi5kQNShCyjRhMT3s+W9Jw93yIjOnrEkKYD3Ul7ChWbEcjDWmXq0qOL9MIAnAw== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-ordered-values@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.1.tgz#2e3b432ef3e489b18333aeca1f1295eb89be9fc2" - integrity sha512-PeJiLgJWPzkVF8JuKSBcylaU+hDJ/TX3zqAMIjlghgn1JBi6QwQaDZoDIlqWRcCAI8SxKrt3FCPSRmOgKRB97Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-overflow-shorthand@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz#31ecf350e9c6f6ddc250a78f0c3e111f32dd4c30" - integrity sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g== - dependencies: - postcss "^7.0.2" - -postcss-page-break@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-2.0.0.tgz#add52d0e0a528cabe6afee8b46e2abb277df46bf" - integrity sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ== - dependencies: - postcss "^7.0.2" - -postcss-place@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-4.0.1.tgz#e9f39d33d2dc584e46ee1db45adb77ca9d1dcc62" - integrity sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-preset-env@6.3.1: - version "6.3.1" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-6.3.1.tgz#bd0f6353c44f41d0be61da278af33a6559e0aa6a" - integrity sha512-erl+OcCTr1+jsfJNQjBweyb8Y1s6KngUBwoqJnRXO197PmEE6u9HxZfnpKkTQqasxZljxNHzXR5hMb7MdD0Zdw== - dependencies: - autoprefixer "^9.3.1" - browserslist "^4.3.4" - caniuse-lite "^1.0.30000905" - cssdb "^4.1.0" - postcss "^7.0.5" - postcss-attribute-case-insensitive "^4.0.0" - postcss-color-functional-notation "^2.0.1" - postcss-color-gray "^5.0.0" - postcss-color-hex-alpha "^5.0.2" - postcss-color-mod-function "^3.0.3" - postcss-color-rebeccapurple "^4.0.1" - postcss-custom-media "^7.0.7" - postcss-custom-properties "^8.0.9" - postcss-custom-selectors "^5.1.2" - postcss-dir-pseudo-class "^5.0.0" - postcss-double-position-gradients "^1.0.0" - postcss-env-function "^2.0.2" - postcss-focus-visible "^4.0.0" - postcss-focus-within "^3.0.0" - postcss-font-variant "^4.0.0" - postcss-gap-properties "^2.0.0" - postcss-image-set-function "^3.0.1" - postcss-initial "^3.0.0" - postcss-lab-function "^2.0.1" - postcss-logical "^3.0.0" - postcss-media-minmax "^4.0.0" - postcss-nesting "^7.0.0" - postcss-overflow-shorthand "^2.0.0" - postcss-page-break "^2.0.0" - postcss-place "^4.0.1" - postcss-pseudo-class-any-link "^6.0.0" - postcss-replace-overflow-wrap "^3.0.0" - postcss-selector-matches "^4.0.0" - postcss-selector-not "^4.0.0" - -postcss-pseudo-class-any-link@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz#2ed3eed393b3702879dec4a87032b210daeb04d1" - integrity sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-reduce-initial@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.2.tgz#bac8e325d67510ee01fa460676dc8ea9e3b40f15" - integrity sha512-epUiC39NonKUKG+P3eAOKKZtm5OtAtQJL7Ye0CBN1f+UQTHzqotudp+hki7zxXm7tT0ZAKDMBj1uihpPjP25ug== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - -postcss-reduce-transforms@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.1.tgz#8600d5553bdd3ad640f43bff81eb52f8760d4561" - integrity sha512-sZVr3QlGs0pjh6JAIe6DzWvBaqYw05V1t3d9Tp+VnFRT5j+rsqoWsysh/iSD7YNsULjq9IAylCznIwVd5oU/zA== - dependencies: - cssnano-util-get-match "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-replace-overflow-wrap@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz#61b360ffdaedca84c7c918d2b0f0d0ea559ab01c" - integrity sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw== - dependencies: - postcss "^7.0.2" - -postcss-safe-parser@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-4.0.1.tgz#8756d9e4c36fdce2c72b091bbc8ca176ab1fcdea" - integrity sha512-xZsFA3uX8MO3yAda03QrG3/Eg1LN3EPfjjf07vke/46HERLZyHrTsQ9E1r1w1W//fWEhtYNndo2hQplN2cVpCQ== - dependencies: - postcss "^7.0.0" - -postcss-selector-matches@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz#71c8248f917ba2cc93037c9637ee09c64436fcff" - integrity sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-not@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-4.0.0.tgz#c68ff7ba96527499e832724a2674d65603b645c0" - integrity sha512-W+bkBZRhqJaYN8XAnbbZPLWMvZD1wKTu0UxtFKdhtGjWYmxhkUneoeOhRJKdAE5V7ZTlnbHfCR+6bNwK9e1dTQ== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-parser@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz#4f875f4afb0c96573d5cf4d74011aee250a7e865" - integrity sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU= - dependencies: - dot-prop "^4.1.1" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" - integrity sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ== - dependencies: - cssesc "^2.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-svgo@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.1.tgz#5628cdb38f015de6b588ce6d0bf0724b492b581d" - integrity sha512-YD5uIk5NDRySy0hcI+ZJHwqemv2WiqqzDgtvgMzO8EGSkK5aONyX8HMVFRFJSdO8wUWTuisUFn/d7yRRbBr5Qw== - dependencies: - is-svg "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - svgo "^1.0.0" - -postcss-unique-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" - integrity sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg== - dependencies: - alphanum-sort "^1.0.0" - postcss "^7.0.0" - uniqs "^2.0.0" - -postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" - integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== - -postcss-values-parser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.0.tgz#1ba42cae31367c44f96721cb5eb99462bfb39705" - integrity sha512-cyRdkgbRRefu91ByAlJow4y9w/hnBmmWgLpWmlFQ2bpIy2eKrqowt3VeYcaHQ08otVXmC9V2JtYW1Z/RpvYR8A== - dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss@^6.0.1, postcss@^6.0.23: - version "6.0.23" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" - integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== - dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.4.0" - -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.2, postcss@^7.0.5, postcss@^7.0.7: - version "7.0.7" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.7.tgz#2754d073f77acb4ef08f1235c36c5721a7201614" - integrity sha512-HThWSJEPkupqew2fnuQMEI2YcTj/8gMV3n80cMdJsKxfIh5tHf7nM5JigNX6LxVMqo6zkgQNAI88hyFvBk41Pg== - dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.5.0" - -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= - -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= - -prettier@^1.14.2: - version "1.15.3" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.15.3.tgz#1feaac5bdd181237b54dbe65d874e02a1472786a" - integrity sha512-gAU9AGAPMaKb3NNSUUuhhFAS7SCO4ALTN4nRIn6PJ075Qd28Yn2Ig2ahEJWdJwJmlEBTUfC7mMUSFy8MwsOCfg== - -pretty-bytes@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-4.0.2.tgz#b2bf82e7350d65c6c33aa95aaa5a4f6327f61cd9" - integrity sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk= - -pretty-error@^2.0.2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" - integrity sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM= - dependencies: - renderkid "^2.0.1" - utila "~0.4" - -pretty-format@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-23.6.0.tgz#5eaac8eeb6b33b987b7fe6097ea6a8a146ab5760" - integrity sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw== - dependencies: - ansi-regex "^3.0.0" - ansi-styles "^3.2.0" - -private@^0.1.6, private@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== - -process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== - -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= - -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= - -promise@8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/promise/-/promise-8.0.2.tgz#9dcd0672192c589477d56891271bdc27547ae9f0" - integrity sha512-EIyzM39FpVOMbqgzEHhxdrEhtOSDOtjMZQ0M6iVfCE+kWNgCkAyOdnuCWqfmflylftfadU6FkiMgHZA2kUzwRw== - dependencies: - asap "~2.0.6" - -prompts@^0.1.9: - version "0.1.14" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-0.1.14.tgz#a8e15c612c5c9ec8f8111847df3337c9cbd443b2" - integrity sha512-rxkyiE9YH6zAz/rZpywySLKkpaj0NMVyNw1qhsubdbjjSgcayjTShDreZGlFMcGSu5sab3bAKPfFk78PB90+8w== - dependencies: - kleur "^2.0.1" - sisteransi "^0.1.1" - -prop-types@^15.6.2: - version "15.6.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102" - integrity sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ== - dependencies: - loose-envify "^1.3.1" - object-assign "^4.1.1" - -proxy-addr@~2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.4.tgz#ecfc733bf22ff8c6f407fa275327b9ab67e48b93" - integrity sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA== - dependencies: - forwarded "~0.1.2" - ipaddr.js "1.8.0" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= - -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= - -psl@^1.1.24, psl@^1.1.28: - version "1.1.31" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.31.tgz#e9aa86d0101b5b105cbe93ac6b784cd547276184" - integrity sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw== - -public-encrypt@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - safe-buffer "^5.1.2" - -pump@^2.0.0, pump@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - -punycode@2.x.x, punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -punycode@^1.2.4, punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= - -q@^1.1.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= - -qs@6.5.2, qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= - -querystringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.0.tgz#7ded8dfbf7879dcc60d0a644ac6754b283ad17ef" - integrity sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg== - -raf@3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.0.tgz#a28876881b4bc2ca9117d4138163ddb80f781575" - integrity sha512-pDP/NMRAXoTfrhCfyfSEwJAKLaxBU9eApMeBPB1TkDouZmvPerIClV8lTAd+uF8ZiTaVl69e1FCxQrAd/VTjGw== - dependencies: - performance-now "^2.1.0" - -randomatic@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.1.tgz#b776efc59375984e36c537b2f51a1f0aff0da1ed" - integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== - dependencies: - is-number "^4.0.0" - kind-of "^6.0.0" - math-random "^1.0.1" - -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" - integrity sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A== - dependencies: - safe-buffer "^5.1.0" - -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - -range-parser@^1.0.3, range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" - integrity sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4= - -raw-body@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.3.tgz#1b324ece6b5706e153855bc1148c65bb7f6ea0c3" - integrity sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw== - dependencies: - bytes "3.0.0" - http-errors "1.6.3" - iconv-lite "0.4.23" - unpipe "1.0.0" - -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -react-app-polyfill@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-0.2.0.tgz#60eaf037223b2f3a5671f45e5ac3b418f0b48ad2" - integrity sha512-uBfocjRsBNqhTaEywUZ2buzhHbor2jBbnhZY8VUZ7VZ3PXucIPZrPDAAmbclELhvl+x08PbynAGQfMYcBmqZ2w== - dependencies: - core-js "2.5.7" - object-assign "4.1.1" - promise "8.0.2" - raf "3.4.0" - whatwg-fetch "3.0.0" - -react-dev-utils@^7.0.1: - version "7.0.1" - resolved "http://registry.npm.taobao.org/react-dev-utils/download/react-dev-utils-7.0.1.tgz#c53e759a22668ee2c0d146c24ce4bdec2b41e3c8" - integrity sha1-xT51miJmjuLA0UbCTOS97CtB48g= - dependencies: - "@babel/code-frame" "7.0.0" - address "1.0.3" - browserslist "4.1.1" - chalk "2.4.1" - cross-spawn "6.0.5" - detect-port-alt "1.1.6" - escape-string-regexp "1.0.5" - filesize "3.6.1" - find-up "3.0.0" - global-modules "1.0.0" - globby "8.0.1" - gzip-size "5.0.0" - immer "1.7.2" - inquirer "6.2.0" - is-root "2.0.0" - loader-utils "1.1.0" - opn "5.4.0" - pkg-up "2.0.0" - react-error-overlay "^5.1.2" - recursive-readdir "2.2.2" - shell-quote "1.6.1" - sockjs-client "1.1.5" - strip-ansi "4.0.0" - text-table "0.2.0" - -react-dom@^16.7.0: - version "16.10.2" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.10.2.tgz#4840bce5409176bc3a1f2bd8cb10b92db452fda6" - integrity sha512-kWGDcH3ItJK4+6Pl9DZB16BXYAZyrYQItU4OMy0jAkv5aNqc+mAKb4TpFtAteI6TJZu+9ZlNhaeNQSVQDHJzkw== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.16.2" - -react-error-overlay@^5.1.2: - version "5.1.2" - resolved "http://registry.npm.taobao.org/react-error-overlay/download/react-error-overlay-5.1.2.tgz#888957b884d4b25b083a82ad550f7aad96585394" - integrity sha1-iIlXuITUslsIOoKtVQ96rZZYU5Q= - -react-scripts@2.1.3: - version "2.1.3" - resolved "http://registry.npm.taobao.org/react-scripts/download/react-scripts-2.1.3.tgz#6e49be279f4039fb9f330d2b3529b933b8e90945" - integrity sha1-bkm+J59AOfufMw0rNSm5M7jpCUU= - dependencies: - "@babel/core" "7.1.6" - "@svgr/webpack" "2.4.1" - babel-core "7.0.0-bridge.0" - babel-eslint "9.0.0" - babel-jest "23.6.0" - babel-loader "8.0.4" - babel-plugin-named-asset-import "^0.3.0" - babel-preset-react-app "^7.0.0" - bfj "6.1.1" - case-sensitive-paths-webpack-plugin "2.1.2" - chalk "2.4.1" - css-loader "1.0.0" - dotenv "6.0.0" - dotenv-expand "4.2.0" - eslint "5.6.0" - eslint-config-react-app "^3.0.6" - eslint-loader "2.1.1" - eslint-plugin-flowtype "2.50.1" - eslint-plugin-import "2.14.0" - eslint-plugin-jsx-a11y "6.1.2" - eslint-plugin-react "7.11.1" - file-loader "2.0.0" - fork-ts-checker-webpack-plugin-alt "0.4.14" - fs-extra "7.0.0" - html-webpack-plugin "4.0.0-alpha.2" - identity-obj-proxy "3.0.0" - jest "23.6.0" - jest-pnp-resolver "1.0.1" - jest-resolve "23.6.0" - mini-css-extract-plugin "0.4.3" - optimize-css-assets-webpack-plugin "5.0.1" - pnp-webpack-plugin "1.1.0" - postcss-flexbugs-fixes "4.1.0" - postcss-loader "3.0.0" - postcss-preset-env "6.3.1" - postcss-safe-parser "4.0.1" - react-app-polyfill "^0.2.0" - react-dev-utils "^7.0.1" - resolve "1.8.1" - sass-loader "7.1.0" - style-loader "0.23.0" - terser-webpack-plugin "1.1.0" - url-loader "1.1.1" - webpack "4.19.1" - webpack-dev-server "3.1.14" - webpack-manifest-plugin "2.0.4" - workbox-webpack-plugin "3.6.3" - optionalDependencies: - fsevents "1.2.4" - -react@^16.7.0: - version "16.10.2" - resolved "https://registry.yarnpkg.com/react/-/react-16.10.2.tgz#a5ede5cdd5c536f745173c8da47bda64797a4cf0" - integrity sha512-MFVIq0DpIhrHFyqLU0S3+4dIcBhhOvBE8bJ/5kHPVOVaGdo0KuiQzpcjCPsf585WvhypqtrMILyoE2th6dT+Lw== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" - integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" - -readable-stream@1.0: - version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@^3.0.6: - version "3.1.1" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.1.1.tgz#ed6bbc6c5ba58b090039ff18ce670515795aeb06" - integrity sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readdirp@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - -realpath-native@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.0.2.tgz#cd51ce089b513b45cf9b1516c82989b51ccc6560" - integrity sha512-+S3zTvVt9yTntFrBpm7TQmQ3tzpCrnA1a/y+3cUHAc9ZR6aIjG0WNLR+Rj79QpJktY+VeW/TQtFlQ1bzsehI8g== - dependencies: - util.promisify "^1.0.0" - -recursive-readdir@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" - integrity sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== - dependencies: - minimatch "3.0.4" - -regenerate-unicode-properties@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz#107405afcc4a190ec5ed450ecaa00ed0cafa7a4c" - integrity sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw== - dependencies: - regenerate "^1.4.0" - -regenerate@^1.2.1, regenerate@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" - integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== - -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - -regenerator-runtime@^0.12.0: - version "0.12.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de" - integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg== - -regenerator-transform@^0.13.3: - version "0.13.3" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.3.tgz#264bd9ff38a8ce24b06e0636496b2c856b57bcbb" - integrity sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA== - dependencies: - private "^0.1.6" - -regex-cache@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" - integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ== - dependencies: - is-equal-shallow "^0.1.3" - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regexpp@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" - integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== - -regexpu-core@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" - integrity sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs= - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regexpu-core@^4.1.3, regexpu-core@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.4.0.tgz#8d43e0d1266883969720345e70c275ee0aec0d32" - integrity sha512-eDDWElbwwI3K0Lo6CqbQbA6FwgtCz4kYTarrri1okfkRLZAqstU+B3voZBCjg8Fl6iq0gXrJG6MvRgLthfvgOA== - dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^7.0.0" - regjsgen "^0.5.0" - regjsparser "^0.6.0" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.0.2" - -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= - -regjsgen@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.0.tgz#a7634dc08f89209c2049adda3525711fb97265dd" - integrity sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA== - -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= - dependencies: - jsesc "~0.5.0" - -regjsparser@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.0.tgz#f1e6ae8b7da2bae96c99399b868cd6c933a2ba9c" - integrity sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ== - dependencies: - jsesc "~0.5.0" - -relateurl@0.2.x: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - -renderkid@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.2.tgz#12d310f255360c07ad8fde253f6c9e9de372d2aa" - integrity sha512-FsygIxevi1jSiPY9h7vZmBFUbAOcbYm9UwyiLNdVsLRs/5We9Ob5NMPbGYUTWiLq5L+ezlVdE0A8bbME5CWTpg== - dependencies: - css-select "^1.1.0" - dom-converter "~0.2" - htmlparser2 "~3.3.0" - strip-ansi "^3.0.0" - utila "^0.4.0" - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.5.2, repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= - dependencies: - is-finite "^1.0.0" - -request-promise-core@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6" - integrity sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY= - dependencies: - lodash "^4.13.1" - -request-promise-native@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5" - integrity sha1-UoF3D2jgyXGeUWP9P6tIIhX0/aU= - dependencies: - request-promise-core "1.1.1" - stealthy-require "^1.1.0" - tough-cookie ">=2.3.3" - -request@^2.87.0, request@^2.88.0: - version "2.88.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" - integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.0" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.4.3" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-from-string@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= - -require-uncached@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" - integrity sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM= - dependencies: - caller-path "^0.1.0" - resolve-from "^1.0.0" - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - -resolve-cwd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" - integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= - dependencies: - resolve-from "^3.0.0" - -resolve-dir@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" - integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= - dependencies: - expand-tilde "^2.0.0" - global-modules "^1.0.0" - -resolve-from@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" - integrity sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY= - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha1-six699nWiBvItuZTM17rywoYh0g= - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - -resolve@1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" - integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= - -resolve@1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" - integrity sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA== - dependencies: - path-parse "^1.0.5" - -resolve@^1.3.2, resolve@^1.5.0, resolve@^1.6.0, resolve@^1.8.1: - version "1.9.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.9.0.tgz#a14c6fdfa8f92a7df1d996cb7105fa744658ea06" - integrity sha512-TZNye00tI67lwYvzxCxHGjwTNlUV70io54/Ed4j6PscB8xVfuBJpRenI/o6dVk0cY0PYTY27AgCoGGxRnYuItQ== - dependencies: - path-parse "^1.0.6" - -restore-cursor@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" - integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= - dependencies: - onetime "^2.0.0" - signal-exit "^3.0.2" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - -rgb-regex@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" - integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= - -rgba-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" - integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= - -rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@~2.6.2: - version "2.6.3" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" - integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== - dependencies: - glob "^7.1.3" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -rsvp@^3.3.3: - version "3.6.2" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" - integrity sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw== - -run-async@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" - integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= - dependencies: - is-promise "^2.1.0" - -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= - dependencies: - aproba "^1.1.1" - -rxjs@^6.1.0: - version "6.3.3" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.3.tgz#3c6a7fa420e844a81390fb1158a9ec614f4bad55" - integrity sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw== - dependencies: - tslib "^1.9.0" - -safe-buffer@5.1.2, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sane@^2.0.0: - version "2.5.2" - resolved "https://registry.yarnpkg.com/sane/-/sane-2.5.2.tgz#b4dc1861c21b427e929507a3e751e2a2cb8ab3fa" - integrity sha1-tNwYYcIbQn6SlQej51HiosuKs/o= - dependencies: - anymatch "^2.0.0" - capture-exit "^1.2.0" - exec-sh "^0.2.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - watch "~0.18.0" - optionalDependencies: - fsevents "^1.2.3" - -sass-loader@7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.1.0.tgz#16fd5138cb8b424bf8a759528a1972d72aad069d" - integrity sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w== - dependencies: - clone-deep "^2.0.1" - loader-utils "^1.0.1" - lodash.tail "^4.1.1" - neo-async "^2.5.0" - pify "^3.0.0" - semver "^5.5.0" - -sax@^1.2.4, sax@~1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -saxes@^3.1.4: - version "3.1.4" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-3.1.4.tgz#4ad5c53eb085ac0570ea1071a07aaf22ad29cebd" - integrity sha512-GVZmLJnkS4Vl8Pe9o4nc5ALZ615VOVxCmea8Cs0l+8GZw3RQ5XGOSUomIUfuZuk4Todo44v4y+HY1EATkDDiZg== - dependencies: - xmlchars "^1.3.1" - -scheduler@^0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.16.2.tgz#f74cd9d33eff6fc554edfb79864868e4819132c1" - integrity sha512-BqYVWqwz6s1wZMhjFvLfVR5WXP7ZY32M/wYPo04CcuPM7XZEbV2TBNW7Z0UkguPTl0dWMA59VbNXxK6q+pHItg== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -schema-utils@^0.4.4, schema-utils@^0.4.5: - version "0.4.7" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" - integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ== - dependencies: - ajv "^6.1.0" - ajv-keywords "^3.1.0" - -schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= - -selfsigned@^1.9.1: - version "1.10.4" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.4.tgz#cdd7eccfca4ed7635d47a08bf2d5d3074092e2cd" - integrity sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw== - dependencies: - node-forge "0.7.5" - -"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" - integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== - -send@0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" - integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== - dependencies: - debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" - -serialize-javascript@^1.4.0: - version "1.6.1" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.6.1.tgz#4d1f697ec49429a847ca6f442a2a755126c4d879" - integrity sha512-A5MOagrPFga4YaKQSWHryl7AXvbQkEqpw4NNYMTNYUNV51bA8ABHgYFpqKx+YFFrw59xMV1qGH1R4AgoNIVgCw== - -serve-index@^1.7.2: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= - dependencies: - accepts "~1.3.4" - batch "0.6.1" - debug "2.6.9" - escape-html "~1.0.3" - http-errors "~1.6.2" - mime-types "~2.1.17" - parseurl "~1.3.2" - -serve-static@1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" - integrity sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.2" - send "0.16.2" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -set-value@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.1" - to-object-path "^0.3.0" - -set-value@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" - integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -shallow-clone@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-0.1.2.tgz#5909e874ba77106d73ac414cfec1ffca87d97060" - integrity sha1-WQnodLp3EG1zrEFM/sH/yofZcGA= - dependencies: - is-extendable "^0.1.1" - kind-of "^2.0.1" - lazy-cache "^0.2.3" - mixin-object "^2.0.1" - -shallow-clone@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" - integrity sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA== - dependencies: - is-extendable "^0.1.1" - kind-of "^5.0.0" - mixin-object "^2.0.1" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= - dependencies: - shebang-regex "^1.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= - -shell-quote@1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" - integrity sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c= - dependencies: - array-filter "~0.0.0" - array-map "~0.0.0" - array-reduce "~0.0.0" - jsonify "~0.0.0" - -shellwords@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== - -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= - -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= - dependencies: - is-arrayish "^0.3.1" - -sisteransi@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-0.1.1.tgz#5431447d5f7d1675aac667ccd0b865a4994cb3ce" - integrity sha512-PmGOd02bM9YO5ifxpw36nrNMBTptEtfRl4qUYl9SndkolplkrZZOW7PGHjrZL53QvMVj9nQ+TKqUnRsw4tJa4g== - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= - -slice-ansi@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" - integrity sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg== - dependencies: - is-fullwidth-code-point "^2.0.0" - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sockjs-client@1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.5.tgz#1bb7c0f7222c40f42adf14f4442cbd1269771a83" - integrity sha1-G7fA9yIsQPQq3xT0RCy9Eml3GoM= - dependencies: - debug "^2.6.6" - eventsource "0.1.6" - faye-websocket "~0.11.0" - inherits "^2.0.1" - json3 "^3.3.2" - url-parse "^1.1.8" - -sockjs-client@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.3.0.tgz#12fc9d6cb663da5739d3dc5fb6e8687da95cb177" - integrity sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg== - dependencies: - debug "^3.2.5" - eventsource "^1.0.7" - faye-websocket "~0.11.1" - inherits "^2.0.3" - json3 "^3.3.2" - url-parse "^1.4.3" - -sockjs@0.3.19: - version "0.3.19" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" - integrity sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw== - dependencies: - faye-websocket "^0.10.0" - uuid "^3.0.1" - -source-list-map@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== - -source-map-resolve@^0.5.0: - version "0.5.2" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" - integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== - dependencies: - 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@^0.4.15: - version "0.4.18" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" - integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== - dependencies: - source-map "^0.5.6" - -source-map-support@^0.5.6, source-map-support@~0.5.6: - version "0.5.9" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" - integrity sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= - -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -spdx-correct@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" - integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" - integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== - -spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz#81c0ce8f21474756148bbb5f3bfc0f36bf15d76e" - integrity sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g== - -spdy-transport@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" - integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== - dependencies: - debug "^4.1.0" - detect-node "^2.0.4" - hpack.js "^2.1.6" - obuf "^1.1.2" - readable-stream "^3.0.6" - wbuf "^1.7.3" - -spdy@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.0.tgz#81f222b5a743a329aa12cea6a390e60e9b613c52" - integrity sha512-ot0oEGT/PGUpzf/6uk4AWLqkq+irlqHXkrdbk51oWONh3bxQmBuljxPNl66zlRRcIJStWq0QkLUCPOPjgjvU0Q== - dependencies: - debug "^4.1.0" - handle-thing "^2.0.0" - http-deceiver "^1.2.7" - select-hose "^2.0.0" - spdy-transport "^3.0.0" - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -sshpk@^1.7.0: - version "1.16.0" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.0.tgz#1d4963a2fbffe58050aa9084ca20be81741c07de" - integrity sha512-Zhev35/y7hRMcID/upReIvRse+I9SVhyVre/KTJSJQWMz3C3+G+HpO7m1wK/yckEtujKZ7dS4hkVxAnmHaIGVQ== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -ssri@^5.2.4: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.3.0.tgz#ba3872c9c6d33a0704a7d71ff045e5ec48999d06" - integrity sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ== - dependencies: - safe-buffer "^5.1.1" - -ssri@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" - integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== - dependencies: - figgy-pudding "^3.5.1" - -stable@~0.1.6: - version "0.1.8" - resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" - integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== - -stack-utils@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.2.tgz#33eba3897788558bebfc2db059dc158ec36cebb8" - integrity sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA== - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -"statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - -statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" - integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== - -stealthy-require@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" - integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= - -stream-browserify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" - integrity sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds= - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= - -string-length@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" - integrity sha1-1A27aGo6zpYMHP/KVivyxF+DY+0= - dependencies: - astral-regex "^1.0.0" - strip-ansi "^4.0.0" - -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string_decoder@^1.0.0, string_decoder@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d" - integrity sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w== - dependencies: - safe-buffer "~5.1.0" - -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -stringify-object@^3.2.2: - version "3.3.0" - resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - -strip-ansi@4.0.0, strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.0.0.tgz#f78f68b5d0866c20b2c9b8c61b5298508dc8756f" - integrity sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow== - dependencies: - ansi-regex "^4.0.0" - -strip-bom@3.0.0, strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= - dependencies: - is-utf8 "^0.2.0" - -strip-comments@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/strip-comments/-/strip-comments-1.0.2.tgz#82b9c45e7f05873bee53f37168af930aa368679d" - integrity sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw== - dependencies: - babel-extract-comments "^1.0.0" - babel-plugin-transform-object-rest-spread "^6.26.0" - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= - -strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - -style-loader@0.23.0: - version "0.23.0" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.0.tgz#8377fefab68416a2e05f1cabd8c3a3acfcce74f1" - integrity sha512-uCcN7XWHkqwGVt7skpInW6IGO1tG6ReyFQ1Cseh0VcN6VdcFQi62aG/2F3Y9ueA8x4IVlfaSUxpmQXQD9QrEuQ== - dependencies: - loader-utils "^1.1.0" - schema-utils "^0.4.5" - -stylehacks@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.1.tgz#3186595d047ab0df813d213e51c8b94e0b9010f2" - integrity sha512-TK5zEPeD9NyC1uPIdjikzsgWxdQQN/ry1X3d1iOz1UkYDCmcr928gWD1KHgyC27F50UnE0xCTrBOO1l6KR8M4w== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= - -supports-color@^3.1.2: - version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= - dependencies: - has-flag "^1.0.0" - -supports-color@^5.1.0, supports-color@^5.3.0, supports-color@^5.4.0, supports-color@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -svgo@^1.0.0, svgo@^1.0.5: - version "1.1.1" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.1.1.tgz#12384b03335bcecd85cfa5f4e3375fed671cb985" - integrity sha512-GBkJbnTuFpM4jFbiERHDWhZc/S/kpHToqmZag3aEBjPYK44JAN2QBjvrGIxLOoCyMZjuFQIfTO2eJd8uwLY/9g== - dependencies: - coa "~2.0.1" - colors "~1.1.2" - css-select "^2.0.0" - css-select-base-adapter "~0.1.0" - css-tree "1.0.0-alpha.28" - css-url-regex "^1.1.0" - csso "^3.5.0" - js-yaml "^3.12.0" - mkdirp "~0.5.1" - object.values "^1.0.4" - sax "~1.2.4" - stable "~0.1.6" - unquote "~1.1.1" - util.promisify "~1.0.0" - -symbol-tree@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" - integrity sha1-rifbOPZgp64uHDt9G8KQgZuFGeY= - -table@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/table/-/table-4.0.3.tgz#00b5e2b602f1794b9acaf9ca908a76386a7813bc" - integrity sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg== - dependencies: - ajv "^6.0.1" - ajv-keywords "^3.0.0" - chalk "^2.1.0" - lodash "^4.17.4" - slice-ansi "1.0.0" - string-width "^2.1.1" - -tapable@^1.0.0, tapable@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.1.tgz#4d297923c5a72a42360de2ab52dadfaaec00018e" - integrity sha512-9I2ydhj8Z9veORCw5PRm4u9uebCn0mcCa6scWoNcbZ6dAtoo2618u9UUzxgmsCOreJpqDDuv61LvwofW7hLcBA== - -tar@^4: - version "4.4.8" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.8.tgz#b19eec3fde2a96e64666df9fdb40c5ca1bc3747d" - integrity sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ== - dependencies: - 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" - -terser-webpack-plugin@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.1.0.tgz#cf7c25a1eee25bf121f4a587bb9e004e3f80e528" - integrity sha512-61lV0DSxMAZ8AyZG7/A4a3UPlrbOBo8NIQ4tJzLPAdGOQ+yoNC7l5ijEow27lBAL2humer01KLS6bGIMYQxKoA== - dependencies: - 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.8.1" - webpack-sources "^1.1.0" - worker-farm "^1.5.2" - -terser@^3.8.1: - version "3.14.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-3.14.1.tgz#cc4764014af570bc79c79742358bd46926018a32" - integrity sha512-NSo3E99QDbYSMeJaEk9YW2lTg3qS9V0aKGlb+PlOrei1X02r1wSBHCNX/O+yeTRFSWPKPIGj6MqvvdqV4rnVGw== - dependencies: - commander "~2.17.1" - source-map "~0.6.1" - source-map-support "~0.5.6" - -test-exclude@^4.2.1: - version "4.2.3" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.3.tgz#a9a5e64474e4398339245a0a769ad7c2f4a97c20" - integrity sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA== - dependencies: - arrify "^1.0.1" - micromatch "^2.3.11" - object-assign "^4.1.0" - read-pkg-up "^1.0.1" - require-main-filename "^1.0.1" - -text-table@0.2.0, text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -throat@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" - integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= - -through2@^2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - dependencies: - readable-stream "~2.3.6" - xtend "~4.0.1" - -through@^2.3.6: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= - -thunky@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" - integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow== - -timers-browserify@^2.0.4: - version "2.0.10" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" - integrity sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg== - dependencies: - setimmediate "^1.0.4" - -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -tmpl@1.0.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" - integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= - -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -topo@2.x.x: - version "2.0.2" - resolved "https://registry.yarnpkg.com/topo/-/topo-2.0.2.tgz#cd5615752539057c0dc0491a621c3bc6fbe1d182" - integrity sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI= - dependencies: - hoek "4.x.x" - -tough-cookie@>=2.3.3, tough-cookie@^2.3.4, tough-cookie@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -tough-cookie@~2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" - integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== - dependencies: - psl "^1.1.24" - punycode "^1.4.1" - -tr46@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" - integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= - dependencies: - punycode "^2.1.0" - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - -tryer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" - integrity sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA== - -tslib@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" - integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== - -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - dependencies: - prelude-ls "~1.1.2" - -type-is@~1.6.16: - version "1.6.16" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" - integrity sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.18" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= - -uglify-es@^3.3.4: - version "3.3.9" - resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" - integrity sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ== - dependencies: - commander "~2.13.0" - source-map "~0.6.1" - -uglify-js@3.4.x: - version "3.4.9" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.9.tgz#af02f180c1207d76432e473ed24a28f4a782bae3" - integrity sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q== - dependencies: - commander "~2.17.1" - source-map "~0.6.1" - -uglify-js@^3.1.4: - version "3.6.3" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.6.3.tgz#1351533bbe22cc698f012589ed6bd4cbd971bff8" - integrity sha512-KfQUgOqTkLp2aZxrMbCuKCDGW9slFYu2A23A36Gs7sGzTLcRBDORdOi5E21KWHFIfkY8kzgi/Pr1cXCh0yIp5g== - dependencies: - commander "~2.20.3" - source-map "~0.6.1" - -uglifyjs-webpack-plugin@^1.2.4: - version "1.3.0" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz#75f548160858163a08643e086d5fefe18a5d67de" - integrity sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw== - dependencies: - cacache "^10.0.4" - find-cache-dir "^1.0.0" - schema-utils "^0.4.5" - serialize-javascript "^1.4.0" - source-map "^0.6.1" - uglify-es "^3.3.4" - webpack-sources "^1.1.0" - worker-farm "^1.5.2" - -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== - -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== - dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" - -unicode-match-property-value-ecmascript@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz#9f1dc76926d6ccf452310564fd834ace059663d4" - integrity sha512-Rx7yODZC1L/T8XKo/2kNzVAQaRE88AaMvI1EF/Xnj3GW2wzN6fop9DDWuFAKUVFH7vozkz26DzP0qyWLKLIVPQ== - -unicode-property-aliases-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz#5a533f31b4317ea76f17d807fa0d116546111dd0" - integrity sha512-2WSLa6OdYd2ng8oqiGIWnJqyFArvhn+5vgx5GTxMbUYjCYKUcuKS62YLFF0R/BDGlB1yzXjQOLtPAfHsgirEpg== - -union-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^0.4.3" - -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= - -uniqs@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= - -unique-filename@^1.1.0, unique-filename@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.1.tgz#5e9edc6d1ce8fb264db18a507ef9bd8544451ca6" - integrity sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg== - dependencies: - imurmurhash "^0.1.4" - -universalify@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.0.5: - version "1.1.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.0.tgz#35256597e46a581db4793d0ce47fa9aebfc9fabd" - integrity sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw== - -upper-case@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= - -uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== - dependencies: - punycode "^2.1.0" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -url-loader@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-1.1.1.tgz#4d1f3b4f90dde89f02c008e662d604d7511167c1" - integrity sha512-vugEeXjyYFBCUOpX+ZuaunbK3QXMKaQ3zUnRfIpRBlGkY7QizCnzyyn2ASfcxsvyU3ef+CJppVywnl3Kgf13Gg== - dependencies: - loader-utils "^1.1.0" - mime "^2.0.3" - schema-utils "^1.0.0" - -url-parse@^1.1.8, url-parse@^1.4.3: - version "1.4.4" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.4.tgz#cac1556e95faa0303691fec5cf9d5a1bc34648f8" - integrity sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg== - dependencies: - querystringify "^2.0.0" - requires-port "^1.0.0" - -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= - dependencies: - punycode "1.3.2" - querystring "0.2.0" - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - -util-deprecate@^1.0.1, util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util.promisify@1.0.0, util.promisify@^1.0.0, util.promisify@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= - dependencies: - inherits "2.0.1" - -util@^0.10.3: - version "0.10.4" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" - integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A== - dependencies: - inherits "2.0.3" - -utila@^0.4.0, utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= - -uuid@^3.0.1, uuid@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -vendors@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.2.tgz#7fcb5eef9f5623b156bcea89ec37d63676f21801" - integrity sha512-w/hry/368nO21AN9QljsaIhb9ZiZtZARoVH5f3CsFbawdLdayCgKRPup7CggujvySMxx0I91NOyxdVENohprLQ== - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vm-browserify@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" - integrity sha1-XX6kW7755Kb/ZflUOOCofDV9WnM= - dependencies: - indexof "0.0.1" - -w3c-hr-time@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz#82ac2bff63d950ea9e3189a58a65625fedf19045" - integrity sha1-gqwr/2PZUOqeMYmlimViX+3xkEU= - dependencies: - browser-process-hrtime "^0.1.2" - -w3c-xmlserializer@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-1.0.1.tgz#054cdcd359dc5d1f3ec9be4e272c756af4b21d39" - integrity sha512-XZGI1OH/OLQr/NaJhhPmzhngwcAnZDLytsvXnRmlYeRkmbb0I7sqFFA22erq4WQR0sUu17ZSQOAV9mFwCqKRNg== - dependencies: - domexception "^1.0.1" - webidl-conversions "^4.0.2" - xml-name-validator "^3.0.0" - -walker@~1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= - dependencies: - makeerror "1.0.x" - -watch@~0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986" - integrity sha1-KAlUdsbffJDJYxOJkMClQj60uYY= - dependencies: - exec-sh "^0.2.0" - minimist "^1.2.0" - -watchpack@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00" - integrity sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA== - dependencies: - chokidar "^2.0.2" - graceful-fs "^4.1.2" - neo-async "^2.5.0" - -wbuf@^1.1.0, wbuf@^1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - -webidl-conversions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" - integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== - -webpack-dev-middleware@3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz#1132fecc9026fd90f0ecedac5cbff75d1fb45890" - integrity sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA== - dependencies: - memory-fs "~0.4.1" - mime "^2.3.1" - range-parser "^1.0.3" - webpack-log "^2.0.0" - -webpack-dev-server@3.1.14: - version "3.1.14" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.1.14.tgz#60fb229b997fc5a0a1fc6237421030180959d469" - integrity sha512-mGXDgz5SlTxcF3hUpfC8hrQ11yhAttuUQWf1Wmb+6zo3x6rb7b9mIfuQvAPLdfDRCGRGvakBWHdHOa0I9p/EVQ== - dependencies: - ansi-html "0.0.7" - bonjour "^3.5.0" - chokidar "^2.0.0" - compression "^1.5.2" - connect-history-api-fallback "^1.3.0" - debug "^3.1.0" - del "^3.0.0" - express "^4.16.2" - html-entities "^1.2.0" - http-proxy-middleware "~0.18.0" - import-local "^2.0.0" - internal-ip "^3.0.1" - ip "^1.1.5" - killable "^1.0.0" - loglevel "^1.4.1" - opn "^5.1.0" - portfinder "^1.0.9" - schema-utils "^1.0.0" - selfsigned "^1.9.1" - semver "^5.6.0" - serve-index "^1.7.2" - sockjs "0.3.19" - sockjs-client "1.3.0" - spdy "^4.0.0" - strip-ansi "^3.0.0" - supports-color "^5.1.0" - url "^0.11.0" - webpack-dev-middleware "3.4.0" - webpack-log "^2.0.0" - yargs "12.0.2" - -webpack-log@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" - integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== - dependencies: - ansi-colors "^3.0.0" - uuid "^3.3.2" - -webpack-manifest-plugin@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.0.4.tgz#e4ca2999b09557716b8ba4475fb79fab5986f0cd" - integrity sha512-nejhOHexXDBKQOj/5v5IZSfCeTO3x1Dt1RZEcGfBSul891X/eLIcIVH31gwxPDdsi2Z8LKKFGpM4w9+oTBOSCg== - dependencies: - fs-extra "^7.0.0" - lodash ">=3.5 <5" - tapable "^1.0.0" - -webpack-sources@^1.1.0, webpack-sources@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.3.0.tgz#2a28dcb9f1f45fe960d8f1493252b5ee6530fa85" - integrity sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack@4.19.1: - version "4.19.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.19.1.tgz#096674bc3b573f8756c762754366e5b333d6576f" - integrity sha512-j7Q/5QqZRqIFXJvC0E59ipLV5Hf6lAnS3ezC3I4HMUybwEDikQBVad5d+IpPtmaQPQArvgUZLXIN6lWijHBn4g== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-module-context" "1.7.6" - "@webassemblyjs/wasm-edit" "1.7.6" - "@webassemblyjs/wasm-parser" "1.7.6" - acorn "^5.6.2" - acorn-dynamic-import "^3.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 "^0.4.4" - tapable "^1.1.0" - uglifyjs-webpack-plugin "^1.2.4" - watchpack "^1.5.0" - webpack-sources "^1.2.0" - -websocket-driver@>=0.5.1: - version "0.7.0" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" - integrity sha1-DK+dLXVdk67gSdS90NP+LMoqJOs= - dependencies: - http-parser-js ">=0.4.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" - integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg== - -whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3, whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - -whatwg-fetch@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" - integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== - -whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0, whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== - -whatwg-url@^6.4.1: - version "6.5.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8" - integrity sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -whatwg-url@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.0.0.tgz#fde926fa54a599f3adf82dff25a9f7be02dc6edd" - integrity sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - -which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - -wordwrap@~0.0.2: - version "0.0.3" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" - integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= - -wordwrap@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= - -workbox-background-sync@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-background-sync/-/workbox-background-sync-3.6.3.tgz#6609a0fac9eda336a7c52e6aa227ba2ae532ad94" - integrity sha512-ypLo0B6dces4gSpaslmDg5wuoUWrHHVJfFWwl1udvSylLdXvnrfhFfriCS42SNEe5lsZtcNZF27W/SMzBlva7Q== - dependencies: - workbox-core "^3.6.3" - -workbox-broadcast-cache-update@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-broadcast-cache-update/-/workbox-broadcast-cache-update-3.6.3.tgz#3f5dff22ada8c93e397fb38c1dc100606a7b92da" - integrity sha512-pJl4lbClQcvp0SyTiEw0zLSsVYE1RDlCPtpKnpMjxFtu8lCFTAEuVyzxp9w7GF4/b3P4h5nyQ+q7V9mIR7YzGg== - dependencies: - workbox-core "^3.6.3" - -workbox-build@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-build/-/workbox-build-3.6.3.tgz#77110f9f52dc5d82fa6c1c384c6f5e2225adcbd8" - integrity sha512-w0clZ/pVjL8VXy6GfthefxpEXs0T8uiRuopZSFVQ8ovfbH6c6kUpEh6DcYwm/Y6dyWPiCucdyAZotgjz+nRz8g== - dependencies: - babel-runtime "^6.26.0" - common-tags "^1.4.0" - fs-extra "^4.0.2" - glob "^7.1.2" - joi "^11.1.1" - lodash.template "^4.4.0" - pretty-bytes "^4.0.2" - stringify-object "^3.2.2" - strip-comments "^1.0.2" - workbox-background-sync "^3.6.3" - workbox-broadcast-cache-update "^3.6.3" - workbox-cache-expiration "^3.6.3" - workbox-cacheable-response "^3.6.3" - workbox-core "^3.6.3" - workbox-google-analytics "^3.6.3" - workbox-navigation-preload "^3.6.3" - workbox-precaching "^3.6.3" - workbox-range-requests "^3.6.3" - workbox-routing "^3.6.3" - workbox-strategies "^3.6.3" - workbox-streams "^3.6.3" - workbox-sw "^3.6.3" - -workbox-cache-expiration@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-cache-expiration/-/workbox-cache-expiration-3.6.3.tgz#4819697254a72098a13f94b594325a28a1e90372" - integrity sha512-+ECNph/6doYx89oopO/UolYdDmQtGUgo8KCgluwBF/RieyA1ZOFKfrSiNjztxOrGJoyBB7raTIOlEEwZ1LaHoA== - dependencies: - workbox-core "^3.6.3" - -workbox-cacheable-response@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-cacheable-response/-/workbox-cacheable-response-3.6.3.tgz#869f1a68fce9063f6869ddbf7fa0a2e0a868b3aa" - integrity sha512-QpmbGA9SLcA7fklBLm06C4zFg577Dt8u3QgLM0eMnnbaVv3rhm4vbmDpBkyTqvgK/Ly8MBDQzlXDtUCswQwqqg== - dependencies: - workbox-core "^3.6.3" - -workbox-core@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-core/-/workbox-core-3.6.3.tgz#69abba70a4f3f2a5c059295a6f3b7c62bd00e15c" - integrity sha512-cx9cx0nscPkIWs8Pt98HGrS9/aORuUcSkWjG25GqNWdvD/pSe7/5Oh3BKs0fC+rUshCiyLbxW54q0hA+GqZeSQ== - -workbox-google-analytics@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-google-analytics/-/workbox-google-analytics-3.6.3.tgz#99df2a3d70d6e91961e18a6752bac12e91fbf727" - integrity sha512-RQBUo/6SXtIaQTRFj4RQZ9e1gAl7D8oS5S+Hi173Kk70/BgJjzPwXpC5A249Jv5YfkCOLMQCeF9A27BiD0b0ig== - dependencies: - workbox-background-sync "^3.6.3" - workbox-core "^3.6.3" - workbox-routing "^3.6.3" - workbox-strategies "^3.6.3" - -workbox-navigation-preload@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-navigation-preload/-/workbox-navigation-preload-3.6.3.tgz#a2c34eb7c17e7485b795125091215f757b3c4964" - integrity sha512-dd26xTX16DUu0i+MhqZK/jQXgfIitu0yATM4jhRXEmpMqQ4MxEeNvl2CgjDMOHBnCVMax+CFZQWwxMx/X/PqCw== - dependencies: - workbox-core "^3.6.3" - -workbox-precaching@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-precaching/-/workbox-precaching-3.6.3.tgz#5341515e9d5872c58ede026a31e19bafafa4e1c1" - integrity sha512-aBqT66BuMFviPTW6IpccZZHzpA8xzvZU2OM1AdhmSlYDXOJyb1+Z6blVD7z2Q8VNtV1UVwQIdImIX+hH3C3PIw== - dependencies: - workbox-core "^3.6.3" - -workbox-range-requests@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-range-requests/-/workbox-range-requests-3.6.3.tgz#3cc21cba31f2dd8c43c52a196bcc8f6cdbcde803" - integrity sha512-R+yLWQy7D9aRF9yJ3QzwYnGFnGDhMUij4jVBUVtkl67oaVoP1ymZ81AfCmfZro2kpPRI+vmNMfxxW531cqdx8A== - dependencies: - workbox-core "^3.6.3" - -workbox-routing@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-routing/-/workbox-routing-3.6.3.tgz#659cd8f9274986cfa98fda0d050de6422075acf7" - integrity sha512-bX20i95OKXXQovXhFOViOK63HYmXvsIwZXKWbSpVeKToxMrp0G/6LZXnhg82ijj/S5yhKNRf9LeGDzaqxzAwMQ== - dependencies: - workbox-core "^3.6.3" - -workbox-strategies@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-strategies/-/workbox-strategies-3.6.3.tgz#11a0dc249a7bc23d3465ec1322d28fa6643d64a0" - integrity sha512-Pg5eulqeKet2y8j73Yw6xTgLdElktcWExGkzDVCGqfV9JCvnGuEpz5eVsCIK70+k4oJcBCin9qEg3g3CwEIH3g== - dependencies: - workbox-core "^3.6.3" - -workbox-streams@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-streams/-/workbox-streams-3.6.3.tgz#beaea5d5b230239836cc327b07d471aa6101955a" - integrity sha512-rqDuS4duj+3aZUYI1LsrD2t9hHOjwPqnUIfrXSOxSVjVn83W2MisDF2Bj+dFUZv4GalL9xqErcFW++9gH+Z27w== - dependencies: - workbox-core "^3.6.3" - -workbox-sw@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-sw/-/workbox-sw-3.6.3.tgz#278ea4c1831b92bbe2d420da8399176c4b2789ff" - integrity sha512-IQOUi+RLhvYCiv80RP23KBW/NTtIvzvjex28B8NW1jOm+iV4VIu3VXKXTA6er5/wjjuhmtB28qEAUqADLAyOSg== - -workbox-webpack-plugin@3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-webpack-plugin/-/workbox-webpack-plugin-3.6.3.tgz#a807bb891b4e4e3c808df07e58f17de2d5ba6182" - integrity sha512-RwmKjc7HFHUFHoOlKoZUq9349u0QN3F8W5tZZU0vc1qsBZDINWXRiIBCAKvo/Njgay5sWz7z4I2adnyTo97qIQ== - dependencies: - babel-runtime "^6.26.0" - json-stable-stringify "^1.0.1" - workbox-build "^3.6.3" - -worker-farm@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.6.0.tgz#aecc405976fab5a95526180846f0dba288f3a4a0" - integrity sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ== - dependencies: - errno "~0.1.7" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -write-file-atomic@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" - integrity sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - -write@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" - integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c= - dependencies: - mkdirp "^0.5.1" - -ws@^5.2.0: - version "5.2.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f" - integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA== - dependencies: - async-limiter "~1.0.0" - -ws@^6.1.2: - version "6.1.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-6.1.2.tgz#3cc7462e98792f0ac679424148903ded3b9c3ad8" - integrity sha512-rfUqzvz0WxmSXtJpPMX2EeASXabOrSMk1ruMOV3JBTBjo4ac2lDjGGsbQSyxj8Odhw5fBib8ZKEjDNvgouNKYw== - dependencies: - async-limiter "~1.0.0" - -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - -xmlchars@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-1.3.1.tgz#1dda035f833dbb4f86a0c28eaa6ca769214793cf" - integrity sha512-tGkGJkN8XqCod7OT+EvGYK5Z4SfDQGD30zAa58OcnAa0RRWgzUEK72tkXhsX1FZd+rgnhRxFtmO+ihkp8LHSkw== - -xregexp@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020" - integrity sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg== - -xtend@^4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= - -y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= - -"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== - -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= - -yallist@^3.0.0, yallist@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" - integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== - -yargs-parser@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" - integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== - dependencies: - camelcase "^4.1.0" - -yargs-parser@^9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" - integrity sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc= - dependencies: - camelcase "^4.1.0" - -yargs@12.0.2: - version "12.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.2.tgz#fe58234369392af33ecbef53819171eff0f5aadc" - integrity sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ== - dependencies: - cliui "^4.0.0" - decamelize "^2.0.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 "^10.1.0" - -yargs@^11.0.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.1.0.tgz#90b869934ed6e871115ea2ff58b03f4724ed2d77" - integrity sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A== - dependencies: - cliui "^4.0.0" - decamelize "^1.1.1" - find-up "^2.1.0" - get-caller-file "^1.0.1" - os-locale "^2.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" - yargs-parser "^9.0.2" From cd0d78d4ee2a6fc12e14263bfa82525e539a94ce Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Wed, 13 Nov 2019 09:23:47 +0800 Subject: [PATCH 17/25] =?UTF-8?q?=E5=8D=87=E4=BB=B7=20jar=20=E5=8C=85?= =?UTF-8?q?=EF=BC=8C=E6=B6=88=E9=99=A4=E5=AE=89=E5=85=A8=E6=BC=8F=E6=B4=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/javaapp/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/javaapp/pom.xml b/examples/javaapp/pom.xml index 01a8246..a5390ec 100644 --- a/examples/javaapp/pom.xml +++ b/examples/javaapp/pom.xml @@ -14,7 +14,7 @@ ${java.version} ${java.version} 5.0.2.RELEASE - 8.5.34 + 8.5.40 @@ -67,7 +67,7 @@ com.fasterxml.jackson.core jackson-databind - 2.9.8 + 2.9.10.1 From 5d9ef3b6aac00f020636ceb3599aafa7aeeb0de2 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Fri, 10 Jan 2020 10:33:37 +0800 Subject: [PATCH 18/25] update --- .editorconfig | 4 +- .gitignore | 2 + LICENSE | 448 +++++++++++++++++++++++++++-- README.md | 34 ++- docs/coverpage.md | 5 +- docs/index.html | 382 +++++++++--------------- docs/nginx-install.md | 35 ++- docs/nginx-quickstart.md | 84 +++--- docs/sidebar.md | 6 + examples/README.md | 14 +- examples/javaapp/pom.xml | 2 +- examples/reactapp/scripts/build.sh | 2 +- prettier.config.js | 7 + 13 files changed, 686 insertions(+), 339 deletions(-) create mode 100644 docs/sidebar.md create mode 100644 prettier.config.js diff --git a/.editorconfig b/.editorconfig index c7ca29b..d72a75e 100644 --- a/.editorconfig +++ b/.editorconfig @@ -10,7 +10,7 @@ root = true [*] end_of_line = lf indent_size = 2 -indent_style = tab +indent_style = space max_line_length = 120 charset = utf-8 trim_trailing_whitespace = true @@ -19,7 +19,7 @@ insert_final_newline = true [*.{bat, cmd}] end_of_line = crlf -[*.{java, groovy, kt, sh}] +[*.{java, gradle, groovy, kt, sh}] indent_size = 4 [*.md] diff --git a/.gitignore b/.gitignore index b887576..4a99239 100644 --- a/.gitignore +++ b/.gitignore @@ -29,6 +29,7 @@ hs_err_pid* # maven plugin temp files .flattened-pom.xml +package-lock.json # ------------------------------- javascript ------------------------------- @@ -47,6 +48,7 @@ npm-debug.log* yarn-debug.log* yarn-error.log* bundle*.js +book.pdf # ------------------------------- intellij ------------------------------- diff --git a/LICENSE b/LICENSE index 6a8657f..3b7b82d 100644 --- a/LICENSE +++ b/LICENSE @@ -1,21 +1,427 @@ -MIT License - -Copyright (c) 2018 Zhang Peng - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +Attribution-ShareAlike 4.0 International + +======================================================================= + +Creative Commons Corporation ("Creative Commons") is not a law firm and +does not provide legal services or legal advice. Distribution of +Creative Commons public licenses does not create a lawyer-client or +other relationship. Creative Commons makes its licenses and related +information available on an "as-is" basis. Creative Commons gives no +warranties regarding its licenses, any material licensed under their +terms and conditions, or any related information. Creative Commons +disclaims all liability for damages resulting from their use to the +fullest extent possible. + +Using Creative Commons Public Licenses + +Creative Commons public licenses provide a standard set of terms and +conditions that creators and other rights holders may use to share +original works of authorship and other material subject to copyright +and certain other rights specified in the public license below. The +following considerations are for informational purposes only, are not +exhaustive, and do not form part of our licenses. + + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + wiki.creativecommons.org/Considerations_for_licensors + + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More_considerations + for the public: + wiki.creativecommons.org/Considerations_for_licensees + +======================================================================= + +Creative Commons Attribution-ShareAlike 4.0 International Public +License + +By exercising the Licensed Rights (defined below), You accept and agree +to be bound by the terms and conditions of this Creative Commons +Attribution-ShareAlike 4.0 International Public License ("Public +License"). To the extent this Public License may be interpreted as a +contract, You are granted the Licensed Rights in consideration of Your +acceptance of these terms and conditions, and the Licensor grants You +such rights in consideration of benefits the Licensor receives from +making the Licensed Material available under these terms and +conditions. + + +Section 1 -- Definitions. + + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + + c. BY-SA Compatible License means a license listed at + creativecommons.org/compatiblelicenses, approved by Creative + Commons as essentially the equivalent of this Public License. + + d. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + + e. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + + f. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + + g. License Elements means the license attributes listed in the name + of a Creative Commons Public License. The License Elements of this + Public License are Attribution and ShareAlike. + + h. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + + i. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + + j. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + + k. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + + l. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + + m. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + + +Section 2 -- Scope. + + a. License grant. + + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + + a. reproduce and Share the Licensed Material, in whole or + in part; and + + b. produce, reproduce, and Share Adapted Material. + + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + + 3. Term. The term of this Public License is specified in Section + 6(a). + + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + + 5. Downstream recipients. + + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + + b. Additional offer from the Licensor -- Adapted Material. + Every recipient of Adapted Material from You + automatically receives an offer from the Licensor to + exercise the Licensed Rights in the Adapted Material + under the conditions of the Adapter's License You apply. + + c. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + + b. Other rights. + + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + + 2. Patent and trademark rights are not licensed under this + Public License. + + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties. + + +Section 3 -- License Conditions. + +Your exercise of the Licensed Rights is expressly made subject to the +following conditions. + + a. Attribution. + + 1. If You Share the Licensed Material (including in modified + form), You must: + + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + + ii. a copyright notice; + + iii. a notice that refers to this Public License; + + iv. a notice that refers to the disclaimer of + warranties; + + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + + b. ShareAlike. + + In addition to the conditions in Section 3(a), if You Share + Adapted Material You produce, the following conditions also apply. + + 1. The Adapter's License You apply must be a Creative Commons + license with the same License Elements, this version or + later, or a BY-SA Compatible License. + + 2. You must include the text of, or the URI or hyperlink to, the + Adapter's License You apply. You may satisfy this condition + in any reasonable manner based on the medium, means, and + context in which You Share Adapted Material. + + 3. You may not offer or impose any additional or different terms + or conditions on, or apply any Effective Technological + Measures to, Adapted Material that restrict exercise of the + rights granted under the Adapter's License You apply. + + +Section 4 -- Sui Generis Database Rights. + +Where the Licensed Rights include Sui Generis Database Rights that +apply to Your use of the Licensed Material: + + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database; + + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material, + + including for purposes of Section 3(b); and + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + +For the avoidance of doubt, this Section 4 supplements and does not +replace Your obligations under this Public License where the Licensed +Rights include other Copyright and Similar Rights. + + +Section 5 -- Disclaimer of Warranties and Limitation of Liability. + + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + + +Section 6 -- Term and Termination. + + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + + 2. upon express reinstatement by the Licensor. + + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + + +Section 7 -- Other Terms and Conditions. + + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + + +Section 8 -- Interpretation. + + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + + +======================================================================= + +Creative Commons is not a party to its public +licenses. Notwithstanding, Creative Commons may elect to apply one of +its public licenses to material it publishes and in those instances +will be considered the “Licensor.” The text of the Creative Commons +public licenses is dedicated to the public domain under the CC0 Public +Domain Dedication. Except for the limited purpose of indicating that +material is shared under a Creative Commons public license or as +otherwise permitted by the Creative Commons policies published at +creativecommons.org/policies, Creative Commons does not authorize the +use of the trademark "Creative Commons" or any other trademark or logo +of Creative Commons without its prior written consent including, +without limitation, in connection with any unauthorized modifications +to any of its public licenses or any other arrangements, +understandings, or agreements concerning use of licensed material. For +the avoidance of doubt, this paragraph does not form part of the +public licenses. + +Creative Commons may be contacted at creativecommons.org. diff --git a/README.md b/README.md index 96a4ea9..0266c8e 100644 --- a/README.md +++ b/README.md @@ -4,21 +4,37 @@ > > [**examples**](https://github.com/dunwu/nginx-tutorial/tree/master/examples) 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快速看到演示效果。 -## 简介 + + +- [一、Nginx 简介](#一nginx-简介) +- [二、Nginx 入门](#二nginx-入门) +- [三、Nginx 实战](#三nginx-实战) + - [Http 反向代理](#http-反向代理) + - [Https 反向代理](#https-反向代理) + - [负载均衡](#负载均衡) + - [网站有多个 webapp 的配置](#网站有多个-webapp-的配置) + - [静态站点](#静态站点) + - [搭建文件服务器](#搭建文件服务器) + - [解决跨域](#解决跨域) +- [资源](#资源) + + + +## 一、Nginx 简介 **什么是 Nginx?** **Nginx (engine x)** 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 -

+![img](http://dunwu.test.upcdn.net/cs/web/nginx/nginx.jpg!zp) **什么是反向代理?** 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 -

+![img](http://dunwu.test.upcdn.net/cs/web/nginx/reverse-proxy.png!zp) -## Nginx 入门 +## 二、Nginx 入门 > 详细安装方法请参考:[Nginx 安装](docs/nginx-install.md) @@ -56,7 +72,7 @@ nginx.exe -c conf/nginx.conf 如果是运行在 Linux 下,写一个 shell 脚本,大同小异。 -## Nginx 实战 +## 三、Nginx 实战 我始终认为,各种开发工具的配置还是结合实战来讲述,会让人更易理解。 @@ -237,7 +253,7 @@ http { nginx 也可以实现简单的负载均衡功能。 -

+![](http://dunwu.test.upcdn.net/cs/web/nginx/nginx-load-balance.png!zp) 假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 @@ -298,7 +314,7 @@ http { Nginx 提供了多种负载均衡策略,让我们来一一了解一下: -负载均衡策略在各种分布式系统中基本上原理一致,对于原理有兴趣,不妨参考 [负载均衡](https://dunwu.github.io/javaweb/#/theory/load-balance) +负载均衡策略在各种分布式系统中基本上原理一致,对于原理有兴趣,不妨参考 [负载均衡](https://dunwu.github.io/blog/design/theory/load-balance-theory/) ##### 轮询 @@ -592,9 +608,9 @@ server { 到此,就完成了。 -## 参考 +## 资源 - [Nginx 的中文维基](http://tool.oschina.net/apidocs/apidoc?api=nginx-zh) - [Nginx 开发从入门到精通](http://tengine.taobao.org/book/index.html) -- https://github.com/trimstray/nginx-admins-handbook +- [nginx-admins-handbook](https://github.com/trimstray/nginx-admins-handbook) - [nginxconfig.io](https://nginxconfig.io/) - 一款 Nginx 配置生成器 diff --git a/docs/coverpage.md b/docs/coverpage.md index 51fe4e3..3d20c98 100644 --- a/docs/coverpage.md +++ b/docs/coverpage.md @@ -1,8 +1,7 @@ -
+
# nginx-tutorial -> Nginx 极简教程 +> 📚 **nginx-tutorial** 是一个 Nginx 极简教程。 [开始阅读](README.md) - diff --git a/docs/index.html b/docs/index.html index b2b2b11..5050122 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,248 +1,140 @@ - - - Nginx Tutorial - - - - - - - - - - - -
正在加载...
- - - - - - - - - - - - - - - + + + nginx-tutorial + + + + + + + + + + +
正在加载...
+ + + + + + + + + + + + + + + + + + + + + diff --git a/docs/nginx-install.md b/docs/nginx-install.md index 7f21a31..3d6ca16 100644 --- a/docs/nginx-install.md +++ b/docs/nginx-install.md @@ -1,16 +1,14 @@ # Nginx 安装 - + - [Windows 安装](#windows-安装) - [Linux 安装](#linux-安装) - [rpm 包方式(推荐)](#rpm-包方式推荐) - [源码编译方式](#源码编译方式) - - [安装编译工具及库文件](#安装编译工具及库文件) - - [安装 Nginx](#安装-nginx) - [Linux 开机自启动](#linux-开机自启动) - [rpm 包方式](#rpm-包方式) - - [源码编译方式](#源码编译方式) + - [源码编译方式](#源码编译方式-1) - [脚本](#脚本) - [参考资料](#参考资料) @@ -20,11 +18,11 @@ (1)进入[官方下载地址](https://nginx.org/en/download.html),选择合适版本(nginx/Windows-xxx)。 -

+![img](http://dunwu.test.upcdn.net/snap/20180920181023092347.png) (2)解压到本地 -

+![img](http://dunwu.test.upcdn.net/snap/20180920181023092044.png) (3)启动 @@ -144,7 +142,7 @@ $ firewall-cmd --reload 启动后,访问站点: -

+![img](http://dunwu.test.upcdn.net/snap/20180920181016133223.png) ## Linux 开机自启动 @@ -168,7 +166,28 @@ $ systemctl enable nginx.service ## 脚本 -| [安装脚本](https://github.com/dunwu/linux-tutorial/tree/master/codes/linux/soft) | +> CentOS7 环境安装脚本:[软件运维配置脚本集合](https://github.com/dunwu/linux-tutorial/tree/master/codes/linux/soft) + +**安装说明** + +- 采用编译方式安装 Nginx, 并将其注册为 systemd 服务 +- 安装路径为:`/usr/local/nginx` +- 默认下载安装 `1.16.0` 版本 + +**使用方法** + +- 默认安装 - 执行以下任意命令即可: + +```sh +curl -o- https://gitee.com/turnon/linux-tutorial/raw/master/codes/linux/soft/nginx-install.sh | bash +wget -qO- https://gitee.com/turnon/linux-tutorial/raw/master/codes/linux/soft/nginx-install.sh | bash +``` + +- 自定义安装 - 下载脚本到本地,并按照以下格式执行: + +```bash +sh nginx-install.sh [version] +``` ## 参考资料 diff --git a/docs/nginx-quickstart.md b/docs/nginx-quickstart.md index e7a0430..0266c8e 100644 --- a/docs/nginx-quickstart.md +++ b/docs/nginx-quickstart.md @@ -1,57 +1,57 @@ # Nginx 极简教程 -> **Nginx 是一个开源的 HTTP 和反向代理服务器,一个邮件代理服务器以及一个通用的 TCP / UDP 代理服务器**。 -> > 本项目是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx。 > > [**examples**](https://github.com/dunwu/nginx-tutorial/tree/master/examples) 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快速看到演示效果。 -## 简介 - -### 什么是 Nginx? + -Nginx 是一种快速、轻巧且功能强大的 Web 服务器,也可以用作: +- [一、Nginx 简介](#一nginx-简介) +- [二、Nginx 入门](#二nginx-入门) +- [三、Nginx 实战](#三nginx-实战) + - [Http 反向代理](#http-反向代理) + - [Https 反向代理](#https-反向代理) + - [负载均衡](#负载均衡) + - [网站有多个 webapp 的配置](#网站有多个-webapp-的配置) + - [静态站点](#静态站点) + - [搭建文件服务器](#搭建文件服务器) + - [解决跨域](#解决跨域) +- [资源](#资源) -- 快速 HTTP 反向代理 -- 可靠的负载均衡器 -- 高性能缓存服务器 -- 完善的网络平台 + -### Nginx 模块化结构 +## 一、Nginx 简介 -Nginx 有一个主进程和几个工作进程。**主流程的主要目的是读取和评估配置,以及维护工作流程**。**工作进程对请求进行实际处理**。Nginx 使用基于事件的模型和依赖于操作系统的机制来有效地在工作进程之间分配请求。 +**什么是 Nginx?** -Nginx 服务完全遵循模块化设计思想。 +**Nginx (engine x)** 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 -

+![img](http://dunwu.test.upcdn.net/cs/web/nginx/nginx.jpg!zp) -### 什么是反向代理? +**什么是反向代理?** 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 -

+![img](http://dunwu.test.upcdn.net/cs/web/nginx/reverse-proxy.png!zp) -## Nginx 命令 +## 二、Nginx 入门 -> 详细安装方法请参考:[Nginx 安装](nginx-install.md) +> 详细安装方法请参考:[Nginx 安装](docs/nginx-install.md) nginx 的使用比较简单,就是几条命令。 常用到的命令如下: -- `nginx -h` - 显示帮助 -- `nginx -v` - 显示 Nginx 的版本 -- `nginx -V` - 显示 Nginx 的版本,编译器版本和配置参数。 -- `nginx -t` - 测试 Nginx 配置 -- `nginx -c <文件名>` - 设置配置文件(默认:`/etc/nginx/nginx.conf`) -- `nginx -p <目录>` - 设置前缀路径(默认值:`/etc/nginx/`) -- `nginx -T` - 测试 Nginx 配置并在屏幕上打印经过验证的配置 -- `nginx -s ` - 向 Nginx 主进程发送信号: - - `stop` - 快速关闭 Nginx,可能不保存相关信息,并迅速终止 web 服务 - - `quit` - 平稳关闭 Nginx,保存相关信息,有安排的结束 web 服务 - - `reload` - 重新加载配置而不停止进程 - - `reopen` - 重新打开日志文件 -- `nginx -g <指令>` - 将全局指令设置为超出配置文件 +```batch +nginx -s stop 快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。 +nginx -s quit 平稳关闭Nginx,保存相关信息,有安排的结束web服务。 +nginx -s reload 因改变了Nginx相关配置,需要重新加载配置而重载。 +nginx -s reopen 重新打开日志文件。 +nginx -c filename 为 Nginx 指定一个配置文件,来代替缺省的。 +nginx -t 不运行,仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。 +nginx -v 显示 nginx 的版本。 +nginx -V 显示 nginx 的版本,编译器版本和配置参数。 +``` 如果不想每次都敲命令,可以在 nginx 安装目录下新添一个启动批处理文件**startup.bat**,双击即可运行。内容如下: @@ -72,7 +72,7 @@ nginx.exe -c conf/nginx.conf 如果是运行在 Linux 下,写一个 shell 脚本,大同小异。 -## Nginx 实战 +## 三、Nginx 实战 我始终认为,各种开发工具的配置还是结合实战来讲述,会让人更易理解。 @@ -196,15 +196,15 @@ http { 好了,让我们来试试吧: -1. 启动 webapp,注意启动绑定的端口要和 nginx 中的 `upstream` 设置的端口保持一致。 -2. 更改 host:在 C:\Windows\System32\drivers\etc 目录下的 host 文件中添加一条 DNS 记录 +1. 启动 webapp,注意启动绑定的端口要和 nginx 中的 `upstream` 设置的端口保持一致。 +2. 更改 host:在 C:\Windows\System32\drivers\etc 目录下的 host 文件中添加一条 DNS 记录 ``` 127.0.0.1 www.helloworld.com ``` -3. 启动前文中 startup.bat 的命令 -4. 在浏览器中访问 www.helloworld.com,不出意外,已经可以访问了。 +3. 启动前文中 startup.bat 的命令 +4. 在浏览器中访问 www.helloworld.com,不出意外,已经可以访问了。 ### Https 反向代理 @@ -253,7 +253,7 @@ http { nginx 也可以实现简单的负载均衡功能。 -

+![](http://dunwu.test.upcdn.net/cs/web/nginx/nginx-load-balance.png!zp) 假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 @@ -314,7 +314,7 @@ http { Nginx 提供了多种负载均衡策略,让我们来一一了解一下: -负载均衡策略在各种分布式系统中基本上原理一致,对于原理有兴趣,不妨参考 [负载均衡](https://dunwu.github.io/javaweb/#/theory/load-balance) +负载均衡策略在各种分布式系统中基本上原理一致,对于原理有兴趣,不妨参考 [负载均衡](https://dunwu.github.io/blog/design/theory/load-balance-theory/) ##### 轮询 @@ -526,11 +526,11 @@ web 领域开发中,经常采用前后端分离模式。这种模式下,前 各自独立的 web app 在互相访问时,势必存在跨域问题。解决跨域问题一般有两种思路: -1. **CORS** +1. **CORS** 在后端服务器设置 HTTP 响应头,把你需要允许访问的域名加入 `Access-Control-Allow-Origin` 中。 -2. **jsonp** +2. **jsonp** 把后端根据请求,构造 json 数据,并返回,前端用 jsonp 跨域。 @@ -608,9 +608,9 @@ server { 到此,就完成了。 -## 参考 +## 资源 - [Nginx 的中文维基](http://tool.oschina.net/apidocs/apidoc?api=nginx-zh) - [Nginx 开发从入门到精通](http://tengine.taobao.org/book/index.html) -- https://github.com/trimstray/nginx-admins-handbook +- [nginx-admins-handbook](https://github.com/trimstray/nginx-admins-handbook) - [nginxconfig.io](https://nginxconfig.io/) - 一款 Nginx 配置生成器 diff --git a/docs/sidebar.md b/docs/sidebar.md new file mode 100644 index 0000000..0775b95 --- /dev/null +++ b/docs/sidebar.md @@ -0,0 +1,6 @@ +# nginx-tutorial + +- [Nginx 快速教程](nginx-quickstart.md) +- [Nginx 安装](nginx-install.md) +- [Nginx 配置](nginx-configuration.md) +- [Nginx 问题](nginx-faq.md) diff --git a/examples/README.md b/examples/README.md index 6699c27..1fa79ec 100644 --- a/examples/README.md +++ b/examples/README.md @@ -91,7 +91,7 @@ nginx-1.14.0 是 Nginx 的 windows 环境的 1.14.0 官方版本。之所以把 2. 配置 hosts:`127.0.0.1 www.demo01.com` 3. 在浏览器中访问:www.demo01.com -

+![img](images\nginx-demo01.png) ### Demo02 - 负载均衡示例 @@ -111,7 +111,7 @@ nginx-1.14.0 是 Nginx 的 windows 环境的 1.14.0 官方版本。之所以把 如图所示:三次访问的端口号各不相同,说明三个服务器各自均有不同机率(基于权重)被访问。 -

+![img](images\nginx-demo02.png) ### Demo03 - 多 webapp 示例 @@ -137,7 +137,7 @@ Nginx 配置文件:[demo03.conf](nginx-1.14.0/conf/conf.d/demo03.conf) 如图所示:三次访问的 context 和端口号各不相同。说明 Nginx 根据不同的 context 将请求分发到指定的服务器上。 -

+![img](images\nginx-demo03.png) ### Demo04 - 前后端分离示例 @@ -169,11 +169,11 @@ Nginx 配置文件:[demo04.conf](nginx-1.14.0/conf/conf.d/demo04.conf) 效果图: -

+![img](images\nginx-demo04.png) 按 F12 打开浏览器控制台,输入用户名/密码(admin/123456)执行登录操作。如下图所示,可以看到登录后的访问请求被转发到了 Nginx 配置的服务器地址。 -

+![img](

+![img](images\nginx-demo05.png) ### Demo06 - 静态站点示例 @@ -220,4 +220,4 @@ Nginx 中的配置要点: 效果图如下: -

+![img](images\nginx-demo06.png) diff --git a/examples/javaapp/pom.xml b/examples/javaapp/pom.xml index a5390ec..3e916c8 100644 --- a/examples/javaapp/pom.xml +++ b/examples/javaapp/pom.xml @@ -14,7 +14,7 @@ ${java.version} ${java.version} 5.0.2.RELEASE - 8.5.40 + 8.5.50 diff --git a/examples/reactapp/scripts/build.sh b/examples/reactapp/scripts/build.sh index 2529388..38a6c11 100644 --- a/examples/reactapp/scripts/build.sh +++ b/examples/reactapp/scripts/build.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash ln -s /app/ck-puck-front/node_modules/ node_modules nvm use 8.1.0 diff --git a/prettier.config.js b/prettier.config.js new file mode 100644 index 0000000..eb6bb1f --- /dev/null +++ b/prettier.config.js @@ -0,0 +1,7 @@ +/** + * @see https://prettier.io/docs/en/options.html + * @see https://prettier.io/docs/en/configuration.html + */ +module.exports = { + tabWidth: 2, semi: false, singleQuote: true +} From 2e683c7cea0f953a63465d76ab27712cd264c97b Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Fri, 10 Jan 2020 14:03:45 +0800 Subject: [PATCH 19/25] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/examples/README.md b/examples/README.md index 1fa79ec..1b9096b 100644 --- a/examples/README.md +++ b/examples/README.md @@ -91,7 +91,7 @@ nginx-1.14.0 是 Nginx 的 windows 环境的 1.14.0 官方版本。之所以把 2. 配置 hosts:`127.0.0.1 www.demo01.com` 3. 在浏览器中访问:www.demo01.com -![img](images\nginx-demo01.png) +![img](https://raw.githubusercontent.com/dunwu/nginx-tutorial/master/examples/images/nginx-demo01.png) ### Demo02 - 负载均衡示例 @@ -111,7 +111,7 @@ nginx-1.14.0 是 Nginx 的 windows 环境的 1.14.0 官方版本。之所以把 如图所示:三次访问的端口号各不相同,说明三个服务器各自均有不同机率(基于权重)被访问。 -![img](images\nginx-demo02.png) +![img](https://raw.githubusercontent.com/dunwu/nginx-tutorial/master/examples/images/nginx-demo02.png) ### Demo03 - 多 webapp 示例 @@ -137,7 +137,7 @@ Nginx 配置文件:[demo03.conf](nginx-1.14.0/conf/conf.d/demo03.conf) 如图所示:三次访问的 context 和端口号各不相同。说明 Nginx 根据不同的 context 将请求分发到指定的服务器上。 -![img](images\nginx-demo03.png) +![img](https://raw.githubusercontent.com/dunwu/nginx-tutorial/master/examples/images/nginx-demo03.png) ### Demo04 - 前后端分离示例 @@ -169,7 +169,7 @@ Nginx 配置文件:[demo04.conf](nginx-1.14.0/conf/conf.d/demo04.conf) 效果图: -![img](images\nginx-demo04.png) +![img](https://raw.githubusercontent.com/dunwu/nginx-tutorial/master/examples/images/nginx-demo04.png) 按 F12 打开浏览器控制台,输入用户名/密码(admin/123456)执行登录操作。如下图所示,可以看到登录后的访问请求被转发到了 Nginx 配置的服务器地址。 @@ -199,7 +199,7 @@ Nginx 配置文件:[demo05.conf](nginx-1.14.0/conf/conf.d/demo05.conf) 效果图如下: -![img](images\nginx-demo05.png) +![img](https://raw.githubusercontent.com/dunwu/nginx-tutorial/master/examples/images/nginx-demo05.png) ### Demo06 - 静态站点示例 @@ -220,4 +220,4 @@ Nginx 中的配置要点: 效果图如下: -![img](images\nginx-demo06.png) +![img](https://raw.githubusercontent.com/dunwu/nginx-tutorial/master/examples/images/nginx-demo06.png) From 2bffbaadc773341bdba3e13ea6db23158056ee47 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Sun, 2 Feb 2020 17:54:11 +0800 Subject: [PATCH 20/25] update --- README.md | 2 +- docs/README.md | 2 +- docs/nginx-introduction.md | 124 ++++++++++++++++++++++++ docs/{nginx-install.md => nginx-ops.md} | 32 ++++-- docs/nginx-quickstart.md | 2 +- docs/sidebar.md | 2 +- 6 files changed, 150 insertions(+), 14 deletions(-) create mode 100644 docs/nginx-introduction.md rename docs/{nginx-install.md => nginx-ops.md} (83%) diff --git a/README.md b/README.md index 0266c8e..f0a841e 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ ## 二、Nginx 入门 -> 详细安装方法请参考:[Nginx 安装](docs/nginx-install.md) +> 详细安装方法请参考:[Nginx 运维](docs/nginx-ops.md) nginx 的使用比较简单,就是几条命令。 diff --git a/docs/README.md b/docs/README.md index 593ec12..c888216 100644 --- a/docs/README.md +++ b/docs/README.md @@ -5,6 +5,6 @@ > 📖 [电子书](https://dunwu.github.io/nginx-tutorial/) | [电子书(国内)](http://turnon.gitee.io/nginx-tutorial/) - [Nginx 快速教程](nginx-quickstart.md) -- [Nginx 安装](nginx-install.md) +- [Nginx 运维](nginx-ops.md) - [Nginx 配置](nginx-configuration.md) - [Nginx 问题](nginx-faq.md) diff --git a/docs/nginx-introduction.md b/docs/nginx-introduction.md new file mode 100644 index 0000000..a7947b0 --- /dev/null +++ b/docs/nginx-introduction.md @@ -0,0 +1,124 @@ +# Nginx 简介 + +## Ngnix 特点 + +- 模块化设计:良好的扩展性,可以通过模块方式进行功能扩展。 +- 高可靠性:主控进程和 worker 是同步实现的,一个 worker 出现问题,会立刻启动另一个 worker。 +- 内存消耗低:一万个长连接(keep-alive),仅消耗 2.5MB 内存。 +- 支持热部署:不用停止服务器,实现更新配置文件,更换日志文件、更新服务器程序版本。 +- 并发能力强:官方数据每秒支持 5 万并发; +- 功能丰富:优秀的反向代理功能和灵活的负载均衡策略 + +## Nginx 功能 + +- 支持静态资源的 web 服务器。 +- http,smtp,pop3 协议的反向代理服务器、缓存、负载均衡; +- 支持 FASTCGI(fpm) +- 支持模块化,过滤器(让文本可以实现压缩,节约带宽),ssl 及图像大小调整。 +- 内置的健康检查功能 +- 基于名称和 ip 的虚拟主机 +- 定制访问日志 +- 支持平滑升级 +- 支持 KEEPALIVE +- 支持 url rewrite +- 支持路径别名 +- 支持基于 IP 和用户名的访问控制。 +- 支持传输速率限制,支持并发数限制。 + +## Nginx 性能 + +Nginx 的高并发,官方测试支持 5 万并发连接。实际生产环境能到 2-3 万并发连接数。10000 个非活跃的 HTTP keep-alive 连接仅占用约 2.5MB 内存。三万并发连接下,10 个 Nginx 进程,消耗内存 150M。淘宝 tengine 团队测试结果是“24G 内存机器上,处理并发请求可达 200 万”。 + +## Ngnix 架构 + +### 主从模式 + +![](https://raw.githubusercontent.com/dunwu/images/master/snap/20200125161055.png) + +**Nginx 采用一主多从的主从架构**。 + +但是这里 master 是使用 root 身份启动的,因为 nginx 要工作在 80 端口。而只有管理员才有权限启动小于低于 1023 的端口。master 主要是负责的作用只是启动 worker,加载配置文件,负责系统的平滑升级。其它的工作是交给 worker。那么当 worker 被启动之后,也只是负责一些 web 最简单的工作,而其他的工作都是有 worker 中调用的模块来实现的。 + +模块之间是以流水线的方式实现功能的。流水线,指的是一个用户请求,由多个模块组合各自的功能依次实现完成的。比如:第一个模块只负责分析请求首部,第二个模块只负责查找数据,第三个模块只负责压缩数据,依次完成各自工作。来实现整个工作的完成。 + +他们是如何实现热部署的呢?其实是这样的,我们前面说 master 不负责具体的工作,而是调用 worker 工作,他只是负责读取配置文件,因此当一个模块修改或者配置文件发生变化,是由 master 进行读取,因此此时不会影响到 worker 工作。在 master 进行读取配置文件之后,不会立即的把修改的配置文件告知 worker。而是让被修改的 worker 继续使用老的配置文件工作,当 worker 工作完毕之后,直接当掉这个子进程,更换新的子进程,使用新的规则。 + +### sendfile 机制 + +**Nginx 支持 sendfile 机制**。 + +所谓 Sendfile 机制,是指:用户将请求发给内核,内核根据用户的请求调用相应用户进程,进程在处理时需要资源。此时再把请求发给内核(进程没有直接 IO 的能力),由内核加载数据。内核查找到数据之后,会把数据复制给用户进程,由用户进程对数据进行封装,之后交给内核,内核在进行 tcp/ip 首部的封装,最后再发给客户端。这个功能用户进程只是发生了一个封装报文的过程,却要绕一大圈。因此 nginx 引入了 sendfile 机制,使得内核在接受到数据之后,不再依靠用户进程给予封装,而是自己查找自己封装,减少了一个很长一段时间的浪费,这是一个提升性能的核心点。 + +
+ +以上内容摘自网友发布的文章,简单一句话是资源的处理,直接通过内核层进行数据传递,避免了数据传递到应用层,应用层再传递到内核层的开销。 + +目前高并发的处理,一般都采用 sendfile 模式。通过直接操作内核层数据,减少应用与内核层数据传递。 + +### I/O 复用机制 + +**Nginx 通信模型采用 I/O 复用机制**。 + +开发模型:epoll 和 kqueue。 + +支持的事件机制:kqueue、epoll、rt signals、/dev/poll 、event ports、select 以及 poll。 + +支持的 kqueue 特性包括 EV_CLEAR、EV_DISABLE、NOTE_LOWAT、EV_EOF,可用数据的数量,错误代码. + +支持 sendfile、sendfile64 和 sendfilev;文件 AIO;DIRECTIO;支持 Accept-filters 和 TCP_DEFER_ACCEP. + +以上概念较多,大家自行百度或谷歌,知识领域是网络通信(BIO,NIO,AIO)和多线程方面的知识。 + +## Nginx 负载均衡 + +nginx 的负载均衡策略可以划分为两大类:内置策略和扩展策略。内置策略包含加权轮询和 ip hash,在默认情况下这两种策略会编译进 nginx 内核,只需在 nginx 配置中指明参数即可。扩展策略有很多,如 fair、通用 hash、consistent hash 等,默认不编译进 nginx 内核。由于在 nginx 版本升级中负载均衡的代码没有本质性的变化,因此下面将以 nginx1.0.15 稳定版为例,从源码角度分析各个策略。 + +### 加权轮询 + +**Nginx 支持加权轮询(Weighted Round Robin)负载均衡**。 + +轮询的原理很简单,首先我们介绍一下轮询的基本流程。如下是处理一次请求的流程图: + +
+ +图中有两点需要注意,第一,如果可以把加权轮询算法分为先深搜索和先广搜索,那么 nginx 采用的是先深搜索算法,即将首先将请求都分给高权重的机器,直到该机器的权值降到了比其他机器低,才开始将请求分给下一个高权重的机器;第二,当所有后端机器都 down 掉时,nginx 会立即将所有机器的标志位清成初始状态,以避免造成所有的机器都处在 timeout 的状态,从而导致整个前端被夯住。 + +### Ip Hash + +**Nginx 支持 Ip Hash 负载均衡**。 + +通过 Ip Hash 这种负载均衡策略,可以实现会话粘滞。 + +### Fair + +fair 策略是扩展策略,默认不被编译进 nginx 内核。其原理是根据后端服务器的响应时间判断负载情况,从中选出负载最轻的机器进行分流。这种策略具有很强的自适应性,但是实际的网络环境往往不是那么简单,因此要慎用。 + +### 通用 Hash、一致性 Hash + +这两种也是扩展策略,在具体的实现上有些差别,通用 hash 比较简单,可以以 nginx 内置的变量为 key 进行 hash,一致性 hash 采用了 nginx 内置的一致性 hash 环,可以支持 memcache。 + +## Nginx 场景 + +Ngnix 一般作为入口负载均衡或内部负载均衡,结合反向代理服务器使用。以下架构示例,仅供参考,具体使用根据场景而定。 + +### 入口负载均衡架构 + +
+ +Ngnix 服务器在用户访问的最前端。根据用户请求再转发到具体的应用服务器或二级负载均衡服务器(LVS) + +### 内部负载均衡架构 + +
+ +LVS 作为入口负载均衡,将请求转发到二级 Ngnix 服务器,Ngnix 再根据请求转发到具体的应用服务器。 + +### Ngnix 高可用 + +
+ +分布式系统中,应用只部署一台服务器会存在单点故障,负载均衡同样有类似的问题。一般可采用主备或负载均衡设备集群的方式节约单点故障或高并发请求分流。 + +Ngnix 高可用,至少包含两个 Ngnix 服务器,一台主服务器,一台备服务器,之间使用 Keepalived 做健康监控和故障检测。开放 VIP 端口,通过防火墙进行外部映射。 + +DNS 解析公网的 IP 实际为 VIP。 \ No newline at end of file diff --git a/docs/nginx-install.md b/docs/nginx-ops.md similarity index 83% rename from docs/nginx-install.md rename to docs/nginx-ops.md index 3d6ca16..7538ff4 100644 --- a/docs/nginx-install.md +++ b/docs/nginx-ops.md @@ -1,4 +1,4 @@ -# Nginx 安装 +# Nginx 运维 @@ -14,7 +14,9 @@ -## Windows 安装 +## 一、普通安装 + +### Windows 安装 (1)进入[官方下载地址](https://nginx.org/en/download.html),选择合适版本(nginx/Windows-xxx)。 @@ -35,9 +37,9 @@ cd C:\nginx-0.8.54 start nginx > 注:Nginx / Win32 是运行在一个控制台程序,而非 windows 服务方式的。服务器方式目前还是开发尝试中。 -## Linux 安装 +### Linux 安装 -### rpm 包方式(推荐) +#### rpm 包方式(推荐) (1)进入[下载页面](http://nginx.org/packages/),选择合适版本下载。 @@ -66,9 +68,9 @@ $ firewall-cmd --zone=public --add-port=80/tcp --permanent $ firewall-cmd --reload ``` -### 源码编译方式 +#### 源码编译方式 -#### 安装编译工具及库文件 +##### 安装编译工具及库 Nginx 源码的编译依赖于 gcc 以及一些库文件,所以必须提前安装。 @@ -104,7 +106,7 @@ make && make install 执行 `pcre-config --version` 命令。 -#### 安装 Nginx +##### 编译安装 Nginx 安装步骤如下: @@ -144,11 +146,11 @@ $ firewall-cmd --reload ![img](http://dunwu.test.upcdn.net/snap/20180920181016133223.png) -## Linux 开机自启动 +#### Linux 开机自启动 Centos7 以上是用 Systemd 进行系统初始化的,Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度。Systemd 服务文件以 .service 结尾。 -### rpm 包方式 +##### rpm 包方式 如果是通过 rpm 包安装的,会自动创建 nginx.service 文件。 @@ -160,10 +162,19 @@ $ systemctl enable nginx.service 设置开机启动即可。 -### 源码编译方式 +##### 源码编译方式 如果采用源码编译方式,需要手动创建 nginx.service 文件。 +## 二、Docker 安装 + +- 官网镜像:https://hub.docker.com/_/nginx/ +- 下载镜像:`docker pull nginx` +- 启动容器:`docker run --name my-nginx -p 80:80 -v /data/docker/nginx/logs:/var/log/nginx -v /data/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx` +- 重新加载配置(目前测试无效,只能重启服务):`docker exec -it my-nginx nginx -s reload` +- 停止服务:`docker exec -it my-nginx nginx -s stop` 或者:`docker stop my-nginx` +- 重新启动服务:`docker restart my-nginx` + ## 脚本 > CentOS7 环境安装脚本:[软件运维配置脚本集合](https://github.com/dunwu/linux-tutorial/tree/master/codes/linux/soft) @@ -192,3 +203,4 @@ sh nginx-install.sh [version] ## 参考资料 - http://www.dohooe.com/2016/03/03/352.html?utm_source=tuicool&utm_medium=referral +- [nginx+keepalived实现nginx双主高可用的负载均衡](https://blog.51cto.com/kling/1253474) diff --git a/docs/nginx-quickstart.md b/docs/nginx-quickstart.md index 0266c8e..6bd44a0 100644 --- a/docs/nginx-quickstart.md +++ b/docs/nginx-quickstart.md @@ -36,7 +36,7 @@ ## 二、Nginx 入门 -> 详细安装方法请参考:[Nginx 安装](docs/nginx-install.md) +> 详细安装方法请参考:[Nginx 运维](docs/nginx-install.md) nginx 的使用比较简单,就是几条命令。 diff --git a/docs/sidebar.md b/docs/sidebar.md index 0775b95..5d8084f 100644 --- a/docs/sidebar.md +++ b/docs/sidebar.md @@ -1,6 +1,6 @@ # nginx-tutorial - [Nginx 快速教程](nginx-quickstart.md) -- [Nginx 安装](nginx-install.md) +- [Nginx 运维](nginx-ops.md) - [Nginx 配置](nginx-configuration.md) - [Nginx 问题](nginx-faq.md) From 655e8bd268ab0b227304ce026daf6e32025b5f5b Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Fri, 13 Mar 2020 11:42:51 +0800 Subject: [PATCH 21/25] update docs --- README.md | 4 ++-- assets/{nginx.eddx => Nginx.eddx} | Bin docs/nginx-introduction.md | 4 ++-- docs/nginx-ops.md | 5 +++-- docs/nginx-quickstart.md | 4 ++-- 5 files changed, 9 insertions(+), 8 deletions(-) rename assets/{nginx.eddx => Nginx.eddx} (100%) diff --git a/README.md b/README.md index f0a841e..b5410c1 100644 --- a/README.md +++ b/README.md @@ -82,7 +82,7 @@ nginx.exe -c conf/nginx.conf `nginx.conf` 配置文件如下: -> **_注:`conf/nginx.conf` 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件_** +> ***注:`conf/nginx.conf` 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件*** ```nginx #运行用户 @@ -253,7 +253,7 @@ http { nginx 也可以实现简单的负载均衡功能。 -![](http://dunwu.test.upcdn.net/cs/web/nginx/nginx-load-balance.png!zp) +![img](http://dunwu.test.upcdn.net/cs/web/nginx/nginx-load-balance.png!zp) 假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 diff --git a/assets/nginx.eddx b/assets/Nginx.eddx similarity index 100% rename from assets/nginx.eddx rename to assets/Nginx.eddx diff --git a/docs/nginx-introduction.md b/docs/nginx-introduction.md index a7947b0..eef5515 100644 --- a/docs/nginx-introduction.md +++ b/docs/nginx-introduction.md @@ -33,7 +33,7 @@ Nginx 的高并发,官方测试支持 5 万并发连接。实际生产环境 ### 主从模式 -![](https://raw.githubusercontent.com/dunwu/images/master/snap/20200125161055.png) +![img](https://raw.githubusercontent.com/dunwu/images/master/snap/20200125161055.png) **Nginx 采用一主多从的主从架构**。 @@ -121,4 +121,4 @@ LVS 作为入口负载均衡,将请求转发到二级 Ngnix 服务器,Ngnix Ngnix 高可用,至少包含两个 Ngnix 服务器,一台主服务器,一台备服务器,之间使用 Keepalived 做健康监控和故障检测。开放 VIP 端口,通过防火墙进行外部映射。 -DNS 解析公网的 IP 实际为 VIP。 \ No newline at end of file +DNS 解析公网的 IP 实际为 VIP。 diff --git a/docs/nginx-ops.md b/docs/nginx-ops.md index 7538ff4..5dbb758 100644 --- a/docs/nginx-ops.md +++ b/docs/nginx-ops.md @@ -129,6 +129,7 @@ tar zxvf nginx-1.12.2.tar.gz ```bash cd /opt/nginx/nginx-1.12.2 ./configure --with-http_stub_status_module --with-http_ssl_module --with-pcre=/opt/pcre/pcre-8.35 +make && make install ``` (3)关闭防火墙 @@ -175,7 +176,7 @@ $ systemctl enable nginx.service - 停止服务:`docker exec -it my-nginx nginx -s stop` 或者:`docker stop my-nginx` - 重新启动服务:`docker restart my-nginx` -## 脚本 +## 三、脚本 > CentOS7 环境安装脚本:[软件运维配置脚本集合](https://github.com/dunwu/linux-tutorial/tree/master/codes/linux/soft) @@ -189,7 +190,7 @@ $ systemctl enable nginx.service - 默认安装 - 执行以下任意命令即可: -```sh +```shell curl -o- https://gitee.com/turnon/linux-tutorial/raw/master/codes/linux/soft/nginx-install.sh | bash wget -qO- https://gitee.com/turnon/linux-tutorial/raw/master/codes/linux/soft/nginx-install.sh | bash ``` diff --git a/docs/nginx-quickstart.md b/docs/nginx-quickstart.md index 6bd44a0..f17d006 100644 --- a/docs/nginx-quickstart.md +++ b/docs/nginx-quickstart.md @@ -82,7 +82,7 @@ nginx.exe -c conf/nginx.conf `nginx.conf` 配置文件如下: -> **_注:`conf/nginx.conf` 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件_** +> ***注:`conf/nginx.conf` 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件*** ```nginx #运行用户 @@ -253,7 +253,7 @@ http { nginx 也可以实现简单的负载均衡功能。 -![](http://dunwu.test.upcdn.net/cs/web/nginx/nginx-load-balance.png!zp) +![img](http://dunwu.test.upcdn.net/cs/web/nginx/nginx-load-balance.png!zp) 假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 From d7f3cbd2cfd089003bad67b3e09ebd3b89703d76 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Tue, 16 Jun 2020 07:18:11 +0800 Subject: [PATCH 22/25] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/nginx-introduction.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nginx-introduction.md b/docs/nginx-introduction.md index eef5515..32f3bbd 100644 --- a/docs/nginx-introduction.md +++ b/docs/nginx-introduction.md @@ -33,7 +33,7 @@ Nginx 的高并发,官方测试支持 5 万并发连接。实际生产环境 ### 主从模式 -![img](https://raw.githubusercontent.com/dunwu/images/master/snap/20200125161055.png) +![img](http://dunwu.test.upcdn.net/snap/20200125161055.png) **Nginx 采用一主多从的主从架构**。 From b3d917b4b7a6a1e25f3edd52ab84a38a9d2feb8a Mon Sep 17 00:00:00 2001 From: dunwu Date: Thu, 13 May 2021 18:31:04 +0800 Subject: [PATCH 23/25] =?UTF-8?q?docs:=20=E6=96=87=E6=A1=A3=E6=95=B4?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 ++++---- docs/coverpage.md | 2 +- docs/index.html | 4 ++-- docs/nginx-introduction.md | 2 +- docs/nginx-ops.md | 6 +++--- docs/nginx-quickstart.md | 8 ++++---- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index b5410c1..42e9a51 100644 --- a/README.md +++ b/README.md @@ -26,13 +26,13 @@ **Nginx (engine x)** 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 -![img](http://dunwu.test.upcdn.net/cs/web/nginx/nginx.jpg!zp) +![img](https://raw.githubusercontent.com/dunwu/images/dev/cs/web/nginx/nginx.jpg) **什么是反向代理?** 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 -![img](http://dunwu.test.upcdn.net/cs/web/nginx/reverse-proxy.png!zp) +![img](https://raw.githubusercontent.com/dunwu/images/dev/cs/web/nginx/reverse-proxy.png) ## 二、Nginx 入门 @@ -82,7 +82,7 @@ nginx.exe -c conf/nginx.conf `nginx.conf` 配置文件如下: -> ***注:`conf/nginx.conf` 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件*** +> **_注:`conf/nginx.conf` 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件_** ```nginx #运行用户 @@ -253,7 +253,7 @@ http { nginx 也可以实现简单的负载均衡功能。 -![img](http://dunwu.test.upcdn.net/cs/web/nginx/nginx-load-balance.png!zp) +![img](https://raw.githubusercontent.com/dunwu/images/dev/cs/web/nginx/nginx-load-balance.png) 假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 diff --git a/docs/coverpage.md b/docs/coverpage.md index 3d20c98..9035e97 100644 --- a/docs/coverpage.md +++ b/docs/coverpage.md @@ -1,4 +1,4 @@ -
+
# nginx-tutorial diff --git a/docs/index.html b/docs/index.html index 5050122..9f3197b 100644 --- a/docs/index.html +++ b/docs/index.html @@ -9,7 +9,7 @@ content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" name="viewport" /> - + ***注:`conf/nginx.conf` 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件*** +> **_注:`conf/nginx.conf` 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件_** ```nginx #运行用户 @@ -253,7 +253,7 @@ http { nginx 也可以实现简单的负载均衡功能。 -![img](http://dunwu.test.upcdn.net/cs/web/nginx/nginx-load-balance.png!zp) +![img](https://raw.githubusercontent.com/dunwu/images/dev/cs/web/nginx/nginx-load-balance.png) 假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 From 48b0d3148048f45c8978074618f54f2f603d6957 Mon Sep 17 00:00:00 2001 From: dunwu Date: Thu, 9 Feb 2023 20:25:32 +0800 Subject: [PATCH 24/25] =?UTF-8?q?docs:=20=E6=9B=B4=E6=96=B0=E6=96=87?= =?UTF-8?q?=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- docs/coverpage.md | 2 +- docs/index.html | 4 ++-- docs/nginx-quickstart.md | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 42e9a51..99acc91 100644 --- a/README.md +++ b/README.md @@ -314,7 +314,7 @@ http { Nginx 提供了多种负载均衡策略,让我们来一一了解一下: -负载均衡策略在各种分布式系统中基本上原理一致,对于原理有兴趣,不妨参考 [负载均衡](https://dunwu.github.io/blog/design/theory/load-balance-theory/) +负载均衡策略在各种分布式系统中基本上原理一致,对于原理有兴趣,不妨参考 [负载均衡](https://dunwu.github.io/blog/pages/98a1c1/) ##### 轮询 diff --git a/docs/coverpage.md b/docs/coverpage.md index 9035e97..5a26471 100644 --- a/docs/coverpage.md +++ b/docs/coverpage.md @@ -1,4 +1,4 @@ -
+
# nginx-tutorial diff --git a/docs/index.html b/docs/index.html index 9f3197b..c151400 100644 --- a/docs/index.html +++ b/docs/index.html @@ -9,7 +9,7 @@ content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" name="viewport" /> - + Date: Sat, 27 Jan 2024 23:10:10 +0800 Subject: [PATCH 25/25] =?UTF-8?q?feat:=20=E6=95=B4=E7=90=86=E5=9B=BE?= =?UTF-8?q?=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 +++--- docs/coverpage.md | 2 +- docs/index.html | 4 ++-- docs/nginx-introduction.md | 2 +- docs/nginx-ops.md | 6 +++--- docs/nginx-quickstart.md | 6 +++--- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 99acc91..613e413 100644 --- a/README.md +++ b/README.md @@ -26,13 +26,13 @@ **Nginx (engine x)** 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 -![img](https://raw.githubusercontent.com/dunwu/images/dev/cs/web/nginx/nginx.jpg) +![img](https://raw.githubusercontent.com/dunwu/images/master/cs/web/nginx/nginx.jpg) **什么是反向代理?** 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 -![img](https://raw.githubusercontent.com/dunwu/images/dev/cs/web/nginx/reverse-proxy.png) +![img](https://raw.githubusercontent.com/dunwu/images/master/cs/web/nginx/reverse-proxy.png) ## 二、Nginx 入门 @@ -253,7 +253,7 @@ http { nginx 也可以实现简单的负载均衡功能。 -![img](https://raw.githubusercontent.com/dunwu/images/dev/cs/web/nginx/nginx-load-balance.png) +![img](https://raw.githubusercontent.com/dunwu/images/master/cs/web/nginx/nginx-load-balance.png) 假设这样一个应用场景:将应用部署在 192.168.1.11:80、192.168.1.12:80、192.168.1.13:80 三台 linux 环境的服务器上。网站域名叫 www.helloworld.com,公网 IP 为 192.168.1.11。在公网 IP 所在的服务器上部署 nginx,对所有请求做负载均衡处理(下面例子中使用的是加权轮询策略)。 diff --git a/docs/coverpage.md b/docs/coverpage.md index 5a26471..cc0ab0c 100644 --- a/docs/coverpage.md +++ b/docs/coverpage.md @@ -1,4 +1,4 @@ -
+
# nginx-tutorial diff --git a/docs/index.html b/docs/index.html index c151400..389725a 100644 --- a/docs/index.html +++ b/docs/index.html @@ -9,7 +9,7 @@ content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" name="viewport" /> - +

Wo@_j&TY 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͏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