├── src
├── test
│ ├── gradle
│ │ ├── simple-project
│ │ │ ├── settings.gradle
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ └── java
│ │ │ │ └── sample
│ │ │ │ └── App.java
│ │ ├── simple-custom-launcher
│ │ │ ├── settings.gradle
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ └── java
│ │ │ │ └── sample
│ │ │ │ ├── App.java
│ │ │ │ └── AppLauncher.java
│ │ ├── webpack-sample
│ │ │ ├── webpack.config.js
│ │ │ ├── settings.gradle
│ │ │ ├── src
│ │ │ │ └── main
│ │ │ │ │ ├── resources
│ │ │ │ │ └── webroot
│ │ │ │ │ │ └── index.html
│ │ │ │ │ ├── webapp
│ │ │ │ │ └── index.js
│ │ │ │ │ └── java
│ │ │ │ │ └── sample
│ │ │ │ │ └── MainVerticle.java
│ │ │ ├── package.json
│ │ │ ├── build.gradle
│ │ │ └── yarn.lock
│ │ ├── kotlin-sample
│ │ │ ├── settings.gradle
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ └── kotlin
│ │ │ │ └── sample
│ │ │ │ └── App.kt
│ │ ├── vertx-web-sample
│ │ │ ├── settings.gradle
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ └── java
│ │ │ │ └── sample
│ │ │ │ └── App.java
│ │ ├── simple-project-manually-testable
│ │ │ ├── settings.gradle
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ └── java
│ │ │ │ └── sample
│ │ │ │ └── App.java
│ │ └── custom-source-compatibility-project
│ │ │ ├── settings.gradle
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── sample
│ │ │ └── App.java
│ └── kotlin
│ │ └── io
│ │ └── vertx
│ │ └── gradle
│ │ └── VertxPluginTest.kt
└── main
│ └── kotlin
│ └── io
│ └── vertx
│ └── gradle
│ ├── VertxExtension.kt
│ └── VertxPlugin.kt
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── .gitignore
├── .editorconfig
├── settings.gradle.kts
├── .github
└── workflows
│ └── gradle.yml
├── gradlew.bat
├── README.adoc
├── gradlew
└── LICENSE
/src/test/gradle/simple-project/settings.gradle:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/test/gradle/simple-custom-launcher/settings.gradle:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jponge/vertx-gradle-plugin/HEAD/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle/
2 | .idea/
3 | *.iml
4 | *.iws
5 | *.ipr
6 | out/
7 | build/
8 | bin/
9 | .classpath
10 | .project
11 | .vscode/
12 | .settings/
13 | node_modules/
14 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | trim_trailing_whitespace = true
8 | end_of_line = lf
9 | insert_final_newline = true
10 |
--------------------------------------------------------------------------------
/src/test/gradle/webpack-sample/webpack.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | entry: './src/main/webapp/index.js',
3 | output: {
4 | filename: './build/resources/main/webroot/bundle.js'
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/test/gradle/simple-project/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'io.vertx.vertx-plugin'
3 | }
4 |
5 | repositories {
6 | jcenter()
7 | }
8 |
9 | vertx {
10 | mainVerticle = 'sample.App'
11 | }
12 |
--------------------------------------------------------------------------------
/src/test/gradle/kotlin-sample/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'vertx-web-sample'
2 |
3 | includeBuild("../../../../") {
4 | dependencySubstitution {
5 | substitute module("io.vertx:vertx-gradle-plugin") with project(":")
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/test/gradle/vertx-web-sample/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'vertx-web-sample'
2 |
3 | includeBuild("../../../../") {
4 | dependencySubstitution {
5 | substitute module("io.vertx:vertx-gradle-plugin") with project(":")
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/test/gradle/webpack-sample/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'vertx-web-sample'
2 |
3 | includeBuild("../../../../") {
4 | dependencySubstitution {
5 | substitute module("io.vertx:vertx-gradle-plugin") with project(":")
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/test/gradle/simple-project-manually-testable/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'simple-project'
2 |
3 | includeBuild("../../../../") {
4 | dependencySubstitution {
5 | substitute module("io.vertx:vertx-gradle-plugin") with project(":")
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/test/gradle/simple-custom-launcher/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'io.vertx.vertx-plugin'
3 | }
4 |
5 | repositories {
6 | jcenter()
7 | }
8 |
9 | vertx {
10 | mainVerticle = 'sample.App'
11 | launcher = 'sample.AppLauncher'
12 | redeploy = false
13 | }
14 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.1-all.zip
4 | networkTimeout=10000
5 | zipStoreBase=GRADLE_USER_HOME
6 | zipStorePath=wrapper/dists
7 |
--------------------------------------------------------------------------------
/src/test/gradle/webpack-sample/src/main/resources/webroot/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Vert.x, Gradle and WebPack
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/test/gradle/custom-source-compatibility-project/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'custom-source-compatibility-project'
2 |
3 | includeBuild("../../../../") {
4 | dependencySubstitution {
5 | substitute module("io.vertx:vertx-gradle-plugin") with project(":")
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/test/gradle/simple-custom-launcher/src/main/java/sample/App.java:
--------------------------------------------------------------------------------
1 | package sample;
2 |
3 | import io.vertx.core.Vertx;
4 | import io.vertx.core.AbstractVerticle;
5 |
6 | public class App extends AbstractVerticle {
7 |
8 | @Override
9 | public void start() {
10 | vertx.close(foo -> { System.out.println("App stopped."); });
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/test/gradle/simple-project-manually-testable/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | repositories {
3 | jcenter()
4 | }
5 | dependencies {
6 | classpath 'io.vertx:vertx-gradle-plugin'
7 | }
8 | }
9 |
10 | apply plugin: 'io.vertx.vertx-plugin'
11 |
12 | repositories {
13 | jcenter()
14 | }
15 |
16 | vertx {
17 | mainVerticle = 'sample.App'
18 | }
19 |
--------------------------------------------------------------------------------
/src/test/gradle/webpack-sample/src/main/webapp/index.js:
--------------------------------------------------------------------------------
1 | import axios from 'axios';
2 |
3 | setInterval(function() {
4 | axios.get("/time")
5 | .then(function(response) {
6 | document.getElementById("placeholder").innerText = "From the server: " + response.data.value;
7 | })
8 | .catch(function (error) {
9 | console.log(error);
10 | });
11 | }, 2000);
12 |
--------------------------------------------------------------------------------
/src/test/gradle/custom-source-compatibility-project/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | repositories {
3 | jcenter()
4 | }
5 | dependencies {
6 | classpath 'io.vertx:vertx-gradle-plugin'
7 | }
8 | }
9 |
10 | apply plugin: 'io.vertx.vertx-plugin'
11 |
12 | repositories {
13 | jcenter()
14 | }
15 |
16 | vertx {
17 | mainVerticle = 'sample.App'
18 | }
19 |
20 | sourceCompatibility = JavaVersion.VERSION_11
21 |
--------------------------------------------------------------------------------
/src/test/gradle/vertx-web-sample/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | repositories {
3 | jcenter()
4 | }
5 | dependencies {
6 | classpath 'io.vertx:vertx-gradle-plugin'
7 | }
8 | }
9 |
10 | apply plugin: 'io.vertx.vertx-plugin'
11 |
12 | repositories {
13 | jcenter()
14 | }
15 |
16 | dependencies {
17 | compile "io.vertx:vertx-web"
18 | compile "ch.qos.logback:logback-classic:1.2.3"
19 | }
20 |
21 | vertx {
22 | launcher = "sample.App"
23 | }
24 |
--------------------------------------------------------------------------------
/src/test/gradle/simple-custom-launcher/src/main/java/sample/AppLauncher.java:
--------------------------------------------------------------------------------
1 | package sample;
2 |
3 | import io.vertx.core.Launcher;
4 | import io.vertx.core.Vertx;
5 |
6 | public class AppLauncher extends Launcher {
7 |
8 | @Override
9 | public void afterStartingVertx(Vertx vertx) {
10 | System.out.println("Started with custom launcher.");
11 | }
12 |
13 | public static void main(String[] args) {
14 | new AppLauncher().dispatch(args);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/test/gradle/webpack-sample/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "webpack-sample",
3 | "version": "0.0.1",
4 | "description": "A sample with Vert.x, Gradle and Webpack",
5 | "main": "src/main/webapp/index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "devDependencies": {
12 | "webpack": "^2.7.0"
13 | },
14 | "dependencies": {
15 | "axios": "^0.21.1"
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/test/gradle/simple-project/src/main/java/sample/App.java:
--------------------------------------------------------------------------------
1 | package sample;
2 |
3 | import io.vertx.core.Vertx;
4 | import io.vertx.core.AbstractVerticle;
5 |
6 | public class App extends AbstractVerticle {
7 |
8 | @Override
9 | public void start() {
10 |
11 | vertx
12 | .createHttpServer()
13 | .requestHandler(req -> req.response().end("Yo!")).listen(18080);
14 |
15 | vertx
16 | .createHttpServer()
17 | .requestHandler(req -> {
18 | req.response().end("Bye!");
19 | vertx.close();
20 | }).listen(18081);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/test/gradle/custom-source-compatibility-project/src/main/java/sample/App.java:
--------------------------------------------------------------------------------
1 | package sample;
2 |
3 | import io.vertx.core.Vertx;
4 | import io.vertx.core.AbstractVerticle;
5 |
6 | public class App extends AbstractVerticle {
7 |
8 | @Override
9 | public void start() {
10 |
11 | vertx
12 | .createHttpServer()
13 | .requestHandler(req -> req.response().end("Yo!")).listen(18080);
14 |
15 | vertx
16 | .createHttpServer()
17 | .requestHandler(req -> {
18 | req.response().end("Bye!");
19 | vertx.close();
20 | }).listen(18081);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/test/gradle/simple-project-manually-testable/src/main/java/sample/App.java:
--------------------------------------------------------------------------------
1 | package sample;
2 |
3 | import io.vertx.core.Vertx;
4 | import io.vertx.core.AbstractVerticle;
5 |
6 | public class App extends AbstractVerticle {
7 |
8 | @Override
9 | public void start() {
10 |
11 | vertx
12 | .createHttpServer()
13 | .requestHandler(req -> req.response().end("Yo!")).listen(8080);
14 |
15 | vertx
16 | .createHttpServer()
17 | .requestHandler(req -> {
18 | req.response().end("Bye!");
19 | vertx.close();
20 | }).listen(8081);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/settings.gradle.kts:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2017-2019 Red Hat, Inc.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | rootProject.name = "vertx-gradle-plugin"
18 |
--------------------------------------------------------------------------------
/.github/workflows/gradle.yml:
--------------------------------------------------------------------------------
1 | # This workflow will build a Java project with Gradle
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
3 |
4 | name: Java CI with Gradle
5 |
6 | on:
7 | push:
8 | branches: [ master ]
9 | pull_request:
10 | branches: [ master ]
11 |
12 | jobs:
13 | build:
14 |
15 | runs-on: ubuntu-latest
16 |
17 | steps:
18 | - uses: actions/checkout@v2
19 | - name: Set up JDK 11
20 | uses: actions/setup-java@v1
21 | with:
22 | java-version: 11
23 | - name: Grant execute permission for gradlew
24 | run: chmod +x gradlew
25 | - name: Build with Gradle
26 | run: ./gradlew build
27 |
--------------------------------------------------------------------------------
/src/test/gradle/kotlin-sample/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | repositories {
3 | jcenter()
4 | }
5 | dependencies {
6 | classpath 'io.vertx:vertx-gradle-plugin'
7 | classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.41"
8 | }
9 | }
10 |
11 | apply plugin: 'io.vertx.vertx-plugin'
12 | apply plugin: "org.jetbrains.kotlin.jvm"
13 |
14 | repositories {
15 | jcenter()
16 | }
17 |
18 | dependencies {
19 | compile "io.vertx:vertx-web"
20 | compile "io.vertx:vertx-lang-kotlin"
21 | compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
22 | compile "ch.qos.logback:logback-classic:1.2.3"
23 | }
24 |
25 | vertx {
26 | mainVerticle = "sample.App"
27 | }
28 |
29 | tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
30 | kotlinOptions {
31 | jvmTarget = "1.8"
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/test/gradle/kotlin-sample/src/main/kotlin/sample/App.kt:
--------------------------------------------------------------------------------
1 | package sample
2 |
3 | import org.slf4j.Logger
4 | import org.slf4j.LoggerFactory
5 |
6 | import io.vertx.core.*
7 | import io.vertx.core.AbstractVerticle
8 | import io.vertx.core.json.JsonObject
9 | import io.vertx.ext.web.Router
10 |
11 | class App : AbstractVerticle() {
12 |
13 | private val logger = LoggerFactory.getLogger(App::class.java);
14 |
15 | override fun start() {
16 | val router = Router.router(vertx)
17 |
18 | router.get("/").handler() { ctx ->
19 | ctx.response().putHeader("Content-Type", "text/plain").end("This is the root resource")
20 | }
21 |
22 | router.get("/plop").handler() { ctx ->
23 | ctx.response()
24 | .putHeader("Content-Type", "application/json")
25 | .end(JsonObject().put("what", "Plop").encodePrettily())
26 | }
27 |
28 | vertx.createHttpServer()
29 | .requestHandler(router::accept)
30 | .listen(8080)
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/test/gradle/webpack-sample/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | repositories {
3 | jcenter()
4 | maven {
5 | url "https://plugins.gradle.org/m2/"
6 | }
7 | }
8 | dependencies {
9 | classpath 'io.vertx:vertx-gradle-plugin'
10 | classpath 'com.moowork.gradle:gradle-node-plugin:1.2.0'
11 | }
12 | }
13 |
14 | apply plugin: 'io.vertx.vertx-plugin'
15 | apply plugin: 'com.moowork.node'
16 |
17 | repositories {
18 | jcenter()
19 | }
20 |
21 | dependencies {
22 | compile "io.vertx:vertx-web"
23 | }
24 |
25 | vertx {
26 | mainVerticle = "sample.MainVerticle"
27 | watch = ["src/**/*", "build.gradle.kts", "yarn.lock"]
28 | onRedeploy = ["classes", "webpack"]
29 | }
30 |
31 | task webpack(type: Exec) {
32 | inputs.file("$projectDir/yarn.lock")
33 | inputs.file("$projectDir/webpack.config.js")
34 | inputs.dir("$projectDir/src/main/webapp")
35 | outputs.dir("$buildDir/resources/main/webroot")
36 | commandLine "$projectDir/node_modules/.bin/webpack"
37 | }
38 |
--------------------------------------------------------------------------------
/src/test/gradle/webpack-sample/src/main/java/sample/MainVerticle.java:
--------------------------------------------------------------------------------
1 | package sample;
2 |
3 | import java.util.Date;
4 |
5 | import io.vertx.core.*;
6 | import io.vertx.core.AbstractVerticle;
7 | import io.vertx.core.json.JsonObject;
8 | import io.vertx.ext.web.Router;
9 | import io.vertx.ext.web.handler.StaticHandler;
10 |
11 | public class MainVerticle extends AbstractVerticle {
12 |
13 | @Override
14 | public void start() {
15 | Router router = Router.router(vertx);
16 |
17 | router.get("/static/*").handler(StaticHandler.create().setCachingEnabled(false));
18 |
19 | router.get("/").handler(req -> req.reroute("/static/index.html"));
20 |
21 | router.get("/time").handler(req -> req.response()
22 | .putHeader("Content-Type", "application/json")
23 | .end(new JsonObject()
24 | .put("what", "Time at some point")
25 | .put("value", new Date().toString()).encode()));
26 |
27 | vertx.createHttpServer()
28 | .requestHandler(router)
29 | .listen(8080);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/test/gradle/vertx-web-sample/src/main/java/sample/App.java:
--------------------------------------------------------------------------------
1 | package sample;
2 |
3 | import org.slf4j.Logger;
4 | import org.slf4j.LoggerFactory;
5 |
6 | import io.vertx.core.*;
7 | import io.vertx.core.AbstractVerticle;
8 | import io.vertx.core.json.JsonObject;
9 | import io.vertx.ext.web.Router;
10 |
11 | public class App extends AbstractVerticle {
12 |
13 | private static final Logger logger = LoggerFactory.getLogger(App.class);
14 |
15 | @Override
16 | public void start() {
17 | Router router = Router.router(vertx);
18 |
19 | router.get("/").handler(ctx -> {
20 | ctx.response().putHeader("Content-Type", "text/plain").end("This is the root resource");
21 | });
22 |
23 | router.get("/plop").handler(ctx -> {
24 | ctx.response()
25 | .putHeader("Content-Type", "application/json")
26 | .end(new JsonObject().put("what", "Plop").encodePrettily());
27 | });
28 |
29 | vertx.createHttpServer()
30 | .requestHandler(router::accept)
31 | .listen(8080);
32 | }
33 |
34 | public static void main(String[] args) {
35 | logger.info("Starting...");
36 | Vertx vertx = Vertx.vertx();
37 | vertx.deployVerticle(new App(), id -> {
38 | if (id.succeeded()) {
39 | logger.info("App verticle successfully deployed");
40 | } else {
41 | logger.error("Deployment of App verticle failed", id.cause());
42 | }
43 | });
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/src/main/kotlin/io/vertx/gradle/VertxExtension.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2017-2019 Red Hat, Inc.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package io.vertx.gradle
18 |
19 | import org.gradle.api.Project
20 |
21 | /**
22 | * Vertx Gradle extension.
23 | *
24 | * @author [Julien Ponge](https://julien.ponge.org/)
25 | */
26 | open class VertxExtension(private val project: Project) {
27 |
28 | var vertxVersion = "4.1.2"
29 |
30 | var launcher = "io.vertx.core.Launcher"
31 | var mainVerticle = ""
32 |
33 | var args = listOf()
34 | var config = ""
35 | var workDirectory = project.projectDir.absolutePath
36 | var jvmArgs = listOf()
37 |
38 | var redeploy = true
39 | var watch = listOf("${project.projectDir.absolutePath}/src/**/*")
40 | var onRedeploy = listOf("classes")
41 | var redeployScanPeriod = 1000L
42 | var redeployGracePeriod = 1000L
43 | var redeployTerminationPeriod = 1000L
44 |
45 | var debugPort = 5005L
46 | var debugSuspend = false
47 |
48 | override fun toString(): String {
49 | return "VertxExtension(project=$project, vertxVersion='$vertxVersion', launcher='$launcher', mainVerticle='$mainVerticle', args=$args, config='$config', workDirectory='$workDirectory', jvmArgs=$jvmArgs, redeploy=$redeploy, watch=$watch, onRedeploy='$onRedeploy', redeployScanPeriod=$redeployScanPeriod, redeployGracePeriod=$redeployGracePeriod, redeployTerminationPeriod=$redeployTerminationPeriod, debugPort=$debugPort, debugSuspend=$debugSuspend)"
50 | }
51 | }
52 |
53 | /**
54 | * Extension method to make easier the configuration of the plugin when used with the Gradle Kotlin DSL
55 | */
56 | fun Project.vertx(configure: VertxExtension.() -> Unit) =
57 | extensions.configure(VertxExtension::class.java, configure)
58 |
--------------------------------------------------------------------------------
/gradlew.bat:
--------------------------------------------------------------------------------
1 | @rem
2 | @rem Copyright 2015 the original author or authors.
3 | @rem
4 | @rem Licensed under the Apache License, Version 2.0 (the "License");
5 | @rem you may not use this file except in compliance with the License.
6 | @rem You may obtain a copy of the License at
7 | @rem
8 | @rem https://www.apache.org/licenses/LICENSE-2.0
9 | @rem
10 | @rem Unless required by applicable law or agreed to in writing, software
11 | @rem distributed under the License is distributed on an "AS IS" BASIS,
12 | @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | @rem See the License for the specific language governing permissions and
14 | @rem limitations under the License.
15 | @rem
16 |
17 | @if "%DEBUG%"=="" @echo off
18 | @rem ##########################################################################
19 | @rem
20 | @rem Gradle startup script for Windows
21 | @rem
22 | @rem ##########################################################################
23 |
24 | @rem Set local scope for the variables with windows NT shell
25 | if "%OS%"=="Windows_NT" setlocal
26 |
27 | set DIRNAME=%~dp0
28 | if "%DIRNAME%"=="" set DIRNAME=.
29 | @rem This is normally unused
30 | set APP_BASE_NAME=%~n0
31 | set APP_HOME=%DIRNAME%
32 |
33 | @rem Resolve any "." and ".." in APP_HOME to make it shorter.
34 | for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
35 |
36 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
37 | set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
38 |
39 | @rem Find java.exe
40 | if defined JAVA_HOME goto findJavaFromJavaHome
41 |
42 | set JAVA_EXE=java.exe
43 | %JAVA_EXE% -version >NUL 2>&1
44 | if %ERRORLEVEL% equ 0 goto execute
45 |
46 | echo.
47 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
48 | echo.
49 | echo Please set the JAVA_HOME variable in your environment to match the
50 | echo location of your Java installation.
51 |
52 | goto fail
53 |
54 | :findJavaFromJavaHome
55 | set JAVA_HOME=%JAVA_HOME:"=%
56 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
57 |
58 | if exist "%JAVA_EXE%" goto execute
59 |
60 | echo.
61 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
62 | echo.
63 | echo Please set the JAVA_HOME variable in your environment to match the
64 | echo location of your Java installation.
65 |
66 | goto fail
67 |
68 | :execute
69 | @rem Setup the command line
70 |
71 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
72 |
73 |
74 | @rem Execute Gradle
75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
76 |
77 | :end
78 | @rem End local scope for the variables with windows NT shell
79 | if %ERRORLEVEL% equ 0 goto mainEnd
80 |
81 | :fail
82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
83 | rem the _cmd.exe /c_ return code!
84 | set EXIT_CODE=%ERRORLEVEL%
85 | if %EXIT_CODE% equ 0 set EXIT_CODE=1
86 | if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
87 | exit /b %EXIT_CODE%
88 |
89 | :mainEnd
90 | if "%OS%"=="Windows_NT" endlocal
91 |
92 | :omega
93 |
--------------------------------------------------------------------------------
/src/test/kotlin/io/vertx/gradle/VertxPluginTest.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2017-2019 Red Hat, Inc.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package io.vertx.gradle
18 |
19 | import com.mashape.unirest.http.Unirest
20 | import org.assertj.core.api.Assertions.assertThat
21 | import org.gradle.testkit.runner.GradleRunner
22 | import org.gradle.testkit.runner.TaskOutcome
23 | import org.junit.Test
24 | import java.io.*
25 | import java.util.concurrent.TimeUnit
26 | import java.util.jar.JarFile
27 |
28 |
29 | /**
30 | * @author [Julien Ponge](https://julien.ponge.org/)
31 | */
32 | class VertxPluginTest {
33 |
34 | @Test
35 | fun `smoke test`() {
36 | val runner = GradleRunner.create()
37 | .withProjectDir(File("src/test/gradle/simple-project"))
38 | .withPluginClasspath()
39 | .withArguments("tasks")
40 | .build()
41 |
42 | assertThat(runner.output).contains("shadowJar", "BUILD SUCCESSFUL")
43 | }
44 |
45 | @Test
46 | fun `check that it builds a fat jar`() {
47 | GradleRunner.create()
48 | .withProjectDir(File("src/test/gradle/simple-project"))
49 | .withPluginClasspath()
50 | .withArguments("clean", "build")
51 | .build()
52 |
53 | val fatJarFile = File("src/test/gradle/simple-project/build/libs/simple-project-all.jar")
54 | assertThat(fatJarFile).exists().isFile()
55 | JarFile(fatJarFile).use {
56 | assertThat(it.getJarEntry("sample/App.class")).isNotNull
57 | assertThat(it.getJarEntry("io/vertx/core/Vertx.class")).isNotNull
58 | assertThat(it.getJarEntry("io/netty/channel/EventLoopGroup.class")).isNotNull
59 | }
60 | }
61 |
62 | @Test
63 | fun `check that the application does run`() {
64 | GradleRunner.create()
65 | .withProjectDir(File("src/test/gradle/simple-project"))
66 | .withPluginClasspath()
67 | .withArguments("clean", "build")
68 | .build()
69 |
70 | run("java", "-jar", "src/test/gradle/simple-project/build/libs/simple-project-all.jar") {
71 | val response = Unirest.get("http://localhost:18080/").asString()
72 | Unirest.shutdown()
73 | assertThat(response.status).isEqualTo(200)
74 | assertThat(response.body).isEqualTo("Yo!")
75 | }
76 | }
77 |
78 | @Test
79 | fun `check that vertxRun task runs with custom launcher`() {
80 | val result = GradleRunner
81 | .create()
82 | .withProjectDir(File("src/test/gradle/simple-custom-launcher"))
83 | .withPluginClasspath()
84 | .withArguments("clean", "vertxRun")
85 | .build()
86 |
87 | assertThat(result.task(":vertxRun")).isNotNull
88 | assertThat(result.task(":vertxRun")!!.outcome).isSameAs(TaskOutcome.SUCCESS)
89 |
90 | assertThat(result.output)
91 | .contains("Started with custom launcher.")
92 | .contains("App stopped.")
93 | }
94 |
95 | @Test
96 | fun `check that vertxDebug task runs with custom launcher`() {
97 | val result = GradleRunner
98 | .create()
99 | .withProjectDir(File("src/test/gradle/simple-custom-launcher"))
100 | .withPluginClasspath()
101 | .withArguments("clean", "vertxDebug")
102 | .build()
103 |
104 | assertThat(result.task(":vertxDebug")).isNotNull
105 | assertThat(result.task(":vertxDebug")!!.outcome).isSameAs(TaskOutcome.SUCCESS)
106 |
107 | assertThat(result.output)
108 | .contains("Started with custom launcher.")
109 | .contains("App stopped.")
110 | }
111 | }
112 |
113 | private fun run(vararg command: String, block: () -> Unit) {
114 | val process = ProcessBuilder(command.toList()).start()
115 | Thread.sleep(1000)
116 | block()
117 | process.destroyForcibly()
118 | process.waitFor(30, TimeUnit.SECONDS)
119 | }
120 |
--------------------------------------------------------------------------------
/README.adoc:
--------------------------------------------------------------------------------
1 | = Vert.x Gradle Plugin
2 |
3 | An _opinionated_ Gradle plugin for Vert.x projects.
4 |
5 | image:https://github.com/jponge/vertx-gradle-plugin/workflows/Java%20CI%20with%20Gradle/badge.svg[Java CI with Gradle]
6 | image:https://img.shields.io/github/tag/jponge/vertx-gradle-plugin.svg[tag, link=https://plugins.gradle.org/plugin/io.vertx.vertx-plugin]
7 | image:https://img.shields.io/github/license/jponge/vertx-gradle-plugin.svg[license, link=https://github.com/jponge/vertx-gradle-plugin/blob/master/LICENSE]
8 | image:https://img.shields.io/maven-metadata/v/https/plugins.gradle.org/m2/io/vertx/vertx-plugin/io.vertx.vertx-plugin.gradle.plugin/maven-metadata.xml.svg?label=gradlePluginPortal["Maven Central",link="https://plugins.gradle.org/plugin/io.vertx.vertx-plugin"]
9 |
10 | == What the plugin does
11 |
12 | This https://plugins.gradle.org/plugin/io.vertx.vertx-plugin[plugin] simplifies building and running Vert.x applications with Gradle.
13 |
14 | It automatically applies the following plugins:
15 |
16 | * `https://docs.gradle.org/current/userguide/java_plugin.html[java]`
17 | * `https://docs.gradle.org/current/userguide/application_plugin.html[application]` + `https://docs.gradle.org/current/userguide/distribution_plugin.html[distribution]` for packaging the app for the JVM
18 | * `https://github.com/johnrengelman/shadow[shadow]` to generate _uber Jars_ with all dependencies bundled
19 |
20 | You can omit versions from elements in the https://github.com/vert-x3/vertx-stack[the Vert.x stack as the plugin references the corresponding Maven BOM.
21 |
22 | NOTE: From version `0.9.0` the plugin no longer sets the `sourceCompatibility` to Java 8. You can set it manually like in other `https://docs.gradle.org/current/userguide/building_java_projects.html#introduction[Java projects]`.
23 |
24 | The plugin automatically adds `io.vertx:vertx-core` as a `compile` dependency, so you don't need to do it.
25 |
26 | The plugin provides a `vertxRun` task that can take advantage of the Vert.x auto-reloading capabilities, so you can _just_ run it then have you code being automatically compiled and reloaded as you make changes.
27 |
28 | NOTE: If you encounter issues with your application still being running in the background due to how the Gradle caching works, then you may try running the `vertxRun` task with `gradle --no-daemon vertxRun`.
29 |
30 | The plugin provides a `vertxDebug` task enabling to debug your code.
31 |
32 | NOTE: Reloading is disabled while debugging. Moreover in order to prevent warnings while in debug mode, Vert.x options `maxEventLoopExecuteTime` and `maxWorkerExecuteTime` are set to `java.lang.Long.MAX_VALUE`
33 |
34 | === Minimal example
35 |
36 | [source,groovy]
37 |
38 | ----
39 | plugins {
40 | id 'io.vertx.vertx-plugin' version 'x.y.z' // <1>
41 | }
42 |
43 | repositories {
44 | jcenter()
45 | }
46 |
47 | vertx {
48 | mainVerticle = 'sample.App'
49 | }
50 | ----
51 |
52 | image:https://img.shields.io/maven-metadata/v/https/plugins.gradle.org/m2/io/vertx/vertx-plugin/io.vertx.vertx-plugin.gradle.plugin/maven-metadata.xml.svg?label=gradlePluginPortal["Maven Central",link="https://plugins.gradle.org/plugin/io.vertx.vertx-plugin"]
53 | Replace `x.y.z` with a version available on the https://plugins.gradle.org/plugin/io.vertx.vertx-plugin[Gradle Plugin Portal]
54 |
55 |
56 |
57 | Provided `sample.App` is a Vert.x verticle, then:
58 |
59 | * `gradle shadowJar` builds an executable Jar with all dependencies: `java -jar build/libs/simple-project-all.jar`
60 | * `gradle vertxRun` starts the application and automatically recompiles (`gradle classes`) and reloads the code when any file under `src/` is being added, modified or deleted.
61 |
62 | === A slightly more elaborated example
63 |
64 | A project using `vertx-web` and `logback` would use a `build.gradle` definition like the following one:
65 |
66 | [source,groovy]
67 | ----
68 | plugins {
69 | id 'io.vertx.vertx-plugin' version 'x.y.z'
70 | }
71 |
72 | repositories {
73 | jcenter()
74 | }
75 |
76 | dependencies {
77 | compile "io.vertx:vertx-web" // <1>
78 | compile "ch.qos.logback:logback-classic:1.2.3" // <2>
79 | }
80 |
81 | vertx {
82 | mainVerticle = "sample.App"
83 | vertxVersion = "4.1.2" // <3>
84 | }
85 | ----
86 | <1> Part of the Vert.x stack, so the version can be omitted.
87 | <2> Logback needs a version.
88 | <3> You can override to point to any specific release of Vert.x.
89 |
90 | === Kotlin projects
91 |
92 | This plugin works with Kotlin projects too:
93 |
94 |
95 | [source,groovy]
96 | ----
97 | plugins {
98 | id 'io.vertx.vertx-plugin' version 'x.y.z'
99 | id 'org.jetbrains.kotlin.jvm' version 'a.b.c'
100 | }
101 |
102 | repositories {
103 | jcenter()
104 | }
105 |
106 | dependencies {
107 | compile 'io.vertx:vertx-lang-kotlin'
108 | compile 'org.jetbrains.kotlin:kotlin-stdlib-jdk8' // <1>
109 | }
110 |
111 | vertx {
112 | mainVerticle = "sample.MainVerticle" // <2>
113 | }
114 |
115 | tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all { // <3>
116 | kotlinOptions {
117 | jvmTarget = "1.8"
118 | }
119 | }
120 | ----
121 | <1> This pulls all the Kotlin standard library dependencies for JDK 8+.
122 | <2> This verticle can be written in Kotlin (or Java).
123 | <3> By default Kotlin compiles to Java 6 bytecode, so it is worth changing all compilation tasks to match Java 8 bytecode.
124 |
125 | === Using Kotlin DSL
126 |
127 | [source,kotlin]
128 | ----
129 | plugins {
130 | id("io.vertx.vertx-plugin") version "x.y.z"
131 | }
132 |
133 | repositories {
134 | jcenter()
135 | }
136 |
137 | vertx { // <1>
138 | mainVerticle = "sample.App"
139 | }
140 | ----
141 | <1> Extension method on `org.gradle.api.Project`.
142 |
143 | == Configuration
144 |
145 | The configuration happens through the `vertx` Gradle extension.
146 |
147 | The following configuration can be applied, and matches the `vertx run` command-line interface when possible:
148 |
149 | [cols=3,options="header"]
150 | |===
151 | | Option
152 | | Description
153 | | Default value
154 |
155 | |`vertxVersion`
156 | |the Vert.x version to use
157 | |`"4.1.2"`
158 |
159 | |`launcher`
160 | |the main class name
161 | | `io.vertx.core.Launcher`
162 |
163 | |`mainVerticle`
164 | |the main verticle
165 | | `""`
166 |
167 | |`args`
168 | |a list of command-line arguments to pass
169 | |`[]`
170 |
171 | |`config`
172 | |either a file or direct JSON data to provide configuration
173 | |`""`
174 |
175 | |`workDirectory`
176 | |the working directory
177 | |`project.projectDir`
178 |
179 | |`jvmArgs`
180 | |extra JVM arguments
181 | |`[]`
182 |
183 | |`redeploy`
184 | |whether automatic redeployment shall happen or not
185 | |`true`
186 |
187 | |`watch`
188 | |Ant-style matchers for files to watch for modifications
189 | |[`src/\**/*`]
190 |
191 | |`onRedeploy`
192 | |the Gradle tasks to run before redeploying
193 | |`["classes"]`
194 |
195 | |`redeployScanPeriod` / `redeployGracePeriod` / `redeployTerminationPeriod`
196 | |tuning for the redeployment watch timers
197 | |`1000L` (1 second each)
198 |
199 | |`debugPort`
200 | | The debugger port
201 | |`5005L`
202 |
203 | |`debugSuspend`
204 | | Whether or not the application must wait until a debugger is attached to start
205 | |`false`
206 |
207 | |===
208 |
209 | The default values are listed in `src/main/kotlin/io/vertx/gradle/VertxExtension.kt`.
210 |
211 | By default redeployment is enabled, running `gradle classes` to recompile, and watching all files under `src/`.
212 |
213 | == Licensing
214 |
215 | ----
216 | Copyright 2017-2019 Red Hat, Inc.
217 |
218 | Licensed under the Apache License, Version 2.0 (the "License");
219 | you may not use this file except in compliance with the License.
220 | You may obtain a copy of the License at
221 |
222 | http://www.apache.org/licenses/LICENSE-2.0
223 |
224 | Unless required by applicable law or agreed to in writing, software
225 | distributed under the License is distributed on an "AS IS" BASIS,
226 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
227 | See the License for the specific language governing permissions and
228 | limitations under the License.
229 | ----
230 |
231 | == Credits
232 |
233 | The plugin was originally created by https://julien.ponge.org/[Julien Ponge].
234 |
235 | Thanks to the folks at Gradle for their guidance and technical discussions:
236 |
237 | * Cédric Champeau
238 | * Stefan Oheme
239 | * Rodrigo B. de Oliveira
240 | * Eric Wendelin
241 | * Benjamin Muschko
242 |
243 | Thanks also to https://github.com/jponge/vertx-gradle-plugin/graphs/contributors[all the contributors to this project].
244 |
--------------------------------------------------------------------------------
/gradlew:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | #
4 | # Copyright © 2015-2021 the original authors.
5 | #
6 | # Licensed under the Apache License, Version 2.0 (the "License");
7 | # you may not use this file except in compliance with the License.
8 | # You may obtain a copy of the License at
9 | #
10 | # https://www.apache.org/licenses/LICENSE-2.0
11 | #
12 | # Unless required by applicable law or agreed to in writing, software
13 | # distributed under the License is distributed on an "AS IS" BASIS,
14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 | # See the License for the specific language governing permissions and
16 | # limitations under the License.
17 | #
18 |
19 | ##############################################################################
20 | #
21 | # Gradle start up script for POSIX generated by Gradle.
22 | #
23 | # Important for running:
24 | #
25 | # (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
26 | # noncompliant, but you have some other compliant shell such as ksh or
27 | # bash, then to run this script, type that shell name before the whole
28 | # command line, like:
29 | #
30 | # ksh Gradle
31 | #
32 | # Busybox and similar reduced shells will NOT work, because this script
33 | # requires all of these POSIX shell features:
34 | # * functions;
35 | # * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
36 | # «${var#prefix}», «${var%suffix}», and «$( cmd )»;
37 | # * compound commands having a testable exit status, especially «case»;
38 | # * various built-in commands including «command», «set», and «ulimit».
39 | #
40 | # Important for patching:
41 | #
42 | # (2) This script targets any POSIX shell, so it avoids extensions provided
43 | # by Bash, Ksh, etc; in particular arrays are avoided.
44 | #
45 | # The "traditional" practice of packing multiple parameters into a
46 | # space-separated string is a well documented source of bugs and security
47 | # problems, so this is (mostly) avoided, by progressively accumulating
48 | # options in "$@", and eventually passing that to Java.
49 | #
50 | # Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
51 | # and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
52 | # see the in-line comments for details.
53 | #
54 | # There are tweaks for specific operating systems such as AIX, CygWin,
55 | # Darwin, MinGW, and NonStop.
56 | #
57 | # (3) This script is generated from the Groovy template
58 | # https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
59 | # within the Gradle project.
60 | #
61 | # You can find Gradle at https://github.com/gradle/gradle/.
62 | #
63 | ##############################################################################
64 |
65 | # Attempt to set APP_HOME
66 |
67 | # Resolve links: $0 may be a link
68 | app_path=$0
69 |
70 | # Need this for daisy-chained symlinks.
71 | while
72 | APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
73 | [ -h "$app_path" ]
74 | do
75 | ls=$( ls -ld "$app_path" )
76 | link=${ls#*' -> '}
77 | case $link in #(
78 | /*) app_path=$link ;; #(
79 | *) app_path=$APP_HOME$link ;;
80 | esac
81 | done
82 |
83 | # This is normally unused
84 | # shellcheck disable=SC2034
85 | APP_BASE_NAME=${0##*/}
86 | APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
87 |
88 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
89 | DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
90 |
91 | # Use the maximum available, or set MAX_FD != -1 to use that value.
92 | MAX_FD=maximum
93 |
94 | warn () {
95 | echo "$*"
96 | } >&2
97 |
98 | die () {
99 | echo
100 | echo "$*"
101 | echo
102 | exit 1
103 | } >&2
104 |
105 | # OS specific support (must be 'true' or 'false').
106 | cygwin=false
107 | msys=false
108 | darwin=false
109 | nonstop=false
110 | case "$( uname )" in #(
111 | CYGWIN* ) cygwin=true ;; #(
112 | Darwin* ) darwin=true ;; #(
113 | MSYS* | MINGW* ) msys=true ;; #(
114 | NONSTOP* ) nonstop=true ;;
115 | esac
116 |
117 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
118 |
119 |
120 | # Determine the Java command to use to start the JVM.
121 | if [ -n "$JAVA_HOME" ] ; then
122 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
123 | # IBM's JDK on AIX uses strange locations for the executables
124 | JAVACMD=$JAVA_HOME/jre/sh/java
125 | else
126 | JAVACMD=$JAVA_HOME/bin/java
127 | fi
128 | if [ ! -x "$JAVACMD" ] ; then
129 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
130 |
131 | Please set the JAVA_HOME variable in your environment to match the
132 | location of your Java installation."
133 | fi
134 | else
135 | JAVACMD=java
136 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
137 |
138 | Please set the JAVA_HOME variable in your environment to match the
139 | location of your Java installation."
140 | fi
141 |
142 | # Increase the maximum file descriptors if we can.
143 | if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
144 | case $MAX_FD in #(
145 | max*)
146 | # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
147 | # shellcheck disable=SC3045
148 | MAX_FD=$( ulimit -H -n ) ||
149 | warn "Could not query maximum file descriptor limit"
150 | esac
151 | case $MAX_FD in #(
152 | '' | soft) :;; #(
153 | *)
154 | # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
155 | # shellcheck disable=SC3045
156 | ulimit -n "$MAX_FD" ||
157 | warn "Could not set maximum file descriptor limit to $MAX_FD"
158 | esac
159 | fi
160 |
161 | # Collect all arguments for the java command, stacking in reverse order:
162 | # * args from the command line
163 | # * the main class name
164 | # * -classpath
165 | # * -D...appname settings
166 | # * --module-path (only if needed)
167 | # * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
168 |
169 | # For Cygwin or MSYS, switch paths to Windows format before running java
170 | if "$cygwin" || "$msys" ; then
171 | APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
172 | CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
173 |
174 | JAVACMD=$( cygpath --unix "$JAVACMD" )
175 |
176 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
177 | for arg do
178 | if
179 | case $arg in #(
180 | -*) false ;; # don't mess with options #(
181 | /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
182 | [ -e "$t" ] ;; #(
183 | *) false ;;
184 | esac
185 | then
186 | arg=$( cygpath --path --ignore --mixed "$arg" )
187 | fi
188 | # Roll the args list around exactly as many times as the number of
189 | # args, so each arg winds up back in the position where it started, but
190 | # possibly modified.
191 | #
192 | # NB: a `for` loop captures its iteration list before it begins, so
193 | # changing the positional parameters here affects neither the number of
194 | # iterations, nor the values presented in `arg`.
195 | shift # remove old arg
196 | set -- "$@" "$arg" # push replacement arg
197 | done
198 | fi
199 |
200 | # Collect all arguments for the java command;
201 | # * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
202 | # shell script including quotes and variable substitutions, so put them in
203 | # double quotes to make sure that they get re-expanded; and
204 | # * put everything else in single quotes, so that it's not re-expanded.
205 |
206 | set -- \
207 | "-Dorg.gradle.appname=$APP_BASE_NAME" \
208 | -classpath "$CLASSPATH" \
209 | org.gradle.wrapper.GradleWrapperMain \
210 | "$@"
211 |
212 | # Stop when "xargs" is not available.
213 | if ! command -v xargs >/dev/null 2>&1
214 | then
215 | die "xargs is not available"
216 | fi
217 |
218 | # Use "xargs" to parse quoted args.
219 | #
220 | # With -n1 it outputs one arg per line, with the quotes and backslashes removed.
221 | #
222 | # In Bash we could simply go:
223 | #
224 | # readarray ARGS < <( xargs -n1 <<<"$var" ) &&
225 | # set -- "${ARGS[@]}" "$@"
226 | #
227 | # but POSIX shell has neither arrays nor command substitution, so instead we
228 | # post-process each arg (as a line of input to sed) to backslash-escape any
229 | # character that might be a shell metacharacter, then use eval to reverse
230 | # that process (while maintaining the separation between arguments), and wrap
231 | # the whole thing up as a single "set" statement.
232 | #
233 | # This will of course break if any of these variables contains a newline or
234 | # an unmatched quote.
235 | #
236 |
237 | eval "set -- $(
238 | printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
239 | xargs -n1 |
240 | sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
241 | tr '\n' ' '
242 | )" '"$@"'
243 |
244 | exec "$JAVACMD" "$@"
245 |
--------------------------------------------------------------------------------
/src/main/kotlin/io/vertx/gradle/VertxPlugin.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2017-2019 Red Hat, Inc.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
17 | package io.vertx.gradle
18 |
19 | import com.github.jengelman.gradle.plugins.shadow.ShadowPlugin
20 | import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
21 | import org.apache.tools.ant.taskdefs.condition.Os
22 | import org.gradle.api.GradleException
23 | import org.gradle.api.Plugin
24 | import org.gradle.api.Project
25 | import org.gradle.api.plugins.*
26 | import org.gradle.api.tasks.JavaExec
27 | import org.slf4j.LoggerFactory
28 | import java.io.File
29 | import java.util.*
30 |
31 | /**
32 | * A Gradle plugin for Eclipse Vert.x projects.
33 | *
34 | * @author [Julien Ponge](https://julien.ponge.org/)
35 | */
36 | class VertxPlugin : Plugin {
37 |
38 | private val logger = LoggerFactory.getLogger(VertxPlugin::class.java)
39 |
40 | private lateinit var gradleCommand: String
41 |
42 | override fun apply(project: Project) {
43 | findGradleCommand(project)
44 | installVertxExtension(project)
45 | applyOtherPlugins(project)
46 | createVertxTasks(project)
47 | project.afterEvaluate {
48 | logger.debug("Vert.x plugin configuration: ${project.vertxExtension()}")
49 | configureVertxVersion(project)
50 | addVertxCoreDependency(project)
51 | defineMainClassName(project)
52 | configureShadowPlugin(project)
53 | configureVertxRunTask(project)
54 | configureVertxDebugTask(project)
55 | }
56 | }
57 |
58 | private fun findGradleCommand(project: Project) {
59 | val globalGradle = if (Os.isFamily(Os.FAMILY_WINDOWS)) "gradle.bat" else "gradle"
60 | val gradlewScript = if (Os.isFamily(Os.FAMILY_WINDOWS)) "gradlew.bat" else "gradlew"
61 |
62 | fun findRecursively(dir: File): Optional {
63 | val script = File(dir, gradlewScript)
64 | return when {
65 | script.exists() -> Optional.of(script.absolutePath)
66 | dir.parentFile != null -> findRecursively(dir.parentFile)
67 | else -> Optional.empty()
68 | }
69 | }
70 |
71 | gradleCommand = findRecursively(project.projectDir).orElse(globalGradle)
72 | }
73 |
74 | private fun installVertxExtension(project: Project) {
75 | project.extensions.create("vertx", VertxExtension::class.java, project)
76 | logger.debug("vertx extension created and added to the project")
77 | }
78 |
79 | private fun Project.vertxExtension(): VertxExtension = this.extensions.getByName("vertx") as VertxExtension
80 |
81 | private fun applyOtherPlugins(project: Project) {
82 | logger.debug("Applying the plugins needed by the Vert.x plugin")
83 | with(project.pluginManager) {
84 | apply(JavaPlugin::class.java)
85 | apply(ApplicationPlugin::class.java)
86 | apply(ShadowPlugin::class.java)
87 | }
88 | logger.debug("The plugins needed by the Vert.x plugin have been applied")
89 | }
90 |
91 | private fun configureVertxVersion(project: Project) {
92 | val vertxVersion = project.vertxExtension().vertxVersion
93 | project.extensions.extraProperties["stack.version"] = vertxVersion
94 | project.dependencies.apply {
95 | add("implementation", platform("io.vertx:vertx-stack-depchain:$vertxVersion"))
96 | }
97 | logger.debug("Recommending Vert.x version $vertxVersion")
98 | }
99 |
100 | private fun addVertxCoreDependency(project: Project) {
101 | project.dependencies.apply {
102 | add("implementation", "io.vertx:vertx-core")
103 | }
104 | logger.debug("Added vertx-core as a compile dependency")
105 | }
106 |
107 | private fun defineMainClassName(project: Project) {
108 | val vertxExtension = project.vertxExtension()
109 | val applicationConvention = project.convention.getPlugin(ApplicationPluginConvention::class.java)
110 | applicationConvention.mainClassName = vertxExtension.launcher
111 | logger.debug("The main class has been set to ${vertxExtension.launcher}")
112 | }
113 |
114 | private fun configureShadowPlugin(project: Project) {
115 | val shadowJarTask = project.tasks.getByName("shadowJar") as ShadowJar
116 | val vertxExtension = project.vertxExtension()
117 | shadowJarTask.apply {
118 | archiveClassifier.set("all")
119 | mergeServiceFiles { serviceFiles ->
120 | serviceFiles.include("META-INF/services/io.vertx.core.spi.VerticleFactory")
121 | serviceFiles.include("META-INF/spring.*")
122 | }
123 | manifest { manifest ->
124 | manifest.attributes["Main-Verticle"] = vertxExtension.mainVerticle
125 | }
126 | }
127 | logger.debug("The shadow plugin has been configured")
128 | }
129 |
130 | private fun createVertxTasks(project: Project) {
131 | project.tasks.create("vertxRun", JavaExec::class.java).dependsOn("classes")
132 | project.tasks.create("vertxDebug", JavaExec::class.java).dependsOn("classes")
133 | logger.debug("The vertx tasks have been created")
134 | }
135 |
136 | private fun configureVertxRunTask(project: Project) {
137 | val vertxExtension = project.vertxExtension()
138 | val javaConvention = project.convention.getPlugin(JavaPluginConvention::class.java)
139 | val mainSourceSet = javaConvention.sourceSets.getByName("main")
140 |
141 | (project.tasks.getByName("vertxRun") as JavaExec).apply {
142 | group = "Application"
143 | description = "Runs this project as a Vert.x application"
144 |
145 | workingDir(File(vertxExtension.workDirectory))
146 | jvmArgs(vertxExtension.jvmArgs)
147 | classpath(mainSourceSet.runtimeClasspath)
148 |
149 | mainClass.set(if (vertxExtension.redeploy) "io.vertx.core.Launcher" else vertxExtension.launcher)
150 |
151 | if (vertxExtension.mainVerticle.isBlank()) {
152 | if (vertxExtension.launcher == "io.vertx.core.Launcher") {
153 | throw GradleException("Extension property vertx.mainVerticle must be specified when using io.vertx.core.Launcher as a launcher")
154 | }
155 | args("run")
156 | } else {
157 | args("run", vertxExtension.mainVerticle)
158 | }
159 |
160 | if (vertxExtension.redeploy) {
161 | args("--launcher-class", vertxExtension.launcher)
162 | if (vertxExtension.jvmArgs.isNotEmpty()) {
163 | args("--java-opts", vertxExtension.jvmArgs.joinToString(separator = " ", prefix = "\"", postfix = "\""))
164 | }
165 | args("--redeploy", vertxExtension.watch.joinToString(separator = ","))
166 | if (vertxExtension.onRedeploy.isNotEmpty()) {
167 | args("--on-redeploy", "$gradleCommand ${vertxExtension.onRedeploy.joinToString(separator = " ")}")
168 | }
169 | args("--redeploy-grace-period", vertxExtension.redeployGracePeriod)
170 | args("--redeploy-scan-period", vertxExtension.redeployScanPeriod)
171 | args("--redeploy-termination-period", vertxExtension.redeployTerminationPeriod)
172 | }
173 |
174 | if (vertxExtension.config.isNotBlank()) {
175 | args("--conf", vertxExtension.config)
176 | }
177 | vertxExtension.args.forEach { args(it) }
178 | }
179 |
180 | logger.debug("The vertxRun task has been configured")
181 | }
182 |
183 | private fun configureVertxDebugTask(project: Project) {
184 | val vertxExtension = project.vertxExtension()
185 | val javaConvention = project.convention.getPlugin(JavaPluginConvention::class.java)
186 | val mainSourceSet = javaConvention.sourceSets.getByName("main")
187 |
188 | (project.tasks.getByName("vertxDebug") as JavaExec).apply {
189 | group = "Application"
190 | description = "Debugs this project as a Vert.x application"
191 |
192 | workingDir(File(vertxExtension.workDirectory))
193 | jvmArgs(vertxExtension.jvmArgs)
194 | jvmArgs(computeDebugOptions(project))
195 | classpath(mainSourceSet.runtimeClasspath)
196 |
197 | mainClass.set(vertxExtension.launcher)
198 |
199 | if (vertxExtension.mainVerticle.isBlank()) {
200 | if (vertxExtension.launcher == "io.vertx.core.Launcher") {
201 | throw GradleException("Extension property vertx.mainVerticle must be specified when using io.vertx.core.Launcher as a launcher")
202 | }
203 | args("run")
204 | } else {
205 | args("run", vertxExtension.mainVerticle)
206 | }
207 | if (vertxExtension.config.isNotBlank()) {
208 | args("--conf", vertxExtension.config)
209 | }
210 | vertxExtension.args.forEach { args(it) }
211 | }
212 |
213 | logger.debug("The vertxDebug task has been configured")
214 | }
215 |
216 | private fun computeDebugOptions(project: Project): List {
217 | val vertxExtension = project.vertxExtension()
218 | val debugger = "-agentlib:jdwp=transport=dt_socket,server=y,suspend=" +
219 | (if (vertxExtension.debugSuspend) "y" else "n") + ",address=${vertxExtension.debugPort}"
220 | val disableEventLoopchecker = "-Dvertx.options.maxEventLoopExecuteTime=${java.lang.Long.MAX_VALUE}"
221 | val disableWorkerchecker = "-Dvertx.options.maxWorkerExecuteTime=${java.lang.Long.MAX_VALUE}"
222 | val mark = "-Dvertx.debug=true"
223 |
224 | return arrayListOf(debugger, disableEventLoopchecker, disableWorkerchecker, mark)
225 | }
226 | }
227 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 |
2 | Apache License
3 | Version 2.0, January 2004
4 | http://www.apache.org/licenses/
5 |
6 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7 |
8 | 1. Definitions.
9 |
10 | "License" shall mean the terms and conditions for use, reproduction,
11 | and distribution as defined by Sections 1 through 9 of this document.
12 |
13 | "Licensor" shall mean the copyright owner or entity authorized by
14 | the copyright owner that is granting the License.
15 |
16 | "Legal Entity" shall mean the union of the acting entity and all
17 | other entities that control, are controlled by, or are under common
18 | control with that entity. For the purposes of this definition,
19 | "control" means (i) the power, direct or indirect, to cause the
20 | direction or management of such entity, whether by contract or
21 | otherwise, or (ii) ownership of fifty percent (50%) or more of the
22 | outstanding shares, or (iii) beneficial ownership of such entity.
23 |
24 | "You" (or "Your") shall mean an individual or Legal Entity
25 | exercising permissions granted by this License.
26 |
27 | "Source" form shall mean the preferred form for making modifications,
28 | including but not limited to software source code, documentation
29 | source, and configuration files.
30 |
31 | "Object" form shall mean any form resulting from mechanical
32 | transformation or translation of a Source form, including but
33 | not limited to compiled object code, generated documentation,
34 | and conversions to other media types.
35 |
36 | "Work" shall mean the work of authorship, whether in Source or
37 | Object form, made available under the License, as indicated by a
38 | copyright notice that is included in or attached to the work
39 | (an example is provided in the Appendix below).
40 |
41 | "Derivative Works" shall mean any work, whether in Source or Object
42 | form, that is based on (or derived from) the Work and for which the
43 | editorial revisions, annotations, elaborations, or other modifications
44 | represent, as a whole, an original work of authorship. For the purposes
45 | of this License, Derivative Works shall not include works that remain
46 | separable from, or merely link (or bind by name) to the interfaces of,
47 | the Work and Derivative Works thereof.
48 |
49 | "Contribution" shall mean any work of authorship, including
50 | the original version of the Work and any modifications or additions
51 | to that Work or Derivative Works thereof, that is intentionally
52 | submitted to Licensor for inclusion in the Work by the copyright owner
53 | or by an individual or Legal Entity authorized to submit on behalf of
54 | the copyright owner. For the purposes of this definition, "submitted"
55 | means any form of electronic, verbal, or written communication sent
56 | to the Licensor or its representatives, including but not limited to
57 | communication on electronic mailing lists, source code control systems,
58 | and issue tracking systems that are managed by, or on behalf of, the
59 | Licensor for the purpose of discussing and improving the Work, but
60 | excluding communication that is conspicuously marked or otherwise
61 | designated in writing by the copyright owner as "Not a Contribution."
62 |
63 | "Contributor" shall mean Licensor and any individual or Legal Entity
64 | on behalf of whom a Contribution has been received by Licensor and
65 | subsequently incorporated within the Work.
66 |
67 | 2. Grant of Copyright License. Subject to the terms and conditions of
68 | this License, each Contributor hereby grants to You a perpetual,
69 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70 | copyright license to reproduce, prepare Derivative Works of,
71 | publicly display, publicly perform, sublicense, and distribute the
72 | Work and such Derivative Works in Source or Object form.
73 |
74 | 3. Grant of Patent License. Subject to the terms and conditions of
75 | this License, each Contributor hereby grants to You a perpetual,
76 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77 | (except as stated in this section) patent license to make, have made,
78 | use, offer to sell, sell, import, and otherwise transfer the Work,
79 | where such license applies only to those patent claims licensable
80 | by such Contributor that are necessarily infringed by their
81 | Contribution(s) alone or by combination of their Contribution(s)
82 | with the Work to which such Contribution(s) was submitted. If You
83 | institute patent litigation against any entity (including a
84 | cross-claim or counterclaim in a lawsuit) alleging that the Work
85 | or a Contribution incorporated within the Work constitutes direct
86 | or contributory patent infringement, then any patent licenses
87 | granted to You under this License for that Work shall terminate
88 | as of the date such litigation is filed.
89 |
90 | 4. Redistribution. You may reproduce and distribute copies of the
91 | Work or Derivative Works thereof in any medium, with or without
92 | modifications, and in Source or Object form, provided that You
93 | meet the following conditions:
94 |
95 | (a) You must give any other recipients of the Work or
96 | Derivative Works a copy of this License; and
97 |
98 | (b) You must cause any modified files to carry prominent notices
99 | stating that You changed the files; and
100 |
101 | (c) You must retain, in the Source form of any Derivative Works
102 | that You distribute, all copyright, patent, trademark, and
103 | attribution notices from the Source form of the Work,
104 | excluding those notices that do not pertain to any part of
105 | the Derivative Works; and
106 |
107 | (d) If the Work includes a "NOTICE" text file as part of its
108 | distribution, then any Derivative Works that You distribute must
109 | include a readable copy of the attribution notices contained
110 | within such NOTICE file, excluding those notices that do not
111 | pertain to any part of the Derivative Works, in at least one
112 | of the following places: within a NOTICE text file distributed
113 | as part of the Derivative Works; within the Source form or
114 | documentation, if provided along with the Derivative Works; or,
115 | within a display generated by the Derivative Works, if and
116 | wherever such third-party notices normally appear. The contents
117 | of the NOTICE file are for informational purposes only and
118 | do not modify the License. You may add Your own attribution
119 | notices within Derivative Works that You distribute, alongside
120 | or as an addendum to the NOTICE text from the Work, provided
121 | that such additional attribution notices cannot be construed
122 | as modifying the License.
123 |
124 | You may add Your own copyright statement to Your modifications and
125 | may provide additional or different license terms and conditions
126 | for use, reproduction, or distribution of Your modifications, or
127 | for any such Derivative Works as a whole, provided Your use,
128 | reproduction, and distribution of the Work otherwise complies with
129 | the conditions stated in this License.
130 |
131 | 5. Submission of Contributions. Unless You explicitly state otherwise,
132 | any Contribution intentionally submitted for inclusion in the Work
133 | by You to the Licensor shall be under the terms and conditions of
134 | this License, without any additional terms or conditions.
135 | Notwithstanding the above, nothing herein shall supersede or modify
136 | the terms of any separate license agreement you may have executed
137 | with Licensor regarding such Contributions.
138 |
139 | 6. Trademarks. This License does not grant permission to use the trade
140 | names, trademarks, service marks, or product names of the Licensor,
141 | except as required for reasonable and customary use in describing the
142 | origin of the Work and reproducing the content of the NOTICE file.
143 |
144 | 7. Disclaimer of Warranty. Unless required by applicable law or
145 | agreed to in writing, Licensor provides the Work (and each
146 | Contributor provides its Contributions) on an "AS IS" BASIS,
147 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148 | implied, including, without limitation, any warranties or conditions
149 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150 | PARTICULAR PURPOSE. You are solely responsible for determining the
151 | appropriateness of using or redistributing the Work and assume any
152 | risks associated with Your exercise of permissions under this License.
153 |
154 | 8. Limitation of Liability. In no event and under no legal theory,
155 | whether in tort (including negligence), contract, or otherwise,
156 | unless required by applicable law (such as deliberate and grossly
157 | negligent acts) or agreed to in writing, shall any Contributor be
158 | liable to You for damages, including any direct, indirect, special,
159 | incidental, or consequential damages of any character arising as a
160 | result of this License or out of the use or inability to use the
161 | Work (including but not limited to damages for loss of goodwill,
162 | work stoppage, computer failure or malfunction, or any and all
163 | other commercial damages or losses), even if such Contributor
164 | has been advised of the possibility of such damages.
165 |
166 | 9. Accepting Warranty or Additional Liability. While redistributing
167 | the Work or Derivative Works thereof, You may choose to offer,
168 | and charge a fee for, acceptance of support, warranty, indemnity,
169 | or other liability obligations and/or rights consistent with this
170 | License. However, in accepting such obligations, You may act only
171 | on Your own behalf and on Your sole responsibility, not on behalf
172 | of any other Contributor, and only if You agree to indemnify,
173 | defend, and hold each Contributor harmless for any liability
174 | incurred by, or claims asserted against, such Contributor by reason
175 | of your accepting any such warranty or additional liability.
176 |
177 | END OF TERMS AND CONDITIONS
178 |
179 | APPENDIX: How to apply the Apache License to your work.
180 |
181 | To apply the Apache License to your work, attach the following
182 | boilerplate notice, with the fields enclosed by brackets "[]"
183 | replaced with your own identifying information. (Don't include
184 | the brackets!) The text should be enclosed in the appropriate
185 | comment syntax for the file format. We also recommend that a
186 | file or class name and description of purpose be included on the
187 | same "printed page" as the copyright notice for easier
188 | identification within third-party archives.
189 |
190 | Copyright [yyyy] [name of copyright owner]
191 |
192 | Licensed under the Apache License, Version 2.0 (the "License");
193 | you may not use this file except in compliance with the License.
194 | You may obtain a copy of the License at
195 |
196 | http://www.apache.org/licenses/LICENSE-2.0
197 |
198 | Unless required by applicable law or agreed to in writing, software
199 | distributed under the License is distributed on an "AS IS" BASIS,
200 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201 | See the License for the specific language governing permissions and
202 | limitations under the License.
203 |
--------------------------------------------------------------------------------
/src/test/gradle/webpack-sample/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | acorn-dynamic-import@^2.0.0:
6 | version "2.0.2"
7 | resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz#c752bd210bef679501b6c6cb7fc84f8f47158cc4"
8 | integrity sha1-x1K9IQvvZ5UBtsbLf8hPj0cVjMQ=
9 | dependencies:
10 | acorn "^4.0.3"
11 |
12 | acorn@^4.0.3:
13 | version "4.0.13"
14 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787"
15 | integrity sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=
16 |
17 | acorn@^5.0.0:
18 | version "5.7.4"
19 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz#3e8d8a9947d0599a1796d10225d7432f4a4acf5e"
20 | integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==
21 |
22 | ajv-keywords@^1.1.1:
23 | version "1.5.1"
24 | resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c"
25 | integrity sha1-MU3QpLM2j609/NxU7eYXG4htrzw=
26 |
27 | ajv@^4.7.0:
28 | version "4.11.8"
29 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536"
30 | integrity sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=
31 | dependencies:
32 | co "^4.6.0"
33 | json-stable-stringify "^1.0.1"
34 |
35 | align-text@^0.1.1, align-text@^0.1.3:
36 | version "0.1.4"
37 | resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
38 | integrity sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=
39 | dependencies:
40 | kind-of "^3.0.2"
41 | longest "^1.0.1"
42 | repeat-string "^1.5.2"
43 |
44 | ansi-regex@^2.0.0:
45 | version "2.1.1"
46 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
47 | integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
48 |
49 | anymatch@^2.0.0:
50 | version "2.0.0"
51 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb"
52 | integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==
53 | dependencies:
54 | micromatch "^3.1.4"
55 | normalize-path "^2.1.1"
56 |
57 | anymatch@~3.1.1:
58 | version "3.1.1"
59 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142"
60 | integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==
61 | dependencies:
62 | normalize-path "^3.0.0"
63 | picomatch "^2.0.4"
64 |
65 | arr-diff@^4.0.0:
66 | version "4.0.0"
67 | resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
68 | integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=
69 |
70 | arr-flatten@^1.1.0:
71 | version "1.1.0"
72 | resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
73 | integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==
74 |
75 | arr-union@^3.1.0:
76 | version "3.1.0"
77 | resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4"
78 | integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=
79 |
80 | array-unique@^0.3.2:
81 | version "0.3.2"
82 | resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
83 | integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=
84 |
85 | asn1.js@^4.0.0:
86 | version "4.10.1"
87 | resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0"
88 | integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==
89 | dependencies:
90 | bn.js "^4.0.0"
91 | inherits "^2.0.1"
92 | minimalistic-assert "^1.0.0"
93 |
94 | assert@^1.1.1:
95 | version "1.5.0"
96 | resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb"
97 | integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==
98 | dependencies:
99 | object-assign "^4.1.1"
100 | util "0.10.3"
101 |
102 | assign-symbols@^1.0.0:
103 | version "1.0.0"
104 | resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
105 | integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=
106 |
107 | async-each@^1.0.1:
108 | version "1.0.3"
109 | resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf"
110 | integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==
111 |
112 | async@^2.1.2:
113 | version "2.6.3"
114 | resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff"
115 | integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==
116 | dependencies:
117 | lodash "^4.17.14"
118 |
119 | atob@^2.1.2:
120 | version "2.1.2"
121 | resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
122 | integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
123 |
124 | axios@^0.21.1:
125 | version "0.21.1"
126 | resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8"
127 | integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==
128 | dependencies:
129 | follow-redirects "^1.10.0"
130 |
131 | base64-js@^1.0.2:
132 | version "1.3.1"
133 | resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1"
134 | integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==
135 |
136 | base@^0.11.1:
137 | version "0.11.2"
138 | resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f"
139 | integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==
140 | dependencies:
141 | cache-base "^1.0.1"
142 | class-utils "^0.3.5"
143 | component-emitter "^1.2.1"
144 | define-property "^1.0.0"
145 | isobject "^3.0.1"
146 | mixin-deep "^1.2.0"
147 | pascalcase "^0.1.1"
148 |
149 | big.js@^3.1.3:
150 | version "3.2.0"
151 | resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e"
152 | integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==
153 |
154 | binary-extensions@^1.0.0:
155 | version "1.13.1"
156 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65"
157 | integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==
158 |
159 | binary-extensions@^2.0.0:
160 | version "2.1.0"
161 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9"
162 | integrity sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==
163 |
164 | bindings@^1.5.0:
165 | version "1.5.0"
166 | resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df"
167 | integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==
168 | dependencies:
169 | file-uri-to-path "1.0.0"
170 |
171 | bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9:
172 | version "4.12.0"
173 | resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88"
174 | integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==
175 |
176 | bn.js@^5.1.1:
177 | version "5.1.2"
178 | resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.2.tgz#c9686902d3c9a27729f43ab10f9d79c2004da7b0"
179 | integrity sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==
180 |
181 | braces@^2.3.1, braces@^2.3.2:
182 | version "2.3.2"
183 | resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729"
184 | integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==
185 | dependencies:
186 | arr-flatten "^1.1.0"
187 | array-unique "^0.3.2"
188 | extend-shallow "^2.0.1"
189 | fill-range "^4.0.0"
190 | isobject "^3.0.1"
191 | repeat-element "^1.1.2"
192 | snapdragon "^0.8.1"
193 | snapdragon-node "^2.0.1"
194 | split-string "^3.0.2"
195 | to-regex "^3.0.1"
196 |
197 | braces@~3.0.2:
198 | version "3.0.2"
199 | resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
200 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
201 | dependencies:
202 | fill-range "^7.0.1"
203 |
204 | brorand@^1.0.1, brorand@^1.1.0:
205 | version "1.1.0"
206 | resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
207 | integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=
208 |
209 | browserify-aes@^1.0.0, browserify-aes@^1.0.4:
210 | version "1.2.0"
211 | resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"
212 | integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==
213 | dependencies:
214 | buffer-xor "^1.0.3"
215 | cipher-base "^1.0.0"
216 | create-hash "^1.1.0"
217 | evp_bytestokey "^1.0.3"
218 | inherits "^2.0.1"
219 | safe-buffer "^5.0.1"
220 |
221 | browserify-cipher@^1.0.0:
222 | version "1.0.1"
223 | resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0"
224 | integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==
225 | dependencies:
226 | browserify-aes "^1.0.4"
227 | browserify-des "^1.0.0"
228 | evp_bytestokey "^1.0.0"
229 |
230 | browserify-des@^1.0.0:
231 | version "1.0.2"
232 | resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c"
233 | integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==
234 | dependencies:
235 | cipher-base "^1.0.1"
236 | des.js "^1.0.0"
237 | inherits "^2.0.1"
238 | safe-buffer "^5.1.2"
239 |
240 | browserify-rsa@^4.0.0, browserify-rsa@^4.0.1:
241 | version "4.0.1"
242 | resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524"
243 | integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=
244 | dependencies:
245 | bn.js "^4.1.0"
246 | randombytes "^2.0.1"
247 |
248 | browserify-sign@^4.0.0:
249 | version "4.2.0"
250 | resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.0.tgz#545d0b1b07e6b2c99211082bf1b12cce7a0b0e11"
251 | integrity sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==
252 | dependencies:
253 | bn.js "^5.1.1"
254 | browserify-rsa "^4.0.1"
255 | create-hash "^1.2.0"
256 | create-hmac "^1.1.7"
257 | elliptic "^6.5.2"
258 | inherits "^2.0.4"
259 | parse-asn1 "^5.1.5"
260 | readable-stream "^3.6.0"
261 | safe-buffer "^5.2.0"
262 |
263 | browserify-zlib@^0.2.0:
264 | version "0.2.0"
265 | resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f"
266 | integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==
267 | dependencies:
268 | pako "~1.0.5"
269 |
270 | buffer-xor@^1.0.3:
271 | version "1.0.3"
272 | resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"
273 | integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=
274 |
275 | buffer@^4.3.0:
276 | version "4.9.2"
277 | resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8"
278 | integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==
279 | dependencies:
280 | base64-js "^1.0.2"
281 | ieee754 "^1.1.4"
282 | isarray "^1.0.0"
283 |
284 | builtin-status-codes@^3.0.0:
285 | version "3.0.0"
286 | resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
287 | integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=
288 |
289 | cache-base@^1.0.1:
290 | version "1.0.1"
291 | resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
292 | integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==
293 | dependencies:
294 | collection-visit "^1.0.0"
295 | component-emitter "^1.2.1"
296 | get-value "^2.0.6"
297 | has-value "^1.0.0"
298 | isobject "^3.0.1"
299 | set-value "^2.0.0"
300 | to-object-path "^0.3.0"
301 | union-value "^1.0.0"
302 | unset-value "^1.0.0"
303 |
304 | camelcase@^1.0.2:
305 | version "1.2.1"
306 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
307 | integrity sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=
308 |
309 | camelcase@^3.0.0:
310 | version "3.0.0"
311 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a"
312 | integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo=
313 |
314 | center-align@^0.1.1:
315 | version "0.1.3"
316 | resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad"
317 | integrity sha1-qg0yYptu6XIgBBHL1EYckHvCt60=
318 | dependencies:
319 | align-text "^0.1.3"
320 | lazy-cache "^1.0.3"
321 |
322 | chokidar@^2.1.8:
323 | version "2.1.8"
324 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917"
325 | integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==
326 | dependencies:
327 | anymatch "^2.0.0"
328 | async-each "^1.0.1"
329 | braces "^2.3.2"
330 | glob-parent "^3.1.0"
331 | inherits "^2.0.3"
332 | is-binary-path "^1.0.0"
333 | is-glob "^4.0.0"
334 | normalize-path "^3.0.0"
335 | path-is-absolute "^1.0.0"
336 | readdirp "^2.2.1"
337 | upath "^1.1.1"
338 | optionalDependencies:
339 | fsevents "^1.2.7"
340 |
341 | chokidar@^3.4.0:
342 | version "3.4.0"
343 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.0.tgz#b30611423ce376357c765b9b8f904b9fba3c0be8"
344 | integrity sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==
345 | dependencies:
346 | anymatch "~3.1.1"
347 | braces "~3.0.2"
348 | glob-parent "~5.1.0"
349 | is-binary-path "~2.1.0"
350 | is-glob "~4.0.1"
351 | normalize-path "~3.0.0"
352 | readdirp "~3.4.0"
353 | optionalDependencies:
354 | fsevents "~2.1.2"
355 |
356 | cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
357 | version "1.0.4"
358 | resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
359 | integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==
360 | dependencies:
361 | inherits "^2.0.1"
362 | safe-buffer "^5.0.1"
363 |
364 | class-utils@^0.3.5:
365 | version "0.3.6"
366 | resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463"
367 | integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==
368 | dependencies:
369 | arr-union "^3.1.0"
370 | define-property "^0.2.5"
371 | isobject "^3.0.0"
372 | static-extend "^0.1.1"
373 |
374 | cliui@^2.1.0:
375 | version "2.1.0"
376 | resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1"
377 | integrity sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=
378 | dependencies:
379 | center-align "^0.1.1"
380 | right-align "^0.1.1"
381 | wordwrap "0.0.2"
382 |
383 | cliui@^3.2.0:
384 | version "3.2.0"
385 | resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d"
386 | integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=
387 | dependencies:
388 | string-width "^1.0.1"
389 | strip-ansi "^3.0.1"
390 | wrap-ansi "^2.0.0"
391 |
392 | co@^4.6.0:
393 | version "4.6.0"
394 | resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
395 | integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=
396 |
397 | code-point-at@^1.0.0:
398 | version "1.1.0"
399 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
400 | integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
401 |
402 | collection-visit@^1.0.0:
403 | version "1.0.0"
404 | resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
405 | integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=
406 | dependencies:
407 | map-visit "^1.0.0"
408 | object-visit "^1.0.0"
409 |
410 | component-emitter@^1.2.1:
411 | version "1.3.0"
412 | resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
413 | integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
414 |
415 | console-browserify@^1.1.0:
416 | version "1.2.0"
417 | resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
418 | integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==
419 |
420 | constants-browserify@^1.0.0:
421 | version "1.0.0"
422 | resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
423 | integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=
424 |
425 | copy-descriptor@^0.1.0:
426 | version "0.1.1"
427 | resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
428 | integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
429 |
430 | core-util-is@~1.0.0:
431 | version "1.0.2"
432 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
433 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
434 |
435 | create-ecdh@^4.0.0:
436 | version "4.0.3"
437 | resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff"
438 | integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==
439 | dependencies:
440 | bn.js "^4.1.0"
441 | elliptic "^6.0.0"
442 |
443 | create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:
444 | version "1.2.0"
445 | resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196"
446 | integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==
447 | dependencies:
448 | cipher-base "^1.0.1"
449 | inherits "^2.0.1"
450 | md5.js "^1.3.4"
451 | ripemd160 "^2.0.1"
452 | sha.js "^2.4.0"
453 |
454 | create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
455 | version "1.1.7"
456 | resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff"
457 | integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==
458 | dependencies:
459 | cipher-base "^1.0.3"
460 | create-hash "^1.1.0"
461 | inherits "^2.0.1"
462 | ripemd160 "^2.0.0"
463 | safe-buffer "^5.0.1"
464 | sha.js "^2.4.8"
465 |
466 | crypto-browserify@^3.11.0:
467 | version "3.12.0"
468 | resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"
469 | integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==
470 | dependencies:
471 | browserify-cipher "^1.0.0"
472 | browserify-sign "^4.0.0"
473 | create-ecdh "^4.0.0"
474 | create-hash "^1.1.0"
475 | create-hmac "^1.1.0"
476 | diffie-hellman "^5.0.0"
477 | inherits "^2.0.1"
478 | pbkdf2 "^3.0.3"
479 | public-encrypt "^4.0.0"
480 | randombytes "^2.0.0"
481 | randomfill "^1.0.3"
482 |
483 | debug@^2.2.0, debug@^2.3.3:
484 | version "2.6.9"
485 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
486 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
487 | dependencies:
488 | ms "2.0.0"
489 |
490 | decamelize@^1.0.0, decamelize@^1.1.1:
491 | version "1.2.0"
492 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
493 | integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
494 |
495 | decode-uri-component@^0.2.0:
496 | version "0.2.2"
497 | resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9"
498 | integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==
499 |
500 | define-property@^0.2.5:
501 | version "0.2.5"
502 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
503 | integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=
504 | dependencies:
505 | is-descriptor "^0.1.0"
506 |
507 | define-property@^1.0.0:
508 | version "1.0.0"
509 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6"
510 | integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY=
511 | dependencies:
512 | is-descriptor "^1.0.0"
513 |
514 | define-property@^2.0.2:
515 | version "2.0.2"
516 | resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d"
517 | integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==
518 | dependencies:
519 | is-descriptor "^1.0.2"
520 | isobject "^3.0.1"
521 |
522 | des.js@^1.0.0:
523 | version "1.0.1"
524 | resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843"
525 | integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==
526 | dependencies:
527 | inherits "^2.0.1"
528 | minimalistic-assert "^1.0.0"
529 |
530 | diffie-hellman@^5.0.0:
531 | version "5.0.3"
532 | resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"
533 | integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==
534 | dependencies:
535 | bn.js "^4.1.0"
536 | miller-rabin "^4.0.0"
537 | randombytes "^2.0.0"
538 |
539 | domain-browser@^1.1.1:
540 | version "1.2.0"
541 | resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda"
542 | integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==
543 |
544 | elliptic@^6.0.0, elliptic@^6.5.2:
545 | version "6.5.4"
546 | resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb"
547 | integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==
548 | dependencies:
549 | bn.js "^4.11.9"
550 | brorand "^1.1.0"
551 | hash.js "^1.0.0"
552 | hmac-drbg "^1.0.1"
553 | inherits "^2.0.4"
554 | minimalistic-assert "^1.0.1"
555 | minimalistic-crypto-utils "^1.0.1"
556 |
557 | emojis-list@^2.0.0:
558 | version "2.1.0"
559 | resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389"
560 | integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k=
561 |
562 | enhanced-resolve@^3.3.0:
563 | version "3.4.1"
564 | resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e"
565 | integrity sha1-BCHjOf1xQZs9oT0Smzl5BAIwR24=
566 | dependencies:
567 | graceful-fs "^4.1.2"
568 | memory-fs "^0.4.0"
569 | object-assign "^4.0.1"
570 | tapable "^0.2.7"
571 |
572 | errno@^0.1.3:
573 | version "0.1.7"
574 | resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618"
575 | integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==
576 | dependencies:
577 | prr "~1.0.1"
578 |
579 | error-ex@^1.2.0:
580 | version "1.3.2"
581 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
582 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
583 | dependencies:
584 | is-arrayish "^0.2.1"
585 |
586 | events@^3.0.0:
587 | version "3.1.0"
588 | resolved "https://registry.yarnpkg.com/events/-/events-3.1.0.tgz#84279af1b34cb75aa88bf5ff291f6d0bd9b31a59"
589 | integrity sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==
590 |
591 | evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
592 | version "1.0.3"
593 | resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
594 | integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==
595 | dependencies:
596 | md5.js "^1.3.4"
597 | safe-buffer "^5.1.1"
598 |
599 | expand-brackets@^2.1.4:
600 | version "2.1.4"
601 | resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622"
602 | integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI=
603 | dependencies:
604 | debug "^2.3.3"
605 | define-property "^0.2.5"
606 | extend-shallow "^2.0.1"
607 | posix-character-classes "^0.1.0"
608 | regex-not "^1.0.0"
609 | snapdragon "^0.8.1"
610 | to-regex "^3.0.1"
611 |
612 | extend-shallow@^2.0.1:
613 | version "2.0.1"
614 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
615 | integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=
616 | dependencies:
617 | is-extendable "^0.1.0"
618 |
619 | extend-shallow@^3.0.0, extend-shallow@^3.0.2:
620 | version "3.0.2"
621 | resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8"
622 | integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=
623 | dependencies:
624 | assign-symbols "^1.0.0"
625 | is-extendable "^1.0.1"
626 |
627 | extglob@^2.0.4:
628 | version "2.0.4"
629 | resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543"
630 | integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==
631 | dependencies:
632 | array-unique "^0.3.2"
633 | define-property "^1.0.0"
634 | expand-brackets "^2.1.4"
635 | extend-shallow "^2.0.1"
636 | fragment-cache "^0.2.1"
637 | regex-not "^1.0.0"
638 | snapdragon "^0.8.1"
639 | to-regex "^3.0.1"
640 |
641 | file-uri-to-path@1.0.0:
642 | version "1.0.0"
643 | resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd"
644 | integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==
645 |
646 | fill-range@^4.0.0:
647 | version "4.0.0"
648 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
649 | integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=
650 | dependencies:
651 | extend-shallow "^2.0.1"
652 | is-number "^3.0.0"
653 | repeat-string "^1.6.1"
654 | to-regex-range "^2.1.0"
655 |
656 | fill-range@^7.0.1:
657 | version "7.0.1"
658 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
659 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
660 | dependencies:
661 | to-regex-range "^5.0.1"
662 |
663 | find-up@^1.0.0:
664 | version "1.1.2"
665 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
666 | integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=
667 | dependencies:
668 | path-exists "^2.0.0"
669 | pinkie-promise "^2.0.0"
670 |
671 | follow-redirects@^1.10.0:
672 | version "1.14.8"
673 | resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.8.tgz#016996fb9a11a100566398b1c6839337d7bfa8fc"
674 | integrity sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA==
675 |
676 | for-in@^1.0.2:
677 | version "1.0.2"
678 | resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
679 | integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=
680 |
681 | fragment-cache@^0.2.1:
682 | version "0.2.1"
683 | resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
684 | integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=
685 | dependencies:
686 | map-cache "^0.2.2"
687 |
688 | fsevents@^1.2.7:
689 | version "1.2.13"
690 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38"
691 | integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==
692 | dependencies:
693 | bindings "^1.5.0"
694 | nan "^2.12.1"
695 |
696 | fsevents@~2.1.2:
697 | version "2.1.3"
698 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e"
699 | integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==
700 |
701 | get-caller-file@^1.0.1:
702 | version "1.0.3"
703 | resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a"
704 | integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==
705 |
706 | get-value@^2.0.3, get-value@^2.0.6:
707 | version "2.0.6"
708 | resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
709 | integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=
710 |
711 | glob-parent@^3.1.0:
712 | version "3.1.0"
713 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
714 | integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=
715 | dependencies:
716 | is-glob "^3.1.0"
717 | path-dirname "^1.0.0"
718 |
719 | glob-parent@~5.1.0:
720 | version "5.1.1"
721 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229"
722 | integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==
723 | dependencies:
724 | is-glob "^4.0.1"
725 |
726 | graceful-fs@^4.1.11, graceful-fs@^4.1.2:
727 | version "4.2.4"
728 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
729 | integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==
730 |
731 | has-flag@^1.0.0:
732 | version "1.0.0"
733 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa"
734 | integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=
735 |
736 | has-value@^0.3.1:
737 | version "0.3.1"
738 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
739 | integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=
740 | dependencies:
741 | get-value "^2.0.3"
742 | has-values "^0.1.4"
743 | isobject "^2.0.0"
744 |
745 | has-value@^1.0.0:
746 | version "1.0.0"
747 | resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177"
748 | integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=
749 | dependencies:
750 | get-value "^2.0.6"
751 | has-values "^1.0.0"
752 | isobject "^3.0.0"
753 |
754 | has-values@^0.1.4:
755 | version "0.1.4"
756 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771"
757 | integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E=
758 |
759 | has-values@^1.0.0:
760 | version "1.0.0"
761 | resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f"
762 | integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=
763 | dependencies:
764 | is-number "^3.0.0"
765 | kind-of "^4.0.0"
766 |
767 | hash-base@^3.0.0:
768 | version "3.1.0"
769 | resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33"
770 | integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==
771 | dependencies:
772 | inherits "^2.0.4"
773 | readable-stream "^3.6.0"
774 | safe-buffer "^5.2.0"
775 |
776 | hash.js@^1.0.0, hash.js@^1.0.3:
777 | version "1.1.7"
778 | resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"
779 | integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==
780 | dependencies:
781 | inherits "^2.0.3"
782 | minimalistic-assert "^1.0.1"
783 |
784 | hmac-drbg@^1.0.1:
785 | version "1.0.1"
786 | resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"
787 | integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=
788 | dependencies:
789 | hash.js "^1.0.3"
790 | minimalistic-assert "^1.0.0"
791 | minimalistic-crypto-utils "^1.0.1"
792 |
793 | hosted-git-info@^2.1.4:
794 | version "2.8.9"
795 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
796 | integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
797 |
798 | https-browserify@^1.0.0:
799 | version "1.0.0"
800 | resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
801 | integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
802 |
803 | ieee754@^1.1.4:
804 | version "1.1.13"
805 | resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84"
806 | integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==
807 |
808 | inherits@2.0.1:
809 | version "2.0.1"
810 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
811 | integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=
812 |
813 | inherits@2.0.3:
814 | version "2.0.3"
815 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
816 | integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
817 |
818 | inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3:
819 | version "2.0.4"
820 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
821 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
822 |
823 | interpret@^1.0.0:
824 | version "1.4.0"
825 | resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e"
826 | integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==
827 |
828 | invert-kv@^1.0.0:
829 | version "1.0.0"
830 | resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
831 | integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY=
832 |
833 | is-accessor-descriptor@^0.1.6:
834 | version "0.1.6"
835 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6"
836 | integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=
837 | dependencies:
838 | kind-of "^3.0.2"
839 |
840 | is-accessor-descriptor@^1.0.0:
841 | version "1.0.0"
842 | resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656"
843 | integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==
844 | dependencies:
845 | kind-of "^6.0.0"
846 |
847 | is-arrayish@^0.2.1:
848 | version "0.2.1"
849 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
850 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
851 |
852 | is-binary-path@^1.0.0:
853 | version "1.0.1"
854 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
855 | integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=
856 | dependencies:
857 | binary-extensions "^1.0.0"
858 |
859 | is-binary-path@~2.1.0:
860 | version "2.1.0"
861 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
862 | integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
863 | dependencies:
864 | binary-extensions "^2.0.0"
865 |
866 | is-buffer@^1.1.5:
867 | version "1.1.6"
868 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
869 | integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
870 |
871 | is-data-descriptor@^0.1.4:
872 | version "0.1.4"
873 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56"
874 | integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=
875 | dependencies:
876 | kind-of "^3.0.2"
877 |
878 | is-data-descriptor@^1.0.0:
879 | version "1.0.0"
880 | resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7"
881 | integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==
882 | dependencies:
883 | kind-of "^6.0.0"
884 |
885 | is-descriptor@^0.1.0:
886 | version "0.1.6"
887 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca"
888 | integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==
889 | dependencies:
890 | is-accessor-descriptor "^0.1.6"
891 | is-data-descriptor "^0.1.4"
892 | kind-of "^5.0.0"
893 |
894 | is-descriptor@^1.0.0, is-descriptor@^1.0.2:
895 | version "1.0.2"
896 | resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec"
897 | integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==
898 | dependencies:
899 | is-accessor-descriptor "^1.0.0"
900 | is-data-descriptor "^1.0.0"
901 | kind-of "^6.0.2"
902 |
903 | is-extendable@^0.1.0, is-extendable@^0.1.1:
904 | version "0.1.1"
905 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
906 | integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=
907 |
908 | is-extendable@^1.0.1:
909 | version "1.0.1"
910 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4"
911 | integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==
912 | dependencies:
913 | is-plain-object "^2.0.4"
914 |
915 | is-extglob@^2.1.0, is-extglob@^2.1.1:
916 | version "2.1.1"
917 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
918 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
919 |
920 | is-fullwidth-code-point@^1.0.0:
921 | version "1.0.0"
922 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
923 | integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs=
924 | dependencies:
925 | number-is-nan "^1.0.0"
926 |
927 | is-glob@^3.1.0:
928 | version "3.1.0"
929 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a"
930 | integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=
931 | dependencies:
932 | is-extglob "^2.1.0"
933 |
934 | is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1:
935 | version "4.0.1"
936 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc"
937 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==
938 | dependencies:
939 | is-extglob "^2.1.1"
940 |
941 | is-number@^3.0.0:
942 | version "3.0.0"
943 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
944 | integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=
945 | dependencies:
946 | kind-of "^3.0.2"
947 |
948 | is-number@^7.0.0:
949 | version "7.0.0"
950 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
951 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
952 |
953 | is-plain-object@^2.0.3, is-plain-object@^2.0.4:
954 | version "2.0.4"
955 | resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
956 | integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
957 | dependencies:
958 | isobject "^3.0.1"
959 |
960 | is-utf8@^0.2.0:
961 | version "0.2.1"
962 | resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
963 | integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=
964 |
965 | is-windows@^1.0.2:
966 | version "1.0.2"
967 | resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
968 | integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
969 |
970 | isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
971 | version "1.0.0"
972 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
973 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
974 |
975 | isobject@^2.0.0:
976 | version "2.1.0"
977 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
978 | integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=
979 | dependencies:
980 | isarray "1.0.0"
981 |
982 | isobject@^3.0.0, isobject@^3.0.1:
983 | version "3.0.1"
984 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
985 | integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
986 |
987 | json-loader@^0.5.4:
988 | version "0.5.7"
989 | resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d"
990 | integrity sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==
991 |
992 | json-stable-stringify@^1.0.1:
993 | version "1.0.1"
994 | resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
995 | integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=
996 | dependencies:
997 | jsonify "~0.0.0"
998 |
999 | json5@^0.5.0, json5@^0.5.1:
1000 | version "0.5.1"
1001 | resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
1002 | integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=
1003 |
1004 | jsonify@~0.0.0:
1005 | version "0.0.0"
1006 | resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
1007 | integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=
1008 |
1009 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
1010 | version "3.2.2"
1011 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
1012 | integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=
1013 | dependencies:
1014 | is-buffer "^1.1.5"
1015 |
1016 | kind-of@^4.0.0:
1017 | version "4.0.0"
1018 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57"
1019 | integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc=
1020 | dependencies:
1021 | is-buffer "^1.1.5"
1022 |
1023 | kind-of@^5.0.0:
1024 | version "5.1.0"
1025 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d"
1026 | integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==
1027 |
1028 | kind-of@^6.0.0, kind-of@^6.0.2:
1029 | version "6.0.3"
1030 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
1031 | integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
1032 |
1033 | lazy-cache@^1.0.3:
1034 | version "1.0.4"
1035 | resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
1036 | integrity sha1-odePw6UEdMuAhF07O24dpJpEbo4=
1037 |
1038 | lcid@^1.0.0:
1039 | version "1.0.0"
1040 | resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
1041 | integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=
1042 | dependencies:
1043 | invert-kv "^1.0.0"
1044 |
1045 | load-json-file@^1.0.0:
1046 | version "1.1.0"
1047 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
1048 | integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=
1049 | dependencies:
1050 | graceful-fs "^4.1.2"
1051 | parse-json "^2.2.0"
1052 | pify "^2.0.0"
1053 | pinkie-promise "^2.0.0"
1054 | strip-bom "^2.0.0"
1055 |
1056 | loader-runner@^2.3.0:
1057 | version "2.4.0"
1058 | resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357"
1059 | integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==
1060 |
1061 | loader-utils@^0.2.16:
1062 | version "0.2.17"
1063 | resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
1064 | integrity sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=
1065 | dependencies:
1066 | big.js "^3.1.3"
1067 | emojis-list "^2.0.0"
1068 | json5 "^0.5.0"
1069 | object-assign "^4.0.1"
1070 |
1071 | lodash@^4.17.14:
1072 | version "4.17.21"
1073 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
1074 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
1075 |
1076 | longest@^1.0.1:
1077 | version "1.0.1"
1078 | resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
1079 | integrity sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=
1080 |
1081 | map-cache@^0.2.2:
1082 | version "0.2.2"
1083 | resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
1084 | integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=
1085 |
1086 | map-visit@^1.0.0:
1087 | version "1.0.0"
1088 | resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
1089 | integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=
1090 | dependencies:
1091 | object-visit "^1.0.0"
1092 |
1093 | md5.js@^1.3.4:
1094 | version "1.3.5"
1095 | resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f"
1096 | integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==
1097 | dependencies:
1098 | hash-base "^3.0.0"
1099 | inherits "^2.0.1"
1100 | safe-buffer "^5.1.2"
1101 |
1102 | memory-fs@^0.4.0, memory-fs@~0.4.1:
1103 | version "0.4.1"
1104 | resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552"
1105 | integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=
1106 | dependencies:
1107 | errno "^0.1.3"
1108 | readable-stream "^2.0.1"
1109 |
1110 | micromatch@^3.1.10, micromatch@^3.1.4:
1111 | version "3.1.10"
1112 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
1113 | integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==
1114 | dependencies:
1115 | arr-diff "^4.0.0"
1116 | array-unique "^0.3.2"
1117 | braces "^2.3.1"
1118 | define-property "^2.0.2"
1119 | extend-shallow "^3.0.2"
1120 | extglob "^2.0.4"
1121 | fragment-cache "^0.2.1"
1122 | kind-of "^6.0.2"
1123 | nanomatch "^1.2.9"
1124 | object.pick "^1.3.0"
1125 | regex-not "^1.0.0"
1126 | snapdragon "^0.8.1"
1127 | to-regex "^3.0.2"
1128 |
1129 | miller-rabin@^4.0.0:
1130 | version "4.0.1"
1131 | resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
1132 | integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==
1133 | dependencies:
1134 | bn.js "^4.0.0"
1135 | brorand "^1.0.1"
1136 |
1137 | minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:
1138 | version "1.0.1"
1139 | resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
1140 | integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==
1141 |
1142 | minimalistic-crypto-utils@^1.0.1:
1143 | version "1.0.1"
1144 | resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
1145 | integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=
1146 |
1147 | minimist@^1.2.5:
1148 | version "1.2.5"
1149 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
1150 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
1151 |
1152 | mixin-deep@^1.2.0:
1153 | version "1.3.2"
1154 | resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566"
1155 | integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==
1156 | dependencies:
1157 | for-in "^1.0.2"
1158 | is-extendable "^1.0.1"
1159 |
1160 | mkdirp@~0.5.0:
1161 | version "0.5.5"
1162 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
1163 | integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
1164 | dependencies:
1165 | minimist "^1.2.5"
1166 |
1167 | ms@2.0.0:
1168 | version "2.0.0"
1169 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
1170 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
1171 |
1172 | nan@^2.12.1:
1173 | version "2.14.1"
1174 | resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01"
1175 | integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==
1176 |
1177 | nanomatch@^1.2.9:
1178 | version "1.2.13"
1179 | resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
1180 | integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==
1181 | dependencies:
1182 | arr-diff "^4.0.0"
1183 | array-unique "^0.3.2"
1184 | define-property "^2.0.2"
1185 | extend-shallow "^3.0.2"
1186 | fragment-cache "^0.2.1"
1187 | is-windows "^1.0.2"
1188 | kind-of "^6.0.2"
1189 | object.pick "^1.3.0"
1190 | regex-not "^1.0.0"
1191 | snapdragon "^0.8.1"
1192 | to-regex "^3.0.1"
1193 |
1194 | neo-async@^2.5.0:
1195 | version "2.6.1"
1196 | resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c"
1197 | integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==
1198 |
1199 | node-libs-browser@^2.0.0:
1200 | version "2.2.1"
1201 | resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425"
1202 | integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==
1203 | dependencies:
1204 | assert "^1.1.1"
1205 | browserify-zlib "^0.2.0"
1206 | buffer "^4.3.0"
1207 | console-browserify "^1.1.0"
1208 | constants-browserify "^1.0.0"
1209 | crypto-browserify "^3.11.0"
1210 | domain-browser "^1.1.1"
1211 | events "^3.0.0"
1212 | https-browserify "^1.0.0"
1213 | os-browserify "^0.3.0"
1214 | path-browserify "0.0.1"
1215 | process "^0.11.10"
1216 | punycode "^1.2.4"
1217 | querystring-es3 "^0.2.0"
1218 | readable-stream "^2.3.3"
1219 | stream-browserify "^2.0.1"
1220 | stream-http "^2.7.2"
1221 | string_decoder "^1.0.0"
1222 | timers-browserify "^2.0.4"
1223 | tty-browserify "0.0.0"
1224 | url "^0.11.0"
1225 | util "^0.11.0"
1226 | vm-browserify "^1.0.1"
1227 |
1228 | normalize-package-data@^2.3.2:
1229 | version "2.5.0"
1230 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
1231 | integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
1232 | dependencies:
1233 | hosted-git-info "^2.1.4"
1234 | resolve "^1.10.0"
1235 | semver "2 || 3 || 4 || 5"
1236 | validate-npm-package-license "^3.0.1"
1237 |
1238 | normalize-path@^2.1.1:
1239 | version "2.1.1"
1240 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
1241 | integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=
1242 | dependencies:
1243 | remove-trailing-separator "^1.0.1"
1244 |
1245 | normalize-path@^3.0.0, normalize-path@~3.0.0:
1246 | version "3.0.0"
1247 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
1248 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
1249 |
1250 | number-is-nan@^1.0.0:
1251 | version "1.0.1"
1252 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
1253 | integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
1254 |
1255 | object-assign@^4.0.1, object-assign@^4.1.1:
1256 | version "4.1.1"
1257 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
1258 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
1259 |
1260 | object-copy@^0.1.0:
1261 | version "0.1.0"
1262 | resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
1263 | integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw=
1264 | dependencies:
1265 | copy-descriptor "^0.1.0"
1266 | define-property "^0.2.5"
1267 | kind-of "^3.0.3"
1268 |
1269 | object-visit@^1.0.0:
1270 | version "1.0.1"
1271 | resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
1272 | integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=
1273 | dependencies:
1274 | isobject "^3.0.0"
1275 |
1276 | object.pick@^1.3.0:
1277 | version "1.3.0"
1278 | resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
1279 | integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=
1280 | dependencies:
1281 | isobject "^3.0.1"
1282 |
1283 | os-browserify@^0.3.0:
1284 | version "0.3.0"
1285 | resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
1286 | integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=
1287 |
1288 | os-locale@^1.4.0:
1289 | version "1.4.0"
1290 | resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9"
1291 | integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=
1292 | dependencies:
1293 | lcid "^1.0.0"
1294 |
1295 | pako@~1.0.5:
1296 | version "1.0.11"
1297 | resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf"
1298 | integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==
1299 |
1300 | parse-asn1@^5.0.0, parse-asn1@^5.1.5:
1301 | version "5.1.5"
1302 | resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e"
1303 | integrity sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==
1304 | dependencies:
1305 | asn1.js "^4.0.0"
1306 | browserify-aes "^1.0.0"
1307 | create-hash "^1.1.0"
1308 | evp_bytestokey "^1.0.0"
1309 | pbkdf2 "^3.0.3"
1310 | safe-buffer "^5.1.1"
1311 |
1312 | parse-json@^2.2.0:
1313 | version "2.2.0"
1314 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
1315 | integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=
1316 | dependencies:
1317 | error-ex "^1.2.0"
1318 |
1319 | pascalcase@^0.1.1:
1320 | version "0.1.1"
1321 | resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
1322 | integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=
1323 |
1324 | path-browserify@0.0.1:
1325 | version "0.0.1"
1326 | resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a"
1327 | integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==
1328 |
1329 | path-dirname@^1.0.0:
1330 | version "1.0.2"
1331 | resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
1332 | integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=
1333 |
1334 | path-exists@^2.0.0:
1335 | version "2.1.0"
1336 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
1337 | integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=
1338 | dependencies:
1339 | pinkie-promise "^2.0.0"
1340 |
1341 | path-is-absolute@^1.0.0:
1342 | version "1.0.1"
1343 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
1344 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
1345 |
1346 | path-parse@^1.0.6:
1347 | version "1.0.7"
1348 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
1349 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
1350 |
1351 | path-type@^1.0.0:
1352 | version "1.1.0"
1353 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
1354 | integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=
1355 | dependencies:
1356 | graceful-fs "^4.1.2"
1357 | pify "^2.0.0"
1358 | pinkie-promise "^2.0.0"
1359 |
1360 | pbkdf2@^3.0.3:
1361 | version "3.1.1"
1362 | resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94"
1363 | integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==
1364 | dependencies:
1365 | create-hash "^1.1.2"
1366 | create-hmac "^1.1.4"
1367 | ripemd160 "^2.0.1"
1368 | safe-buffer "^5.0.1"
1369 | sha.js "^2.4.8"
1370 |
1371 | picomatch@^2.0.4, picomatch@^2.2.1:
1372 | version "2.2.2"
1373 | resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad"
1374 | integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==
1375 |
1376 | pify@^2.0.0:
1377 | version "2.3.0"
1378 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
1379 | integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
1380 |
1381 | pinkie-promise@^2.0.0:
1382 | version "2.0.1"
1383 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
1384 | integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o=
1385 | dependencies:
1386 | pinkie "^2.0.0"
1387 |
1388 | pinkie@^2.0.0:
1389 | version "2.0.4"
1390 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
1391 | integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
1392 |
1393 | posix-character-classes@^0.1.0:
1394 | version "0.1.1"
1395 | resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
1396 | integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
1397 |
1398 | process-nextick-args@~2.0.0:
1399 | version "2.0.1"
1400 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
1401 | integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
1402 |
1403 | process@^0.11.10:
1404 | version "0.11.10"
1405 | resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
1406 | integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI=
1407 |
1408 | prr@~1.0.1:
1409 | version "1.0.1"
1410 | resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
1411 | integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY=
1412 |
1413 | public-encrypt@^4.0.0:
1414 | version "4.0.3"
1415 | resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0"
1416 | integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==
1417 | dependencies:
1418 | bn.js "^4.1.0"
1419 | browserify-rsa "^4.0.0"
1420 | create-hash "^1.1.0"
1421 | parse-asn1 "^5.0.0"
1422 | randombytes "^2.0.1"
1423 | safe-buffer "^5.1.2"
1424 |
1425 | punycode@1.3.2:
1426 | version "1.3.2"
1427 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
1428 | integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=
1429 |
1430 | punycode@^1.2.4:
1431 | version "1.4.1"
1432 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
1433 | integrity sha1-wNWmOycYgArY4esPpSachN1BhF4=
1434 |
1435 | querystring-es3@^0.2.0:
1436 | version "0.2.1"
1437 | resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
1438 | integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=
1439 |
1440 | querystring@0.2.0:
1441 | version "0.2.0"
1442 | resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620"
1443 | integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=
1444 |
1445 | randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5:
1446 | version "2.1.0"
1447 | resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"
1448 | integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==
1449 | dependencies:
1450 | safe-buffer "^5.1.0"
1451 |
1452 | randomfill@^1.0.3:
1453 | version "1.0.4"
1454 | resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458"
1455 | integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==
1456 | dependencies:
1457 | randombytes "^2.0.5"
1458 | safe-buffer "^5.1.0"
1459 |
1460 | read-pkg-up@^1.0.1:
1461 | version "1.0.1"
1462 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
1463 | integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=
1464 | dependencies:
1465 | find-up "^1.0.0"
1466 | read-pkg "^1.0.0"
1467 |
1468 | read-pkg@^1.0.0:
1469 | version "1.1.0"
1470 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
1471 | integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=
1472 | dependencies:
1473 | load-json-file "^1.0.0"
1474 | normalize-package-data "^2.3.2"
1475 | path-type "^1.0.0"
1476 |
1477 | readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.3.3, readable-stream@^2.3.6:
1478 | version "2.3.7"
1479 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
1480 | integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
1481 | dependencies:
1482 | core-util-is "~1.0.0"
1483 | inherits "~2.0.3"
1484 | isarray "~1.0.0"
1485 | process-nextick-args "~2.0.0"
1486 | safe-buffer "~5.1.1"
1487 | string_decoder "~1.1.1"
1488 | util-deprecate "~1.0.1"
1489 |
1490 | readable-stream@^3.6.0:
1491 | version "3.6.0"
1492 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
1493 | integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
1494 | dependencies:
1495 | inherits "^2.0.3"
1496 | string_decoder "^1.1.1"
1497 | util-deprecate "^1.0.1"
1498 |
1499 | readdirp@^2.2.1:
1500 | version "2.2.1"
1501 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
1502 | integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==
1503 | dependencies:
1504 | graceful-fs "^4.1.11"
1505 | micromatch "^3.1.10"
1506 | readable-stream "^2.0.2"
1507 |
1508 | readdirp@~3.4.0:
1509 | version "3.4.0"
1510 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.4.0.tgz#9fdccdf9e9155805449221ac645e8303ab5b9ada"
1511 | integrity sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==
1512 | dependencies:
1513 | picomatch "^2.2.1"
1514 |
1515 | regex-not@^1.0.0, regex-not@^1.0.2:
1516 | version "1.0.2"
1517 | resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c"
1518 | integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==
1519 | dependencies:
1520 | extend-shallow "^3.0.2"
1521 | safe-regex "^1.1.0"
1522 |
1523 | remove-trailing-separator@^1.0.1:
1524 | version "1.1.0"
1525 | resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
1526 | integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8=
1527 |
1528 | repeat-element@^1.1.2:
1529 | version "1.1.3"
1530 | resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce"
1531 | integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==
1532 |
1533 | repeat-string@^1.5.2, repeat-string@^1.6.1:
1534 | version "1.6.1"
1535 | resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
1536 | integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
1537 |
1538 | require-directory@^2.1.1:
1539 | version "2.1.1"
1540 | resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
1541 | integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I=
1542 |
1543 | require-main-filename@^1.0.1:
1544 | version "1.0.1"
1545 | resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
1546 | integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=
1547 |
1548 | resolve-url@^0.2.1:
1549 | version "0.2.1"
1550 | resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
1551 | integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=
1552 |
1553 | resolve@^1.10.0:
1554 | version "1.17.0"
1555 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444"
1556 | integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==
1557 | dependencies:
1558 | path-parse "^1.0.6"
1559 |
1560 | ret@~0.1.10:
1561 | version "0.1.15"
1562 | resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
1563 | integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
1564 |
1565 | right-align@^0.1.1:
1566 | version "0.1.3"
1567 | resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef"
1568 | integrity sha1-YTObci/mo1FWiSENJOFMlhSGE+8=
1569 | dependencies:
1570 | align-text "^0.1.1"
1571 |
1572 | ripemd160@^2.0.0, ripemd160@^2.0.1:
1573 | version "2.0.2"
1574 | resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
1575 | integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==
1576 | dependencies:
1577 | hash-base "^3.0.0"
1578 | inherits "^2.0.1"
1579 |
1580 | safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0:
1581 | version "5.2.1"
1582 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
1583 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
1584 |
1585 | safe-buffer@~5.1.0, safe-buffer@~5.1.1:
1586 | version "5.1.2"
1587 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
1588 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
1589 |
1590 | safe-regex@^1.1.0:
1591 | version "1.1.0"
1592 | resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e"
1593 | integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4=
1594 | dependencies:
1595 | ret "~0.1.10"
1596 |
1597 | "semver@2 || 3 || 4 || 5":
1598 | version "5.7.1"
1599 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
1600 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
1601 |
1602 | set-blocking@^2.0.0:
1603 | version "2.0.0"
1604 | resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
1605 | integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
1606 |
1607 | set-value@^2.0.0, set-value@^2.0.1:
1608 | version "2.0.1"
1609 | resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b"
1610 | integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==
1611 | dependencies:
1612 | extend-shallow "^2.0.1"
1613 | is-extendable "^0.1.1"
1614 | is-plain-object "^2.0.3"
1615 | split-string "^3.0.1"
1616 |
1617 | setimmediate@^1.0.4:
1618 | version "1.0.5"
1619 | resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
1620 | integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=
1621 |
1622 | sha.js@^2.4.0, sha.js@^2.4.8:
1623 | version "2.4.11"
1624 | resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
1625 | integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==
1626 | dependencies:
1627 | inherits "^2.0.1"
1628 | safe-buffer "^5.0.1"
1629 |
1630 | snapdragon-node@^2.0.1:
1631 | version "2.1.1"
1632 | resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b"
1633 | integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==
1634 | dependencies:
1635 | define-property "^1.0.0"
1636 | isobject "^3.0.0"
1637 | snapdragon-util "^3.0.1"
1638 |
1639 | snapdragon-util@^3.0.1:
1640 | version "3.0.1"
1641 | resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2"
1642 | integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==
1643 | dependencies:
1644 | kind-of "^3.2.0"
1645 |
1646 | snapdragon@^0.8.1:
1647 | version "0.8.2"
1648 | resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d"
1649 | integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==
1650 | dependencies:
1651 | base "^0.11.1"
1652 | debug "^2.2.0"
1653 | define-property "^0.2.5"
1654 | extend-shallow "^2.0.1"
1655 | map-cache "^0.2.2"
1656 | source-map "^0.5.6"
1657 | source-map-resolve "^0.5.0"
1658 | use "^3.1.0"
1659 |
1660 | source-list-map@^2.0.0:
1661 | version "2.0.1"
1662 | resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34"
1663 | integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==
1664 |
1665 | source-map-resolve@^0.5.0:
1666 | version "0.5.3"
1667 | resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
1668 | integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==
1669 | dependencies:
1670 | atob "^2.1.2"
1671 | decode-uri-component "^0.2.0"
1672 | resolve-url "^0.2.1"
1673 | source-map-url "^0.4.0"
1674 | urix "^0.1.0"
1675 |
1676 | source-map-url@^0.4.0:
1677 | version "0.4.0"
1678 | resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3"
1679 | integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=
1680 |
1681 | source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1:
1682 | version "0.5.7"
1683 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
1684 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
1685 |
1686 | source-map@~0.6.1:
1687 | version "0.6.1"
1688 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
1689 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
1690 |
1691 | spdx-correct@^3.0.0:
1692 | version "3.1.1"
1693 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9"
1694 | integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==
1695 | dependencies:
1696 | spdx-expression-parse "^3.0.0"
1697 | spdx-license-ids "^3.0.0"
1698 |
1699 | spdx-exceptions@^2.1.0:
1700 | version "2.3.0"
1701 | resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d"
1702 | integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==
1703 |
1704 | spdx-expression-parse@^3.0.0:
1705 | version "3.0.1"
1706 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679"
1707 | integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==
1708 | dependencies:
1709 | spdx-exceptions "^2.1.0"
1710 | spdx-license-ids "^3.0.0"
1711 |
1712 | spdx-license-ids@^3.0.0:
1713 | version "3.0.5"
1714 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654"
1715 | integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==
1716 |
1717 | split-string@^3.0.1, split-string@^3.0.2:
1718 | version "3.1.0"
1719 | resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2"
1720 | integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==
1721 | dependencies:
1722 | extend-shallow "^3.0.0"
1723 |
1724 | static-extend@^0.1.1:
1725 | version "0.1.2"
1726 | resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6"
1727 | integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=
1728 | dependencies:
1729 | define-property "^0.2.5"
1730 | object-copy "^0.1.0"
1731 |
1732 | stream-browserify@^2.0.1:
1733 | version "2.0.2"
1734 | resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b"
1735 | integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==
1736 | dependencies:
1737 | inherits "~2.0.1"
1738 | readable-stream "^2.0.2"
1739 |
1740 | stream-http@^2.7.2:
1741 | version "2.8.3"
1742 | resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc"
1743 | integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==
1744 | dependencies:
1745 | builtin-status-codes "^3.0.0"
1746 | inherits "^2.0.1"
1747 | readable-stream "^2.3.6"
1748 | to-arraybuffer "^1.0.0"
1749 | xtend "^4.0.0"
1750 |
1751 | string-width@^1.0.1, string-width@^1.0.2:
1752 | version "1.0.2"
1753 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
1754 | integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=
1755 | dependencies:
1756 | code-point-at "^1.0.0"
1757 | is-fullwidth-code-point "^1.0.0"
1758 | strip-ansi "^3.0.0"
1759 |
1760 | string_decoder@^1.0.0, string_decoder@^1.1.1:
1761 | version "1.3.0"
1762 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
1763 | integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
1764 | dependencies:
1765 | safe-buffer "~5.2.0"
1766 |
1767 | string_decoder@~1.1.1:
1768 | version "1.1.1"
1769 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
1770 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
1771 | dependencies:
1772 | safe-buffer "~5.1.0"
1773 |
1774 | strip-ansi@^3.0.0, strip-ansi@^3.0.1:
1775 | version "3.0.1"
1776 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
1777 | integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
1778 | dependencies:
1779 | ansi-regex "^2.0.0"
1780 |
1781 | strip-bom@^2.0.0:
1782 | version "2.0.0"
1783 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
1784 | integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=
1785 | dependencies:
1786 | is-utf8 "^0.2.0"
1787 |
1788 | supports-color@^3.1.0:
1789 | version "3.2.3"
1790 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6"
1791 | integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=
1792 | dependencies:
1793 | has-flag "^1.0.0"
1794 |
1795 | tapable@^0.2.7, tapable@~0.2.5:
1796 | version "0.2.9"
1797 | resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.9.tgz#af2d8bbc9b04f74ee17af2b4d9048f807acd18a8"
1798 | integrity sha512-2wsvQ+4GwBvLPLWsNfLCDYGsW6xb7aeC6utq2Qh0PFwgEy7K7dsma9Jsmb2zSQj7GvYAyUGSntLtsv++GmgL1A==
1799 |
1800 | timers-browserify@^2.0.4:
1801 | version "2.0.11"
1802 | resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f"
1803 | integrity sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==
1804 | dependencies:
1805 | setimmediate "^1.0.4"
1806 |
1807 | to-arraybuffer@^1.0.0:
1808 | version "1.0.1"
1809 | resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
1810 | integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=
1811 |
1812 | to-object-path@^0.3.0:
1813 | version "0.3.0"
1814 | resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
1815 | integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=
1816 | dependencies:
1817 | kind-of "^3.0.2"
1818 |
1819 | to-regex-range@^2.1.0:
1820 | version "2.1.1"
1821 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38"
1822 | integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=
1823 | dependencies:
1824 | is-number "^3.0.0"
1825 | repeat-string "^1.6.1"
1826 |
1827 | to-regex-range@^5.0.1:
1828 | version "5.0.1"
1829 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
1830 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
1831 | dependencies:
1832 | is-number "^7.0.0"
1833 |
1834 | to-regex@^3.0.1, to-regex@^3.0.2:
1835 | version "3.0.2"
1836 | resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce"
1837 | integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==
1838 | dependencies:
1839 | define-property "^2.0.2"
1840 | extend-shallow "^3.0.2"
1841 | regex-not "^1.0.2"
1842 | safe-regex "^1.1.0"
1843 |
1844 | tty-browserify@0.0.0:
1845 | version "0.0.0"
1846 | resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
1847 | integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=
1848 |
1849 | uglify-js@^2.8.27:
1850 | version "2.8.29"
1851 | resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"
1852 | integrity sha1-KcVzMUgFe7Th913zW3qcty5qWd0=
1853 | dependencies:
1854 | source-map "~0.5.1"
1855 | yargs "~3.10.0"
1856 | optionalDependencies:
1857 | uglify-to-browserify "~1.0.0"
1858 |
1859 | uglify-to-browserify@~1.0.0:
1860 | version "1.0.2"
1861 | resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
1862 | integrity sha1-bgkk1r2mta/jSeOabWMoUKD4grc=
1863 |
1864 | union-value@^1.0.0:
1865 | version "1.0.1"
1866 | resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847"
1867 | integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==
1868 | dependencies:
1869 | arr-union "^3.1.0"
1870 | get-value "^2.0.6"
1871 | is-extendable "^0.1.1"
1872 | set-value "^2.0.1"
1873 |
1874 | unset-value@^1.0.0:
1875 | version "1.0.0"
1876 | resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"
1877 | integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=
1878 | dependencies:
1879 | has-value "^0.3.1"
1880 | isobject "^3.0.0"
1881 |
1882 | upath@^1.1.1:
1883 | version "1.2.0"
1884 | resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894"
1885 | integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==
1886 |
1887 | urix@^0.1.0:
1888 | version "0.1.0"
1889 | resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
1890 | integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
1891 |
1892 | url@^0.11.0:
1893 | version "0.11.0"
1894 | resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"
1895 | integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=
1896 | dependencies:
1897 | punycode "1.3.2"
1898 | querystring "0.2.0"
1899 |
1900 | use@^3.1.0:
1901 | version "3.1.1"
1902 | resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"
1903 | integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
1904 |
1905 | util-deprecate@^1.0.1, util-deprecate@~1.0.1:
1906 | version "1.0.2"
1907 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
1908 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
1909 |
1910 | util@0.10.3:
1911 | version "0.10.3"
1912 | resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
1913 | integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk=
1914 | dependencies:
1915 | inherits "2.0.1"
1916 |
1917 | util@^0.11.0:
1918 | version "0.11.1"
1919 | resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61"
1920 | integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==
1921 | dependencies:
1922 | inherits "2.0.3"
1923 |
1924 | validate-npm-package-license@^3.0.1:
1925 | version "3.0.4"
1926 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
1927 | integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
1928 | dependencies:
1929 | spdx-correct "^3.0.0"
1930 | spdx-expression-parse "^3.0.0"
1931 |
1932 | vm-browserify@^1.0.1:
1933 | version "1.1.2"
1934 | resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0"
1935 | integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==
1936 |
1937 | watchpack-chokidar2@^2.0.0:
1938 | version "2.0.0"
1939 | resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz#9948a1866cbbd6cb824dea13a7ed691f6c8ddff0"
1940 | integrity sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==
1941 | dependencies:
1942 | chokidar "^2.1.8"
1943 |
1944 | watchpack@^1.3.1:
1945 | version "1.7.2"
1946 | resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.2.tgz#c02e4d4d49913c3e7e122c3325365af9d331e9aa"
1947 | integrity sha512-ymVbbQP40MFTp+cNMvpyBpBtygHnPzPkHqoIwRRj/0B8KhqQwV8LaKjtbaxF2lK4vl8zN9wCxS46IFCU5K4W0g==
1948 | dependencies:
1949 | graceful-fs "^4.1.2"
1950 | neo-async "^2.5.0"
1951 | optionalDependencies:
1952 | chokidar "^3.4.0"
1953 | watchpack-chokidar2 "^2.0.0"
1954 |
1955 | webpack-sources@^1.0.1:
1956 | version "1.4.3"
1957 | resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933"
1958 | integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==
1959 | dependencies:
1960 | source-list-map "^2.0.0"
1961 | source-map "~0.6.1"
1962 |
1963 | webpack@^2.7.0:
1964 | version "2.7.0"
1965 | resolved "https://registry.yarnpkg.com/webpack/-/webpack-2.7.0.tgz#b2a1226804373ffd3d03ea9c6bd525067034f6b1"
1966 | integrity sha512-MjAA0ZqO1ba7ZQJRnoCdbM56mmFpipOPUv/vQpwwfSI42p5PVDdoiuK2AL2FwFUVgT859Jr43bFZXRg/LNsqvg==
1967 | dependencies:
1968 | acorn "^5.0.0"
1969 | acorn-dynamic-import "^2.0.0"
1970 | ajv "^4.7.0"
1971 | ajv-keywords "^1.1.1"
1972 | async "^2.1.2"
1973 | enhanced-resolve "^3.3.0"
1974 | interpret "^1.0.0"
1975 | json-loader "^0.5.4"
1976 | json5 "^0.5.1"
1977 | loader-runner "^2.3.0"
1978 | loader-utils "^0.2.16"
1979 | memory-fs "~0.4.1"
1980 | mkdirp "~0.5.0"
1981 | node-libs-browser "^2.0.0"
1982 | source-map "^0.5.3"
1983 | supports-color "^3.1.0"
1984 | tapable "~0.2.5"
1985 | uglify-js "^2.8.27"
1986 | watchpack "^1.3.1"
1987 | webpack-sources "^1.0.1"
1988 | yargs "^6.0.0"
1989 |
1990 | which-module@^1.0.0:
1991 | version "1.0.0"
1992 | resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"
1993 | integrity sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=
1994 |
1995 | window-size@0.1.0:
1996 | version "0.1.0"
1997 | resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
1998 | integrity sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=
1999 |
2000 | wordwrap@0.0.2:
2001 | version "0.0.2"
2002 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
2003 | integrity sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=
2004 |
2005 | wrap-ansi@^2.0.0:
2006 | version "2.1.0"
2007 | resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85"
2008 | integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=
2009 | dependencies:
2010 | string-width "^1.0.1"
2011 | strip-ansi "^3.0.1"
2012 |
2013 | xtend@^4.0.0:
2014 | version "4.0.2"
2015 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
2016 | integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
2017 |
2018 | y18n@^3.2.1:
2019 | version "3.2.2"
2020 | resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696"
2021 | integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==
2022 |
2023 | yargs-parser@^4.2.0:
2024 | version "4.2.1"
2025 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c"
2026 | integrity sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=
2027 | dependencies:
2028 | camelcase "^3.0.0"
2029 |
2030 | yargs@^6.0.0:
2031 | version "6.6.0"
2032 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208"
2033 | integrity sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=
2034 | dependencies:
2035 | camelcase "^3.0.0"
2036 | cliui "^3.2.0"
2037 | decamelize "^1.1.1"
2038 | get-caller-file "^1.0.1"
2039 | os-locale "^1.4.0"
2040 | read-pkg-up "^1.0.1"
2041 | require-directory "^2.1.1"
2042 | require-main-filename "^1.0.1"
2043 | set-blocking "^2.0.0"
2044 | string-width "^1.0.2"
2045 | which-module "^1.0.0"
2046 | y18n "^3.2.1"
2047 | yargs-parser "^4.2.0"
2048 |
2049 | yargs@~3.10.0:
2050 | version "3.10.0"
2051 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
2052 | integrity sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=
2053 | dependencies:
2054 | camelcase "^1.0.2"
2055 | cliui "^2.1.0"
2056 | decamelize "^1.0.0"
2057 | window-size "0.1.0"
2058 |
--------------------------------------------------------------------------------