aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--server/sonar-ce-common/src/main/java/org/sonar/ce/common/batch/package-info.java23
-rw-r--r--server/sonar-ce-common/src/main/java/org/sonar/ce/common/sca/BuildSoftwareCompositionAnalysisStepProvider.java33
-rw-r--r--server/sonar-ce-common/src/main/java/org/sonar/ce/common/sca/package-info.java23
-rw-r--r--server/sonar-ce-task-projectanalysis/build.gradle1
-rw-r--r--server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT.java135
-rw-r--r--server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/dependency-files.zipbin29832 -> 0 bytes
-rwxr-xr-xserver/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/package.json28
-rw-r--r--server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/tidelift-response.json1
-rwxr-xr-xserver/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/yarn.lock1756
-rw-r--r--server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStep.java107
-rw-r--r--server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepTest.java58
11 files changed, 150 insertions, 2015 deletions
diff --git a/server/sonar-ce-common/src/main/java/org/sonar/ce/common/batch/package-info.java b/server/sonar-ce-common/src/main/java/org/sonar/ce/common/batch/package-info.java
new file mode 100644
index 00000000000..42774becbfb
--- /dev/null
+++ b/server/sonar-ce-common/src/main/java/org/sonar/ce/common/batch/package-info.java
@@ -0,0 +1,23 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2025 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+@ParametersAreNonnullByDefault
+package org.sonar.ce.common.batch;
+
+import javax.annotation.ParametersAreNonnullByDefault;
diff --git a/server/sonar-ce-common/src/main/java/org/sonar/ce/common/sca/BuildSoftwareCompositionAnalysisStepProvider.java b/server/sonar-ce-common/src/main/java/org/sonar/ce/common/sca/BuildSoftwareCompositionAnalysisStepProvider.java
new file mode 100644
index 00000000000..f53f5ec4089
--- /dev/null
+++ b/server/sonar-ce-common/src/main/java/org/sonar/ce/common/sca/BuildSoftwareCompositionAnalysisStepProvider.java
@@ -0,0 +1,33 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2025 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+package org.sonar.ce.common.sca;
+
+import org.sonar.api.ce.ComputeEngineSide;
+import org.sonar.ce.common.scanner.ScannerReportReader;
+import org.sonar.ce.task.step.ComputationStep;
+
+/**
+ * When an implementation of this interface is available in the ioc container, the Compute Engine will use the value returned by
+ * {@link #get(ScannerReportReader)} as an extra step for software composition analysis.
+ */
+@ComputeEngineSide
+public interface BuildSoftwareCompositionAnalysisStepProvider {
+ ComputationStep get(ScannerReportReader reportReader);
+}
diff --git a/server/sonar-ce-common/src/main/java/org/sonar/ce/common/sca/package-info.java b/server/sonar-ce-common/src/main/java/org/sonar/ce/common/sca/package-info.java
new file mode 100644
index 00000000000..70c1c463dab
--- /dev/null
+++ b/server/sonar-ce-common/src/main/java/org/sonar/ce/common/sca/package-info.java
@@ -0,0 +1,23 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2025 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+@ParametersAreNonnullByDefault
+package org.sonar.ce.common.sca;
+
+import javax.annotation.ParametersAreNonnullByDefault;
diff --git a/server/sonar-ce-task-projectanalysis/build.gradle b/server/sonar-ce-task-projectanalysis/build.gradle
index d12b9dd451c..0e024680b5c 100644
--- a/server/sonar-ce-task-projectanalysis/build.gradle
+++ b/server/sonar-ce-task-projectanalysis/build.gradle
@@ -70,7 +70,6 @@ dependencies {
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'
testRuntimeOnly 'org.junit.vintage:junit-vintage-engine'
- testImplementation 'com.squareup.okhttp3:mockwebserver'
}
test {
diff --git a/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT.java b/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT.java
deleted file mode 100644
index a1188fb7f77..00000000000
--- a/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * SonarQube
- * Copyright (C) 2009-2025 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-package org.sonar.ce.task.projectanalysis.step;
-
-import java.io.File;
-import java.io.IOException;
-import java.nio.charset.StandardCharsets;
-import okhttp3.OkHttpClient;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import org.apache.commons.io.IOUtils;
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.RegisterExtension;
-import org.slf4j.event.Level;
-import org.sonar.api.testfixtures.log.LogTesterJUnit5;
-import org.sonar.ce.common.scanner.ScannerReportReaderRule;
-import org.sonar.ce.task.step.TestComputationStepContext;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-class BuildSoftwareCompositionAnalysisStepIT {
- @RegisterExtension
- public final LogTesterJUnit5 logTester = new LogTesterJUnit5();
-
- private final MockWebServer server = new MockWebServer();
-
- ScannerReportReaderRule reportReader = new ScannerReportReaderRule();
- OkHttpClient okHttpClient = new OkHttpClient();
-
- private final BuildSoftwareCompositionAnalysisStep underTest = new BuildSoftwareCompositionAnalysisStep(reportReader, okHttpClient);
-
- @BeforeEach
- public void prepare() throws IOException {
- logTester.setLevel(Level.DEBUG);
- server.start();
- }
-
- @AfterEach
- public void stopServer() throws IOException {
- server.shutdown();
- }
-
- @Test
- void buildSoftwareCompositionAnalysisStep_shouldBuildDeps() throws Exception {
- var zipFile = getResourceFile("/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/dependency-files.zip");
- reportReader.putDependencyFilesZip(zipFile);
-
- var tideliftResponse = getResourceContentAsString("/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/tidelift-response.json");
- MockResponse mockedResponse = new MockResponse()
- .setBody(tideliftResponse) // Sample
- .addHeader("Content-Type", "application/json");
-
- server.enqueue(mockedResponse);
-
- var url = server.url("/sonar-api/v1/releases/parse-dependency-files").toString();
- underTest.setTideliftUploadUrl(url);
- underTest.setTideliftApiKey("v2/user/fake-key");
-
- TestComputationStepContext context = new TestComputationStepContext();
- underTest.execute(context);
-
- assertThat(logTester.logs(Level.INFO)).contains("Release: pkg:npm/nodemailer@5.1.1 VulnerabilityCount: 2");
- assertThat(logTester.logs(Level.INFO).stream()
- .filter(l -> l.matches("Release: pkg:.*/.*@.* VulnerabilityCount: .*"))
- .count()).isEqualTo(253);
- }
-
- @Test
- void buildSoftwareCompositionAnalysisStep_withNoApiKey_Throws() throws Exception {
- TestComputationStepContext context = new TestComputationStepContext();
-
- underTest.execute(context);
-
- assertThat(logTester.logs(Level.WARN)).contains("TIDELIFT_API_KEY is not set");
- }
-
- @Test
- void buildSoftwareCompositionAnalysisStep_whenReportDoesNotContainDependencyFiles_LogsWarning() throws Exception {
- var url = server.url("/sonar-api/v1/releases/parse-dependency-files").toString();
- underTest.setTideliftUploadUrl(url);
- underTest.setTideliftApiKey("v2/user/fake-key");
-
- TestComputationStepContext context = new TestComputationStepContext();
- underTest.execute(context);
-
- assertThat(logTester.logs(Level.WARN)).contains("No dependency files found");
- }
-
- @Test
- void buildSoftwareCompositionAnalysisStep_WithErrorFromTidelift_Logs() throws Exception {
- var zipFile = getResourceFile("/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/dependency-files.zip");
- reportReader.putDependencyFilesZip(zipFile);
-
- MockResponse mockedResponse = new MockResponse().setResponseCode(500);
-
- server.enqueue(mockedResponse);
-
- var url = server.url("/sonar-api/v1/releases/parse-dependency-files").toString();
- underTest.setTideliftUploadUrl(url);
- underTest.setTideliftApiKey("v2/user/fake-key");
-
- TestComputationStepContext context = new TestComputationStepContext();
- underTest.execute(context);
-
- assertThat(logTester.logs(Level.WARN)).contains("Processing failed. Tidelift Response code:500 message:Server Error");
- }
-
- private File getResourceFile(String path) {
- return new File(getClass().getResource(path).getFile());
- }
-
- private String getResourceContentAsString(String path) throws IOException {
- var stream = getClass().getResourceAsStream(path);
- return IOUtils.toString(stream, StandardCharsets.UTF_8);
- }
-}
diff --git a/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/dependency-files.zip b/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/dependency-files.zip
deleted file mode 100644
index 0b5c2e953aa..00000000000
--- a/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/dependency-files.zip
+++ /dev/null
Binary files differ
diff --git a/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/package.json b/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/package.json
deleted file mode 100755
index 7e610d3eefd..00000000000
--- a/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/package.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "name": "TextBelt",
- "repository": {
- "type": "git",
- "url": "git@github.com:typpo/textbelt.git"
- },
- "dependencies": {
- "express": "^4.19.2",
- "nodemailer": "^5.1.1"
- },
- "devDependencies": {
- "eslint": "^5.9.0",
- "eslint-config-airbnb": "^17.1.0",
- "eslint-plugin-import": "^2.14.0",
- "eslint-plugin-jsx-a11y": "^6.1.2",
- "eslint-plugin-react": "^7.11.1"
- },
- "main": "app",
- "engines": {
- "node": ">= 4.3.2"
- },
- "version": "0.0.3",
- "scripts": {
- "start": "node server/app.js",
- "lint": "eslint .",
- "lint:fix": "eslint --fix ."
- }
-}
diff --git a/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/tidelift-response.json b/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/tidelift-response.json
deleted file mode 100644
index 3a5a70edb60..00000000000
--- a/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/tidelift-response.json
+++ /dev/null
@@ -1 +0,0 @@
-{"releases":[{"platform":"npm","name":"side-channel","version":"1.0.6","purl":"pkg:npm/side-channel@1.0.6","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.6","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"get-intrinsic","version":"1.2.4","purl":"pkg:npm/get-intrinsic@1.2.4","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"call-bind","version":"1.0.7","purl":"pkg:npm/call-bind@1.0.7","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.7","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-promise","version":"2.1.0","purl":"pkg:npm/is-promise@2.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"express","version":"4.19.2","purl":"pkg:npm/express@4.19.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2024-43796","severity":"5.0","description":"Express.js minimalist web framework for node. In express \u003c 4.20.0, passing untrusted user input - even after sanitizing it - to response.redirect() may execute untrusted code. This issue is patched in express 4.20.0.","date":"2024-09-10","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-43796","severity_rating":"Medium","epss_percentile":"0.19285","epss_probability":"0.00046","known_exploited":false}}],"direct":true,"type":"runtime","requirement":"^4.19.2","manifest_source":"package.json","lockfile_source":"yarn.lock"},{"platform":"npm","name":"nodemailer","version":"5.1.1","purl":"pkg:npm/nodemailer@5.1.1","license":{"expression":"MIT","source":"valid_spdx"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2020-7769","severity":"8.6","description":"This affects the package nodemailer before 6.4.16. Use of crafted recipient email addresses may result in arbitrary command flag injection in sendmail transport for sending mails.","date":"2020-11-12","url":"https://nvd.nist.gov/vuln/detail/CVE-2020-7769","severity_rating":"High","epss_percentile":"0.88608","epss_probability":"0.01991","known_exploited":false}},{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2021-23400","severity":"6.3","description":"The package nodemailer before 6.6.1 are vulnerable to HTTP Header Injection if unsanitized user input that may contain newlines and carriage returns is passed into an address object.","date":"2021-06-29","url":"https://nvd.nist.gov/vuln/detail/CVE-2021-23400","severity_rating":"Medium","epss_percentile":"0.85799","epss_probability":"0.01309","known_exploited":false}}],"direct":true,"type":"runtime","requirement":"^5.1.1","manifest_source":"package.json","lockfile_source":"yarn.lock"},{"platform":"npm","name":"@babel/code-frame","version":"7.0.0","purl":"pkg:npm/%40babel/code-frame@7.0.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"7.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"@babel/highlight","version":"7.0.0","purl":"pkg:npm/%40babel/highlight@7.0.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"7.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"lodash","version":"4.17.21","purl":"pkg:npm/lodash@4.17.21","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"4.17.21","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"accepts","version":"1.3.8","purl":"pkg:npm/accepts@1.3.8","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.3.8","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"acorn-jsx","version":"5.0.0","purl":"pkg:npm/acorn-jsx@5.0.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"5.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"acorn","version":"6.4.1","purl":"pkg:npm/acorn@6.4.1","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"6.4.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ajv","version":"6.12.6","purl":"pkg:npm/ajv@6.12.6","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"6.12.6","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"argparse","version":"1.0.10","purl":"pkg:npm/argparse@1.0.10","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.10","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"array-flatten","version":"1.1.1","purl":"pkg:npm/array-flatten@1.1.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"array-includes","version":"3.0.3","purl":"pkg:npm/array-includes@3.0.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"array-union","version":"1.0.2","purl":"pkg:npm/array-union@1.0.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"balanced-match","version":"1.0.2","purl":"pkg:npm/balanced-match@1.0.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-resolvable","version":"1.1.0","purl":"pkg:npm/is-resolvable@1.1.0","license":{"expression":"ISC","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"body-parser","version":"1.20.2","purl":"pkg:npm/body-parser@1.20.2","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2024-45590","severity":"8.7","description":"body-parser is Node.js body parsing middleware. body-parser \u003c1.20.3 is vulnerable to denial of service when url encoding is enabled. A malicious actor using a specially crafted payload could flood the server with a large number of requests, resulting in denial of service. This issue is patched in 1.20.3.","date":"2024-09-10","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-45590","severity_rating":"High","epss_percentile":"0.19285","epss_probability":"0.00046","known_exploited":false}}],"direct":false,"type":"runtime","requirement":"1.20.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"brace-expansion","version":"1.1.11","purl":"pkg:npm/brace-expansion@1.1.11","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.11","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"bytes","version":"3.1.2","purl":"pkg:npm/bytes@3.1.2","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"3.1.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"caller-path","version":"0.1.0","purl":"pkg:npm/caller-path@0.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"chardet","version":"0.7.0","purl":"pkg:npm/chardet@0.7.0","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"0.7.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"circular-json","version":"0.3.3","purl":"pkg:npm/circular-json@0.3.3","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"0.3.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"cli-width","version":"2.2.0","purl":"pkg:npm/cli-width@2.2.0","license":{"expression":"ISC","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"color-convert","version":"1.9.3","purl":"pkg:npm/color-convert@1.9.3","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.9.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"color-name","version":"1.1.3","purl":"pkg:npm/color-name@1.1.3","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"commander","version":"2.19.0","purl":"pkg:npm/commander@2.19.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.19.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"concat-map","version":"0.0.1","purl":"pkg:npm/concat-map@0.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"content-disposition","version":"0.5.4","purl":"pkg:npm/content-disposition@0.5.4","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.5.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"content-type","version":"1.0.5","purl":"pkg:npm/content-type@1.0.5","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.5","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"cookie-signature","version":"1.0.6","purl":"pkg:npm/cookie-signature@1.0.6","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.6","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"cookie","version":"0.6.0","purl":"pkg:npm/cookie@0.6.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2024-47764","severity":null,"description":"cookie is a basic HTTP cookie parser and serializer for HTTP servers. The cookie name could be used to set other fields of the cookie, resulting in an unexpected cookie value. A similar escape can be used for path and domain, which could be abused to alter other fields of the cookie. Upgrade to 0.7.0, which updates the validation for name, path, and domain.","date":"2024-10-04","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-47764","severity_rating":null,"epss_percentile":"0.178","epss_probability":"0.00045","known_exploited":false}}],"direct":false,"type":"runtime","requirement":"0.6.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"cross-spawn","version":"6.0.5","purl":"pkg:npm/cross-spawn@6.0.5","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2024-21538","severity":"7.5","description":"Versions of the package cross-spawn before 7.0.5 are vulnerable to Regular Expression Denial of Service (ReDoS) due to improper input sanitization. An attacker can increase the CPU usage and crash the program by crafting a very large and well crafted string.","date":"2024-11-08","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-21538","severity_rating":"High","epss_percentile":"0.178","epss_probability":"0.00045","known_exploited":false}}],"direct":false,"type":"runtime","requirement":"6.0.5","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"debug","version":"2.6.9","purl":"pkg:npm/debug@2.6.9","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2017-20165","severity":"7.5","description":"A vulnerability classified as problematic has been found in debug-js debug up to 3.0.x. This affects the function useColors of the file src/node.js. The manipulation of the argument str leads to inefficient regular expression complexity. Upgrading to version 3.1.0 is able to address this issue. The identifier of the patch is c38a0166c266a679c8de012d4eaccec3f944e685. It is recommended to upgrade the affected component. The identifier VDB-217665 was assigned to this vulnerability.","date":"2023-01-09","url":"https://nvd.nist.gov/vuln/detail/CVE-2017-20165","severity_rating":"High","epss_percentile":"0.79308","epss_probability":"0.00642","known_exploited":false}}],"direct":false,"type":"runtime","requirement":"2.6.9","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"debug","version":"4.1.0","purl":"pkg:npm/debug@4.1.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"4.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"deep-is","version":"0.1.3","purl":"pkg:npm/deep-is@0.1.3","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"0.1.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"define-properties","version":"1.1.3","purl":"pkg:npm/define-properties@1.1.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"depd","version":"2.0.0","purl":"pkg:npm/depd@2.0.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"destroy","version":"1.2.0","purl":"pkg:npm/destroy@1.2.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"doctrine","version":"1.5.0","purl":"pkg:npm/doctrine@1.5.0","license":{"expression":"BSD-2-Clause AND Apache-2.0","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.5.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"doctrine","version":"2.1.0","purl":"pkg:npm/doctrine@2.1.0","license":{"expression":"Apache-2.0","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ee-first","version":"1.1.1","purl":"pkg:npm/ee-first@1.1.1","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"encodeurl","version":"1.0.2","purl":"pkg:npm/encodeurl@1.0.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"error-ex","version":"1.3.2","purl":"pkg:npm/error-ex@1.3.2","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.3.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"es-abstract","version":"1.12.0","purl":"pkg:npm/es-abstract@1.12.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.12.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"es-to-primitive","version":"1.2.0","purl":"pkg:npm/es-to-primitive@1.2.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"escape-html","version":"1.0.3","purl":"pkg:npm/escape-html@1.0.3","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-import-resolver-node","version":"0.3.2","purl":"pkg:npm/eslint-import-resolver-node@0.3.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.3.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-module-utils","version":"2.2.0","purl":"pkg:npm/eslint-module-utils@2.2.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-plugin-import","version":"2.14.0","purl":"pkg:npm/eslint-plugin-import@2.14.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":true,"type":"development","requirement":"^2.14.0","manifest_source":"package.json","lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-scope","version":"4.0.0","purl":"pkg:npm/eslint-scope@4.0.0","license":{"expression":"BSD-2-Clause","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"4.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-visitor-keys","version":"1.1.0","purl":"pkg:npm/eslint-visitor-keys@1.1.0","license":{"expression":"Apache-2.0","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"espree","version":"4.1.0","purl":"pkg:npm/espree@4.1.0","license":{"expression":"BSD-2-Clause","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"4.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"esprima","version":"4.0.1","purl":"pkg:npm/esprima@4.0.1","license":{"expression":"BSD-2-Clause","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"4.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"esquery","version":"1.0.1","purl":"pkg:npm/esquery@1.0.1","license":{"expression":"BSD-3-Clause","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"esrecurse","version":"4.2.1","purl":"pkg:npm/esrecurse@4.2.1","license":{"expression":"BSD-2-Clause","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"4.2.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"estraverse","version":"4.2.0","purl":"pkg:npm/estraverse@4.2.0","license":{"expression":"BSD-2-Clause","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"4.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"esutils","version":"2.0.2","purl":"pkg:npm/esutils@2.0.2","license":{"expression":"BSD-2-Clause","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"etag","version":"1.8.1","purl":"pkg:npm/etag@1.8.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.8.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"external-editor","version":"3.0.3","purl":"pkg:npm/external-editor@3.0.3","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"fast-deep-equal","version":"3.1.3","purl":"pkg:npm/fast-deep-equal@3.1.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.1.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"fast-json-stable-stringify","version":"2.1.0","purl":"pkg:npm/fast-json-stable-stringify@2.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"fast-levenshtein","version":"2.0.6","purl":"pkg:npm/fast-levenshtein@2.0.6","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.6","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"file-entry-cache","version":"2.0.0","purl":"pkg:npm/file-entry-cache@2.0.0","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"finalhandler","version":"1.2.0","purl":"pkg:npm/finalhandler@1.2.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"flat-cache","version":"1.3.2","purl":"pkg:npm/flat-cache@1.3.2","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.3.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"forwarded","version":"0.2.0","purl":"pkg:npm/forwarded@0.2.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"fresh","version":"0.5.2","purl":"pkg:npm/fresh@0.5.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.5.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"fs.realpath","version":"1.0.0","purl":"pkg:npm/fs.realpath@1.0.0","license":{"expression":"ISC","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"function-bind","version":"1.1.1","purl":"pkg:npm/function-bind@1.1.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"function-bind","version":"1.1.2","purl":"pkg:npm/function-bind@1.1.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"functional-red-black-tree","version":"1.0.1","purl":"pkg:npm/functional-red-black-tree@1.0.1","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"glob","version":"7.1.3","purl":"pkg:npm/glob@7.1.3","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"7.1.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"globals","version":"11.9.0","purl":"pkg:npm/globals@11.9.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"11.9.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"graceful-fs","version":"4.1.15","purl":"pkg:npm/graceful-fs@4.1.15","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"4.1.15","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"has-symbols","version":"1.0.0","purl":"pkg:npm/has-symbols@1.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"has-symbols","version":"1.0.3","purl":"pkg:npm/has-symbols@1.0.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"has","version":"1.0.3","purl":"pkg:npm/has@1.0.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"hosted-git-info","version":"2.8.9","purl":"pkg:npm/hosted-git-info@2.8.9","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2021-23362","severity":"5.3","description":"The package hosted-git-info before 3.0.8 are vulnerable to Regular Expression Denial of Service (ReDoS) via regular expression shortcutMatch in the fromUrl function in index.js. The affected regular expression exhibits polynomial worst-case time complexity.","date":"2021-03-23","url":"https://nvd.nist.gov/vuln/detail/CVE-2021-23362","severity_rating":"Medium","epss_percentile":"0.61567","epss_probability":"0.00236","known_exploited":false}}],"direct":false,"type":"runtime","requirement":"2.8.9","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"http-errors","version":"2.0.0","purl":"pkg:npm/http-errors@2.0.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"iconv-lite","version":"0.4.24","purl":"pkg:npm/iconv-lite@0.4.24","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"0.4.24","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ignore","version":"4.0.6","purl":"pkg:npm/ignore@4.0.6","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"4.0.6","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"imurmurhash","version":"0.1.4","purl":"pkg:npm/imurmurhash@0.1.4","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"0.1.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"inflight","version":"1.0.6","purl":"pkg:npm/inflight@1.0.6","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.6","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"inherits","version":"2.0.3","purl":"pkg:npm/inherits@2.0.3","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"inherits","version":"2.0.4","purl":"pkg:npm/inherits@2.0.4","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"inquirer","version":"6.2.0","purl":"pkg:npm/inquirer@6.2.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"6.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ipaddr.js","version":"1.9.1","purl":"pkg:npm/ipaddr.js@1.9.1","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.9.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-arrayish","version":"0.2.1","purl":"pkg:npm/is-arrayish@0.2.1","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"0.2.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-callable","version":"1.1.4","purl":"pkg:npm/is-callable@1.1.4","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-date-object","version":"1.0.1","purl":"pkg:npm/is-date-object@1.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-path-cwd","version":"1.0.0","purl":"pkg:npm/is-path-cwd@1.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-path-in-cwd","version":"1.0.1","purl":"pkg:npm/is-path-in-cwd@1.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-regex","version":"1.0.4","purl":"pkg:npm/is-regex@1.0.4","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-symbol","version":"1.0.2","purl":"pkg:npm/is-symbol@1.0.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"isarray","version":"1.0.0","purl":"pkg:npm/isarray@1.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"isexe","version":"2.0.0","purl":"pkg:npm/isexe@2.0.0","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"js-tokens","version":"4.0.0","purl":"pkg:npm/js-tokens@4.0.0","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"4.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"js-yaml","version":"3.13.1","purl":"pkg:npm/js-yaml@3.13.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.13.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"json-schema-traverse","version":"0.4.1","purl":"pkg:npm/json-schema-traverse@0.4.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.4.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"json-stable-stringify-without-jsonify","version":"1.0.1","purl":"pkg:npm/json-stable-stringify-without-jsonify@1.0.1","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"levn","version":"0.3.0","purl":"pkg:npm/levn@0.3.0","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"0.3.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"loose-envify","version":"1.4.0","purl":"pkg:npm/loose-envify@1.4.0","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.4.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"media-typer","version":"0.3.0","purl":"pkg:npm/media-typer@0.3.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.3.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"merge-descriptors","version":"1.0.1","purl":"pkg:npm/merge-descriptors@1.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"methods","version":"1.1.2","purl":"pkg:npm/methods@1.1.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"mime-db","version":"1.40.0","purl":"pkg:npm/mime-db@1.40.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.40.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"mime-db","version":"1.52.0","purl":"pkg:npm/mime-db@1.52.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.52.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"mime-types","version":"2.1.24","purl":"pkg:npm/mime-types@2.1.24","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.24","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"mime-types","version":"2.1.35","purl":"pkg:npm/mime-types@2.1.35","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.35","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"mime","version":"1.6.0","purl":"pkg:npm/mime@1.6.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.6.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"minimatch","version":"3.1.2","purl":"pkg:npm/minimatch@3.1.2","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"3.1.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"minimist","version":"0.0.8","purl":"pkg:npm/minimist@0.0.8","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2020-7598","severity":"5.6","description":"minimist before 1.2.2 could be tricked into adding or modifying properties of Object.prototype using a \"constructor\" or \"__proto__\" payload.","date":"2020-03-11","url":"https://nvd.nist.gov/vuln/detail/CVE-2020-7598","severity_rating":"Medium","epss_percentile":"0.5046","epss_probability":"0.00139","known_exploited":false}},{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2021-44906","severity":"9.8","description":"Minimist \u003c=1.2.5 is vulnerable to Prototype Pollution via file index.js, function setKey() (lines 69-95).","date":"2022-03-17","url":"https://nvd.nist.gov/vuln/detail/CVE-2021-44906","severity_rating":"Critical","epss_percentile":"0.89373","epss_probability":"0.02255","known_exploited":false}}],"direct":false,"type":"runtime","requirement":"0.0.8","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"mkdirp","version":"0.5.1","purl":"pkg:npm/mkdirp@0.5.1","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"0.5.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ms","version":"2.0.0","purl":"pkg:npm/ms@2.0.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ms","version":"2.1.1","purl":"pkg:npm/ms@2.1.1","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ms","version":"2.1.3","purl":"pkg:npm/ms@2.1.3","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"mute-stream","version":"0.0.7","purl":"pkg:npm/mute-stream@0.0.7","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"0.0.7","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"natural-compare","version":"1.4.0","purl":"pkg:npm/natural-compare@1.4.0","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.4.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"negotiator","version":"0.6.3","purl":"pkg:npm/negotiator@0.6.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.6.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"nice-try","version":"1.0.5","purl":"pkg:npm/nice-try@1.0.5","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.5","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"normalize-package-data","version":"2.4.0","purl":"pkg:npm/normalize-package-data@2.4.0","license":{"expression":"BSD-2-Clause","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.4.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"object-keys","version":"1.0.12","purl":"pkg:npm/object-keys@1.0.12","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.12","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"object.assign","version":"4.1.0","purl":"pkg:npm/object.assign@4.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"4.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"on-finished","version":"2.4.1","purl":"pkg:npm/on-finished@2.4.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.4.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"once","version":"1.4.0","purl":"pkg:npm/once@1.4.0","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.4.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"optionator","version":"0.8.2","purl":"pkg:npm/optionator@0.8.2","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"0.8.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"p-try","version":"1.0.0","purl":"pkg:npm/p-try@1.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"parseurl","version":"1.3.3","purl":"pkg:npm/parseurl@1.3.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.3.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"path-is-inside","version":"1.0.2","purl":"pkg:npm/path-is-inside@1.0.2","license":{"expression":"WTFPL OR MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"path-parse","version":"1.0.7","purl":"pkg:npm/path-parse@1.0.7","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.7","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"path-to-regexp","version":"0.1.7","purl":"pkg:npm/path-to-regexp@0.1.7","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2024-45296","severity":"7.5","description":"path-to-regexp turns path strings into a regular expressions. In certain cases, path-to-regexp will output a regular expression that can be exploited to cause poor performance. Because JavaScript is single threaded and regex matching runs on the main thread, poor performance will block the event loop and lead to a DoS. The bad regular expression is generated any time you have two parameters within a single segment, separated by something that is not a period (.). For users of 0.1, upgrade to 0.1.10. All other users should upgrade to 8.0.0.","date":"2024-09-09","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-45296","severity_rating":"High","epss_percentile":"0.178","epss_probability":"0.00045","known_exploited":false}},{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2024-52798","severity":"7.7","description":"path-to-regexp turns path strings into a regular expressions. In certain cases, path-to-regexp will output a regular expression that can be exploited to cause poor performance. The regular expression that is vulnerable to backtracking can be generated in the 0.1.x release of path-to-regexp. Upgrade to 0.1.12. This vulnerability exists because of an incomplete fix for CVE-2024-45296.","date":"2024-12-05","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-52798","severity_rating":"High","epss_percentile":"0.11435","epss_probability":"0.00043","known_exploited":false}}],"direct":false,"type":"runtime","requirement":"0.1.7","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"pinkie-promise","version":"2.0.1","purl":"pkg:npm/pinkie-promise@2.0.1","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"pinkie","version":"2.0.4","purl":"pkg:npm/pinkie@2.0.4","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"pluralize","version":"7.0.0","purl":"pkg:npm/pluralize@7.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"7.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"prelude-ls","version":"1.1.2","purl":"pkg:npm/prelude-ls@1.1.2","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"progress","version":"2.0.1","purl":"pkg:npm/progress@2.0.1","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"proxy-addr","version":"2.0.7","purl":"pkg:npm/proxy-addr@2.0.7","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.7","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"punycode","version":"2.1.1","purl":"pkg:npm/punycode@2.1.1","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"qs","version":"6.11.0","purl":"pkg:npm/qs@6.11.0","license":{"expression":"BSD-3-Clause","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"6.11.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"range-parser","version":"1.2.1","purl":"pkg:npm/range-parser@1.2.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"raw-body","version":"2.5.2","purl":"pkg:npm/raw-body@2.5.2","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.5.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"regexpp","version":"2.0.1","purl":"pkg:npm/regexpp@2.0.1","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"resolve","version":"1.8.1","purl":"pkg:npm/resolve@1.8.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.8.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"rimraf","version":"2.6.2","purl":"pkg:npm/rimraf@2.6.2","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"2.6.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"run-async","version":"2.3.0","purl":"pkg:npm/run-async@2.3.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.3.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"safer-buffer","version":"2.1.2","purl":"pkg:npm/safer-buffer@2.1.2","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"semver","version":"5.7.2","purl":"pkg:npm/semver@5.7.2","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"5.7.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"send","version":"0.18.0","purl":"pkg:npm/send@0.18.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2024-43799","severity":"5.0","description":"Send is a library for streaming files from the file system as a http response. Send passes untrusted user input to SendStream.redirect() which executes untrusted code. This issue is patched in send 0.19.0.","date":"2024-09-10","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-43799","severity_rating":"Medium","epss_percentile":"0.19285","epss_probability":"0.00046","known_exploited":false}}],"direct":false,"type":"runtime","requirement":"0.18.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"serve-static","version":"1.15.0","purl":"pkg:npm/serve-static@1.15.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[{"catalog_standard":"vulnerabilities","vulnerability":{"id":"CVE-2024-43800","severity":"5.0","description":"serve-static serves static files. serve-static passes untrusted user input - even after sanitizing it - to redirect() may execute untrusted code. This issue is patched in serve-static 1.16.0.","date":"2024-09-10","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-43800","severity_rating":"Medium","epss_percentile":"0.23338","epss_probability":"0.00052","known_exploited":false}}],"direct":false,"type":"runtime","requirement":"1.15.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"setprototypeof","version":"1.2.0","purl":"pkg:npm/setprototypeof@1.2.0","license":{"expression":"ISC","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"shebang-command","version":"1.2.0","purl":"pkg:npm/shebang-command@1.2.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"shebang-regex","version":"1.0.0","purl":"pkg:npm/shebang-regex@1.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"signal-exit","version":"3.0.2","purl":"pkg:npm/signal-exit@3.0.2","license":{"expression":"ISC","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"spdx-correct","version":"3.0.2","purl":"pkg:npm/spdx-correct@3.0.2","license":{"expression":"Apache-2.0","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"spdx-exceptions","version":"2.2.0","purl":"pkg:npm/spdx-exceptions@2.2.0","license":{"expression":"CC-BY-3.0","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"spdx-expression-parse","version":"3.0.0","purl":"pkg:npm/spdx-expression-parse@3.0.0","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"spdx-license-ids","version":"3.0.2","purl":"pkg:npm/spdx-license-ids@3.0.2","license":{"expression":"CC0-1.0","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"sprintf-js","version":"1.0.3","purl":"pkg:npm/sprintf-js@1.0.3","license":{"expression":"BSD-3-Clause","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"statuses","version":"2.0.1","purl":"pkg:npm/statuses@2.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"table","version":"5.1.0","purl":"pkg:npm/table@5.1.0","license":{"expression":"BSD-3-Clause","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"5.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"text-table","version":"0.2.0","purl":"pkg:npm/text-table@0.2.0","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"0.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"through","version":"2.3.8","purl":"pkg:npm/through@2.3.8","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"2.3.8","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"tmp","version":"0.0.33","purl":"pkg:npm/tmp@0.0.33","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"0.0.33","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"tslib","version":"1.9.3","purl":"pkg:npm/tslib@1.9.3","license":{"expression":"0BSD","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.9.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"type-check","version":"0.3.2","purl":"pkg:npm/type-check@0.3.2","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"0.3.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"type-is","version":"1.6.18","purl":"pkg:npm/type-is@1.6.18","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.6.18","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"unpipe","version":"1.0.0","purl":"pkg:npm/unpipe@1.0.0","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"uri-js","version":"4.4.1","purl":"pkg:npm/uri-js@4.4.1","license":{"expression":"BSD-2-Clause","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"4.4.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"utils-merge","version":"1.0.1","purl":"pkg:npm/utils-merge@1.0.1","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"validate-npm-package-license","version":"3.0.4","purl":"pkg:npm/validate-npm-package-license@3.0.4","license":{"expression":"Apache-2.0","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"vary","version":"1.1.2","purl":"pkg:npm/vary@1.1.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"which","version":"1.3.1","purl":"pkg:npm/which@1.3.1","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.3.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"wordwrap","version":"1.0.0","purl":"pkg:npm/wordwrap@1.0.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"wrappy","version":"1.0.2","purl":"pkg:npm/wrappy@1.0.2","license":{"expression":"ISC","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"emoji-regex","version":"6.5.1","purl":"pkg:npm/emoji-regex@6.5.1","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"6.5.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"prop-types","version":"15.6.2","purl":"pkg:npm/prop-types@15.6.2","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"15.6.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"rxjs","version":"6.3.3","purl":"pkg:npm/rxjs@6.3.3","license":{"expression":"Apache-2.0","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"6.3.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-config-airbnb-base","version":"13.1.0","purl":"pkg:npm/eslint-config-airbnb-base@13.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"13.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-restricted-globals","version":"0.1.1","purl":"pkg:npm/eslint-restricted-globals@0.1.1","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"0.1.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-utils","version":"1.4.2","purl":"pkg:npm/eslint-utils@1.4.2","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.4.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"toidentifier","version":"1.0.1","purl":"pkg:npm/toidentifier@1.0.1","license":{"expression":"MIT","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"aria-query","version":"3.0.0","purl":"pkg:npm/aria-query@3.0.0","license":{"expression":"Apache-2.0","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ast-types-flow","version":"0.0.7","purl":"pkg:npm/ast-types-flow@0.0.7","license":{"expression":"ISC","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"0.0.7","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"axobject-query","version":"2.0.2","purl":"pkg:npm/axobject-query@2.0.2","license":{"expression":"Apache-2.0","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"damerau-levenshtein","version":"1.0.4","purl":"pkg:npm/damerau-levenshtein@1.0.4","license":{"expression":"BSD-2-Clause","source":"valid_spdx"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-config-airbnb","version":"17.1.0","purl":"pkg:npm/eslint-config-airbnb@17.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":true,"type":"development","requirement":"^17.1.0","manifest_source":"package.json","lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-plugin-jsx-a11y","version":"6.1.2","purl":"pkg:npm/eslint-plugin-jsx-a11y@6.1.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":true,"type":"development","requirement":"^6.1.2","manifest_source":"package.json","lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint-plugin-react","version":"7.11.1","purl":"pkg:npm/eslint-plugin-react@7.11.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":true,"type":"development","requirement":"^7.11.1","manifest_source":"package.json","lockfile_source":"yarn.lock"},{"platform":"npm","name":"jsx-ast-utils","version":"2.0.1","purl":"pkg:npm/jsx-ast-utils@2.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"object-inspect","version":"1.13.1","purl":"pkg:npm/object-inspect@1.13.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.13.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"object.entries","version":"1.0.4","purl":"pkg:npm/object.entries@1.0.4","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"eslint","version":"5.9.0","purl":"pkg:npm/eslint@5.9.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":true,"type":"development","requirement":"^5.9.0","manifest_source":"package.json","lockfile_source":"yarn.lock"},{"platform":"npm","name":"safe-buffer","version":"5.2.1","purl":"pkg:npm/safe-buffer@5.2.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"5.2.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"has-property-descriptors","version":"1.0.2","purl":"pkg:npm/has-property-descriptors@1.0.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"gopd","version":"1.0.1","purl":"pkg:npm/gopd@1.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"has-proto","version":"1.0.3","purl":"pkg:npm/has-proto@1.0.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"define-data-property","version":"1.1.4","purl":"pkg:npm/define-data-property@1.1.4","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.4","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"set-function-length","version":"1.2.2","purl":"pkg:npm/set-function-length@1.2.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"es-errors","version":"1.3.0","purl":"pkg:npm/es-errors@1.3.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.3.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"es-define-property","version":"1.0.0","purl":"pkg:npm/es-define-property@1.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"slice-ansi","version":"1.0.0","purl":"pkg:npm/slice-ansi@1.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"chalk","version":"2.4.1","purl":"pkg:npm/chalk@2.4.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.4.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"supports-color","version":"5.5.0","purl":"pkg:npm/supports-color@5.5.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"5.5.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"strip-ansi","version":"4.0.0","purl":"pkg:npm/strip-ansi@4.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"4.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ansi-styles","version":"3.2.1","purl":"pkg:npm/ansi-styles@3.2.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.2.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ansi-regex","version":"3.0.1","purl":"pkg:npm/ansi-regex@3.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"has-flag","version":"3.0.0","purl":"pkg:npm/has-flag@3.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"globby","version":"6.1.0","purl":"pkg:npm/globby@6.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"6.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"figures","version":"2.0.0","purl":"pkg:npm/figures@2.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"strip-bom","version":"3.0.0","purl":"pkg:npm/strip-bom@3.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"object-assign","version":"4.1.1","purl":"pkg:npm/object-assign@4.1.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"4.1.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"ansi-escapes","version":"3.1.0","purl":"pkg:npm/ansi-escapes@3.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"strip-json-comments","version":"2.0.1","purl":"pkg:npm/strip-json-comments@2.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-fullwidth-code-point","version":"2.0.0","purl":"pkg:npm/is-fullwidth-code-point@2.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"pify","version":"2.3.0","purl":"pkg:npm/pify@2.3.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.3.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"pify","version":"3.0.0","purl":"pkg:npm/pify@3.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"del","version":"3.0.0","purl":"pkg:npm/del@3.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"resolve-from","version":"1.0.1","purl":"pkg:npm/resolve-from@1.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"path-type","version":"2.0.0","purl":"pkg:npm/path-type@2.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"p-locate","version":"2.0.0","purl":"pkg:npm/p-locate@2.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"find-up","version":"1.1.2","purl":"pkg:npm/find-up@1.1.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"read-pkg","version":"2.0.0","purl":"pkg:npm/read-pkg@2.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"find-up","version":"2.1.0","purl":"pkg:npm/find-up@2.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"p-map","version":"1.2.0","purl":"pkg:npm/p-map@1.2.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"string-width","version":"2.1.1","purl":"pkg:npm/string-width@2.1.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"p-limit","version":"1.3.0","purl":"pkg:npm/p-limit@1.3.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.3.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"onetime","version":"2.0.1","purl":"pkg:npm/onetime@2.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"parse-json","version":"2.2.0","purl":"pkg:npm/parse-json@2.2.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"load-json-file","version":"2.0.0","purl":"pkg:npm/load-json-file@2.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"path-is-absolute","version":"1.0.1","purl":"pkg:npm/path-is-absolute@1.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"os-tmpdir","version":"1.0.2","purl":"pkg:npm/os-tmpdir@1.0.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"array-uniq","version":"1.0.3","purl":"pkg:npm/array-uniq@1.0.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"cli-cursor","version":"2.1.0","purl":"pkg:npm/cli-cursor@2.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"require-uncached","version":"1.0.3","purl":"pkg:npm/require-uncached@1.0.3","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.3","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"locate-path","version":"2.0.0","purl":"pkg:npm/locate-path@2.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"read-pkg-up","version":"2.0.0","purl":"pkg:npm/read-pkg-up@2.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"pkg-dir","version":"1.0.0","purl":"pkg:npm/pkg-dir@1.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"path-exists","version":"2.1.0","purl":"pkg:npm/path-exists@2.1.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.1.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"path-exists","version":"3.0.0","purl":"pkg:npm/path-exists@3.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"3.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"mimic-fn","version":"1.2.0","purl":"pkg:npm/mimic-fn@1.2.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"builtin-modules","version":"1.1.1","purl":"pkg:npm/builtin-modules@1.1.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.1.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"path-key","version":"2.0.1","purl":"pkg:npm/path-key@2.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-builtin-module","version":"1.0.0","purl":"pkg:npm/is-builtin-module@1.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"callsites","version":"0.2.0","purl":"pkg:npm/callsites@0.2.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"0.2.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"escape-string-regexp","version":"1.0.5","purl":"pkg:npm/escape-string-regexp@1.0.5","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.5","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"is-path-inside","version":"1.0.1","purl":"pkg:npm/is-path-inside@1.0.1","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"1.0.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"restore-cursor","version":"2.0.0","purl":"pkg:npm/restore-cursor@2.0.0","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.0","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"hasown","version":"2.0.2","purl":"pkg:npm/hasown@2.0.2","license":{"expression":"MIT","source":"verified_by_maintainer"},"violations":[],"direct":false,"type":"runtime","requirement":"2.0.2","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"write","version":"0.2.1","purl":"pkg:npm/write@0.2.1","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"0.2.1","manifest_source":null,"lockfile_source":"yarn.lock"},{"platform":"npm","name":"contains-path","version":"0.1.0","purl":"pkg:npm/contains-path@0.1.0","license":{"expression":"MIT","source":"researched_by_tidelift"},"violations":[],"direct":false,"type":"runtime","requirement":"0.1.0","manifest_source":null,"lockfile_source":"yarn.lock"}],"missing_releases":[]} \ No newline at end of file
diff --git a/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/yarn.lock b/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/yarn.lock
deleted file mode 100755
index 633cf9abbe6..00000000000
--- a/server/sonar-ce-task-projectanalysis/src/it/resources/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepIT/textbelt/yarn.lock
+++ /dev/null
@@ -1,1756 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@babel/code-frame@^7.0.0":
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8"
- integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==
- dependencies:
- "@babel/highlight" "^7.0.0"
-
-"@babel/highlight@^7.0.0":
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4"
- integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==
- dependencies:
- chalk "^2.0.0"
- esutils "^2.0.2"
- js-tokens "^4.0.0"
-
-accepts@~1.3.8:
- version "1.3.8"
- resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"
- integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==
- dependencies:
- mime-types "~2.1.34"
- negotiator "0.6.3"
-
-acorn-jsx@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.0.tgz#958584ddb60990c02c97c1bd9d521fce433bb101"
- integrity sha512-XkB50fn0MURDyww9+UYL3c1yLbOBz0ZFvrdYlGB8l+Ije1oSC75qAqrzSPjYQbdnQUzhlUGNKuesryAv0gxZOg==
-
-acorn@^6.0.2:
- version "6.4.1"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
- integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
-
-ajv@^6.5.3:
- version "6.12.6"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
- integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
- dependencies:
- fast-deep-equal "^3.1.1"
- fast-json-stable-stringify "^2.0.0"
- json-schema-traverse "^0.4.1"
- uri-js "^4.2.2"
-
-ansi-escapes@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30"
- integrity sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==
-
-ansi-regex@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1"
- integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==
-
-ansi-styles@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
- integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
- dependencies:
- color-convert "^1.9.0"
-
-argparse@^1.0.7:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
- integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
- dependencies:
- sprintf-js "~1.0.2"
-
-aria-query@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-3.0.0.tgz#65b3fcc1ca1155a8c9ae64d6eee297f15d5133cc"
- integrity sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=
- dependencies:
- ast-types-flow "0.0.7"
- commander "^2.11.0"
-
-array-flatten@1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
- integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=
-
-array-includes@^3.0.3:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d"
- integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=
- dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.7.0"
-
-array-union@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
- integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=
- dependencies:
- array-uniq "^1.0.1"
-
-array-uniq@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
- integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=
-
-ast-types-flow@0.0.7, ast-types-flow@^0.0.7:
- version "0.0.7"
- resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad"
- integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0=
-
-axobject-query@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz#ea187abe5b9002b377f925d8bf7d1c561adf38f9"
- integrity sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==
- dependencies:
- ast-types-flow "0.0.7"
-
-balanced-match@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
- integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
-
-body-parser@1.20.2:
- version "1.20.2"
- resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd"
- integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==
- dependencies:
- bytes "3.1.2"
- content-type "~1.0.5"
- debug "2.6.9"
- depd "2.0.0"
- destroy "1.2.0"
- http-errors "2.0.0"
- iconv-lite "0.4.24"
- on-finished "2.4.1"
- qs "6.11.0"
- raw-body "2.5.2"
- type-is "~1.6.18"
- unpipe "1.0.0"
-
-brace-expansion@^1.1.7:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
- integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-builtin-modules@^1.0.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
- integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=
-
-bytes@3.1.2:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5"
- integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==
-
-call-bind@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9"
- integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==
- dependencies:
- es-define-property "^1.0.0"
- es-errors "^1.3.0"
- function-bind "^1.1.2"
- get-intrinsic "^1.2.4"
- set-function-length "^1.2.1"
-
-caller-path@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f"
- integrity sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=
- dependencies:
- callsites "^0.2.0"
-
-callsites@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca"
- integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=
-
-chalk@^2.0.0, chalk@^2.1.0:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e"
- integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==
- dependencies:
- ansi-styles "^3.2.1"
- escape-string-regexp "^1.0.5"
- supports-color "^5.3.0"
-
-chardet@^0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
- integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
-
-circular-json@^0.3.1:
- version "0.3.3"
- resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66"
- integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==
-
-cli-cursor@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
- integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=
- dependencies:
- restore-cursor "^2.0.0"
-
-cli-width@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639"
- integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=
-
-color-convert@^1.9.0:
- version "1.9.3"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
- integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
- dependencies:
- color-name "1.1.3"
-
-color-name@1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
- integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
-
-commander@^2.11.0:
- version "2.19.0"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a"
- integrity sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
- integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
-
-contains-path@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
- integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=
-
-content-disposition@0.5.4:
- version "0.5.4"
- resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"
- integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==
- dependencies:
- safe-buffer "5.2.1"
-
-content-type@~1.0.4, content-type@~1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918"
- integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==
-
-cookie-signature@1.0.6:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"
- integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw=
-
-cookie@0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.6.0.tgz#2798b04b071b0ecbff0dbb62a505a8efa4e19051"
- integrity sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==
-
-cross-spawn@^6.0.5:
- version "6.0.5"
- resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
- integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==
- dependencies:
- nice-try "^1.0.4"
- path-key "^2.0.1"
- semver "^5.5.0"
- shebang-command "^1.2.0"
- which "^1.2.9"
-
-damerau-levenshtein@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514"
- integrity sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ=
-
-debug@2.6.9, debug@^2.6.8, debug@^2.6.9:
- version "2.6.9"
- resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
- integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
- dependencies:
- ms "2.0.0"
-
-debug@^4.0.1:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.0.tgz#373687bffa678b38b1cd91f861b63850035ddc87"
- integrity sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==
- dependencies:
- ms "^2.1.1"
-
-deep-is@~0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
- integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
-
-define-data-property@^1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e"
- integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==
- dependencies:
- es-define-property "^1.0.0"
- es-errors "^1.3.0"
- gopd "^1.0.1"
-
-define-properties@^1.1.2:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
- integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
- dependencies:
- object-keys "^1.0.12"
-
-del@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5"
- integrity sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=
- dependencies:
- globby "^6.1.0"
- is-path-cwd "^1.0.0"
- is-path-in-cwd "^1.0.0"
- p-map "^1.1.1"
- pify "^3.0.0"
- rimraf "^2.2.8"
-
-depd@2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"
- integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==
-
-destroy@1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015"
- integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==
-
-doctrine@1.5.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
- integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=
- dependencies:
- esutils "^2.0.2"
- isarray "^1.0.0"
-
-doctrine@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d"
- integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==
- dependencies:
- esutils "^2.0.2"
-
-ee-first@1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
- integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
-
-emoji-regex@^6.5.1:
- version "6.5.1"
- resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz#9baea929b155565c11ea41c6626eaa65cef992c2"
- integrity sha512-PAHp6TxrCy7MGMFidro8uikr+zlJJKJ/Q6mm2ExZ7HwkyR9lSVFfE3kt36qcwa24BQL7y0G9axycGjK1A/0uNQ==
-
-encodeurl@~1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
- integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=
-
-error-ex@^1.2.0:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
- integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
- dependencies:
- is-arrayish "^0.2.1"
-
-es-abstract@^1.6.1, es-abstract@^1.7.0:
- version "1.12.0"
- resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165"
- integrity sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==
- dependencies:
- es-to-primitive "^1.1.1"
- function-bind "^1.1.1"
- has "^1.0.1"
- is-callable "^1.1.3"
- is-regex "^1.0.4"
-
-es-define-property@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845"
- integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==
- dependencies:
- get-intrinsic "^1.2.4"
-
-es-errors@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f"
- integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==
-
-es-to-primitive@^1.1.1:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377"
- integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==
- dependencies:
- is-callable "^1.1.4"
- is-date-object "^1.0.1"
- is-symbol "^1.0.2"
-
-escape-html@~1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
- integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=
-
-escape-string-regexp@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
- integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
-
-eslint-config-airbnb-base@^13.1.0:
- version "13.1.0"
- resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.1.0.tgz#b5a1b480b80dfad16433d6c4ad84e6605052c05c"
- integrity sha512-XWwQtf3U3zIoKO1BbHh6aUhJZQweOwSt4c2JrPDg9FP3Ltv3+YfEv7jIDB8275tVnO/qOHbfuYg3kzw6Je7uWw==
- dependencies:
- eslint-restricted-globals "^0.1.1"
- object.assign "^4.1.0"
- object.entries "^1.0.4"
-
-eslint-config-airbnb@^17.1.0:
- version "17.1.0"
- resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-17.1.0.tgz#3964ed4bc198240315ff52030bf8636f42bc4732"
- integrity sha512-R9jw28hFfEQnpPau01NO5K/JWMGLi6aymiF6RsnMURjTk+MqZKllCqGK/0tOvHkPi/NWSSOU2Ced/GX++YxLnw==
- dependencies:
- eslint-config-airbnb-base "^13.1.0"
- object.assign "^4.1.0"
- object.entries "^1.0.4"
-
-eslint-import-resolver-node@^0.3.1:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a"
- integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==
- dependencies:
- debug "^2.6.9"
- resolve "^1.5.0"
-
-eslint-module-utils@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz#b270362cd88b1a48ad308976ce7fa54e98411746"
- integrity sha1-snA2LNiLGkitMIl2zn+lTphBF0Y=
- dependencies:
- debug "^2.6.8"
- pkg-dir "^1.0.0"
-
-eslint-plugin-import@^2.14.0:
- version "2.14.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.14.0.tgz#6b17626d2e3e6ad52cfce8807a845d15e22111a8"
- integrity sha512-FpuRtniD/AY6sXByma2Wr0TXvXJ4nA/2/04VPlfpmUDPOpOY264x+ILiwnrk/k4RINgDAyFZByxqPUbSQ5YE7g==
- dependencies:
- contains-path "^0.1.0"
- debug "^2.6.8"
- doctrine "1.5.0"
- eslint-import-resolver-node "^0.3.1"
- eslint-module-utils "^2.2.0"
- has "^1.0.1"
- lodash "^4.17.4"
- minimatch "^3.0.3"
- read-pkg-up "^2.0.0"
- resolve "^1.6.0"
-
-eslint-plugin-jsx-a11y@^6.1.2:
- version "6.1.2"
- resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.1.2.tgz#69bca4890b36dcf0fe16dd2129d2d88b98f33f88"
- integrity sha512-7gSSmwb3A+fQwtw0arguwMdOdzmKUgnUcbSNlo+GjKLAQFuC2EZxWqG9XHRI8VscBJD5a8raz3RuxQNFW+XJbw==
- dependencies:
- aria-query "^3.0.0"
- array-includes "^3.0.3"
- ast-types-flow "^0.0.7"
- axobject-query "^2.0.1"
- damerau-levenshtein "^1.0.4"
- emoji-regex "^6.5.1"
- has "^1.0.3"
- jsx-ast-utils "^2.0.1"
-
-eslint-plugin-react@^7.11.1:
- version "7.11.1"
- resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.11.1.tgz#c01a7af6f17519457d6116aa94fc6d2ccad5443c"
- integrity sha512-cVVyMadRyW7qsIUh3FHp3u6QHNhOgVrLQYdQEB1bPWBsgbNCHdFAeNMquBMCcZJu59eNthX053L70l7gRt4SCw==
- dependencies:
- array-includes "^3.0.3"
- doctrine "^2.1.0"
- has "^1.0.3"
- jsx-ast-utils "^2.0.1"
- prop-types "^15.6.2"
-
-eslint-restricted-globals@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7"
- integrity sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc=
-
-eslint-scope@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz#50bf3071e9338bcdc43331794a0cb533f0136172"
- integrity sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==
- dependencies:
- esrecurse "^4.1.0"
- estraverse "^4.1.1"
-
-eslint-utils@^1.3.1:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab"
- integrity sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q==
- dependencies:
- eslint-visitor-keys "^1.0.0"
-
-eslint-visitor-keys@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2"
- integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==
-
-eslint@^5.9.0:
- version "5.9.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.9.0.tgz#b234b6d15ef84b5849c6de2af43195a2d59d408e"
- integrity sha512-g4KWpPdqN0nth+goDNICNXGfJF7nNnepthp46CAlJoJtC5K/cLu3NgCM3AHu1CkJ5Hzt9V0Y0PBAO6Ay/gGb+w==
- dependencies:
- "@babel/code-frame" "^7.0.0"
- ajv "^6.5.3"
- chalk "^2.1.0"
- cross-spawn "^6.0.5"
- debug "^4.0.1"
- doctrine "^2.1.0"
- eslint-scope "^4.0.0"
- eslint-utils "^1.3.1"
- eslint-visitor-keys "^1.0.0"
- espree "^4.0.0"
- esquery "^1.0.1"
- esutils "^2.0.2"
- file-entry-cache "^2.0.0"
- functional-red-black-tree "^1.0.1"
- glob "^7.1.2"
- globals "^11.7.0"
- ignore "^4.0.6"
- imurmurhash "^0.1.4"
- inquirer "^6.1.0"
- is-resolvable "^1.1.0"
- js-yaml "^3.12.0"
- json-stable-stringify-without-jsonify "^1.0.1"
- levn "^0.3.0"
- lodash "^4.17.5"
- minimatch "^3.0.4"
- mkdirp "^0.5.1"
- natural-compare "^1.4.0"
- optionator "^0.8.2"
- path-is-inside "^1.0.2"
- pluralize "^7.0.0"
- progress "^2.0.0"
- regexpp "^2.0.1"
- require-uncached "^1.0.3"
- semver "^5.5.1"
- strip-ansi "^4.0.0"
- strip-json-comments "^2.0.1"
- table "^5.0.2"
- text-table "^0.2.0"
-
-espree@^4.0.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/espree/-/espree-4.1.0.tgz#728d5451e0fd156c04384a7ad89ed51ff54eb25f"
- integrity sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==
- dependencies:
- acorn "^6.0.2"
- acorn-jsx "^5.0.0"
- eslint-visitor-keys "^1.0.0"
-
-esprima@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
- integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
-
-esquery@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708"
- integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==
- dependencies:
- estraverse "^4.0.0"
-
-esrecurse@^4.1.0:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf"
- integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==
- dependencies:
- estraverse "^4.1.0"
-
-estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
- integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=
-
-esutils@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
- integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=
-
-etag@~1.8.1:
- version "1.8.1"
- resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
- integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=
-
-express@^4.19.2:
- version "4.19.2"
- resolved "https://registry.yarnpkg.com/express/-/express-4.19.2.tgz#e25437827a3aa7f2a827bc8171bbbb664a356465"
- integrity sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==
- dependencies:
- accepts "~1.3.8"
- array-flatten "1.1.1"
- body-parser "1.20.2"
- content-disposition "0.5.4"
- content-type "~1.0.4"
- cookie "0.6.0"
- cookie-signature "1.0.6"
- debug "2.6.9"
- depd "2.0.0"
- encodeurl "~1.0.2"
- escape-html "~1.0.3"
- etag "~1.8.1"
- finalhandler "1.2.0"
- fresh "0.5.2"
- http-errors "2.0.0"
- merge-descriptors "1.0.1"
- methods "~1.1.2"
- on-finished "2.4.1"
- parseurl "~1.3.3"
- path-to-regexp "0.1.7"
- proxy-addr "~2.0.7"
- qs "6.11.0"
- range-parser "~1.2.1"
- safe-buffer "5.2.1"
- send "0.18.0"
- serve-static "1.15.0"
- setprototypeof "1.2.0"
- statuses "2.0.1"
- type-is "~1.6.18"
- utils-merge "1.0.1"
- vary "~1.1.2"
-
-external-editor@^3.0.0:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27"
- integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==
- dependencies:
- chardet "^0.7.0"
- iconv-lite "^0.4.24"
- tmp "^0.0.33"
-
-fast-deep-equal@^3.1.1:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
- integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
-
-fast-json-stable-stringify@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
- integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
-
-fast-levenshtein@~2.0.4:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
- integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
-
-figures@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
- integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=
- dependencies:
- escape-string-regexp "^1.0.5"
-
-file-entry-cache@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361"
- integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=
- dependencies:
- flat-cache "^1.2.1"
- object-assign "^4.0.1"
-
-finalhandler@1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32"
- integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==
- dependencies:
- debug "2.6.9"
- encodeurl "~1.0.2"
- escape-html "~1.0.3"
- on-finished "2.4.1"
- parseurl "~1.3.3"
- statuses "2.0.1"
- unpipe "~1.0.0"
-
-find-up@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
- integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=
- dependencies:
- path-exists "^2.0.0"
- pinkie-promise "^2.0.0"
-
-find-up@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
- integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c=
- dependencies:
- locate-path "^2.0.0"
-
-flat-cache@^1.2.1:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.2.tgz#7f852d70be573dac874a4c4129d340a34fba7e65"
- integrity sha512-KByBY8c98sLUAGpnmjEdWTrtrLZRtZdwds+kAL/ciFXTCb7AZgqKsAnVnYFQj1hxepwO8JKN/8AsRWwLq+RK0A==
- dependencies:
- circular-json "^0.3.1"
- del "^3.0.0"
- graceful-fs "^4.1.2"
- write "^0.2.1"
-
-forwarded@0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811"
- integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==
-
-fresh@0.5.2:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
- integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=
-
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
- integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
-
-function-bind@^1.1.0, function-bind@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
- integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
-
-function-bind@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
- integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
-
-functional-red-black-tree@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
- integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
-
-get-intrinsic@^1.1.3, get-intrinsic@^1.2.4:
- version "1.2.4"
- resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd"
- integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==
- dependencies:
- es-errors "^1.3.0"
- function-bind "^1.1.2"
- has-proto "^1.0.1"
- has-symbols "^1.0.3"
- hasown "^2.0.0"
-
-glob@^7.0.3, glob@^7.0.5, glob@^7.1.2:
- version "7.1.3"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1"
- integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-globals@^11.7.0:
- version "11.9.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-11.9.0.tgz#bde236808e987f290768a93d065060d78e6ab249"
- integrity sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==
-
-globby@^6.1.0:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c"
- integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=
- dependencies:
- array-union "^1.0.1"
- glob "^7.0.3"
- object-assign "^4.0.1"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
-
-gopd@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c"
- integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==
- dependencies:
- get-intrinsic "^1.1.3"
-
-graceful-fs@^4.1.2:
- version "4.1.15"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
- integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==
-
-has-flag@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
- integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
-
-has-property-descriptors@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854"
- integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==
- dependencies:
- es-define-property "^1.0.0"
-
-has-proto@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd"
- integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==
-
-has-symbols@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
- integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=
-
-has-symbols@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
- integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
-
-has@^1.0.1, has@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
- integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
- dependencies:
- function-bind "^1.1.1"
-
-hasown@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003"
- integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==
- dependencies:
- function-bind "^1.1.2"
-
-hosted-git-info@^2.1.4:
- version "2.8.9"
- resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
- integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
-
-http-errors@2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3"
- integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==
- dependencies:
- depd "2.0.0"
- inherits "2.0.4"
- setprototypeof "1.2.0"
- statuses "2.0.1"
- toidentifier "1.0.1"
-
-iconv-lite@0.4.24, iconv-lite@^0.4.24:
- version "0.4.24"
- resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
- integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
- dependencies:
- safer-buffer ">= 2.1.2 < 3"
-
-ignore@^4.0.6:
- version "4.0.6"
- resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
- integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==
-
-imurmurhash@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
- integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
-
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@2:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
- integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
-
-inherits@2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
- integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-
-inquirer@^6.1.0:
- version "6.2.0"
- resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.0.tgz#51adcd776f661369dc1e894859c2560a224abdd8"
- integrity sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==
- dependencies:
- ansi-escapes "^3.0.0"
- chalk "^2.0.0"
- cli-cursor "^2.1.0"
- cli-width "^2.0.0"
- external-editor "^3.0.0"
- figures "^2.0.0"
- lodash "^4.17.10"
- mute-stream "0.0.7"
- run-async "^2.2.0"
- rxjs "^6.1.0"
- string-width "^2.1.0"
- strip-ansi "^4.0.0"
- through "^2.3.6"
-
-ipaddr.js@1.9.1:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3"
- integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==
-
-is-arrayish@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
- integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
-
-is-builtin-module@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
- integrity sha1-VAVy0096wxGfj3bDDLwbHgN6/74=
- dependencies:
- builtin-modules "^1.0.0"
-
-is-callable@^1.1.3, is-callable@^1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
- integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==
-
-is-date-object@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
- integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=
-
-is-fullwidth-code-point@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
- integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
-
-is-path-cwd@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d"
- integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=
-
-is-path-in-cwd@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52"
- integrity sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==
- dependencies:
- is-path-inside "^1.0.0"
-
-is-path-inside@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036"
- integrity sha1-jvW33lBDej/cprToZe96pVy0gDY=
- dependencies:
- path-is-inside "^1.0.1"
-
-is-promise@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
- integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=
-
-is-regex@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
- integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=
- dependencies:
- has "^1.0.1"
-
-is-resolvable@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88"
- integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==
-
-is-symbol@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38"
- integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==
- dependencies:
- has-symbols "^1.0.0"
-
-isarray@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
- integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
- integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
-
-"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
- integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-
-js-yaml@^3.12.0:
- version "3.13.1"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847"
- integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==
- dependencies:
- argparse "^1.0.7"
- esprima "^4.0.0"
-
-json-schema-traverse@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
- integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
-
-json-stable-stringify-without-jsonify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
- integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
-
-jsx-ast-utils@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f"
- integrity sha1-6AGxs5mF4g//yHtA43SAgOLcrH8=
- dependencies:
- array-includes "^3.0.3"
-
-levn@^0.3.0, levn@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
- integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=
- dependencies:
- prelude-ls "~1.1.2"
- type-check "~0.3.2"
-
-load-json-file@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8"
- integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^2.2.0"
- pify "^2.0.0"
- strip-bom "^3.0.0"
-
-locate-path@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
- integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=
- dependencies:
- p-locate "^2.0.0"
- path-exists "^3.0.0"
-
-lodash@^4.17.10, lodash@^4.17.4, lodash@^4.17.5:
- version "4.17.21"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
- integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
-
-loose-envify@^1.3.1:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
- integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
- dependencies:
- js-tokens "^3.0.0 || ^4.0.0"
-
-media-typer@0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
- integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=
-
-merge-descriptors@1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
- integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=
-
-methods@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
- integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=
-
-mime-db@1.40.0:
- version "1.40.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32"
- integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==
-
-mime-db@1.52.0:
- version "1.52.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
- integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
-
-mime-types@~2.1.24:
- version "2.1.24"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81"
- integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==
- dependencies:
- mime-db "1.40.0"
-
-mime-types@~2.1.34:
- version "2.1.35"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
- integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
- dependencies:
- mime-db "1.52.0"
-
-mime@1.6.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
- integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
-
-mimic-fn@^1.0.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
- integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==
-
-minimatch@^3.0.3, minimatch@^3.0.4:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
- integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
- dependencies:
- brace-expansion "^1.1.7"
-
-minimist@0.0.8:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
- integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
-
-mkdirp@^0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
- integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
- dependencies:
- minimist "0.0.8"
-
-ms@2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
- integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
-
-ms@2.1.3:
- version "2.1.3"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
- integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
-
-ms@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a"
- integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==
-
-mute-stream@0.0.7:
- version "0.0.7"
- resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
- integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=
-
-natural-compare@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
- integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
-
-negotiator@0.6.3:
- version "0.6.3"
- resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd"
- integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==
-
-nice-try@^1.0.4:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
- integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
-
-nodemailer@^5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-5.1.1.tgz#0c48d1ecab02e86d9ff6c620ee75ed944b763505"
- integrity sha512-hKGCoeNdFL2W7S76J/Oucbw0/qRlfG815tENdhzcqTpSjKgAN91mFOqU2lQUflRRxFM7iZvCyaFcAR9noc/CqQ==
-
-normalize-package-data@^2.3.2:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f"
- integrity sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==
- dependencies:
- hosted-git-info "^2.1.4"
- is-builtin-module "^1.0.0"
- semver "2 || 3 || 4 || 5"
- validate-npm-package-license "^3.0.1"
-
-object-assign@^4.0.1, object-assign@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
- integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
-
-object-inspect@^1.13.1:
- version "1.13.1"
- resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2"
- integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==
-
-object-keys@^1.0.11, object-keys@^1.0.12:
- version "1.0.12"
- resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2"
- integrity sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==
-
-object.assign@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
- integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==
- dependencies:
- define-properties "^1.1.2"
- function-bind "^1.1.1"
- has-symbols "^1.0.0"
- object-keys "^1.0.11"
-
-object.entries@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.0.4.tgz#1bf9a4dd2288f5b33f3a993d257661f05d161a5f"
- integrity sha1-G/mk3SKI9bM/Opk9JXZh8F0WGl8=
- dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.6.1"
- function-bind "^1.1.0"
- has "^1.0.1"
-
-on-finished@2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f"
- integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==
- dependencies:
- ee-first "1.1.1"
-
-once@^1.3.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
- dependencies:
- wrappy "1"
-
-onetime@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
- integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=
- dependencies:
- mimic-fn "^1.0.0"
-
-optionator@^0.8.2:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
- integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=
- dependencies:
- deep-is "~0.1.3"
- fast-levenshtein "~2.0.4"
- levn "~0.3.0"
- prelude-ls "~1.1.2"
- type-check "~0.3.2"
- wordwrap "~1.0.0"
-
-os-tmpdir@~1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
- integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
-
-p-limit@^1.1.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8"
- integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==
- dependencies:
- p-try "^1.0.0"
-
-p-locate@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
- integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=
- dependencies:
- p-limit "^1.1.0"
-
-p-map@^1.1.1:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b"
- integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==
-
-p-try@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
- integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=
-
-parse-json@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
- integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=
- dependencies:
- error-ex "^1.2.0"
-
-parseurl@~1.3.3:
- version "1.3.3"
- resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
- integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==
-
-path-exists@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
- integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=
- dependencies:
- pinkie-promise "^2.0.0"
-
-path-exists@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
- integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=
-
-path-is-absolute@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
- integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
-
-path-is-inside@^1.0.1, path-is-inside@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
- integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=
-
-path-key@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
- integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=
-
-path-parse@^1.0.5:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
- integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
-
-path-to-regexp@0.1.7:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
- integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=
-
-path-type@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73"
- integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=
- dependencies:
- pify "^2.0.0"
-
-pify@^2.0.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
- integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
-
-pify@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
- integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=
-
-pinkie-promise@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
- integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o=
- dependencies:
- pinkie "^2.0.0"
-
-pinkie@^2.0.0:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
- integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
-
-pkg-dir@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4"
- integrity sha1-ektQio1bstYp1EcFb/TpyTFM89Q=
- dependencies:
- find-up "^1.0.0"
-
-pluralize@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777"
- integrity sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==
-
-prelude-ls@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
- integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
-
-progress@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.1.tgz#c9242169342b1c29d275889c95734621b1952e31"
- integrity sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg==
-
-prop-types@^15.6.2:
- version "15.6.2"
- resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102"
- integrity sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ==
- dependencies:
- loose-envify "^1.3.1"
- object-assign "^4.1.1"
-
-proxy-addr@~2.0.7:
- version "2.0.7"
- resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025"
- integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==
- dependencies:
- forwarded "0.2.0"
- ipaddr.js "1.9.1"
-
-punycode@^2.1.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
- integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
-
-qs@6.11.0:
- version "6.11.0"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a"
- integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==
- dependencies:
- side-channel "^1.0.4"
-
-range-parser@~1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
- integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
-
-raw-body@2.5.2:
- version "2.5.2"
- resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a"
- integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==
- dependencies:
- bytes "3.1.2"
- http-errors "2.0.0"
- iconv-lite "0.4.24"
- unpipe "1.0.0"
-
-read-pkg-up@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be"
- integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=
- dependencies:
- find-up "^2.0.0"
- read-pkg "^2.0.0"
-
-read-pkg@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8"
- integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=
- dependencies:
- load-json-file "^2.0.0"
- normalize-package-data "^2.3.2"
- path-type "^2.0.0"
-
-regexpp@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f"
- integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==
-
-require-uncached@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3"
- integrity sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=
- dependencies:
- caller-path "^0.1.0"
- resolve-from "^1.0.0"
-
-resolve-from@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226"
- integrity sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=
-
-resolve@^1.5.0, resolve@^1.6.0:
- version "1.8.1"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26"
- integrity sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==
- dependencies:
- path-parse "^1.0.5"
-
-restore-cursor@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
- integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368=
- dependencies:
- onetime "^2.0.0"
- signal-exit "^3.0.2"
-
-rimraf@^2.2.8:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36"
- integrity sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==
- dependencies:
- glob "^7.0.5"
-
-run-async@^2.2.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
- integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA=
- dependencies:
- is-promise "^2.1.0"
-
-rxjs@^6.1.0:
- version "6.3.3"
- resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.3.tgz#3c6a7fa420e844a81390fb1158a9ec614f4bad55"
- integrity sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==
- dependencies:
- tslib "^1.9.0"
-
-safe-buffer@5.2.1:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
- integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
-
-"safer-buffer@>= 2.1.2 < 3":
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
- integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
-
-"semver@2 || 3 || 4 || 5", semver@^5.5.0, semver@^5.5.1:
- version "5.7.2"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8"
- integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
-
-send@0.18.0:
- version "0.18.0"
- resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be"
- integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==
- dependencies:
- debug "2.6.9"
- depd "2.0.0"
- destroy "1.2.0"
- encodeurl "~1.0.2"
- escape-html "~1.0.3"
- etag "~1.8.1"
- fresh "0.5.2"
- http-errors "2.0.0"
- mime "1.6.0"
- ms "2.1.3"
- on-finished "2.4.1"
- range-parser "~1.2.1"
- statuses "2.0.1"
-
-serve-static@1.15.0:
- version "1.15.0"
- resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540"
- integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==
- dependencies:
- encodeurl "~1.0.2"
- escape-html "~1.0.3"
- parseurl "~1.3.3"
- send "0.18.0"
-
-set-function-length@^1.2.1:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449"
- integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==
- dependencies:
- define-data-property "^1.1.4"
- es-errors "^1.3.0"
- function-bind "^1.1.2"
- get-intrinsic "^1.2.4"
- gopd "^1.0.1"
- has-property-descriptors "^1.0.2"
-
-setprototypeof@1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"
- integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==
-
-shebang-command@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
- integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=
- dependencies:
- shebang-regex "^1.0.0"
-
-shebang-regex@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
- integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=
-
-side-channel@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2"
- integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==
- dependencies:
- call-bind "^1.0.7"
- es-errors "^1.3.0"
- get-intrinsic "^1.2.4"
- object-inspect "^1.13.1"
-
-signal-exit@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
- integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=
-
-slice-ansi@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d"
- integrity sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==
- dependencies:
- is-fullwidth-code-point "^2.0.0"
-
-spdx-correct@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.2.tgz#19bb409e91b47b1ad54159243f7312a858db3c2e"
- integrity sha512-q9hedtzyXHr5S0A1vEPoK/7l8NpfkFYTq6iCY+Pno2ZbdZR6WexZFtqeVGkGxW3TEJMN914Z55EnAGMmenlIQQ==
- dependencies:
- spdx-expression-parse "^3.0.0"
- spdx-license-ids "^3.0.0"
-
-spdx-exceptions@^2.1.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977"
- integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==
-
-spdx-expression-parse@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0"
- integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==
- dependencies:
- spdx-exceptions "^2.1.0"
- spdx-license-ids "^3.0.0"
-
-spdx-license-ids@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.2.tgz#a59efc09784c2a5bada13cfeaf5c75dd214044d2"
- integrity sha512-qky9CVt0lVIECkEsYbNILVnPvycuEBkXoMFLRWsREkomQLevYhtRKC+R91a5TOAQ3bCMjikRwhyaRqj1VYatYg==
-
-sprintf-js@~1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
- integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
-
-statuses@2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
- integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
-
-string-width@^2.1.0, string-width@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
- integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
- dependencies:
- is-fullwidth-code-point "^2.0.0"
- strip-ansi "^4.0.0"
-
-strip-ansi@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
- integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8=
- dependencies:
- ansi-regex "^3.0.0"
-
-strip-bom@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
- integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
-
-strip-json-comments@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
- integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
-
-supports-color@^5.3.0:
- version "5.5.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
- integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
- dependencies:
- has-flag "^3.0.0"
-
-table@^5.0.2:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/table/-/table-5.1.0.tgz#69a54644f6f01ad1628f8178715b408dc6bf11f7"
- integrity sha512-e542in22ZLhD/fOIuXs/8yDZ9W61ltF8daM88rkRNtgTIct+vI2fTnAyu/Db2TCfEcI8i7mjZz6meLq0nW7TYg==
- dependencies:
- ajv "^6.5.3"
- lodash "^4.17.10"
- slice-ansi "1.0.0"
- string-width "^2.1.1"
-
-text-table@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
- integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
-
-through@^2.3.6:
- version "2.3.8"
- resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
- integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=
-
-tmp@^0.0.33:
- version "0.0.33"
- resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
- integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==
- dependencies:
- os-tmpdir "~1.0.2"
-
-toidentifier@1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"
- integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==
-
-tslib@^1.9.0:
- version "1.9.3"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286"
- integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==
-
-type-check@~0.3.2:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
- integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=
- dependencies:
- prelude-ls "~1.1.2"
-
-type-is@~1.6.18:
- version "1.6.18"
- resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131"
- integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==
- dependencies:
- media-typer "0.3.0"
- mime-types "~2.1.24"
-
-unpipe@1.0.0, unpipe@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
- integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=
-
-uri-js@^4.2.2:
- version "4.4.1"
- resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
- integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
- dependencies:
- punycode "^2.1.0"
-
-utils-merge@1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
- integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
-
-validate-npm-package-license@^3.0.1:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
- integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
- dependencies:
- spdx-correct "^3.0.0"
- spdx-expression-parse "^3.0.0"
-
-vary@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
- integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=
-
-which@^1.2.9:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
- integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
- dependencies:
- isexe "^2.0.0"
-
-wordwrap@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
- integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=
-
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
- integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
-
-write@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757"
- integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=
- dependencies:
- mkdirp "^0.5.1"
diff --git a/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStep.java b/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStep.java
index 71b8a6b9a71..b662ee4a8e6 100644
--- a/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStep.java
+++ b/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStep.java
@@ -19,116 +19,35 @@
*/
package org.sonar.ce.task.projectanalysis.step;
-import com.google.gson.Gson;
-import java.io.File;
-import java.io.IOException;
-import java.util.List;
-import okhttp3.MediaType;
-import okhttp3.MultipartBody;
-import okhttp3.OkHttpClient;
-import okhttp3.Request;
-import okhttp3.RequestBody;
-import okhttp3.Response;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import javax.annotation.Nullable;
+import org.sonar.ce.common.sca.BuildSoftwareCompositionAnalysisStepProvider;
import org.sonar.ce.common.scanner.ScannerReportReader;
import org.sonar.ce.task.step.ComputationStep;
+import org.springframework.beans.factory.annotation.Autowired;
public class BuildSoftwareCompositionAnalysisStep implements ComputationStep {
- private static final Logger LOG = LoggerFactory.getLogger(BuildSoftwareCompositionAnalysisStep.class);
- private final ScannerReportReader reportReader;
- private final OkHttpClient okHttpClient;
+ private final ComputationStep wrapped;
- // TODO: Remove tideliftUploadUrl and tideliftApiKey when the sonar cloud proxy is ready.
- private String tideliftUploadUrl = "https://api.tidelift.com/sonar-api/v1/releases/parse-dependency-files";
- private String tideliftApiKey = System.getenv("TIDELIFT_API_KEY");
-
- public BuildSoftwareCompositionAnalysisStep(ScannerReportReader reportReader, OkHttpClient okHttpClient) {
- this.reportReader = reportReader;
- this.okHttpClient = okHttpClient;
- }
-
- public void setTideliftUploadUrl(String tideliftUploadUrl) {
- this.tideliftUploadUrl = tideliftUploadUrl;
+ @Autowired(required = false)
+ public BuildSoftwareCompositionAnalysisStep(ScannerReportReader reportReader) {
+ this(reportReader, null);
}
- public void setTideliftApiKey(String tideliftApiKey) {
- this.tideliftApiKey = tideliftApiKey;
+ @Autowired(required = false)
+ public BuildSoftwareCompositionAnalysisStep(ScannerReportReader reportReader, @Nullable BuildSoftwareCompositionAnalysisStepProvider provider) {
+ this.wrapped = provider != null ? provider.get(reportReader) : null;
}
@Override
public String getDescription() {
- return "Compute software composition analysis";
+ return wrapped != null ? wrapped.getDescription() : "Software composition analysis unavailable";
}
@Override
public void execute(Context context) {
- LOG.info("BuildSoftwareCompositionAnalysisStep start");
- if (tideliftApiKey == null) {
- LOG.warn("TIDELIFT_API_KEY is not set");
- return;
- }
-
- var zipFile = reportReader.readDependencyFilesZip();
- if (zipFile == null) {
- LOG.warn("No dependency files found");
- return;
- }
- try {
- analyzeDependencyFiles(zipFile);
- } catch (IOException e) {
- LOG.error("Invalid dependency-files.zip", e);
+ if (wrapped != null) {
+ wrapped.execute(context);
}
- LOG.info("BuildSoftwareCompositionAnalysisStep end");
- }
-
- private void analyzeDependencyFiles(File zipFile) throws IOException {
- MultipartBody multipartBody = new MultipartBody.Builder()
- .setType(MultipartBody.FORM)
- .addFormDataPart(
- "files[]",
- "dependency-files.zip",
- RequestBody.create(zipFile, MediaType.parse("application/zip")))
- .build();
-
- Request request = new Request.Builder()
- .url(tideliftUploadUrl)
- .addHeader("Authorization", tideliftApiKey)
- .post(multipartBody)
- .build();
-
- try (Response response = okHttpClient.newCall(request).execute()) {
- if (response.isSuccessful()) {
- var json = response.body().string();
- // TODO: instead of logging, save to a Holder to be consumed by a Persist ComputationStep
- LOG.info("Processing successful! Tidelift Response:{}", json);
- GsonAnalysisResponse analysisResponse = new Gson().fromJson(json, GsonAnalysisResponse.class);
-
- analysisResponse.releases.forEach(release -> LOG.info("Release: {} VulnerabilityCount: {}", release.purl, release.violations.stream().count()));
-
- } else {
- LOG.warn("Processing failed. Tidelift Response code:{} message:{}", response.code(), response.message());
- }
- }
- }
-
- public record GsonAnalysisResponse(List<GsonRelease> releases, List<GsonRelease> missing_releases) {
- }
-
- public record GsonRelease(String platform, String name, String version, String purl, GsonLicense license,
- List<GsonViolation> violations, Boolean direct, String type, String requirement,
- String manifest_source, String lockfile_source) {
- }
-
- public record GsonLicense(String expression, String source) {
- }
-
- public record GsonViolation(String catalog_standard, GsonVulnerability vulnerability) {
- }
-
- public record GsonVulnerability(String id, String severity, String description, String date, String url,
- String severity_rating, String epss_percentile, String epss_probability,
- boolean known_exploited) {
}
}
diff --git a/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepTest.java b/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepTest.java
new file mode 100644
index 00000000000..6045a3a3cbb
--- /dev/null
+++ b/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/step/BuildSoftwareCompositionAnalysisStepTest.java
@@ -0,0 +1,58 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2025 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+package org.sonar.ce.task.projectanalysis.step;
+
+import org.junit.jupiter.api.Test;
+import org.sonar.ce.common.scanner.ScannerReportReader;
+import org.sonar.ce.task.step.ComputationStep;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.assertThatNoException;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+class BuildSoftwareCompositionAnalysisStepTest {
+
+ @Test
+ void shouldSkipScaStepIfNotAvailable() {
+ var underTest = new BuildSoftwareCompositionAnalysisStep(mock(ScannerReportReader.class), null);
+
+ assertThat(underTest.getDescription()).isEqualTo("Software composition analysis unavailable");
+
+ assertThatNoException().isThrownBy(() -> underTest.execute(mock(ComputationStep.Context.class)));
+ }
+
+ @Test
+ void shouldWrapScaStepIfAvailable() {
+ var wrappedStep = mock(ComputationStep.class);
+ when(wrappedStep.getDescription()).thenReturn("wrapped step");
+
+ var underTest = new BuildSoftwareCompositionAnalysisStep(mock(ScannerReportReader.class), r -> wrappedStep);
+
+ assertThat(underTest.getDescription()).isEqualTo("wrapped step");
+
+ var context = mock(ComputationStep.Context.class);
+ underTest.execute(context);
+
+ verify(wrappedStep).execute(context);
+ }
+
+}