diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 02fd9899540b..542f1e30f279 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -8,33 +8,49 @@ assignees: '' --- **Describe the bug** + **Attach .adm file and source document examples** + **Attach debug logs** + **To Reproduce** + **Expected behavior** + **Screenshots** + **Environment (please complete the following information):** - - OS: [e.g. iOS] + **Additional context** + diff --git a/.github/ISSUE_TEMPLATE/enhancement-request.md b/.github/ISSUE_TEMPLATE/enhancement-request.md index 03ee0d2eeb66..55f424591553 100644 --- a/.github/ISSUE_TEMPLATE/enhancement-request.md +++ b/.github/ISSUE_TEMPLATE/enhancement-request.md @@ -8,16 +8,26 @@ assignees: '' --- **Is your feature request related to a problem? Please describe.** + **Attach .adm file and source document examples if you are looking at specific current behavior** + **Describe the solution you'd like** + **Describe alternatives you've considered** + **Additional context** + diff --git a/docs/src/main/asciidoc/user-guide/topics/creating-a-custom-transformation.adoc b/docs/src/main/asciidoc/user-guide/topics/creating-a-custom-transformation.adoc index 947d4801c3f1..61f1fefa586b 100644 --- a/docs/src/main/asciidoc/user-guide/topics/creating-a-custom-transformation.adoc +++ b/docs/src/main/asciidoc/user-guide/topics/creating-a-custom-transformation.adoc @@ -17,31 +17,77 @@ transformation and prints it on the target side with the string 'concur-' and the user-specified concur parameter. Implement the `AtlasFieldAction` class as follows: + +.src/main/java/io/atlasmap/maven/test/PaulsFieldActions.java [source,java] ---- -package io.atlasmap.service.my; +package io.atlasmap.maven.test; -import java.io.Serializable; -import io.atlasmap.v2.* -import io.atlasmap.spi.AtlasFieldAction; import io.atlasmap.spi.AtlasActionProcessor; +import io.atlasmap.spi.AtlasFieldAction; public class PaulsFieldActions implements AtlasFieldAction { - public static class Concur extends Action implements Serializable { - @AtlasActionProperty(title = "Pauls Concur Param", type = FieldType.STRING) - public String concurarg = "-paul-"; - - } - @AtlasActionProcessor - public static String concur(Concur action, String userInput) { - return "concur-" + action.concurarg + userInput; + public static String myCustomFieldAction(PaulsFieldActionsModel myCustomFieldAction, String input) { + return "Paul's custom field action: " + myCustomFieldAction.getPaulsParam() + " payload: " + input; } } ---- ++ +And also implement a model class `PaulsFieldActionsModel` - model class can declare transformation parameters as follows: ++ +.src/main/java/io/atlasmap/maven/test/PaulsFieldActionsModel.java +[source,java] +---- +package io.atlasmap.maven.test; + +import java.io.Serializable; + +import com.fasterxml.jackson.annotation.JsonPropertyDescription; + +import io.atlasmap.v2.Action; +import io.atlasmap.v2.AtlasActionProperty; +import io.atlasmap.v2.FieldType; + +public class PaulsFieldActionsModel extends Action implements Serializable { + private static final long serialVersionUID = 1L; + private String paulsParam = ""; + /** + * Example of a custom field action with a string parameter. + * + * @param value + * allowed object is + * {@link String} + * + */ + @JsonPropertyDescription("Paul's custom field action parameter to display") + @AtlasActionProperty(title = "Paul's custom field action string parameter", type = FieldType.STRING) + public void setPaulsParam(String value) { + paulsParam = value; + } + + public String getPaulsParam() { + return paulsParam; + } +} +---- ++ +. Declare for Java service loader ++ +Then both class needs to be declared in `META-INF/services` to get them registered through Java service loader. ++ +.src/main/resources/META-INF/services/io.atlasmap.v2.Action +---- +io.atlasmap.maven.test.PaulsFieldActionsModel +---- ++ +.src/main/resources/META-INF/services/io.atlasmap.spi.AtlasFieldAction +---- +io.atlasmap.maven.test.PaulsFieldActions +---- ++ . Build your Java archive file. + The `io.atlasmap.v2`, `io.atlasmap.api` and `io.atlasmap.spi` target diff --git a/docs/src/main/asciidoc/user-guide/topics/exporting-mappings-to-an-atlasmap-catalog-file.adoc b/docs/src/main/asciidoc/user-guide/topics/exporting-mappings-to-an-atlasmap-adm-archive-file.adoc similarity index 77% rename from docs/src/main/asciidoc/user-guide/topics/exporting-mappings-to-an-atlasmap-catalog-file.adoc rename to docs/src/main/asciidoc/user-guide/topics/exporting-mappings-to-an-atlasmap-adm-archive-file.adoc index 8dc7a4c83f26..220895ebaf98 100644 --- a/docs/src/main/asciidoc/user-guide/topics/exporting-mappings-to-an-atlasmap-catalog-file.adoc +++ b/docs/src/main/asciidoc/user-guide/topics/exporting-mappings-to-an-atlasmap-adm-archive-file.adoc @@ -1,8 +1,8 @@ -[id='exporting-mappings-to-an-atlasmap-catalog-file'] -= Exporting mappings to an AtlasMap catalog file +[id='exporting-mappings-to-an-adm-archive-file'] += Exporting mappings to an ADM archive file After all mappings are defined, save the mappings by exporting -them to an AtlasMap `.adm` catalog file: +them to an ADM archive file: . Click the *AtlasMap* menu and select *Export the current mappings and support files into a catalog (.adm)* + diff --git a/lib/core/src/main/java/io/atlasmap/core/AtlasUtil.java b/lib/core/src/main/java/io/atlasmap/core/AtlasUtil.java index a139ee8bdad8..52876bce2e3b 100644 --- a/lib/core/src/main/java/io/atlasmap/core/AtlasUtil.java +++ b/lib/core/src/main/java/io/atlasmap/core/AtlasUtil.java @@ -477,6 +477,11 @@ public static String unescapeFromUri(String uri) { .replaceAll("%5D", "]"); } + /** + * Delete specified directory and the contents in it. + * @see #deleteDirectoryContents + * @param targetDir + */ public static void deleteDirectory(File targetDir) { File[] allContents = targetDir.listFiles(); if (allContents != null) { @@ -492,6 +497,12 @@ public static void deleteDirectory(File targetDir) { return; } + /** + * Delete all contents in the specified directory. + * + * @see #deleteDirectory + * @param targetDir + */ public static void deleteDirectoryContents(File targetDir) { File[] allContents = targetDir.listFiles(); if (allContents != null) { diff --git a/lib/core/src/main/java/io/atlasmap/core/DefaultAtlasFieldActionService.java b/lib/core/src/main/java/io/atlasmap/core/DefaultAtlasFieldActionService.java index 8fa5c43f2aa7..39649911af81 100644 --- a/lib/core/src/main/java/io/atlasmap/core/DefaultAtlasFieldActionService.java +++ b/lib/core/src/main/java/io/atlasmap/core/DefaultAtlasFieldActionService.java @@ -659,6 +659,12 @@ public Field processActions(AtlasInternalSession session, Field field) throws At FieldType currentType = determineFieldType(field); for (Action action : actions) { ActionProcessor processor = findActionProcessor(action, currentType); + if (processor == null) { + AtlasUtil.addAudit(session, field, String.format( + "Couldn't find metadata for a FieldAction '%s', please make sure it's in the classpath, and also have a service declaration under META-INF/services. Ignoring...", action.getDisplayName()), + AuditStatus.WARN, null); + continue; + } ActionDetail detail = processor.getActionDetail(); if (detail == null) { AtlasUtil.addAudit(session, field, String.format( diff --git a/lib/core/src/main/java/io/atlasmap/core/DefaultAtlasPreviewContext.java b/lib/core/src/main/java/io/atlasmap/core/DefaultAtlasPreviewContext.java index 20ec705d0a27..285f4852b3be 100644 --- a/lib/core/src/main/java/io/atlasmap/core/DefaultAtlasPreviewContext.java +++ b/lib/core/src/main/java/io/atlasmap/core/DefaultAtlasPreviewContext.java @@ -135,6 +135,7 @@ public Audits processPreview(Mapping mapping) throws AtlasException { AtlasUtil.addAudit(session, targetField, "It's not yet supported to have a collection field as a part of multiple target fields in a same mapping", AuditStatus.ERROR, null); + session.getAudits().getAudit().addAll(session.head().getAudits()); return session.getAudits(); } if (index != null) { @@ -153,6 +154,7 @@ public Audits processPreview(Mapping mapping) throws AtlasException { collectionHelper.copyCollectionIndexes(sourceFieldGroup, subSourceField, subTargetField, previousTargetField); previousTargetField = subTargetField; if (!convertSourceToTarget(session, subSourceField, subTargetField)) { + session.getAudits().getAudit().addAll(session.head().getAudits()); return session.getAudits(); }; Field processed = subTargetField; @@ -177,9 +179,11 @@ public Audits processPreview(Mapping mapping) throws AtlasException { } } if (session.hasErrors()) { + session.getAudits().getAudit().addAll(session.head().getAudits()); return session.getAudits(); } if (!convertSourceToTarget(session, session.head().getSourceField(), targetField)) { + session.getAudits().getAudit().addAll(session.head().getAudits()); return session.getAudits(); } Field processed = targetField; @@ -193,6 +197,7 @@ public Audits processPreview(Mapping mapping) throws AtlasException { targetField = targetFields.get(0); Field combined = processCombineField(session, cloned, sourceFields, targetField); if (!convertSourceToTarget(session, combined, targetField)) { + session.getAudits().getAudit().addAll(session.head().getAudits()); return session.getAudits(); } applyFieldActions(session, targetField); @@ -208,9 +213,11 @@ public Audits processPreview(Mapping mapping) throws AtlasException { if (LOG.isDebugEnabled()) { LOG.error("", e); } + session.getAudits().getAudit().addAll(session.head().getAudits()); return session.getAudits(); } if (separatedFields == null) { + session.getAudits().getAudit().addAll(session.head().getAudits()); return session.getAudits(); } for (Field f : targetFields) { @@ -241,6 +248,7 @@ public Audits processPreview(Mapping mapping) throws AtlasException { } mapping.getOutputField().clear(); mapping.getOutputField().addAll(cloned.getOutputField()); + session.getAudits().getAudit().addAll(session.head().getAudits()); return session.getAudits(); } diff --git a/lib/modules/csv/service/src/main/java/io/atlasmap/csv/service/CsvService.java b/lib/modules/csv/service/src/main/java/io/atlasmap/csv/service/CsvService.java index 1ec1ea02f307..b5ae3324dc73 100644 --- a/lib/modules/csv/service/src/main/java/io/atlasmap/csv/service/CsvService.java +++ b/lib/modules/csv/service/src/main/java/io/atlasmap/csv/service/CsvService.java @@ -34,6 +34,7 @@ import org.slf4j.LoggerFactory; import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import io.atlasmap.csv.core.CsvConfig; import io.atlasmap.csv.core.CsvFieldReader; @@ -97,6 +98,9 @@ public Response inspect(InputStream request, @QueryParam("format") String format CsvInspectionResponse response = new CsvInspectionResponse(); try { + if (LOG.isDebugEnabled()) { + LOG.debug("Options: delimiter={}, firstRecordAsHeader={}", delimiter, firstRecordAsHeader); + } CsvConfig csvConfig = new CsvConfig(format); if (delimiter != null) { csvConfig.setDelimiter(delimiter.charAt(0)); @@ -134,6 +138,9 @@ public Response inspect(InputStream request, @QueryParam("format") String format response.setExecutionTime(System.currentTimeMillis() - startTime); } + if (LOG.isDebugEnabled()) { + LOG.debug(("Response: {}" + new ObjectMapper().writeValueAsString(response))); + } return Response.ok().entity(toJson(response)).build(); } } diff --git a/lib/modules/csv/service/src/test/java/io/atlasmap/csv/service/CsvServiceTest.java b/lib/modules/csv/service/src/test/java/io/atlasmap/csv/service/CsvServiceTest.java index b514372d230a..b856c6321b6a 100644 --- a/lib/modules/csv/service/src/test/java/io/atlasmap/csv/service/CsvServiceTest.java +++ b/lib/modules/csv/service/src/test/java/io/atlasmap/csv/service/CsvServiceTest.java @@ -91,4 +91,23 @@ public void testSchemaNoParametersSpecified() throws Exception { assertEquals("2", fields.get(2).getName()); } + @Test + public void testSchemaFile() throws Exception { + InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("test.csv"); + + Response res = csvService.inspect(inputStream, null, ",", true, null, null, + null, null, null, null, null, null, + null, null, null); + Object entity = res.getEntity(); + assertEquals(byte[].class, entity.getClass()); + CsvInspectionResponse csvInspectionResponse = Json.mapper().readValue((byte[])entity, CsvInspectionResponse.class); + CsvComplexType complexType = (CsvComplexType) csvInspectionResponse.getCsvDocument().getFields().getField().get(0); + List fields = complexType.getCsvFields().getCsvField(); + assertEquals(5, fields.size()); + assertEquals("sourceCsvString", fields.get(0).getName()); + assertEquals("sourceCsvNumber", fields.get(1).getName()); + assertEquals("sourceCsvDecimal", fields.get(2).getName()); + assertEquals("sourceCsvDate", fields.get(3).getName()); + assertEquals("sourceCsvBoolean", fields.get(4).getName()); + } } diff --git a/lib/modules/csv/service/src/test/resources/test.csv b/lib/modules/csv/service/src/test/resources/test.csv new file mode 100644 index 000000000000..eecb4ad5eabe --- /dev/null +++ b/lib/modules/csv/service/src/test/resources/test.csv @@ -0,0 +1,7 @@ +sourceCsvString,sourceCsvNumber,sourceCsvDecimal,sourceCsvDate,sourceCsvBoolean +csv0,0,0.0,1989-05-05,true +csv1,10,10.0,1989-05-05,true +csv2,20,20.0,1989-05-05,true +csv3,30,30.0,1989-05-05,false +csv4,40,40.0,1989-05-05,false + diff --git a/lib/service/src/main/java/io/atlasmap/service/AtlasLibraryLoader.java b/lib/service/src/main/java/io/atlasmap/service/AtlasLibraryLoader.java index a7affbcbfd03..0812d0067829 100644 --- a/lib/service/src/main/java/io/atlasmap/service/AtlasLibraryLoader.java +++ b/lib/service/src/main/java/io/atlasmap/service/AtlasLibraryLoader.java @@ -24,6 +24,7 @@ import java.net.URISyntaxException; import java.net.URL; import java.net.URLClassLoader; +import java.nio.file.Files; import java.util.ArrayList; import java.util.Arrays; import java.util.Enumeration; @@ -85,13 +86,26 @@ public void addJarFromStream(InputStream is) throws Exception { reload(); } - public void clearLibaries() { + public void clearLibraries() { + if (this.urlClassLoader != null) { + try { + this.urlClassLoader.close(); + } catch (Exception e) { + LOG.warn("Ignoring an error while closing an old URLClassLoader: {}", e.getMessage()); + } + this.urlClassLoader = null; + } + File[] files = saveDir.listFiles(); if (!saveDir.exists() || !saveDir.isDirectory() || files == null) { return; } for (File f : saveDir.listFiles()) { - f.delete(); + try { + Files.delete(f.toPath()); + } catch (Exception e) { + LOG.warn("Failed to remove jar file: '{}'", e.getMessage()); + }; } reload(); } diff --git a/lib/service/src/main/java/io/atlasmap/service/AtlasService.java b/lib/service/src/main/java/io/atlasmap/service/AtlasService.java index 579aa181a7f5..22a89a0ee961 100644 --- a/lib/service/src/main/java/io/atlasmap/service/AtlasService.java +++ b/lib/service/src/main/java/io/atlasmap/service/AtlasService.java @@ -122,7 +122,7 @@ public void onUpdate(AtlasLibraryLoader loader) { String atlasmapAdmPath = System.getProperty(ATLASMAP_ADM_PATH); if (atlasmapAdmPath != null && atlasmapAdmPath.length() > 0) { LOG.debug("Loading initial ADM file: {}", atlasmapAdmPath); - this.libraryLoader.clearLibaries(); + this.libraryLoader.clearLibraries(); ADMArchiveHandler admHandler = new ADMArchiveHandler(this.libraryLoader); java.nio.file.Path mappingDirPath = Paths.get(getMappingSubDirectory(0)); admHandler.setPersistDirectory(mappingDirPath); @@ -304,7 +304,7 @@ public Response resetAllMappings() { @ApiResponse(responseCode = "204", description = "Unable to remove all user-defined JAR files")}) public Response resetUserLibs() { LOG.debug("resetUserLibs"); - this.libraryLoader.clearLibaries(); + this.libraryLoader.clearLibraries(); return Response.ok().build(); } @@ -632,7 +632,12 @@ public Response uploadLibrary(InputStream requestIn) { if (LOG.isDebugEnabled()) { LOG.error("", e); } - throw new WebApplicationException("Could not read file part: " + e.getMessage()); + StringBuilder buf = new StringBuilder(); + buf.append("Failed to import a jar file. This error occurs when:\n") + .append(("\t1. The jar file is not compatible with the JVM AtlasMap backend server is running on\n")) + .append("\t2. The jar file is broken\n") + .append("\t3. There is a missing file under META-INF/services, i.e. Java service declaration for custom transformation, custom transformation model, custom mapping builder, etc\n"); + throw new WebApplicationException(buf.toString(), e); } return Response.ok().build(); } diff --git a/lib/service/src/test/java/io/atlasmap/service/AtlasServiceTest.java b/lib/service/src/test/java/io/atlasmap/service/AtlasServiceTest.java index 970ba872d51c..bbbd79b250b5 100644 --- a/lib/service/src/test/java/io/atlasmap/service/AtlasServiceTest.java +++ b/lib/service/src/test/java/io/atlasmap/service/AtlasServiceTest.java @@ -17,13 +17,19 @@ import static io.atlasmap.v2.MappingFileType.JSON; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assumptions.assumeFalse; import java.io.BufferedInputStream; +import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; +import java.lang.reflect.Method; import java.net.URI; import java.util.List; import java.util.jar.JarEntry; @@ -31,21 +37,24 @@ import javax.tools.JavaCompiler; import javax.tools.ToolProvider; +import javax.ws.rs.WebApplicationException; import javax.ws.rs.core.Response; import javax.ws.rs.core.UriInfo; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.io.TempDir; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ArrayNode; +import io.atlasmap.core.AtlasUtil; +import io.atlasmap.v2.Action; import io.atlasmap.v2.AtlasMapping; import io.atlasmap.v2.Audit; +import io.atlasmap.v2.AuditStatus; import io.atlasmap.v2.Audits; import io.atlasmap.v2.BaseMapping; import io.atlasmap.v2.Field; @@ -54,6 +63,7 @@ import io.atlasmap.v2.Mapping; import io.atlasmap.v2.MappingType; import io.atlasmap.v2.Mappings; +import io.atlasmap.v2.ProcessMappingRequest; import io.atlasmap.v2.ProcessMappingResponse; import io.atlasmap.v2.StringMap; import io.atlasmap.v2.StringMapEntry; @@ -61,30 +71,29 @@ public class AtlasServiceTest { private static final Logger LOG = LoggerFactory.getLogger(AtlasServiceTest.class); + private static final String TEMP_DIR = "target/with space"; + private static final String TEST_JAR_DIR = "target/tmp"; + private static final String TEST_JAR_PATH = TEST_JAR_DIR + "/my.jar"; - @TempDir - File tmpDir; - private AtlasService service = null; private ObjectMapper mapper = null; - private String initialValueOfWorkspace; @BeforeEach public void setUp() throws Exception { - initialValueOfWorkspace = System.getProperty(AtlasService.ATLASMAP_WORKSPACE); + File workspaceFolderWithSpace = new File(TEMP_DIR); + System.setProperty(AtlasService.ATLASMAP_WORKSPACE, workspaceFolderWithSpace.getAbsolutePath()); service = new AtlasService(); mapper = Json.mapper(); } @AfterEach public void tearDown() { + service.resetUserLibs(); + service.resetAllMappings(); service = null; mapper = null; - if(initialValueOfWorkspace != null) { - System.setProperty(AtlasService.ATLASMAP_WORKSPACE, initialValueOfWorkspace); - } else { - System.clearProperty(AtlasService.ATLASMAP_WORKSPACE); - } + AtlasUtil.deleteDirectory(new File(TEST_JAR_DIR)); + AtlasUtil.deleteDirectory(new File(TEMP_DIR)); } @Test @@ -108,7 +117,8 @@ public void testListMappings() throws Exception { @Test public void testGetMapping() { Response resp = service.getMappingRequest(JSON, 3); - assertEquals(byte[].class, resp.getEntity().getClass()); + assertEquals(204, resp.getStatus()); + assertNull(resp.getEntity()); } @Test @@ -132,17 +142,39 @@ public void testActionDeserialization() throws Exception { @Test public void testJarUpload() throws Exception { - File workspaceFolderWithSpace = new File(tmpDir, "with space"); - System.setProperty(AtlasService.ATLASMAP_WORKSPACE, workspaceFolderWithSpace.getAbsolutePath()); - new File("target/tmp").mkdirs(); + createJarFile(false, false); + FileInputStream jarIn = new FileInputStream(TEST_JAR_PATH); + Response resUL = service.uploadLibrary(jarIn); + assertEquals(200, resUL.getStatus()); + Response resFA = service.listFieldActions(null); + assertEquals(200, resFA.getStatus()); + String responseJson = new String((byte[])resFA.getEntity()); + assertTrue(responseJson.contains("myCustomFieldAction")); + Response resMB = service.listMappingBuilderClasses(null); + assertEquals(200, resMB.getStatus()); + ArrayNode builders = (ArrayNode) new ObjectMapper().readTree((byte[])resMB.getEntity()).get("ArrayList"); + assertEquals(1, builders.size()); + assertEquals("io.atlasmap.service.my.MyCustomMappingBuilder", builders.get(0).asText()); + + BufferedInputStream in = new BufferedInputStream(new FileInputStream("src/test/resources/mappings/atlasmapping-custom-action.json")); + Response resVD = service.validateMappingRequest(in, 0, null); + assertEquals(200, resVD.getStatus()); + } + + private void createJarFile(boolean skipModel, boolean skipProcessor) throws Exception { + new File(TEST_JAR_DIR).mkdirs(); JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); int answer = compiler.run(System.in, System.out, System.err, - "-d", "target/tmp", + "-d", TEST_JAR_DIR, "src/test/resources/upload/io/atlasmap/service/my/MyCustomMappingBuilder.java", "src/test/resources/upload/io/atlasmap/service/my/MyFieldActions.java", "src/test/resources/upload/io/atlasmap/service/my/MyFieldActionsModel.java"); assertEquals(0, answer); - JarOutputStream jarOut = new JarOutputStream(new FileOutputStream("target/tmp/my.jar")); + File jarFile = new File(TEST_JAR_PATH); + if (jarFile.exists()) { + jarFile.delete(); + } + JarOutputStream jarOut = new JarOutputStream(new FileOutputStream(jarFile)); jarOut.putNextEntry(new JarEntry("io/")); jarOut.closeEntry(); jarOut.putNextEntry(new JarEntry("io/atlasmap/")); @@ -154,7 +186,7 @@ public void testJarUpload() throws Exception { JarEntry classEntry = new JarEntry("io/atlasmap/service/my/MyFieldActions.class"); jarOut.putNextEntry(classEntry); byte[] buffer = new byte[1024]; - BufferedInputStream in = new BufferedInputStream(new FileInputStream("target/tmp/io/atlasmap/service/my/MyFieldActions.class")); + BufferedInputStream in = new BufferedInputStream(new FileInputStream(TEST_JAR_DIR + "/io/atlasmap/service/my/MyFieldActions.class")); int count = -1; while ((count = in.read(buffer)) != -1) { jarOut.write(buffer, 0, count); @@ -172,7 +204,7 @@ public void testJarUpload() throws Exception { jarOut.closeEntry(); classEntry = new JarEntry("io/atlasmap/service/my/MyCustomMappingBuilder.class"); jarOut.putNextEntry(classEntry); - in = new BufferedInputStream(new FileInputStream("target/tmp/io/atlasmap/service/my/MyCustomMappingBuilder.class")); + in = new BufferedInputStream(new FileInputStream(TEST_JAR_DIR + "/io/atlasmap/service/my/MyCustomMappingBuilder.class")); count = -1; while ((count = in.read(buffer)) != -1) { jarOut.write(buffer, 0, count); @@ -184,39 +216,77 @@ public void testJarUpload() throws Exception { jarOut.closeEntry(); jarOut.putNextEntry(new JarEntry("META-INF/services/")); jarOut.closeEntry(); - JarEntry svcEntry = new JarEntry("META-INF/services/io.atlasmap.spi.AtlasFieldAction"); - jarOut.putNextEntry(svcEntry); - in = new BufferedInputStream(new FileInputStream("src/test/resources/upload/META-INF/services/io.atlasmap.spi.AtlasFieldAction")); - while ((count = in.read(buffer)) != -1) { - jarOut.write(buffer, 0, count); + if (!skipProcessor) { + JarEntry svcEntry = new JarEntry("META-INF/services/io.atlasmap.spi.AtlasFieldAction"); + jarOut.putNextEntry(svcEntry); + in = new BufferedInputStream(new FileInputStream("src/test/resources/upload/META-INF/services/io.atlasmap.spi.AtlasFieldAction")); + while ((count = in.read(buffer)) != -1) { + jarOut.write(buffer, 0, count); + } + in.close(); + jarOut.closeEntry(); } - in.close(); - jarOut.closeEntry(); - svcEntry = new JarEntry("META-INF/services/io.atlasmap.v2.Action"); - jarOut.putNextEntry(svcEntry); - in = new BufferedInputStream(new FileInputStream("src/test/resources/upload/META-INF/services/io.atlasmap.v2.Action")); - while ((count = in.read(buffer)) != -1) { - jarOut.write(buffer, 0, count); + if (!skipModel) { + JarEntry svcEntry = new JarEntry("META-INF/services/io.atlasmap.v2.Action"); + jarOut.putNextEntry(svcEntry); + in = new BufferedInputStream(new FileInputStream("src/test/resources/upload/META-INF/services/io.atlasmap.v2.Action")); + while ((count = in.read(buffer)) != -1) { + jarOut.write(buffer, 0, count); + } + in.close(); + jarOut.closeEntry(); } - in.close(); - jarOut.closeEntry(); jarOut.close(); - FileInputStream jarIn = new FileInputStream("target/tmp/my.jar"); + } + + @Test + public void testJarUploadNoModelLoader() throws Exception { + assumeFalse(isWindowsJDK8()); + + createJarFile(true, false); + FileInputStream jarIn = new FileInputStream(TEST_JAR_PATH); + WebApplicationException e = assertThrows(WebApplicationException.class, () -> { + service.uploadLibrary(jarIn); + }); + assertTrue(e.getMessage().contains("META-INF/services"), e.getMessage()); + } + + @Test + public void testJarUploadNoProcessorLoader() throws Exception { + assumeFalse(isWindowsJDK8()); + + createJarFile(false, true); + FileInputStream jarIn = new FileInputStream(TEST_JAR_PATH); Response resUL = service.uploadLibrary(jarIn); assertEquals(200, resUL.getStatus()); Response resFA = service.listFieldActions(null); assertEquals(200, resFA.getStatus()); String responseJson = new String((byte[])resFA.getEntity()); - assertTrue(responseJson.contains("myCustomFieldAction"), responseJson); - Response resMB = service.listMappingBuilderClasses(null); - assertEquals(200, resMB.getStatus()); - ArrayNode builders = (ArrayNode) new ObjectMapper().readTree((byte[])resMB.getEntity()).get("ArrayList"); - assertEquals(1, builders.size()); - assertEquals("io.atlasmap.service.my.MyCustomMappingBuilder", builders.get(0).asText()); + assertFalse(responseJson.contains("myCustomFieldAction")); - in = new BufferedInputStream(new FileInputStream("src/test/resources/mappings/atlasmapping-custom-action.json")); - Response resVD = service.validateMappingRequest(in, 0, null); - assertEquals(200, resVD.getStatus()); + BufferedInputStream in = new BufferedInputStream(new FileInputStream("src/test/resources/mappings/atlasmapping-custom-action.json")); + AtlasMapping am = mapper.readValue(in, AtlasMapping.class); + Mapping m = (Mapping) am.getMappings().getMapping().get(0); + Field f = m.getInputField().get(0); + f.setValue("foo"); + Action action = f.getActions().get(0); + Method method = action.getClass().getDeclaredMethod("setParam", new Class[] {String.class}); + method.invoke(action, "param"); + ProcessMappingRequest request = new ProcessMappingRequest(); + request.setMapping(m); + Response resMR = service.processMappingRequest(new ByteArrayInputStream(mapper.writeValueAsBytes(request)), null); + assertEquals(200, resMR.getStatus()); + ProcessMappingResponse pmr = Json.mapper().readValue((byte[])resMR.getEntity(), ProcessMappingResponse.class); + assertEquals(1, pmr.getAudits().getAudit().size(), printAudit(pmr.getAudits())); + Audit audit = pmr.getAudits().getAudit().get(0); + assertEquals(AuditStatus.WARN, audit.getStatus()); + assertTrue(audit.getMessage().contains("Couldn't find metadata for a FieldAction 'MyFieldActionsModel'")); + assertEquals("foo", pmr.getMapping().getOutputField().get(0).getValue()); + } + + private boolean isWindowsJDK8() { + return System.getProperty("os.name").toLowerCase().contains("win") + && Double.parseDouble(System.getProperty("java.specification.version")) < 9; } @Test @@ -253,6 +323,31 @@ public void testProcessMapping3064() throws Exception { assertEquals("/primitives/stringPrimitive", field.getPath()); } + @Test + public void testProcessMappingCustomAction() throws Exception { + createJarFile(false, false); + FileInputStream jarIn = new FileInputStream(TEST_JAR_PATH); + Response resUL = service.uploadLibrary(jarIn); + assertEquals(200, resUL.getStatus()); + Response resFA = service.listFieldActions(null); + assertEquals(200, resFA.getStatus()); + BufferedInputStream in = new BufferedInputStream(new FileInputStream("src/test/resources/mappings/atlasmapping-custom-action.json")); + AtlasMapping am = mapper.readValue(in, AtlasMapping.class); + Mapping m = (Mapping) am.getMappings().getMapping().get(0); + Field f = m.getInputField().get(0); + f.setValue("foo"); + Action action = f.getActions().get(0); + Method method = action.getClass().getDeclaredMethod("setParam", new Class[] {String.class}); + method.invoke(action, "param"); + ProcessMappingRequest request = new ProcessMappingRequest(); + request.setMapping(m); + Response resMR = service.processMappingRequest(new ByteArrayInputStream(mapper.writeValueAsBytes(request)), null); + assertEquals(200, resMR.getStatus()); + ProcessMappingResponse pmr = Json.mapper().readValue((byte[])resMR.getEntity(), ProcessMappingResponse.class); + assertEquals(0, pmr.getAudits().getAudit().size(), printAudit(pmr.getAudits())); + assertEquals("param foo", pmr.getMapping().getOutputField().get(0).getValue()); + } + protected UriInfo generateTestUriInfo(String baseUri, String absoluteUri) throws Exception { return new TestUriInfo(new URI(baseUri), new URI(absoluteUri)); } diff --git a/parent/pom.xml b/parent/pom.xml index c63bc1c41b35..5fcb2cc7f5c3 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -50,12 +50,12 @@ 0.8.7 true 1.8 - 1.2.0 + 1.2.1 2.6 1.1.1 2.1.1 - 11.0.6 + 11.0.7 1.1.1 5.8.1 2.8.1 @@ -67,7 +67,7 @@ 4.7.2.Final 3.15.2.Final 1.2.6 - 3.8.2 + 3.8.3 5.1.2 3.8.1 3.2.0 @@ -75,16 +75,16 @@ 3.6.1 3.2.0 2.22.2 - 3.12.4 + 4.0.0 4.9.2 5.2.1 ${osgi.include.resource} ${project.artifactId} * 4.9.1.Final - 3.141.59 + 4.0.0 1.7.32 - 5.3.10 + 6.0.4 2.5.5 2.1.11 1.3.3 diff --git a/ui/packages/atlasmap-core/src/models/inspect/csv-inspection.model.ts b/ui/packages/atlasmap-core/src/models/inspect/csv-inspection.model.ts index ab2a7375256b..519f77065b0f 100644 --- a/ui/packages/atlasmap-core/src/models/inspect/csv-inspection.model.ts +++ b/ui/packages/atlasmap-core/src/models/inspect/csv-inspection.model.ts @@ -120,6 +120,6 @@ export class CsvInspectionRequestModel extends DocumentInspectionRequestModel { } export class CsvInspectionRequestOptions extends DocumentInspectionRequestOptions { - json = this.doc.inspectionSource; + body = this.doc.inspectionSource; searchParams: { [key: string]: string } = this.doc.inspectionParameters; } diff --git a/ui/packages/atlasmap-core/src/services/document-management.service.ts b/ui/packages/atlasmap-core/src/services/document-management.service.ts index d8241d8f7015..8451dd18b9cc 100644 --- a/ui/packages/atlasmap-core/src/services/document-management.service.ts +++ b/ui/packages/atlasmap-core/src/services/document-management.service.ts @@ -257,14 +257,6 @@ export class DocumentManagementService { resolve(false); return; } - this.cfg.errorService.addError( - new ErrorInfo({ - message: `${selectedFile.name} ${userFileSuffix} import complete.`, - level: ErrorLevel.INFO, - scope: ErrorScope.APPLICATION, - type: ErrorType.USER, - }) - ); resolve(true); }); }); diff --git a/ui/packages/atlasmap-core/src/services/error-handler.service.ts b/ui/packages/atlasmap-core/src/services/error-handler.service.ts index 9d7e6fd3673f..63371a041ab3 100644 --- a/ui/packages/atlasmap-core/src/services/error-handler.service.ts +++ b/ui/packages/atlasmap-core/src/services/error-handler.service.ts @@ -75,7 +75,12 @@ export class ErrorHandlerService { } const store = ErrorScope.FORM === error.scope ? this.formErrors : this.errors; - if (store.find((e) => e.message === error.message)) { + + // Remove identical error/warning messages - not info messages. + if ( + store.find((e) => e.message === error.message) && + error.level !== ErrorLevel.INFO + ) { return; } store.unshift(error); diff --git a/ui/packages/atlasmap-standalone/package.json b/ui/packages/atlasmap-standalone/package.json index 98795f2fa0e3..67633e3c0768 100644 --- a/ui/packages/atlasmap-standalone/package.json +++ b/ui/packages/atlasmap-standalone/package.json @@ -19,7 +19,7 @@ "@patternfly/react-core": "^4.147.0", "@patternfly/react-icons": "^4.11.8", "@patternfly/react-styles": "^4.11.8", - "@patternfly/react-table": "^4.29.37", + "@patternfly/react-table": "^4.30.3", "@patternfly/react-topology": "^4.9.42", "@types/d3-scale": "^4.0.0", "@types/d3-shape": "^3.0.0", diff --git a/ui/packages/atlasmap/package.json b/ui/packages/atlasmap/package.json index 17a0c38ec082..0decb147839e 100644 --- a/ui/packages/atlasmap/package.json +++ b/ui/packages/atlasmap/package.json @@ -74,7 +74,7 @@ "@patternfly/react-core": "^4.147.0", "@patternfly/react-icons": "^4.11.8", "@patternfly/react-styles": "^4.11.8", - "@patternfly/react-table": "^4.29.37", + "@patternfly/react-table": "^4.30.3", "@patternfly/react-topology": "^4.9.42", "@types/d3-scale": "^4.0.0", "@types/d3-shape": "^3.0.0", diff --git a/ui/packages/atlasmap/src/UI/dialogs/ConstantDialog.stories.tsx b/ui/packages/atlasmap/src/UI/dialogs/ConstantDialog.stories.tsx index 1e30b988154b..f0e3b316bb9e 100644 --- a/ui/packages/atlasmap/src/UI/dialogs/ConstantDialog.stories.tsx +++ b/ui/packages/atlasmap/src/UI/dialogs/ConstantDialog.stories.tsx @@ -24,7 +24,6 @@ const obj = { component: ConstantDialog, }; export default obj; - const options = [ { label: 'Foo', value: 'foo' }, { label: 'Bar', value: 'bar' }, @@ -33,7 +32,7 @@ const options = [ const valueTypeOptions = options.map((o) => o.value); -export const propertyDialog = () => ( +export const constantDialog = () => ( ( valueTypeOptions[0], )} valueTypeOptions={options} - onValidation={() => true} + onValidation={() => boolean('Confirm', true)} /> ); diff --git a/ui/packages/atlasmap/src/UI/dialogs/ConstantDialog.tsx b/ui/packages/atlasmap/src/UI/dialogs/ConstantDialog.tsx index 8dc9ca5ba662..dc394914375f 100644 --- a/ui/packages/atlasmap/src/UI/dialogs/ConstantDialog.tsx +++ b/ui/packages/atlasmap/src/UI/dialogs/ConstantDialog.tsx @@ -70,7 +70,7 @@ export const ConstantDialog: FunctionComponent = ({ const [name, setName] = useState(initialName); const [value, setValue] = useState(initialValue); const [valueType, setValueType] = useState(initialValueType); - const [isConstantNameUnique, setConstantNameUnique] = useState(false); + const [isConstantNameUnique, setConstantNameUnique] = useState(true); const [isConstantValid, setConstantValid] = useState(false); const [isConstantNameValid, setConstantNameValid] = useState( ValidatedOptions.default, @@ -82,7 +82,7 @@ export const ConstantDialog: FunctionComponent = ({ setValueType(initialValueType); setConstantValid(false); setConstantNameValid(ValidatedOptions.default); - setConstantNameUnique(false); + setConstantNameUnique(true); }, [initialName, initialValue, initialValueType]); const handleOnConfirm = useCallback(() => { @@ -108,6 +108,7 @@ export const ConstantDialog: FunctionComponent = ({ function validateConstant(name: string, value: string): boolean { if (!name || name.length === 0) { setConstantNameValid(ValidatedOptions.default); + setConstantValid(false); return false; } const nameRegex = /^[a-zA-Z0-9_@-]+$/; diff --git a/ui/packages/atlasmap/src/UI/dialogs/ParametersDialog.stories.tsx b/ui/packages/atlasmap/src/UI/dialogs/ParametersDialog.stories.tsx index c7b200acd182..9b93a795f4b5 100644 --- a/ui/packages/atlasmap/src/UI/dialogs/ParametersDialog.stories.tsx +++ b/ui/packages/atlasmap/src/UI/dialogs/ParametersDialog.stories.tsx @@ -13,11 +13,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -import { boolean, text } from '@storybook/addon-knobs'; +import { boolean, text } from '@storybook/addon-knobs'; import { ParametersDialog } from './ParametersDialog'; import React from 'react'; import { action } from '@storybook/addon-actions'; +import { getCsvParameterOptions } from '@atlasmap/core'; const obj = { title: 'UI|Dialogs', @@ -25,7 +26,7 @@ const obj = { }; export default obj; -const parameters = [ +const initialParameters = [ { name: 'format', label: 'CSV File Format', @@ -127,6 +128,7 @@ const parameters = [ { name: 'quote', label: 'Quote', value: '', required: false, enabled: false }, ]; +const parameters = getCsvParameterOptions(); /** * The 'Select' parameters dialog doesn't specify predefined parameters, the * 'Edit' dialog does. @@ -139,6 +141,8 @@ export const parametersSelectDialog = () => ( isOpen={boolean('Is open', true)} onCancel={action('onCancel')} onConfirm={action('onConfirm')} + parameters={parameters} + initialParameters={[]} /> ); @@ -149,5 +153,6 @@ export const parametersEditDialog = () => ( onCancel={action('onCancel')} onConfirm={action('onConfirm')} parameters={parameters} + initialParameters={initialParameters} /> ); diff --git a/ui/packages/atlasmap/src/UI/dialogs/ParametersDialog.tsx b/ui/packages/atlasmap/src/UI/dialogs/ParametersDialog.tsx index 80e983bc2d67..ed43a26e2c2a 100644 --- a/ui/packages/atlasmap/src/UI/dialogs/ParametersDialog.tsx +++ b/ui/packages/atlasmap/src/UI/dialogs/ParametersDialog.tsx @@ -38,7 +38,8 @@ import { IParameter } from '@atlasmap/core'; export interface IParametersDialogProps { title: string; - parameters: IParameter[]; + readonly parameters: IParameter[]; + readonly initialParameters: IParameter[]; isOpen: IConfirmationDialogProps['isOpen']; onCancel: IConfirmationDialogProps['onCancel']; onConfirm: (parameters: IParameter[]) => void; @@ -46,23 +47,29 @@ export interface IParametersDialogProps { export const ParametersDialog: FunctionComponent = ({ title, - parameters: initialParameters = [], + parameters: totalAvailableParameters = [], + initialParameters, isOpen, onCancel, onConfirm, }) => { + // Defined parameters are the current working set of user-selected parameters. const [definedParameters, setDefinedParameters] = useState([]); - const availableParameters: IParameter[] = initialParameters.filter( + // Available parameters are: (total-available-parameters - defined-parameters). + const availableParameters: IParameter[] = totalAvailableParameters.filter( (param) => !definedParameters.map((p) => p.name).includes(param.name), ); const reset = useCallback(() => { - setDefinedParameters( - initialParameters.filter((p) => p.required || p.enabled), - ); + if (initialParameters) { + setDefinedParameters(initialParameters); + } else { + setDefinedParameters([]); + } }, [initialParameters]); + // Callback to actually set the list of user-selected (defined) parameters. const handleOnConfirm = useCallback(() => { onConfirm(definedParameters); }, [definedParameters, onConfirm]); @@ -128,7 +135,7 @@ export const ParametersDialog: FunctionComponent = ({ 0 ? handleOnConfirm : undefined} + onConfirm={definedParameters?.length > 0 ? handleOnConfirm : undefined} isOpen={isOpen} >
@@ -226,7 +233,9 @@ export const ParametersDialog: FunctionComponent = ({ marginTop: '1.0rem', width: '40', }} - isDisabled={availableParameters.length === 0} + isDisabled={ + !availableParameters || availableParameters.length === 0 + } onClick={handleAddParameter} variant="link" icon={} diff --git a/ui/packages/atlasmap/src/UI/dialogs/PropertyDialog.stories.tsx b/ui/packages/atlasmap/src/UI/dialogs/PropertyDialog.stories.tsx index 789e210a2d50..f93b403be5d4 100644 --- a/ui/packages/atlasmap/src/UI/dialogs/PropertyDialog.stories.tsx +++ b/ui/packages/atlasmap/src/UI/dialogs/PropertyDialog.stories.tsx @@ -49,7 +49,7 @@ export const sourcePropertyDialog = () => ( valueTypeOptions={options} scope={select('Initial scope', scopeOptions, scopeOptions[0])} scopeOptions={options} - onValidation={() => true} + onValidation={() => boolean('Confirm', true)} /> ); @@ -68,6 +68,6 @@ export const targetPropertyDialog = () => ( valueTypeOptions={options} scope={select('Initial scope', scopeOptions, scopeOptions[0])} scopeOptions={options} - onValidation={() => true} + onValidation={() => boolean('Confirm', true)} /> ); diff --git a/ui/packages/atlasmap/src/UI/dialogs/PropertyDialog.tsx b/ui/packages/atlasmap/src/UI/dialogs/PropertyDialog.tsx index 447c2117a5c2..d576b017b2c6 100644 --- a/ui/packages/atlasmap/src/UI/dialogs/PropertyDialog.tsx +++ b/ui/packages/atlasmap/src/UI/dialogs/PropertyDialog.tsx @@ -110,6 +110,7 @@ export const PropertyDialog: FunctionComponent = ({ function validateProperty(name: string, scope: string): boolean { if (!name || name.length === 0) { setPropertyNameValid(ValidatedOptions.default); + setPropertyValid(false); return false; } const nameRegex = /^[a-zA-Z0-9_@]+$/; diff --git a/ui/packages/atlasmap/src/Views/MappingTableView.tsx b/ui/packages/atlasmap/src/Views/MappingTableView.tsx index 5d2aabd84e54..c320aff850f9 100644 --- a/ui/packages/atlasmap/src/Views/MappingTableView.tsx +++ b/ui/packages/atlasmap/src/Views/MappingTableView.tsx @@ -24,12 +24,14 @@ import { DocumentFieldPreview, DocumentFieldPreviewResults } from '../UI'; import { IAtlasmapField, IAtlasmapMapping } from '../Views'; import { ICell, + IComputedData, + IExtraRowData, IRow, Table, TableBody, TableHeader, } from '@patternfly/react-table'; -import React, { FunctionComponent, MouseEvent } from 'react'; +import React, { FunctionComponent, KeyboardEvent, MouseEvent } from 'react'; import { MainContent } from '../Layout'; import { TableIcon } from '@patternfly/react-icons'; @@ -122,7 +124,12 @@ export const MappingTableView: FunctionComponent = ({ const columns = ['Sources', 'Targets', 'Types']; - const handleSelectMapping = (_event: MouseEvent, row: IRow) => { + const handleSelectMapping = ( + _event: MouseEvent | KeyboardEvent, + row: IRow, + _rowProps: IExtraRowData, + _computedData: IComputedData, + ) => { const mapping: IAtlasmapMapping | undefined = mappings.find( (mapping) => (row.cells?.[0] as ICell).data === mapping.id, ); diff --git a/ui/packages/atlasmap/src/impl/dialogs/useParametersDialog.tsx b/ui/packages/atlasmap/src/impl/dialogs/useParametersDialog.tsx index 4952b06c4369..710b592d9b69 100644 --- a/ui/packages/atlasmap/src/impl/dialogs/useParametersDialog.tsx +++ b/ui/packages/atlasmap/src/impl/dialogs/useParametersDialog.tsx @@ -47,6 +47,7 @@ export function useParametersDialog( onCancel={toggleOff} onConfirm={onConfirm} parameters={parameters} + initialParameters={parameters.filter((p) => p.required || p.enabled)} /> ); const onOpenParametersDialog = useCallback( diff --git a/ui/packages/atlasmap/src/impl/utils/document.ts b/ui/packages/atlasmap/src/impl/utils/document.ts index 560deaf1709f..673836568379 100644 --- a/ui/packages/atlasmap/src/impl/utils/document.ts +++ b/ui/packages/atlasmap/src/impl/utils/document.ts @@ -18,6 +18,10 @@ import { CommonUtil, ConfigModel, DocumentDefinition, + ErrorInfo, + ErrorLevel, + ErrorScope, + ErrorType, NamespaceModel, } from '@atlasmap/core'; @@ -214,6 +218,14 @@ export async function importInstanceSchema( cfg.fileService.updateDigestFile().finally(() => { cfg.initializationService.updateStatus(); resolve(true); + cfg.errorService.addError( + new ErrorInfo({ + message: `${selectedFile.name} import complete.`, + level: ErrorLevel.INFO, + scope: ErrorScope.APPLICATION, + type: ErrorType.USER, + }), + ); }); }); }); diff --git a/ui/yarn.lock b/ui/yarn.lock index 79fb498f33b7..320e1b8ebc89 100644 --- a/ui/yarn.lock +++ b/ui/yarn.lock @@ -16,10 +16,10 @@ dependencies: "@babel/highlight" "^7.8.3" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.14.5", "@babel/code-frame@^7.5.5", "@babel/code-frame@^7.8.3": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb" - integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.14.5", "@babel/code-frame@^7.15.8", "@babel/code-frame@^7.5.5", "@babel/code-frame@^7.8.3": + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.15.8.tgz#45990c47adadb00c03677baa89221f7cc23d2503" + integrity sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg== dependencies: "@babel/highlight" "^7.14.5" @@ -78,19 +78,19 @@ source-map "^0.5.0" "@babel/core@^7.1.0", "@babel/core@^7.12.10", "@babel/core@^7.4.4", "@babel/core@^7.4.5", "@babel/core@^7.7.5": - version "7.15.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.15.5.tgz#f8ed9ace730722544609f90c9bb49162dc3bf5b9" - integrity sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg== + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.15.8.tgz#195b9f2bffe995d2c6c159e72fe525b4114e8c10" + integrity sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og== dependencies: - "@babel/code-frame" "^7.14.5" - "@babel/generator" "^7.15.4" + "@babel/code-frame" "^7.15.8" + "@babel/generator" "^7.15.8" "@babel/helper-compilation-targets" "^7.15.4" - "@babel/helper-module-transforms" "^7.15.4" + "@babel/helper-module-transforms" "^7.15.8" "@babel/helpers" "^7.15.4" - "@babel/parser" "^7.15.5" + "@babel/parser" "^7.15.8" "@babel/template" "^7.15.4" "@babel/traverse" "^7.15.4" - "@babel/types" "^7.15.4" + "@babel/types" "^7.15.6" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -98,12 +98,12 @@ semver "^6.3.0" source-map "^0.5.0" -"@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.15.4", "@babel/generator@^7.4.0", "@babel/generator@^7.9.0": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.15.4.tgz#85acb159a267ca6324f9793986991ee2022a05b0" - integrity sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw== +"@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.15.4", "@babel/generator@^7.15.8", "@babel/generator@^7.4.0", "@babel/generator@^7.9.0": + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.15.8.tgz#fa56be6b596952ceb231048cf84ee499a19c0cd1" + integrity sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g== dependencies: - "@babel/types" "^7.15.4" + "@babel/types" "^7.15.6" jsesc "^2.5.1" source-map "^0.5.0" @@ -262,19 +262,19 @@ dependencies: "@babel/types" "^7.15.4" -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.13.0", "@babel/helper-module-transforms@^7.14.0", "@babel/helper-module-transforms@^7.14.2", "@babel/helper-module-transforms@^7.15.4", "@babel/helper-module-transforms@^7.9.0": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.15.4.tgz#962cc629a7f7f9a082dd62d0307fa75fe8788d7c" - integrity sha512-9fHHSGE9zTC++KuXLZcB5FKgvlV83Ox+NLUmQTawovwlJ85+QMhk1CnVk406CQVj97LaWod6KVjl2Sfgw9Aktw== +"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.13.0", "@babel/helper-module-transforms@^7.14.0", "@babel/helper-module-transforms@^7.14.2", "@babel/helper-module-transforms@^7.15.8", "@babel/helper-module-transforms@^7.9.0": + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz#d8c0e75a87a52e374a8f25f855174786a09498b2" + integrity sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg== dependencies: "@babel/helper-module-imports" "^7.15.4" "@babel/helper-replace-supers" "^7.15.4" "@babel/helper-simple-access" "^7.15.4" "@babel/helper-split-export-declaration" "^7.15.4" - "@babel/helper-validator-identifier" "^7.14.9" + "@babel/helper-validator-identifier" "^7.15.7" "@babel/template" "^7.15.4" "@babel/traverse" "^7.15.4" - "@babel/types" "^7.15.4" + "@babel/types" "^7.15.6" "@babel/helper-optimise-call-expression@^7.12.13": version "7.12.13" @@ -379,6 +379,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz#6654d171b2024f6d8ee151bf2509699919131d48" integrity sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g== +"@babel/helper-validator-identifier@^7.15.7": + version "7.15.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" + integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== + "@babel/helper-validator-option@^7.12.17": version "7.12.17" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz#d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831" @@ -426,10 +431,10 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.15.4", "@babel/parser@^7.15.5", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0", "@babel/parser@^7.9.0": - version "7.15.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.5.tgz#d33a58ca69facc05b26adfe4abebfed56c1c2dac" - integrity sha512-2hQstc6I7T6tQsWzlboMh3SgMRPaS4H6H7cPQsJkdzTzEGqQrpLDsE2BGASU5sBPoEQyHzeqU6C8uKbFeEk6sg== +"@babel/parser@^7.1.0", "@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.15.4", "@babel/parser@^7.15.8", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0", "@babel/parser@^7.9.0": + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.8.tgz#7bacdcbe71bdc3ff936d510c15dcea7cf0b99016" + integrity sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA== "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.13.12": version "7.13.12" @@ -1402,10 +1407,10 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.1", "@babel/types@^7.12.11", "@babel/types@^7.12.13", "@babel/types@^7.12.7", "@babel/types@^7.13.0", "@babel/types@^7.13.12", "@babel/types@^7.13.16", "@babel/types@^7.14.2", "@babel/types@^7.15.4", "@babel/types@^7.2.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.9.0": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.15.4.tgz#74eeb86dbd6748d2741396557b9860e57fce0a0d" - integrity sha512-0f1HJFuGmmbrKTCZtbm3cU+b/AqdEYk5toj5iQur58xkVMlS0JWaKxTBSmCXd47uiN7vbcozAupm6Mvs80GNhw== +"@babel/types@^7.0.0", "@babel/types@^7.12.1", "@babel/types@^7.12.11", "@babel/types@^7.12.13", "@babel/types@^7.12.7", "@babel/types@^7.13.0", "@babel/types@^7.13.12", "@babel/types@^7.13.16", "@babel/types@^7.14.2", "@babel/types@^7.15.4", "@babel/types@^7.15.6", "@babel/types@^7.2.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.9.0": + version "7.15.6" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.15.6.tgz#99abdc48218b2881c058dd0a7ab05b99c9be758f" + integrity sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig== dependencies: "@babel/helper-validator-identifier" "^7.14.9" to-fast-properties "^2.0.0" @@ -2718,54 +2723,54 @@ dependencies: "@octokit/openapi-types" "^7.0.0" -"@patternfly/react-core@^4.147.0", "@patternfly/react-core@^4.152.4": - version "4.152.4" - resolved "https://registry.yarnpkg.com/@patternfly/react-core/-/react-core-4.152.4.tgz#fa008d155ab0c4161aab27bb67ad88fb8689dee2" - integrity sha512-saMnAoF3KnYB5k6K04Y6NtO61bXYl71yzGPYSrM/DjyWDlIGLqPPhMe4kbWafLTpSgJdkxPoODgVMDp2ZIJ0Jw== +"@patternfly/react-core@^4.147.0", "@patternfly/react-core@^4.157.3", "@patternfly/react-core@^4.162.3": + version "4.168.8" + resolved "https://registry.yarnpkg.com/@patternfly/react-core/-/react-core-4.168.8.tgz#6f200dba7bb83423144db34bbd2ffc833b097566" + integrity sha512-wfG52saibeAXRoBYytzMgVGANoInbPuhUK0y6AynVp3/QKAPCKHpaI4nCh9ytNZ+UjiT2KGOcunhavsOw5+iMA== dependencies: - "@patternfly/react-icons" "^4.11.14" - "@patternfly/react-styles" "^4.11.13" - "@patternfly/react-tokens" "^4.12.15" + "@patternfly/react-icons" "^4.19.8" + "@patternfly/react-styles" "^4.18.8" + "@patternfly/react-tokens" "^4.20.8" focus-trap "6.2.2" react-dropzone "9.0.0" tippy.js "5.1.2" tslib "^2.0.0" -"@patternfly/react-icons@^4.11.14", "@patternfly/react-icons@^4.11.8": - version "4.11.14" - resolved "https://registry.yarnpkg.com/@patternfly/react-icons/-/react-icons-4.11.14.tgz#ef7a2de3f78d5bd83715afb9651a185a89901c22" - integrity sha512-SBwID1p+UaQ9BSmzIRFr+BJEhYgx1rWHlm2HIZzhoz7BG3Q7byaQ8ZNfZLm0D+ZGVJQ+fq0zUHGE1nzxDPFqNQ== - -"@patternfly/react-styles@^4.11.13", "@patternfly/react-styles@^4.11.8": - version "4.11.13" - resolved "https://registry.yarnpkg.com/@patternfly/react-styles/-/react-styles-4.11.13.tgz#6595adc5ff40585add0128d27d420322b65b86a9" - integrity sha512-svhnWIqZwJt1cOxwYjvz6lVYeL+c9D17xpKqlkJapXRxJL3ppTfIqwBrT3o9+02ElaXUTKt4xjMkSnEVjw4qxA== - -"@patternfly/react-table@^4.29.37": - version "4.29.58" - resolved "https://registry.yarnpkg.com/@patternfly/react-table/-/react-table-4.29.58.tgz#be77a6eee6a60c26e1f6939aaae007f21be52355" - integrity sha512-0KaypqnO1baaS8ESpaMyPcGmOsAva7vO9GzBiiiKnYizfjsPPE58KryyiLu0fEXBT6ESzYYm8I6pZNzzlI50Ww== - dependencies: - "@patternfly/react-core" "^4.152.4" - "@patternfly/react-icons" "^4.11.14" - "@patternfly/react-styles" "^4.11.13" - "@patternfly/react-tokens" "^4.12.15" +"@patternfly/react-icons@^4.11.17", "@patternfly/react-icons@^4.11.8", "@patternfly/react-icons@^4.13.1", "@patternfly/react-icons@^4.19.8": + version "4.19.8" + resolved "https://registry.yarnpkg.com/@patternfly/react-icons/-/react-icons-4.19.8.tgz#376cfe136b3acef86fa28081c99e4e88bd13457c" + integrity sha512-JBBcVntRLspe857JnGo8lFaZfy+WOR/IYe2E9W3Rknqm1T8WO6oXpeEnrr5r9bpYDFUa4ttcb/acuQXc1xypxg== + +"@patternfly/react-styles@^4.11.16", "@patternfly/react-styles@^4.11.8", "@patternfly/react-styles@^4.12.5", "@patternfly/react-styles@^4.18.8": + version "4.18.8" + resolved "https://registry.yarnpkg.com/@patternfly/react-styles/-/react-styles-4.18.8.tgz#92b314c41a8df27cf4c531ab60fc9daf11da8150" + integrity sha512-136N/Whs0qXDtPpsh5JeNJld5BeFPsbmmcgI5LlMQ+P9dioddh24rTqaaOIea67tHiXUB7orxaqKpBBILXqcPQ== + +"@patternfly/react-table@^4.30.3": + version "4.31.8" + resolved "https://registry.yarnpkg.com/@patternfly/react-table/-/react-table-4.31.8.tgz#4d80e6e9f3730a91076a82c6e46cfb06afcad485" + integrity sha512-OLSFWR9cEgC129dM52YUzFrAZHh/Lu/DvFI1KES+/+rXLbEyQ5jqIpHwWcY/Y2Dy4wwekw8bTElYGTr1G3NHLg== + dependencies: + "@patternfly/react-core" "^4.162.3" + "@patternfly/react-icons" "^4.13.1" + "@patternfly/react-styles" "^4.12.5" + "@patternfly/react-tokens" "^4.14.1" lodash "^4.17.19" tslib "^2.0.0" -"@patternfly/react-tokens@^4.12.15": - version "4.12.15" - resolved "https://registry.yarnpkg.com/@patternfly/react-tokens/-/react-tokens-4.12.15.tgz#af760a1b378edce85fd2f7394553911b6ee3c4f0" - integrity sha512-lRW0qxGjuFEPMweBSQFHNRNoxavx5uR8b28f0lPN0Jlz4QsaCFVTmHM2XqflOHDpjE8SPJW/hJMSsyUrqnM5dw== +"@patternfly/react-tokens@^4.14.1", "@patternfly/react-tokens@^4.20.8": + version "4.20.8" + resolved "https://registry.yarnpkg.com/@patternfly/react-tokens/-/react-tokens-4.20.8.tgz#8413af8516fdcdaea1da81912434eef4c9c7865a" + integrity sha512-OFlgTknFBNAETWVYYoLdISJBjPMQ8e3tcLpWb3h/KgKk/Tn1NR+P7Pl1gQGvTL/9liBZfS/HKDD5+P8c70w+2Q== "@patternfly/react-topology@^4.9.42": - version "4.9.62" - resolved "https://registry.yarnpkg.com/@patternfly/react-topology/-/react-topology-4.9.62.tgz#32316b22e97771c3e2f6d92d09a95caa00340369" - integrity sha512-0UoIfyldWwLmCHIb+F+a5vsjVKWVGMEFFbDHq6u/tO3WG8/wsbaf8o0JY3G6+/jKSkFEv7wK/ljHLchFvJbWYQ== + version "4.9.80" + resolved "https://registry.yarnpkg.com/@patternfly/react-topology/-/react-topology-4.9.80.tgz#5155293a2d017a5964a0b3c9459f320827a2bafe" + integrity sha512-j+8aAKqrxu7ebIUyWdecFydQKRduh1orWV82uXqNSBX2r88GKaR6tos800gal1UO8tgOL6aIPJqCfQIoJostjg== dependencies: - "@patternfly/react-core" "^4.152.4" - "@patternfly/react-icons" "^4.11.14" - "@patternfly/react-styles" "^4.11.13" + "@patternfly/react-core" "^4.157.3" + "@patternfly/react-icons" "^4.11.17" + "@patternfly/react-styles" "^4.11.16" "@types/d3" "^5.7.2" "@types/d3-force" "^1.2.1" "@types/dagre" "0.7.42" @@ -2824,90 +2829,90 @@ resolved "https://registry.yarnpkg.com/@react-dnd/shallowequal/-/shallowequal-2.0.0.tgz#a3031eb54129f2c66b2753f8404266ec7bf67f0a" integrity sha512-Pc/AFTdwZwEKJxFJvlxrSmGe/di+aAOBn60sremrpLo6VI/6cmiUYNNwlI5KNYttg7uypzA3ILPMPgxB2GYZEg== -"@react-spring/animated@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/animated/-/animated-9.2.4.tgz#062ecc0fdfef89f2541a42d8500428b70035f879" - integrity sha512-AfV6ZM8pCCAT29GY5C8/1bOPjZrv/7kD0vedjiE/tEYvNDwg9GlscrvsTViWR2XykJoYrDfdkYArrldWpsCJ5g== - dependencies: - "@react-spring/shared" "~9.2.0" - "@react-spring/types" "~9.2.0" - -"@react-spring/core@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/core/-/core-9.2.4.tgz#275a4a065e3a315a4f5fb28c9a6f62ce718c25d6" - integrity sha512-R+PwyfsjiuYCWqaTTfCpYpRmsP0h87RNm7uxC1Uxy7QAHUfHEm2sAHn+AdHPwq/MbVwDssVT8C5yf2WGcqiXGg== - dependencies: - "@react-spring/animated" "~9.2.0" - "@react-spring/shared" "~9.2.0" - "@react-spring/types" "~9.2.0" - -"@react-spring/konva@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/konva/-/konva-9.2.4.tgz#e467b24b3b110ba496526c9001439ce561641e0d" - integrity sha512-19anDOIkfjcydDTfGgVIuZ3lruZxKubYGs9oHCswaP8SRLj7c1kkopJHUr/S4LXGxiIdqdF0XucWm0iTEPEq4w== - dependencies: - "@react-spring/animated" "~9.2.0" - "@react-spring/core" "~9.2.0" - "@react-spring/shared" "~9.2.0" - "@react-spring/types" "~9.2.0" - -"@react-spring/native@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/native/-/native-9.2.4.tgz#0fd335a44c05023f5428df444d8f1aa3da7abfc9" - integrity sha512-xKJWKh5qOhSclpL3iuGwJRLoZzTNvlBEnIrMs8yh8xvX6z9Lmnu4uGu5DpfrnM1GzBvRoktoCoLEx/VcEYFSng== - dependencies: - "@react-spring/animated" "~9.2.0" - "@react-spring/core" "~9.2.0" - "@react-spring/shared" "~9.2.0" - "@react-spring/types" "~9.2.0" - -"@react-spring/rafz@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/rafz/-/rafz-9.2.4.tgz#44793e9adc14dd0dcd1573d094368af11a89d73a" - integrity sha512-SOKf9eue+vAX+DGo7kWYNl9i9J3gPUlQjifIcV9Bzw9h3i30wPOOP0TjS7iMG/kLp2cdHQYDNFte6nt23VAZkQ== - -"@react-spring/shared@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/shared/-/shared-9.2.4.tgz#f9cc66ac5308a77293330a18518e34121f4008c1" - integrity sha512-ZEr4l2BxmyFRUvRA2VCkPfCJii4E7cGkwbjmTBx1EmcGrOnde/V2eF5dxqCTY3k35QuCegkrWe0coRJVkh8q2Q== - dependencies: - "@react-spring/rafz" "~9.2.0" - "@react-spring/types" "~9.2.0" - -"@react-spring/three@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/three/-/three-9.2.4.tgz#849c97658a6e1410b6f823ad21e2ee33feada820" - integrity sha512-ljFig7XW099VWwRPKPUf+4yYLivp/sSWXN3oO5SJOF/9BSoV1quS/9chZ5Myl5J14od3CsHf89Tv4FdlX5kHlA== - dependencies: - "@react-spring/animated" "~9.2.0" - "@react-spring/core" "~9.2.0" - "@react-spring/shared" "~9.2.0" - "@react-spring/types" "~9.2.0" - -"@react-spring/types@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/types/-/types-9.2.4.tgz#2365ce9d761f548a9adcb2cd68714bf26765a5de" - integrity sha512-zHUXrWO8nweUN/ISjrjqU7GgXXvoEbFca1CgiE0TY0H/dqJb3l+Rhx8ecPVNYimzFg3ZZ1/T0egpLop8SOv4aA== - -"@react-spring/web@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/web/-/web-9.2.4.tgz#c6d5464a954bfd0d7bc90117050f796a95ebfa08" - integrity sha512-vtPvOalLFvuju/MDBtoSnCyt0xXSL6Amyv82fljOuWPl1yGd4M1WteijnYL9Zlriljl0a3oXcPunAVYTD9dbDQ== - dependencies: - "@react-spring/animated" "~9.2.0" - "@react-spring/core" "~9.2.0" - "@react-spring/shared" "~9.2.0" - "@react-spring/types" "~9.2.0" - -"@react-spring/zdog@~9.2.0": - version "9.2.4" - resolved "https://registry.yarnpkg.com/@react-spring/zdog/-/zdog-9.2.4.tgz#db1d1924fe9920e917d889c4d3bb138bd0885cf1" - integrity sha512-rv7ptedS37SHr6yuCbRkUErAzAhebdgt8f4KUtZWzseC+7qLNkaZWf+uujgsb881qAuX9b9yz8rre9UKeYepgw== - dependencies: - "@react-spring/animated" "~9.2.0" - "@react-spring/core" "~9.2.0" - "@react-spring/shared" "~9.2.0" - "@react-spring/types" "~9.2.0" +"@react-spring/animated@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/animated/-/animated-9.2.6.tgz#58f30fb75d8bfb7ccbc156cfd6b974a8f3dfd54e" + integrity sha512-xjL6nmixYNDvnpTs1FFMsMfSC0tURwPCU3b2jWNriYGLfwZ7c/TcyaEZA7yiNnmdFnuR3f3Z27AqIgaFC083Cw== + dependencies: + "@react-spring/shared" "~9.2.6-beta.0" + "@react-spring/types" "~9.2.6-beta.0" + +"@react-spring/core@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/core/-/core-9.2.6.tgz#ae22338fe55d070caf03abb4293b5519ba620d93" + integrity sha512-uPHUxmu+w6mHJrfQTMtmGJ8iZEwiVxz9kH7dRyk69bkZJt9z+w0Oj3UF4J3VcECZsbm3HRhN2ogXSAaqGjwhQw== + dependencies: + "@react-spring/animated" "~9.2.6-beta.0" + "@react-spring/shared" "~9.2.6-beta.0" + "@react-spring/types" "~9.2.6-beta.0" + +"@react-spring/konva@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/konva/-/konva-9.2.6.tgz#b64f1bb1ae26df145213fd2138b59ad9302b134a" + integrity sha512-O1A9sKfNM+Srl1Gs3MtXNMUcGr6lJdtwlsSRQQsWLxJS/wD1DHWGHOXcVitk5da2GCqOdFs+pQPajkwdMHIYag== + dependencies: + "@react-spring/animated" "~9.2.6-beta.0" + "@react-spring/core" "~9.2.6-beta.0" + "@react-spring/shared" "~9.2.6-beta.0" + "@react-spring/types" "~9.2.6-beta.0" + +"@react-spring/native@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/native/-/native-9.2.6.tgz#725cde3f60cb4086c75b4cf4c3d843828ac143f1" + integrity sha512-xOt03jK2eLo0lDfAyuMD+G1uCoKL5dsmX/wSJNuWTEWhDuJQFcSgZFHqmVn3bu/Fmd02iVe5/pAOWll5e90N1Q== + dependencies: + "@react-spring/animated" "~9.2.6-beta.0" + "@react-spring/core" "~9.2.6-beta.0" + "@react-spring/shared" "~9.2.6-beta.0" + "@react-spring/types" "~9.2.6-beta.0" + +"@react-spring/rafz@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/rafz/-/rafz-9.2.6.tgz#d97484003875bf5fb5e6ec22dee97cc208363e48" + integrity sha512-62SivLKEpo7EfHPkxO5J3g9Cr9LF6+1A1RVOMJhkcpEYtbdbmma/d63Xp8qpMPEpk7uuWxaTb6jjyxW33pW3sg== + +"@react-spring/shared@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/shared/-/shared-9.2.6.tgz#2c84e62cc0cfbbbbeb5546acd46c1f4b248bc562" + integrity sha512-Qrm9fopKG/RxZ3Rw+4euhrpnB3uXSyiON9skHbcBfmkkzagpkUR66MX1YLrhHw0UchcZuSDnXs0Lonzt1rpWag== + dependencies: + "@react-spring/rafz" "~9.2.6-beta.0" + "@react-spring/types" "~9.2.6-beta.0" + +"@react-spring/three@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/three/-/three-9.2.6.tgz#07b6d6cf6c50103298aee1b780a6e457b1ab8ecc" + integrity sha512-sV80HWT5wjKgl6i51UALlMVhsad93pijEgkXh6mAefKmuDo9DDe6UufAOn1uCTVxPZKO7w9O7xgvlPm9nkBXag== + dependencies: + "@react-spring/animated" "~9.2.6-beta.0" + "@react-spring/core" "~9.2.6-beta.0" + "@react-spring/shared" "~9.2.6-beta.0" + "@react-spring/types" "~9.2.6-beta.0" + +"@react-spring/types@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/types/-/types-9.2.6.tgz#f60722fcf9f8492ae16d0bdc47f0ea3c2a16d2cf" + integrity sha512-l7mCw182DtDMnCI8CB9orgTAEoFZRtdQ6aS6YeEAqYcy3nQZPmPggIHH9DxyLw7n7vBPRSzu9gCvUMgXKpTflg== + +"@react-spring/web@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/web/-/web-9.2.6.tgz#c4fba69e1b1b43bd1d6a62346530cfb07f2be09b" + integrity sha512-0HkRsEYR/CO3Uw46FWDWaF2wg2rUXcWE2R9AoZXthEYLUn5w9uE1mf2Jel7BxBxWGQ73owkqSQv+klA1Hb+ViQ== + dependencies: + "@react-spring/animated" "~9.2.6-beta.0" + "@react-spring/core" "~9.2.6-beta.0" + "@react-spring/shared" "~9.2.6-beta.0" + "@react-spring/types" "~9.2.6-beta.0" + +"@react-spring/zdog@~9.2.6-beta.0": + version "9.2.6" + resolved "https://registry.yarnpkg.com/@react-spring/zdog/-/zdog-9.2.6.tgz#fa620e7d0faa4b8027fc0922a9bcab42f4e0fdd8" + integrity sha512-02Zfc1keAkA4l1zsNWKG1L/Y5wExaD4GkcYjVFwmpB7RHdxCGG4io+qBV/Idpxji0XZ8oH8d5gCjlwTMZqlrkQ== + dependencies: + "@react-spring/animated" "~9.2.6-beta.0" + "@react-spring/core" "~9.2.6-beta.0" + "@react-spring/shared" "~9.2.6-beta.0" + "@react-spring/types" "~9.2.6-beta.0" "@rollup/plugin-commonjs@^11.0.0": version "11.1.0" @@ -2965,16 +2970,16 @@ type-detect "4.0.8" "@storybook/addon-actions@^6.3.8": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-6.3.9.tgz#dd4b834b7734bc4c19142cf623b665f02e2d38b9" - integrity sha512-r02sSxkd2csKb69PVi8541e6hYGJ+FXOEBUnvLPyf5IULs7tRWPJekNd6cHxP1hoUBnmmj2f8CXmmbsXzr6rrQ== - dependencies: - "@storybook/addons" "6.3.9" - "@storybook/api" "6.3.9" - "@storybook/client-api" "6.3.9" - "@storybook/components" "6.3.9" - "@storybook/core-events" "6.3.9" - "@storybook/theming" "6.3.9" + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-6.3.12.tgz#69eb5f8f780f1b00456051da6290d4b959ba24a0" + integrity sha512-mzuN4Ano4eyicwycM2PueGzzUCAEzt9/6vyptWEIVJu0sjK0J9KtBRlqFi1xGQxmCfimDR/n/vWBBkc7fp2uJA== + dependencies: + "@storybook/addons" "6.3.12" + "@storybook/api" "6.3.12" + "@storybook/client-api" "6.3.12" + "@storybook/components" "6.3.12" + "@storybook/core-events" "6.3.12" + "@storybook/theming" "6.3.12" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -2988,9 +2993,9 @@ uuid-browser "^3.1.0" "@storybook/addon-docs@^6.3.8": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-6.3.9.tgz#34b87eb5c5059bb98bf09700b60470c8d35fbb58" - integrity sha512-UgujxJei5xejFpAfW40TdoDJnnfeKUPrp6QWMjMRcMG3+uW69VWviw4p3qzS9phO5vQJsINpRT8Bu0aGz2TpJw== + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-6.3.10.tgz#5aed33df5b6a6b719fb85b9b215372ce5fdd0a56" + integrity sha512-1JMl2E01sUwYlHgc2l+n1MDMSHbZNDPb4/DRpw2p4YZ8VSSOprA4Z4uHmFjabxyfnkv3Sz5isRVeaMqJzHMjdA== dependencies: "@babel/core" "^7.12.10" "@babel/generator" "^7.12.11" @@ -3001,20 +3006,20 @@ "@mdx-js/loader" "^1.6.22" "@mdx-js/mdx" "^1.6.22" "@mdx-js/react" "^1.6.22" - "@storybook/addons" "6.3.9" - "@storybook/api" "6.3.9" - "@storybook/builder-webpack4" "6.3.9" - "@storybook/client-api" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/components" "6.3.9" - "@storybook/core" "6.3.9" - "@storybook/core-events" "6.3.9" + "@storybook/addons" "6.3.10" + "@storybook/api" "6.3.10" + "@storybook/builder-webpack4" "6.3.10" + "@storybook/client-api" "6.3.10" + "@storybook/client-logger" "6.3.10" + "@storybook/components" "6.3.10" + "@storybook/core" "6.3.10" + "@storybook/core-events" "6.3.10" "@storybook/csf" "0.0.1" - "@storybook/csf-tools" "6.3.9" - "@storybook/node-logger" "6.3.9" - "@storybook/postinstall" "6.3.9" - "@storybook/source-loader" "6.3.9" - "@storybook/theming" "6.3.9" + "@storybook/csf-tools" "6.3.10" + "@storybook/node-logger" "6.3.10" + "@storybook/postinstall" "6.3.10" + "@storybook/source-loader" "6.3.10" + "@storybook/theming" "6.3.10" acorn "^7.4.1" acorn-jsx "^5.3.1" acorn-walk "^7.2.0" @@ -3055,15 +3060,15 @@ react-select "^3.2.0" "@storybook/addon-links@^6.3.8": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-6.3.9.tgz#a7342d80c26f81bc8d5fdab4906521786bc99343" - integrity sha512-n5Ox9x70gUSHZebbCYRUMMAXddmf1WW5raDP424dtdUzfKDnES+/v/dgyp3pnJshWO/muTEB1ytP4QV0J1+jVA== + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-6.3.12.tgz#72a38069913b4e9a19d6f4159bb4846ad560c400" + integrity sha512-NfOGEm0+QxIrAXCa05LOXmxLtI+RlcDqHXZ1jNNj8mjeRoG1nX3qhkB8PWWIBbPuz+bktLV9ox8UZj0W6+ZPOQ== dependencies: - "@storybook/addons" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/core-events" "6.3.9" + "@storybook/addons" "6.3.12" + "@storybook/client-logger" "6.3.12" + "@storybook/core-events" "6.3.12" "@storybook/csf" "0.0.1" - "@storybook/router" "6.3.9" + "@storybook/router" "6.3.12" "@types/qs" "^6.9.5" core-js "^3.8.2" global "^4.4.0" @@ -3073,50 +3078,91 @@ ts-dedent "^2.0.0" "@storybook/addon-viewport@^6.3.8": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-6.3.9.tgz#3f2bdebb241a3e4e141c06d0e57ad8707e1fe524" - integrity sha512-zQe6i4LU1elSB/+ey7UfSTU64HEjQL8Lx+eYZx0xe80An+lMEhcDF4EGSTCDXFUwIX2LqEf3lc/vAfhA881Mrw== - dependencies: - "@storybook/addons" "6.3.9" - "@storybook/api" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/components" "6.3.9" - "@storybook/core-events" "6.3.9" - "@storybook/theming" "6.3.9" + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-6.3.12.tgz#2fd61e60644fb07185a662f75b3e9dad8ad14f01" + integrity sha512-TRjyfm85xouOPmXxeLdEIzXLfJZZ1ePQ7p/5yphDGBHdxMU4m4qiZr8wYpUaxHsRu/UB3dKfaOyGT+ivogbnbw== + dependencies: + "@storybook/addons" "6.3.12" + "@storybook/api" "6.3.12" + "@storybook/client-logger" "6.3.12" + "@storybook/components" "6.3.12" + "@storybook/core-events" "6.3.12" + "@storybook/theming" "6.3.12" core-js "^3.8.2" global "^4.4.0" memoizerific "^1.11.3" prop-types "^15.7.2" regenerator-runtime "^0.13.7" -"@storybook/addons@6.3.9", "@storybook/addons@^6.3.8": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.3.9.tgz#e12c8d4351b861d67cb6b8d64ed33b1f6b90994f" - integrity sha512-5tRkeHgdb/I/rp3GBkxonDLVsA45Vpgh/vFrsecrS/98wkSYfPEhqrDGLOosJHFrN3J2pznAuNFaA05158uBsw== - dependencies: - "@storybook/api" "6.3.9" - "@storybook/channels" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/core-events" "6.3.9" - "@storybook/router" "6.3.9" - "@storybook/theming" "6.3.9" +"@storybook/addons@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.3.10.tgz#a9fab13e6b81279f1dcdc54220dc4becac4b7a21" + integrity sha512-nrqyHPFGft6FhLXAB4xfebh3Xe/16574FSV3I96hyhcNwlxRs/ANLQriiDVElz3KfDqyFUIYMoskUBHZNRwWFA== + dependencies: + "@storybook/api" "6.3.10" + "@storybook/channels" "6.3.10" + "@storybook/client-logger" "6.3.10" + "@storybook/core-events" "6.3.10" + "@storybook/router" "6.3.10" + "@storybook/theming" "6.3.10" + core-js "^3.8.2" + global "^4.4.0" + regenerator-runtime "^0.13.7" + +"@storybook/addons@6.3.12", "@storybook/addons@^6.3.8": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.3.12.tgz#8773dcc113c5086dfff722388b7b65580e43b65b" + integrity sha512-UgoMyr7Qr0FS3ezt8u6hMEcHgyynQS9ucr5mAwZky3wpXRPFyUTmMto9r4BBUdqyUvTUj/LRKIcmLBfj+/l0Fg== + dependencies: + "@storybook/api" "6.3.12" + "@storybook/channels" "6.3.12" + "@storybook/client-logger" "6.3.12" + "@storybook/core-events" "6.3.12" + "@storybook/router" "6.3.12" + "@storybook/theming" "6.3.12" + core-js "^3.8.2" + global "^4.4.0" + regenerator-runtime "^0.13.7" + +"@storybook/api@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/api/-/api-6.3.10.tgz#d6cd7d32841c9b6a9c2104016649b510190622ac" + integrity sha512-7fB6q718UWvgFI+ZqEU0QpXr5cHHli85bTq/w7kSz1VUWjV7vVqtxE3RTbIjMbKHkIVNkVUbZDeDi+r2soK9Tw== + dependencies: + "@reach/router" "^1.3.4" + "@storybook/channels" "6.3.10" + "@storybook/client-logger" "6.3.10" + "@storybook/core-events" "6.3.10" + "@storybook/csf" "0.0.1" + "@storybook/router" "6.3.10" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.3.10" + "@types/reach__router" "^1.3.7" core-js "^3.8.2" + fast-deep-equal "^3.1.3" global "^4.4.0" + lodash "^4.17.20" + memoizerific "^1.11.3" + qs "^6.10.0" regenerator-runtime "^0.13.7" + store2 "^2.12.0" + telejson "^5.3.2" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" -"@storybook/api@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/api/-/api-6.3.9.tgz#f36c8f01cac602c67b8f22b144e8bd6478039abb" - integrity sha512-lwen3jcY4YbnD8spAZrmXcToed/pwad9QpxkG0GNf6ctcOumN6HIK93fKeJ0vvPYc3v/uq1qKeLyTZ3NrgHQRg== +"@storybook/api@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/api/-/api-6.3.12.tgz#2845c20464d5348d676d09665e8ab527825ed7b5" + integrity sha512-LScRXUeCWEW/OP+jiooNMQICVdusv7azTmULxtm72fhkXFRiQs2CdRNTiqNg46JLLC9z95f1W+pGK66X6HiiQA== dependencies: "@reach/router" "^1.3.4" - "@storybook/channels" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/core-events" "6.3.9" + "@storybook/channels" "6.3.12" + "@storybook/client-logger" "6.3.12" + "@storybook/core-events" "6.3.12" "@storybook/csf" "0.0.1" - "@storybook/router" "6.3.9" + "@storybook/router" "6.3.12" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.3.9" + "@storybook/theming" "6.3.12" "@types/reach__router" "^1.3.7" core-js "^3.8.2" fast-deep-equal "^3.1.3" @@ -3130,10 +3176,86 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/builder-webpack4@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/builder-webpack4/-/builder-webpack4-6.3.9.tgz#9deef99cf67dce64645ed387f8158b069368ec79" - integrity sha512-/Ff0f3vmoCCB62jDvTSKO1BVaZIYNfbDxrHOT0o2NKFmuHwH96qZDwqPhntoAxDYcjJZ6r4+tVo2ktyE+QAGVg== +"@storybook/builder-webpack4@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/builder-webpack4/-/builder-webpack4-6.3.10.tgz#38e5f8888994684bb3d70c18a3ea3c4cb1f149af" + integrity sha512-QckIjdBRSrwNZFQGU8IWjFV39oikSVA13X4hXIdtI4po8aZOkq2ZgT29LJQzc+9g3pQDNjZvPiSbGcG+F2y1+g== + dependencies: + "@babel/core" "^7.12.10" + "@babel/plugin-proposal-class-properties" "^7.12.1" + "@babel/plugin-proposal-decorators" "^7.12.12" + "@babel/plugin-proposal-export-default-from" "^7.12.1" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.12.1" + "@babel/plugin-proposal-object-rest-spread" "^7.12.1" + "@babel/plugin-proposal-optional-chaining" "^7.12.7" + "@babel/plugin-proposal-private-methods" "^7.12.1" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-transform-arrow-functions" "^7.12.1" + "@babel/plugin-transform-block-scoping" "^7.12.12" + "@babel/plugin-transform-classes" "^7.12.1" + "@babel/plugin-transform-destructuring" "^7.12.1" + "@babel/plugin-transform-for-of" "^7.12.1" + "@babel/plugin-transform-parameters" "^7.12.1" + "@babel/plugin-transform-shorthand-properties" "^7.12.1" + "@babel/plugin-transform-spread" "^7.12.1" + "@babel/plugin-transform-template-literals" "^7.12.1" + "@babel/preset-env" "^7.12.11" + "@babel/preset-react" "^7.12.10" + "@babel/preset-typescript" "^7.12.7" + "@storybook/addons" "6.3.10" + "@storybook/api" "6.3.10" + "@storybook/channel-postmessage" "6.3.10" + "@storybook/channels" "6.3.10" + "@storybook/client-api" "6.3.10" + "@storybook/client-logger" "6.3.10" + "@storybook/components" "6.3.10" + "@storybook/core-common" "6.3.10" + "@storybook/core-events" "6.3.10" + "@storybook/node-logger" "6.3.10" + "@storybook/router" "6.3.10" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.3.10" + "@storybook/ui" "6.3.10" + "@types/node" "^14.0.10" + "@types/webpack" "^4.41.26" + autoprefixer "^9.8.6" + babel-loader "^8.2.2" + babel-plugin-macros "^2.8.0" + babel-plugin-polyfill-corejs3 "^0.1.0" + case-sensitive-paths-webpack-plugin "^2.3.0" + core-js "^3.8.2" + css-loader "^3.6.0" + dotenv-webpack "^1.8.0" + file-loader "^6.2.0" + find-up "^5.0.0" + fork-ts-checker-webpack-plugin "^4.1.6" + fs-extra "^9.0.1" + glob "^7.1.6" + glob-promise "^3.4.0" + global "^4.4.0" + html-webpack-plugin "^4.0.0" + pnp-webpack-plugin "1.6.4" + postcss "^7.0.36" + postcss-flexbugs-fixes "^4.2.1" + postcss-loader "^4.2.0" + raw-loader "^4.0.2" + react-dev-utils "^11.0.3" + stable "^0.1.8" + style-loader "^1.3.0" + terser-webpack-plugin "^4.2.3" + ts-dedent "^2.0.0" + url-loader "^4.1.1" + util-deprecate "^1.0.2" + webpack "4" + webpack-dev-middleware "^3.7.3" + webpack-filter-warnings-plugin "^1.2.1" + webpack-hot-middleware "^2.25.0" + webpack-virtual-modules "^0.2.2" + +"@storybook/builder-webpack4@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/builder-webpack4/-/builder-webpack4-6.3.12.tgz#288d541e2801892721c975259476022da695dbfe" + integrity sha512-Dlm5Fc1svqpFDnVPZdAaEBiM/IDZHMV3RfEGbUTY/ZC0q8b/Ug1czzp/w0aTIjOFRuBDcG6IcplikaqHL8CJLg== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-proposal-class-properties" "^7.12.1" @@ -3156,20 +3278,20 @@ "@babel/preset-env" "^7.12.11" "@babel/preset-react" "^7.12.10" "@babel/preset-typescript" "^7.12.7" - "@storybook/addons" "6.3.9" - "@storybook/api" "6.3.9" - "@storybook/channel-postmessage" "6.3.9" - "@storybook/channels" "6.3.9" - "@storybook/client-api" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/components" "6.3.9" - "@storybook/core-common" "6.3.9" - "@storybook/core-events" "6.3.9" - "@storybook/node-logger" "6.3.9" - "@storybook/router" "6.3.9" + "@storybook/addons" "6.3.12" + "@storybook/api" "6.3.12" + "@storybook/channel-postmessage" "6.3.12" + "@storybook/channels" "6.3.12" + "@storybook/client-api" "6.3.12" + "@storybook/client-logger" "6.3.12" + "@storybook/components" "6.3.12" + "@storybook/core-common" "6.3.12" + "@storybook/core-events" "6.3.12" + "@storybook/node-logger" "6.3.12" + "@storybook/router" "6.3.12" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.3.9" - "@storybook/ui" "6.3.9" + "@storybook/theming" "6.3.12" + "@storybook/ui" "6.3.12" "@types/node" "^14.0.10" "@types/webpack" "^4.41.26" autoprefixer "^9.8.6" @@ -3206,38 +3328,84 @@ webpack-hot-middleware "^2.25.0" webpack-virtual-modules "^0.2.2" -"@storybook/channel-postmessage@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-6.3.9.tgz#166aecfa2cfe96740513442bc8c1d1b08d28798f" - integrity sha512-1kyBpKuHDaohX8btXmD3hdkosYWJFcVy8VhOe8hVhBHScXwxSb+5Fycy38IlAQE/PSrcw5cII9x6vMvtzK/ojA== +"@storybook/channel-postmessage@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-6.3.10.tgz#7a64e06b43c68f9ba83cf9c350dc9be6c28f5695" + integrity sha512-LWzT0kvluQxMBOrVb6vPoZWx6GlFhmgoFRLJPsFhFmXS1FqmWolRvqKr2aIVHj+bpqS7ocngMKY8Zg+FuKwctQ== dependencies: - "@storybook/channels" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/core-events" "6.3.9" + "@storybook/channels" "6.3.10" + "@storybook/client-logger" "6.3.10" + "@storybook/core-events" "6.3.10" core-js "^3.8.2" global "^4.4.0" qs "^6.10.0" telejson "^5.3.2" -"@storybook/channels@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.3.9.tgz#40907734460fbcb08fe018c794890ffe668e873d" - integrity sha512-ZeHXLFJ43Wn6HJMiGgKUWUMtKcXDoWxL50Qr5Wwbsnmtp2BX7R8aak/Vw9TVT46J86QXkdI3CAKAEvb6esiLRQ== +"@storybook/channel-postmessage@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-6.3.12.tgz#3ff9412ac0f445e3b8b44dd414e783a5a47ff7c1" + integrity sha512-Ou/2Ga3JRTZ/4sSv7ikMgUgLTeZMsXXWLXuscz4oaYhmOqAU9CrJw0G1NitwBgK/+qC83lEFSLujHkWcoQDOKg== + dependencies: + "@storybook/channels" "6.3.12" + "@storybook/client-logger" "6.3.12" + "@storybook/core-events" "6.3.12" + core-js "^3.8.2" + global "^4.4.0" + qs "^6.10.0" + telejson "^5.3.2" + +"@storybook/channels@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.3.10.tgz#2b501e7e56bd1109a2c095a127fd78742a1f74da" + integrity sha512-olYxCiYjmhbCHtPe7HR1hdGYJZPuSowqVmhLbqrWMf4HFYqBkO3T7em1S+ztCvLPLKbIK6AM2JUom6ob1F8n4g== + dependencies: + core-js "^3.8.2" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + +"@storybook/channels@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.3.12.tgz#aa0d793895a8b211f0ad3459c61c1bcafd0093c7" + integrity sha512-l4sA+g1PdUV8YCbgs47fIKREdEQAKNdQIZw0b7BfTvY9t0x5yfBywgQhYON/lIeiNGz2OlIuD+VUtqYfCtNSyw== dependencies: core-js "^3.8.2" ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-api@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.3.9.tgz#421c25c2b3c4c8ae7e26044d00d84deb95659311" - integrity sha512-epHqkyQu8BSNecuK5yLGBooCC+SoX5HhED2i5TS5o85sO8lB4ujPMrgKqEH3oSKwiy6gHgafewdgs0nczoP2Lw== +"@storybook/client-api@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.3.10.tgz#b213c1608398c17180cda7def3bfaccdcae62af5" + integrity sha512-caqh/TJKQkKSjcBchx44+Fr5Mi9XjAmMvsIJHM2uZv6mV7KUzUqiZNIWj1gvIYeNBF9PXTWUIhEbu6xt65d0UA== + dependencies: + "@storybook/addons" "6.3.10" + "@storybook/channel-postmessage" "6.3.10" + "@storybook/channels" "6.3.10" + "@storybook/client-logger" "6.3.10" + "@storybook/core-events" "6.3.10" + "@storybook/csf" "0.0.1" + "@types/qs" "^6.9.5" + "@types/webpack-env" "^1.16.0" + core-js "^3.8.2" + global "^4.4.0" + lodash "^4.17.20" + memoizerific "^1.11.3" + qs "^6.10.0" + regenerator-runtime "^0.13.7" + stable "^0.1.8" + store2 "^2.12.0" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + +"@storybook/client-api@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.3.12.tgz#a0c6d72a871d1cb02b4b98675472839061e39b5b" + integrity sha512-xnW+lKKK2T774z+rOr9Wopt1aYTStfb86PSs9p3Fpnc2Btcftln+C3NtiHZl8Ccqft8Mz/chLGgewRui6tNI8g== dependencies: - "@storybook/addons" "6.3.9" - "@storybook/channel-postmessage" "6.3.9" - "@storybook/channels" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/core-events" "6.3.9" + "@storybook/addons" "6.3.12" + "@storybook/channel-postmessage" "6.3.12" + "@storybook/channels" "6.3.12" + "@storybook/client-logger" "6.3.12" + "@storybook/core-events" "6.3.12" "@storybook/csf" "0.0.1" "@types/qs" "^6.9.5" "@types/webpack-env" "^1.16.0" @@ -3252,23 +3420,61 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-logger@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.3.9.tgz#ef8c89e96f79927d46dd1dacddb58f3a43154b9a" - integrity sha512-oww+P062SaOQfsTphAQBL6xe5DCv78Po/f/ROk7iYGAbV8HcCCscpzyJSeLfus2CunFYS2ngPcllbvEnqWk7dQ== +"@storybook/client-logger@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.3.10.tgz#dd5156acb7623fa3e656229c36019000f043f4dc" + integrity sha512-fRwxPiwQBKHK83IJgA5VoFwbaEj9zHLdYGE1wxJXcBYP0hi5h5ZwnGkNumFDntw1xt+RUs5PsGQ16f+rzE3n+w== + dependencies: + core-js "^3.8.2" + global "^4.4.0" + +"@storybook/client-logger@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.3.12.tgz#6585c98923b49fcb25dbceeeb96ef2a83e28e0f4" + integrity sha512-zNDsamZvHnuqLznDdP9dUeGgQ9TyFh4ray3t1VGO7ZqWVZ2xtVCCXjDvMnOXI2ifMpX5UsrOvshIPeE9fMBmiQ== dependencies: core-js "^3.8.2" global "^4.4.0" -"@storybook/components@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.3.9.tgz#3f3c56f0311e757e78705e3b495489da071d6891" - integrity sha512-bArMbnzK9esdrgYHG/WAHC+NIMmEzgypvaTs0oEG4lK3q1LiBdrCrLRSCd31oR3RT5a8e06QXZ1rla3OhuZrfg== +"@storybook/components@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.3.10.tgz#27a2bc98280e9fba148a52a405fe2ed27f036099" + integrity sha512-s9iOq0jT+h51hid4Vckmy84XAMm8aoZwD/QHpzWs4aRqrT5lqsen3jnlvqEEdEVUbMIoLPPNfOxOZsm4M/7zpQ== + dependencies: + "@popperjs/core" "^2.6.0" + "@storybook/client-logger" "6.3.10" + "@storybook/csf" "0.0.1" + "@storybook/theming" "6.3.10" + "@types/color-convert" "^2.0.0" + "@types/overlayscrollbars" "^1.12.0" + "@types/react-syntax-highlighter" "11.0.5" + color-convert "^2.0.1" + core-js "^3.8.2" + fast-deep-equal "^3.1.3" + global "^4.4.0" + lodash "^4.17.20" + markdown-to-jsx "^7.1.3" + memoizerific "^1.11.3" + overlayscrollbars "^1.13.1" + polished "^4.0.5" + prop-types "^15.7.2" + react-colorful "^5.1.2" + react-popper-tooltip "^3.1.1" + react-syntax-highlighter "^13.5.3" + react-textarea-autosize "^8.3.0" + regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + +"@storybook/components@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.3.12.tgz#0c7967c60354c84afa20dfab4753105e49b1927d" + integrity sha512-kdQt8toUjynYAxDLrJzuG7YSNL6as1wJoyzNUaCfG06YPhvIAlKo7le9tS2mThVFN5e9nbKrW3N1V1sp6ypZXQ== dependencies: "@popperjs/core" "^2.6.0" - "@storybook/client-logger" "6.3.9" + "@storybook/client-logger" "6.3.12" "@storybook/csf" "0.0.1" - "@storybook/theming" "6.3.9" + "@storybook/theming" "6.3.12" "@types/color-convert" "^2.0.0" "@types/overlayscrollbars" "^1.12.0" "@types/react-syntax-highlighter" "11.0.5" @@ -3290,18 +3496,41 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/core-client@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-6.3.9.tgz#616f932ae0c3caf5e56464a88cac375230f0ed51" - integrity sha512-EKajuMFaFHJJW4WKfY9s1lMLG1mcg7hB634M/jw/bi1IwK6RI4T/RNp8ptlixTkjnlV5i1dA9DGRGx1P8ZxCHQ== +"@storybook/core-client@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-6.3.10.tgz#236cafad4c828d178efe122fe3bb15247fae69f0" + integrity sha512-UnVfFV7qvRI1o5P4lrMmp+DxEoogVYV0/QrlGJFrKotkG815e58OdVM00bQByMdbsId3Ao2TZM78uj1k2F5J7Q== + dependencies: + "@storybook/addons" "6.3.10" + "@storybook/channel-postmessage" "6.3.10" + "@storybook/client-api" "6.3.10" + "@storybook/client-logger" "6.3.10" + "@storybook/core-events" "6.3.10" + "@storybook/csf" "0.0.1" + "@storybook/ui" "6.3.10" + airbnb-js-shims "^2.2.1" + ansi-to-html "^0.6.11" + core-js "^3.8.2" + global "^4.4.0" + lodash "^4.17.20" + qs "^6.10.0" + regenerator-runtime "^0.13.7" + ts-dedent "^2.0.0" + unfetch "^4.2.0" + util-deprecate "^1.0.2" + +"@storybook/core-client@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-6.3.12.tgz#fd01bfbc69c331f4451973a4e7597624dc3737e5" + integrity sha512-8Smd9BgZHJpAdevLKQYinwtjSyCZAuBMoetP4P5hnn53mWl0NFbrHFaAdT+yNchDLZQUbf7Y18VmIqEH+RCR5w== dependencies: - "@storybook/addons" "6.3.9" - "@storybook/channel-postmessage" "6.3.9" - "@storybook/client-api" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/core-events" "6.3.9" + "@storybook/addons" "6.3.12" + "@storybook/channel-postmessage" "6.3.12" + "@storybook/client-api" "6.3.12" + "@storybook/client-logger" "6.3.12" + "@storybook/core-events" "6.3.12" "@storybook/csf" "0.0.1" - "@storybook/ui" "6.3.9" + "@storybook/ui" "6.3.12" airbnb-js-shims "^2.2.1" ansi-to-html "^0.6.11" core-js "^3.8.2" @@ -3313,10 +3542,10 @@ unfetch "^4.2.0" util-deprecate "^1.0.2" -"@storybook/core-common@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-6.3.9.tgz#60f2a1c66eaf958f996ed919a5a9f134b19cda76" - integrity sha512-1dStGSXKuABour3jXrfAvMVLb31rNgOQVMowxaROaPPkP0qyZexpUA2OmOAci+MTmincYgcMPWqi/9Cf1D80qQ== +"@storybook/core-common@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-6.3.10.tgz#2bd958ad1d940749da1de9265f63d7cb198fce71" + integrity sha512-E6jlsSPJoISF8B/AwqDZpPNOviSeJTb+ODhnWqz/R4b6hSmuGSPp7LDdOMdQAjTURAxhhjLWQen4smDwuVNzHw== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-proposal-class-properties" "^7.12.1" @@ -3339,7 +3568,7 @@ "@babel/preset-react" "^7.12.10" "@babel/preset-typescript" "^7.12.7" "@babel/register" "^7.12.1" - "@storybook/node-logger" "6.3.9" + "@storybook/node-logger" "6.3.10" "@storybook/semver" "^7.3.2" "@types/glob-base" "^0.3.0" "@types/micromatch" "^4.0.1" @@ -3367,25 +3596,126 @@ util-deprecate "^1.0.2" webpack "4" -"@storybook/core-events@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.3.9.tgz#17127905a2d7773b6e02f15bfbddb1fd1b0bce75" - integrity sha512-6ELOkroH0Oz7+OR1SqGMKAC1+ufituqSxDp08AyvrHPSYqK/db+P2kSCJBdqyUXTvt8lPvqlCOidkRhGrNB/+A== +"@storybook/core-common@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-6.3.12.tgz#95ce953d7efda44394b159322d6a2280c202f21c" + integrity sha512-xlHs2QXELq/moB4MuXjYOczaxU64BIseHsnFBLyboJYN6Yso3qihW5RB7cuJlGohkjb4JwY74dvfT4Ww66rkBA== dependencies: + "@babel/core" "^7.12.10" + "@babel/plugin-proposal-class-properties" "^7.12.1" + "@babel/plugin-proposal-decorators" "^7.12.12" + "@babel/plugin-proposal-export-default-from" "^7.12.1" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.12.1" + "@babel/plugin-proposal-object-rest-spread" "^7.12.1" + "@babel/plugin-proposal-optional-chaining" "^7.12.7" + "@babel/plugin-proposal-private-methods" "^7.12.1" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-transform-arrow-functions" "^7.12.1" + "@babel/plugin-transform-block-scoping" "^7.12.12" + "@babel/plugin-transform-classes" "^7.12.1" + "@babel/plugin-transform-destructuring" "^7.12.1" + "@babel/plugin-transform-for-of" "^7.12.1" + "@babel/plugin-transform-parameters" "^7.12.1" + "@babel/plugin-transform-shorthand-properties" "^7.12.1" + "@babel/plugin-transform-spread" "^7.12.1" + "@babel/preset-env" "^7.12.11" + "@babel/preset-react" "^7.12.10" + "@babel/preset-typescript" "^7.12.7" + "@babel/register" "^7.12.1" + "@storybook/node-logger" "6.3.12" + "@storybook/semver" "^7.3.2" + "@types/glob-base" "^0.3.0" + "@types/micromatch" "^4.0.1" + "@types/node" "^14.0.10" + "@types/pretty-hrtime" "^1.0.0" + babel-loader "^8.2.2" + babel-plugin-macros "^3.0.1" + babel-plugin-polyfill-corejs3 "^0.1.0" + chalk "^4.1.0" + core-js "^3.8.2" + express "^4.17.1" + file-system-cache "^1.0.5" + find-up "^5.0.0" + fork-ts-checker-webpack-plugin "^6.0.4" + glob "^7.1.6" + glob-base "^0.3.0" + interpret "^2.2.0" + json5 "^2.1.3" + lazy-universal-dotenv "^3.0.1" + micromatch "^4.0.2" + pkg-dir "^5.0.0" + pretty-hrtime "^1.0.3" + resolve-from "^5.0.0" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + webpack "4" + +"@storybook/core-events@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.3.10.tgz#82b41291b8baf1fae8848c603f0b825b3c42e3b5" + integrity sha512-bw3HuqKIMDnEebVf2DG+TdX21D7z7LGFvr5rehNDnUTdnM9+pVLlZZfGkUU6LMRbIzr27CI5dXWdPRTA5kQIZg== + dependencies: + core-js "^3.8.2" + +"@storybook/core-events@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.3.12.tgz#73f6271d485ef2576234e578bb07705b92805290" + integrity sha512-SXfD7xUUMazaeFkB92qOTUV8Y/RghE4SkEYe5slAdjeocSaH7Nz2WV0rqNEgChg0AQc+JUI66no8L9g0+lw4Gw== + dependencies: + core-js "^3.8.2" + +"@storybook/core-server@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-6.3.10.tgz#a5cdfa0adddd1dfaa473d94affc60fdb0a32ac07" + integrity sha512-bo3suxIy0HrbAaqbUH70F2E3VzWs235K6t0lr09Skn9AwoMnfdvywXQ+9F7d0plGxV0QzZLcU3n+0sw3rBd7sQ== + dependencies: + "@discoveryjs/json-ext" "^0.5.3" + "@storybook/builder-webpack4" "6.3.10" + "@storybook/core-client" "6.3.10" + "@storybook/core-common" "6.3.10" + "@storybook/csf-tools" "6.3.10" + "@storybook/manager-webpack4" "6.3.10" + "@storybook/node-logger" "6.3.10" + "@storybook/semver" "^7.3.2" + "@types/node" "^14.0.10" + "@types/node-fetch" "^2.5.7" + "@types/pretty-hrtime" "^1.0.0" + "@types/webpack" "^4.41.26" + better-opn "^2.1.1" + boxen "^4.2.0" + chalk "^4.1.0" + cli-table3 "0.6.0" + commander "^6.2.1" + compression "^1.7.4" core-js "^3.8.2" + cpy "^8.1.1" + detect-port "^1.3.0" + express "^4.17.1" + file-system-cache "^1.0.5" + fs-extra "^9.0.1" + globby "^11.0.2" + ip "^1.1.5" + node-fetch "^2.6.1" + pretty-hrtime "^1.0.3" + prompts "^2.4.0" + regenerator-runtime "^0.13.7" + serve-favicon "^2.5.0" + ts-dedent "^2.0.0" + util-deprecate "^1.0.2" + webpack "4" -"@storybook/core-server@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-6.3.9.tgz#780b940c65d29c77b40b84eaedbde01e44f6d6df" - integrity sha512-iUMtB0RqdX3YW7FMlg8lScUNrkfcbtLurH3hC+2CkJEailTRUQ8AjlwLc0gjIh0QgbsxUexo1iQW1NFuHBxpDw== +"@storybook/core-server@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-6.3.12.tgz#d906f823b263d78a4b087be98810b74191d263cd" + integrity sha512-T/Mdyi1FVkUycdyOnhXvoo3d9nYXLQFkmaJkltxBFLzAePAJUSgAsPL9odNC3+p8Nr2/UDsDzvu/Ow0IF0mzLQ== dependencies: "@discoveryjs/json-ext" "^0.5.3" - "@storybook/builder-webpack4" "6.3.9" - "@storybook/core-client" "6.3.9" - "@storybook/core-common" "6.3.9" - "@storybook/csf-tools" "6.3.9" - "@storybook/manager-webpack4" "6.3.9" - "@storybook/node-logger" "6.3.9" + "@storybook/builder-webpack4" "6.3.12" + "@storybook/core-client" "6.3.12" + "@storybook/core-common" "6.3.12" + "@storybook/csf-tools" "6.3.12" + "@storybook/manager-webpack4" "6.3.12" + "@storybook/node-logger" "6.3.12" "@storybook/semver" "^7.3.2" "@types/node" "^14.0.10" "@types/node-fetch" "^2.5.7" @@ -3414,18 +3744,46 @@ util-deprecate "^1.0.2" webpack "4" -"@storybook/core@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/core/-/core-6.3.9.tgz#9f952218a11b69258ab7f4fc1d3e470f4e851a2b" - integrity sha512-A4Vp0tmFBMUBn3U9QKGFDZr0166YjD3oaR7uvR/PWrDPXwnxNXtXQvWeZrFAW4edcNZB8WllatkBg6cWGVKbQg== +"@storybook/core@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/core/-/core-6.3.10.tgz#328be1c31b1d0cdbff6dc9ccd36ef141d1306d66" + integrity sha512-u3Cw09G0CpzrVfd0tiqqCLdEpjYlG6gF9R9bOhSFdgGQbgArh6kKrprQDSjUoLVtUx8Ms7p9sHwith1f1ekXnA== + dependencies: + "@storybook/core-client" "6.3.10" + "@storybook/core-server" "6.3.10" + +"@storybook/core@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/core/-/core-6.3.12.tgz#eb945f7ed5c9039493318bcd2bb5a3a897b91cfd" + integrity sha512-FJm2ns8wk85hXWKslLWiUWRWwS9KWRq7jlkN6M9p57ghFseSGr4W71Orcoab4P3M7jI97l5yqBfppbscinE74g== dependencies: - "@storybook/core-client" "6.3.9" - "@storybook/core-server" "6.3.9" + "@storybook/core-client" "6.3.12" + "@storybook/core-server" "6.3.12" -"@storybook/csf-tools@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-6.3.9.tgz#3f47725bf4108fd08a2350c39cf4eb5755d96c12" - integrity sha512-rgAcq/3x8HEIRJdEqw21YT6zDdvEoCUZOMS2XYISJstFZp3weK+PbQr5tsMefAoVjpsNCi9ypYSXMT6dxnNbPw== +"@storybook/csf-tools@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-6.3.10.tgz#f455106e872d62f81b1e1ba8b63cd109ab3b5695" + integrity sha512-SRf47ZP91yyD62JZjKhUpAABI44d6J2h+WxdRkH/S+3K5U5olllXjKMA6+bzIdy7x0v/w/sI+oi3zU6wycaPMA== + dependencies: + "@babel/generator" "^7.12.11" + "@babel/parser" "^7.12.11" + "@babel/plugin-transform-react-jsx" "^7.12.12" + "@babel/preset-env" "^7.12.11" + "@babel/traverse" "^7.12.11" + "@babel/types" "^7.12.11" + "@mdx-js/mdx" "^1.6.22" + "@storybook/csf" "^0.0.1" + core-js "^3.8.2" + fs-extra "^9.0.1" + js-string-escape "^1.0.1" + lodash "^4.17.20" + prettier "~2.2.1" + regenerator-runtime "^0.13.7" + +"@storybook/csf-tools@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-6.3.12.tgz#d979c6a79d1e9d6c8b5a5e8834d07fcf5b793844" + integrity sha512-wNrX+99ajAXxLo0iRwrqw65MLvCV6SFC0XoPLYrtBvyKr+hXOOnzIhO2f5BNEii8velpC2gl2gcLKeacpVYLqA== dependencies: "@babel/generator" "^7.12.11" "@babel/parser" "^7.12.11" @@ -3449,20 +3807,20 @@ dependencies: lodash "^4.17.15" -"@storybook/manager-webpack4@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/manager-webpack4/-/manager-webpack4-6.3.9.tgz#c9b0225de9f6d4e6034055f28bb44394b4a97b32" - integrity sha512-I5ckE4p1m8c1GcRi8BjXxqvdfo4gxX2Lhf7fH8udiSRO/MTyLeYHqmVmdKXcBpQRxHpmJ14oBoBBP5usWXgCVw== +"@storybook/manager-webpack4@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/manager-webpack4/-/manager-webpack4-6.3.10.tgz#98b59678b6fee110d64b99aaf504bdbf9844db04" + integrity sha512-TDHbqhAxizS1aXn0QBYi7F4coY4WjmVQYQU0vOkR/zUlMbF9pwAyvFgJOnKjqVkqOTi/zim6BX9GlYjC2PW9Qg== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-transform-template-literals" "^7.12.1" "@babel/preset-react" "^7.12.10" - "@storybook/addons" "6.3.9" - "@storybook/core-client" "6.3.9" - "@storybook/core-common" "6.3.9" - "@storybook/node-logger" "6.3.9" - "@storybook/theming" "6.3.9" - "@storybook/ui" "6.3.9" + "@storybook/addons" "6.3.10" + "@storybook/core-client" "6.3.10" + "@storybook/core-common" "6.3.10" + "@storybook/node-logger" "6.3.10" + "@storybook/theming" "6.3.10" + "@storybook/ui" "6.3.10" "@types/node" "^14.0.10" "@types/webpack" "^4.41.26" babel-loader "^8.2.2" @@ -3492,10 +3850,64 @@ webpack-dev-middleware "^3.7.3" webpack-virtual-modules "^0.2.2" -"@storybook/node-logger@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.3.9.tgz#01ba480ad9199838b76017b7454985798323a808" - integrity sha512-tAo7sLNDGkL20NNGjwFgsywrl5rf/ImJaD6DnhSJDncaMcDy5xOA5Fn1IbkQuWUoKexE+nCkTiiynoP4Nzcp4w== +"@storybook/manager-webpack4@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/manager-webpack4/-/manager-webpack4-6.3.12.tgz#1c10a60b0acec3f9136dd8b7f22a25469d8b91e5" + integrity sha512-OkPYNrHXg2yZfKmEfTokP6iKx4OLTr0gdI5yehi/bLEuQCSHeruxBc70Dxm1GBk1Mrf821wD9WqMXNDjY5Qtug== + dependencies: + "@babel/core" "^7.12.10" + "@babel/plugin-transform-template-literals" "^7.12.1" + "@babel/preset-react" "^7.12.10" + "@storybook/addons" "6.3.12" + "@storybook/core-client" "6.3.12" + "@storybook/core-common" "6.3.12" + "@storybook/node-logger" "6.3.12" + "@storybook/theming" "6.3.12" + "@storybook/ui" "6.3.12" + "@types/node" "^14.0.10" + "@types/webpack" "^4.41.26" + babel-loader "^8.2.2" + case-sensitive-paths-webpack-plugin "^2.3.0" + chalk "^4.1.0" + core-js "^3.8.2" + css-loader "^3.6.0" + dotenv-webpack "^1.8.0" + express "^4.17.1" + file-loader "^6.2.0" + file-system-cache "^1.0.5" + find-up "^5.0.0" + fs-extra "^9.0.1" + html-webpack-plugin "^4.0.0" + node-fetch "^2.6.1" + pnp-webpack-plugin "1.6.4" + read-pkg-up "^7.0.1" + regenerator-runtime "^0.13.7" + resolve-from "^5.0.0" + style-loader "^1.3.0" + telejson "^5.3.2" + terser-webpack-plugin "^4.2.3" + ts-dedent "^2.0.0" + url-loader "^4.1.1" + util-deprecate "^1.0.2" + webpack "4" + webpack-dev-middleware "^3.7.3" + webpack-virtual-modules "^0.2.2" + +"@storybook/node-logger@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.3.10.tgz#468327f380603c3cfab6734d336fb193871bd2a4" + integrity sha512-SqRoCCZxdyK/IJd5IWtNPWtK3g5xzoiFmX43ibPvL8qCl896m5U/+nhQ2vhaU+qd9BmH0LIZjU9QeUB3fsZAqg== + dependencies: + "@types/npmlog" "^4.1.2" + chalk "^4.1.0" + core-js "^3.8.2" + npmlog "^4.1.2" + pretty-hrtime "^1.0.3" + +"@storybook/node-logger@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.3.12.tgz#a67cfbe266d2692f317914ef583721627498df19" + integrity sha512-iktOem/Ls2+dsZY9PhPeC6T1QhX/y7OInP88neLsqEPEbB2UXca3Ydv7OZBhBVbvN25W45b05MRzbtNUxYLNRw== dependencies: "@types/npmlog" "^4.1.2" chalk "^4.1.0" @@ -3503,10 +3915,10 @@ npmlog "^4.1.2" pretty-hrtime "^1.0.3" -"@storybook/postinstall@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-6.3.9.tgz#ca44341bb0bd5f9162b683176fa38d97b1d4e492" - integrity sha512-XamQmpR56n2foah0Y3AcT2jn9t8rUdt7u1VfY92dM9zmGBUgL+2u4nsBcYWzWoFllAShengUUqrs1Ci7+rKpjw== +"@storybook/postinstall@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-6.3.10.tgz#56c20cbf3ff895a17f1b72ed1c704d7bbba5a05c" + integrity sha512-uFaZTKh4d9FzYWxyc9K7AoFUrU8pA+tsDzXva4sAiB8MbGuq8knMtYkxhNrpV6MZuMXcmeN3PozixUM+tXj3YQ== dependencies: core-js "^3.8.2" @@ -3524,17 +3936,17 @@ tslib "^2.0.0" "@storybook/react@^6.3.8": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/react/-/react-6.3.9.tgz#3d93a3606a6a9ae1ece8d0d56f382a9c15df5254" - integrity sha512-LYlAURnKvFsf3CZG2CDvQwvlF/vy5VsKuNiNmyTk6zggmkbitXrwkuT7KoElYrz4REkyhd/HA6Uw6lfkPsyuHA== + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/react/-/react-6.3.12.tgz#2e172cbfc06f656d2890743dcf49741a10fa1629" + integrity sha512-c1Y/3/eNzye+ZRwQ3BXJux6pUMVt3lhv1/M9Qagl9JItP3jDSj5Ed3JHCgwEqpprP8mvNNXwEJ8+M7vEQyDuHg== dependencies: "@babel/preset-flow" "^7.12.1" "@babel/preset-react" "^7.12.10" "@pmmmwh/react-refresh-webpack-plugin" "^0.4.3" - "@storybook/addons" "6.3.9" - "@storybook/core" "6.3.9" - "@storybook/core-common" "6.3.9" - "@storybook/node-logger" "6.3.9" + "@storybook/addons" "6.3.12" + "@storybook/core" "6.3.12" + "@storybook/core-common" "6.3.12" + "@storybook/node-logger" "6.3.12" "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.253f8c1.0" "@storybook/semver" "^7.3.2" "@types/webpack-env" "^1.16.0" @@ -3552,13 +3964,29 @@ ts-dedent "^2.0.0" webpack "4" -"@storybook/router@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/router/-/router-6.3.9.tgz#a299091426349b9dc0bb8610773918712b453dc4" - integrity sha512-uXNrZS9tsZr6fStIv/MHQfy3xSsc7RLYWbY4wkgZH+y5K97RtuwXgtbx7uyEpsQwse1Z4PikKu/ejN46F0oPGQ== +"@storybook/router@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-6.3.10.tgz#b8efab6310d49cff0db6b8701be34c27536a1daf" + integrity sha512-cRyoNrBeBTOfiLYJumm0559cVJeO7z/ZDVcgLxi16uUjhu4nkio0chTwtdtrtTygKxJq8ibWq6LAjZAHDoeq8g== dependencies: "@reach/router" "^1.3.4" - "@storybook/client-logger" "6.3.9" + "@storybook/client-logger" "6.3.10" + "@types/reach__router" "^1.3.7" + core-js "^3.8.2" + fast-deep-equal "^3.1.3" + global "^4.4.0" + lodash "^4.17.20" + memoizerific "^1.11.3" + qs "^6.10.0" + ts-dedent "^2.0.0" + +"@storybook/router@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-6.3.12.tgz#0d572ec795f588ca886f39cb9b27b94ff3683f84" + integrity sha512-G/pNGCnrJRetCwyEZulHPT+YOcqEj/vkPVDTUfii2qgqukup6K0cjwgd7IukAURnAnnzTi1gmgFuEKUi8GE/KA== + dependencies: + "@reach/router" "^1.3.4" + "@storybook/client-logger" "6.3.12" "@types/reach__router" "^1.3.7" core-js "^3.8.2" fast-deep-equal "^3.1.3" @@ -3576,13 +4004,13 @@ core-js "^3.6.5" find-up "^4.1.0" -"@storybook/source-loader@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/source-loader/-/source-loader-6.3.9.tgz#439879baf86a1cf5d46d9e7aec1edcf64b0e1f5d" - integrity sha512-H0W4DK3EyXLLdzx5ThoXkC9mPKBAJUb8qoDL3jcTA1sQUDSOsxdosQIrJ97Ljcu21eQJs6egnxh3yPa1CWXTGA== +"@storybook/source-loader@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/source-loader/-/source-loader-6.3.10.tgz#bb8a8356a8ebaea40358837d19d4269a673a26b1" + integrity sha512-I8wm8vkLB2S29iAHezkMZzzb1nvc1zZqVaWBlAqK5T2AuQojMIiKapU4Mohj9XORbcFfz7Kn7ULYgrx4cl5lZw== dependencies: - "@storybook/addons" "6.3.9" - "@storybook/client-logger" "6.3.9" + "@storybook/addons" "6.3.10" + "@storybook/client-logger" "6.3.10" "@storybook/csf" "0.0.1" core-js "^3.8.2" estraverse "^5.2.0" @@ -3592,15 +4020,33 @@ prettier "~2.2.1" regenerator-runtime "^0.13.7" -"@storybook/theming@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.3.9.tgz#8e4500dacd298a2ca6bf47b5729449688338283c" - integrity sha512-vyMSLvEXrTC4rnUdWLUNmBNeOdBCl0Nt3R6y/laY+LQZ9Ljz/poRTrIYTkmenYieq4N7787s9zHmxvym/ZvKtw== +"@storybook/theming@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.3.10.tgz#9a46bff3517fd6bfcc816376b426476811712f2e" + integrity sha512-yX7qKrnFaa1otjrf21dP9HpMLJLw+iV7gcNo/RVkPSixWzglCIGgQ8T6vVjfjIgBUl6KbiE2qwqaFjLLe4fIYQ== + dependencies: + "@emotion/core" "^10.1.1" + "@emotion/is-prop-valid" "^0.8.6" + "@emotion/styled" "^10.0.27" + "@storybook/client-logger" "6.3.10" + core-js "^3.8.2" + deep-object-diff "^1.1.0" + emotion-theming "^10.0.27" + global "^4.4.0" + memoizerific "^1.11.3" + polished "^4.0.5" + resolve-from "^5.0.0" + ts-dedent "^2.0.0" + +"@storybook/theming@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.3.12.tgz#5bddf9bd90a60709b5ab238ecdb7d9055dd7862e" + integrity sha512-wOJdTEa/VFyFB2UyoqyYGaZdym6EN7RALuQOAMT6zHA282FBmKw8nL5DETHEbctpnHdcrMC/391teK4nNSrdOA== dependencies: "@emotion/core" "^10.1.1" "@emotion/is-prop-valid" "^0.8.6" "@emotion/styled" "^10.0.27" - "@storybook/client-logger" "6.3.9" + "@storybook/client-logger" "6.3.12" core-js "^3.8.2" deep-object-diff "^1.1.0" emotion-theming "^10.0.27" @@ -3610,21 +4056,56 @@ resolve-from "^5.0.0" ts-dedent "^2.0.0" -"@storybook/ui@6.3.9": - version "6.3.9" - resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-6.3.9.tgz#4a360471acc4fa5a16bc5be9fa8eb60940b41f16" - integrity sha512-QyRwofApyHOvjWPXirNYFleSVsjluYl7QmZgkv+vT09sV6q0YS1M2YQiDjoPwSIG0OHvxNoY90yNHjx8aXo4gA== +"@storybook/ui@6.3.10": + version "6.3.10" + resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-6.3.10.tgz#bb2bebac9ceb592fd44503ca2c65f0eb21bb7b93" + integrity sha512-TkaHgpTBp0nBr6A/v04k1V2rbRy7ajAoL9bFSU7hLNXDyQInUzT/p13+4JMR2TANSzPAycJNa3zRbO7n1MgV5w== dependencies: "@emotion/core" "^10.1.1" - "@storybook/addons" "6.3.9" - "@storybook/api" "6.3.9" - "@storybook/channels" "6.3.9" - "@storybook/client-logger" "6.3.9" - "@storybook/components" "6.3.9" - "@storybook/core-events" "6.3.9" - "@storybook/router" "6.3.9" + "@storybook/addons" "6.3.10" + "@storybook/api" "6.3.10" + "@storybook/channels" "6.3.10" + "@storybook/client-logger" "6.3.10" + "@storybook/components" "6.3.10" + "@storybook/core-events" "6.3.10" + "@storybook/router" "6.3.10" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.3.9" + "@storybook/theming" "6.3.10" + "@types/markdown-to-jsx" "^6.11.3" + copy-to-clipboard "^3.3.1" + core-js "^3.8.2" + core-js-pure "^3.8.2" + downshift "^6.0.15" + emotion-theming "^10.0.27" + fuse.js "^3.6.1" + global "^4.4.0" + lodash "^4.17.20" + markdown-to-jsx "^6.11.4" + memoizerific "^1.11.3" + polished "^4.0.5" + qs "^6.10.0" + react-draggable "^4.4.3" + react-helmet-async "^1.0.7" + react-sizeme "^3.0.1" + regenerator-runtime "^0.13.7" + resolve-from "^5.0.0" + store2 "^2.12.0" + +"@storybook/ui@6.3.12": + version "6.3.12" + resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-6.3.12.tgz#349e1a4c58c4fd18ea65b2ab56269a7c3a164ee7" + integrity sha512-PC2yEz4JMfarq7rUFbeA3hCA+31p5es7YPEtxLRvRwIZhtL0P4zQUfHpotb3KgWdoAIfZesAuoIQwMPQmEFYrw== + dependencies: + "@emotion/core" "^10.1.1" + "@storybook/addons" "6.3.12" + "@storybook/api" "6.3.12" + "@storybook/channels" "6.3.12" + "@storybook/client-logger" "6.3.12" + "@storybook/components" "6.3.12" + "@storybook/core-events" "6.3.12" + "@storybook/router" "6.3.12" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.3.12" "@types/markdown-to-jsx" "^6.11.3" copy-to-clipboard "^3.3.1" core-js "^3.8.2" @@ -3786,9 +4267,9 @@ "@testing-library/dom" "^8.0.0" "@testing-library/user-event@^13.1.9": - version "13.2.1" - resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-13.2.1.tgz#7a71a39e50b4a733afbe2916fa2b99966e941f98" - integrity sha512-cczlgVl+krjOb3j1625usarNEibI0IFRJrSWX9UsJ1HKYFgCQv9Nb7QAipUDXl3Xdz8NDTsiS78eAkPSxlzTlw== + version "13.4.1" + resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-13.4.1.tgz#8d9e73bcc7be09560b4c0ffbb6842ac43bc80ed2" + integrity sha512-WcnVwi96MmFsHLMNvBz03aPMVDU3UOgucXcn85fNXKKdtd7CHi2NAgE3hASt157yTB9krym0ikFVKbqYghKRCg== dependencies: "@babel/runtime" "^7.12.5" @@ -4502,12 +4983,12 @@ tsutils "^3.17.1" "@typescript-eslint/eslint-plugin@^4.23.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.32.0.tgz#46d2370ae9311092f2a6f7246d28357daf2d4e89" - integrity sha512-+OWTuWRSbWI1KDK8iEyG/6uK2rTm3kpS38wuVifGUTDB6kjEuNrzBI1MUtxnkneuWG/23QehABe2zHHrj+4yuA== + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276" + integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg== dependencies: - "@typescript-eslint/experimental-utils" "4.32.0" - "@typescript-eslint/scope-manager" "4.32.0" + "@typescript-eslint/experimental-utils" "4.33.0" + "@typescript-eslint/scope-manager" "4.33.0" debug "^4.3.1" functional-red-black-tree "^1.0.1" ignore "^5.1.8" @@ -4525,15 +5006,15 @@ eslint-scope "^5.0.0" eslint-utils "^2.0.0" -"@typescript-eslint/experimental-utils@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.32.0.tgz#53a8267d16ca5a79134739129871966c56a59dc4" - integrity sha512-WLoXcc+cQufxRYjTWr4kFt0DyEv6hDgSaFqYhIzQZ05cF+kXfqXdUh+//kgquPJVUBbL3oQGKQxwPbLxHRqm6A== +"@typescript-eslint/experimental-utils@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd" + integrity sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q== dependencies: "@types/json-schema" "^7.0.7" - "@typescript-eslint/scope-manager" "4.32.0" - "@typescript-eslint/types" "4.32.0" - "@typescript-eslint/typescript-estree" "4.32.0" + "@typescript-eslint/scope-manager" "4.33.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/typescript-estree" "4.33.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" @@ -4548,27 +5029,27 @@ eslint-visitor-keys "^1.1.0" "@typescript-eslint/parser@^4.26.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.32.0.tgz#751ecca0e2fecd3d44484a9b3049ffc1871616e5" - integrity sha512-lhtYqQ2iEPV5JqV7K+uOVlPePjClj4dOw7K4/Z1F2yvjIUvyr13yJnDzkK6uon4BjHYuHy3EG0c2Z9jEhFk56w== + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899" + integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA== dependencies: - "@typescript-eslint/scope-manager" "4.32.0" - "@typescript-eslint/types" "4.32.0" - "@typescript-eslint/typescript-estree" "4.32.0" + "@typescript-eslint/scope-manager" "4.33.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/typescript-estree" "4.33.0" debug "^4.3.1" -"@typescript-eslint/scope-manager@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.32.0.tgz#e03c8668f8b954072b3f944d5b799c0c9225a7d5" - integrity sha512-DK+fMSHdM216C0OM/KR1lHXjP1CNtVIhJ54kQxfOE6x8UGFAjha8cXgDMBEIYS2XCYjjCtvTkjQYwL3uvGOo0w== +"@typescript-eslint/scope-manager@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3" + integrity sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ== dependencies: - "@typescript-eslint/types" "4.32.0" - "@typescript-eslint/visitor-keys" "4.32.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/visitor-keys" "4.33.0" -"@typescript-eslint/types@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.32.0.tgz#52c633c18da47aee09449144bf59565ab36df00d" - integrity sha512-LE7Z7BAv0E2UvqzogssGf1x7GPpUalgG07nGCBYb1oK4mFsOiFC/VrSMKbZQzFJdN2JL5XYmsx7C7FX9p9ns0w== +"@typescript-eslint/types@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72" + integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ== "@typescript-eslint/typescript-estree@2.34.0": version "2.34.0" @@ -4583,25 +5064,25 @@ semver "^7.3.2" tsutils "^3.17.1" -"@typescript-eslint/typescript-estree@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.32.0.tgz#db00ccc41ccedc8d7367ea3f50c6994b8efa9f3b" - integrity sha512-tRYCgJ3g1UjMw1cGG8Yn1KzOzNlQ6u1h9AmEtPhb5V5a1TmiHWcRyF/Ic+91M4f43QeChyYlVTcf3DvDTZR9vw== +"@typescript-eslint/typescript-estree@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609" + integrity sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA== dependencies: - "@typescript-eslint/types" "4.32.0" - "@typescript-eslint/visitor-keys" "4.32.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/visitor-keys" "4.33.0" debug "^4.3.1" globby "^11.0.3" is-glob "^4.0.1" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/visitor-keys@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.32.0.tgz#455ba8b51242f2722a497ffae29313f33b14cb7f" - integrity sha512-e7NE0qz8W+atzv3Cy9qaQ7BTLwWsm084Z0c4nIO2l3Bp6u9WIgdqCgyPyV5oSPDMIW3b20H59OOCmVk3jw3Ptw== +"@typescript-eslint/visitor-keys@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd" + integrity sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg== dependencies: - "@typescript-eslint/types" "4.32.0" + "@typescript-eslint/types" "4.33.0" eslint-visitor-keys "^2.0.0" "@webassemblyjs/ast@1.8.5": @@ -5299,15 +5780,15 @@ attr-accept@^1.1.3: core-js "^2.5.0" autoprefixer@^10.2.5: - version "10.3.6" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.3.6.tgz#537c8a046e32ec46bfe528bcc9e2a5f2d87cd4c4" - integrity sha512-3bDjTfF0MfZntwVCSd18XAT2Zndufh3Mep+mafbzdIQEeWbncVRUVDjH8/EPANV9Hq40seJ24QcYAyhUsFz7gQ== + version "10.3.7" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.3.7.tgz#cef2562058406bd378c94aacda36bb46a97b3186" + integrity sha512-EmGpu0nnQVmMhX8ROoJ7Mx8mKYPlcUHuxkwrRYEYMz85lu7H09v8w6R1P0JPdn/hKU32GjpLBFEOuIlDWCRWvg== dependencies: - browserslist "^4.17.1" - caniuse-lite "^1.0.30001260" + browserslist "^4.17.3" + caniuse-lite "^1.0.30001264" fraction.js "^4.1.1" - nanocolors "^0.2.8" normalize-range "^0.1.2" + picocolors "^0.2.1" postcss-value-parser "^4.1.0" autoprefixer@^9.6.1, autoprefixer@^9.8.6: @@ -5396,9 +5877,9 @@ babel-loader@8.1.0: schema-utils "^2.6.5" babel-loader@^8.2.2: - version "8.2.2" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.2.tgz#9363ce84c10c9a40e6c753748e1441b60c8a0b81" - integrity sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g== + version "8.2.3" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.3.tgz#8986b40f1a64cacfcb4b8429320085ef68b1342d" + integrity sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw== dependencies: find-cache-dir "^3.3.1" loader-utils "^1.4.0" @@ -5932,16 +6413,16 @@ browserslist@4.14.2: escalade "^3.0.2" node-releases "^1.1.61" -browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.16.0, browserslist@^4.16.6, browserslist@^4.17.1, browserslist@^4.6.2, browserslist@^4.6.4, browserslist@^4.9.1: - version "4.17.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.1.tgz#a98d104f54af441290b7d592626dd541fa642eb9" - integrity sha512-aLD0ZMDSnF4lUt4ZDNgqi5BUn9BZ7YdQdI/cYlILrhdSSZJLU9aNZoD5/NBmM4SK34APB2e83MOsRt1EnkuyaQ== +browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.16.0, browserslist@^4.16.6, browserslist@^4.17.3, browserslist@^4.6.2, browserslist@^4.6.4, browserslist@^4.9.1: + version "4.17.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.3.tgz#2844cd6eebe14d12384b0122d217550160d2d624" + integrity sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ== dependencies: - caniuse-lite "^1.0.30001259" - electron-to-chromium "^1.3.846" + caniuse-lite "^1.0.30001264" + electron-to-chromium "^1.3.857" escalade "^3.1.1" - nanocolors "^0.1.5" - node-releases "^1.1.76" + node-releases "^1.1.77" + picocolors "^0.2.1" bs-logger@0.x: version "0.2.6" @@ -6222,12 +6703,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001259, caniuse-lite@^1.0.30001260: - version "1.0.30001260" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001260.tgz#e3be3f34ddad735ca4a2736fa9e768ef34316270" - integrity sha512-Fhjc/k8725ItmrvW5QomzxLeojewxvqiYCKeFcfFEhut28IVLdpHU19dneOmltZQIE5HNbawj1HYD+1f2bM1Dg== - dependencies: - nanocolors "^0.1.0" +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001264: + version "1.0.30001265" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz#0613c9e6c922e422792e6fcefdf9a3afeee4f8c3" + integrity sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw== capture-exit@^2.0.0: version "2.0.0" @@ -8415,10 +8894,10 @@ electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.564: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.731.tgz#9f17f7e16f798eaddb21409d80aa755b5b5053dc" integrity sha512-dn1Nyd0DuFa3xhqZJr6/L9phyk+YXJpvrz6Vcu6mFxFqr5TQ9r/F3yvOYFUrEwY4Tbb1YBjN19TDKnSVCQvalA== -electron-to-chromium@^1.3.846: - version "1.3.850" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.850.tgz#c56c72abfeab051b4b328beb894461c5912d0456" - integrity sha512-ZzkDcdzePeF4dhoGZQT77V2CyJOpwfTZEOg4h0x6R/jQhGt/rIRpbRyVreWLtD7B/WsVxo91URm2WxMKR9JQZA== +electron-to-chromium@^1.3.857: + version "1.3.864" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.864.tgz#6a993bcc196a2b8b3df84d28d5d4dd912393885f" + integrity sha512-v4rbad8GO6/yVI92WOeU9Wgxc4NA0n4f6P1FvZTY+jyY7JHEhw3bduYu60v3Q1h81Cg6eo4ApZrFPuycwd5hGw== element-resize-detector@^1.2.2: version "1.2.2" @@ -13607,20 +14086,10 @@ nan@^2.12.1: resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19" integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== -nanocolors@^0.1.0, nanocolors@^0.1.5: - version "0.1.12" - resolved "https://registry.yarnpkg.com/nanocolors/-/nanocolors-0.1.12.tgz#8577482c58cbd7b5bb1681db4cf48f11a87fd5f6" - integrity sha512-2nMHqg1x5PU+unxX7PGY7AuYxl2qDx7PSrTRjizr8sxdd3l/3hBuWWaki62qmtYm2U5i4Z5E7GbjlyDFhs9/EQ== - -nanocolors@^0.2.2, nanocolors@^0.2.8: - version "0.2.10" - resolved "https://registry.yarnpkg.com/nanocolors/-/nanocolors-0.2.10.tgz#a712df4d3c1bf12d9b4fb8b5aa61b5ba31337503" - integrity sha512-i+EDWGsJClQwR/bhLIG/CObZZwaYaS5qt+yjxZbfV+77QiNHNzE9nj4d9Ut1TGZ0R0eSwPcQWzReASzXuw/7oA== - -nanoid@^3.1.25: - version "3.1.28" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.28.tgz#3c01bac14cb6c5680569014cc65a2f26424c6bd4" - integrity sha512-gSu9VZ2HtmoKYe/lmyPFES5nknFrHa+/DT9muUFWFMi6Jh9E1I7bkvlQ8xxf1Kos9pi9o8lBnIOkatMhKX/YUw== +nanoid@^3.1.28: + version "3.1.29" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.29.tgz#214fb2d7a33e1a5bef4757b779dfaeb6a4e5aeb4" + integrity sha512-dW2pUSGZ8ZnCFIlBIA31SV8huOGCHb6OwzVCc7A69rb/a+SgPBwfmLvK5TKQ3INPbRkcI8a/Owo0XbiTNH19wg== nanomatch@^1.2.9: version "1.2.13" @@ -13805,10 +14274,10 @@ node-releases@^1.1.52, node-releases@^1.1.61: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.72.tgz#14802ab6b1039a79a0c7d662b610a5bbd76eacbe" integrity sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw== -node-releases@^1.1.76: - version "1.1.76" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.76.tgz#df245b062b0cafbd5282ab6792f7dccc2d97f36e" - integrity sha512-9/IECtNr8dXNmPWmFXepT0/7o5eolGesHUa3mtr0KlgnCvnZxwh2qensKL42JJY2vQKC3nIBXetFAqR+PW1CmA== +node-releases@^1.1.77: + version "1.1.77" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.77.tgz#50b0cfede855dd374e7585bf228ff34e57c1c32e" + integrity sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ== nopt@^4.0.1: version "4.0.3" @@ -14725,6 +15194,11 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= +picocolors@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" + integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA== + picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz#465547f359ccc206d3c48e46a1bcb89bf7ee619d" @@ -15901,12 +16375,12 @@ postcss@^6.0.1, postcss@^6.0.14, postcss@^6.0.2: supports-color "^5.4.0" "postcss@^7.0.30 || ^8.0.0", postcss@^8.2.15, postcss@^8.3.0: - version "8.3.8" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.3.8.tgz#9ebe2a127396b4b4570ae9f7770e7fb83db2bac1" - integrity sha512-GT5bTjjZnwDifajzczOC+r3FI3Cu+PgPvrsjhQdRqa2kTJ4968/X9CUce9xttIB0xOs5c6xf0TCWZo/y9lF6bA== + version "8.3.9" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.3.9.tgz#98754caa06c4ee9eb59cc48bd073bb6bd3437c31" + integrity sha512-f/ZFyAKh9Dnqytx5X62jgjhhzttjZS7hMsohcI7HEI5tjELX/HxCy3EFhsRxyzGvrzFF+82XPvCS8T9TFleVJw== dependencies: - nanocolors "^0.2.2" - nanoid "^3.1.25" + nanoid "^3.1.28" + picocolors "^0.2.1" source-map-js "^0.6.2" prelude-ls@~1.1.2: @@ -16642,16 +17116,16 @@ react-sizeme@^3.0.1: throttle-debounce "^3.0.1" react-spring@^9.1.2: - version "9.2.4" - resolved "https://registry.yarnpkg.com/react-spring/-/react-spring-9.2.4.tgz#9d89b0321664d594f957dca9459b13d94b3dfa39" - integrity sha512-bMjbyTW0ZGd+/h9cjtohLqCwOGqX2OuaTvalOVfLCGmhzEg/u3GgopI3LAm4UD2Br3MNdVdGgNVoESg4MGqKFQ== - dependencies: - "@react-spring/core" "~9.2.0" - "@react-spring/konva" "~9.2.0" - "@react-spring/native" "~9.2.0" - "@react-spring/three" "~9.2.0" - "@react-spring/web" "~9.2.0" - "@react-spring/zdog" "~9.2.0" + version "9.2.6" + resolved "https://registry.yarnpkg.com/react-spring/-/react-spring-9.2.6.tgz#f8c218954357bda5031c8f8e725e152fcad5fa4c" + integrity sha512-clqMjsqWo3SWuPm3Dt3W8Hi8LSgoA1v8sjw0hYnPpo2oNjhxOTkqHd1KmBxHhLpT2aD6AvbxqjzMZgmCgnu8lw== + dependencies: + "@react-spring/core" "~9.2.6-beta.0" + "@react-spring/konva" "~9.2.6-beta.0" + "@react-spring/native" "~9.2.6-beta.0" + "@react-spring/three" "~9.2.6-beta.0" + "@react-spring/web" "~9.2.6-beta.0" + "@react-spring/zdog" "~9.2.6-beta.0" react-syntax-highlighter@^13.5.3: version "13.5.3"