diff --git a/.github/workflows/testingWorkflow.yml b/.github/workflows/testingWorkflow.yml index a19cfd20a9..4ac88d0558 100644 --- a/.github/workflows/testingWorkflow.yml +++ b/.github/workflows/testingWorkflow.yml @@ -71,7 +71,7 @@ jobs: outputs: version: ${{ steps.set_backend_version.outputs.version }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Build Backend Image id: set_backend_version uses: ./.github/actions/docker-buildx @@ -96,7 +96,7 @@ jobs: outputs: version: ${{ steps.set_cypress_version.outputs.version }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Build Cypress Image id: set_cypress_version uses: ./.github/actions/docker-buildx @@ -121,7 +121,7 @@ jobs: outputs: version: ${{ steps.set_database_version.outputs.version }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Build Database Image id: set_database_version uses: ./.github/actions/docker-buildx @@ -146,7 +146,7 @@ jobs: outputs: version: ${{ steps.set_frontend_version.outputs.version }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Build Frontend Image id: set_frontend_version uses: ./.github/actions/docker-buildx @@ -179,7 +179,7 @@ jobs: outputs: version: ${{ steps.set_frontend_lighthouse_version.outputs.version }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Build Frontend Lighthouse Image id: set_frontend_lighthouse_version uses: ./.github/actions/docker-buildx @@ -210,7 +210,7 @@ jobs: outputs: version: ${{ steps.set_nginx_version.outputs.version }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Build Nginx Image id: set_nginx_version uses: ./.github/actions/docker-buildx diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticConvertToDiagnosticReportProps.java b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticConvertToDiagnosticReportProps.java new file mode 100644 index 0000000000..1e22a4d683 --- /dev/null +++ b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticConvertToDiagnosticReportProps.java @@ -0,0 +1,15 @@ +package gov.cdc.usds.simplereport.api.converter; + +import lombok.Builder; +import lombok.Getter; +import org.hl7.fhir.r4.model.Observation; +import org.hl7.fhir.r4.model.Patient; + +@Builder +@Getter +public class ConditionAgnosticConvertToDiagnosticReportProps { + private String testPerformedCode; + private Patient patient; + private Observation observation; + private String testEffectiveDate; +} diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticConvertToObservationProps.java b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticConvertToObservationProps.java new file mode 100644 index 0000000000..6d6e272af7 --- /dev/null +++ b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticConvertToObservationProps.java @@ -0,0 +1,15 @@ +package gov.cdc.usds.simplereport.api.converter; + +import gov.cdc.usds.simplereport.db.model.auxiliary.TestCorrectionStatus; +import lombok.Builder; +import lombok.Getter; +import org.hl7.fhir.r4.model.Patient; + +@Builder +@Getter +public class ConditionAgnosticConvertToObservationProps { + private TestCorrectionStatus correctionStatus; + private String testPerformedCode; + private Patient patient; + private String resultValue; +} diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticConvertToPatientProps.java b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticConvertToPatientProps.java new file mode 100644 index 0000000000..c9fa680473 --- /dev/null +++ b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticConvertToPatientProps.java @@ -0,0 +1,14 @@ +package gov.cdc.usds.simplereport.api.converter; + +import lombok.Builder; +import lombok.Getter; + +@Builder +@Getter +public class ConditionAgnosticConvertToPatientProps { + private String id; + private String firstName; + private String lastName; + private String nameAbsentReason; + private String gender; +} diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticCreateFhirBundleProps.java b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticCreateFhirBundleProps.java new file mode 100644 index 0000000000..ae7e1b62af --- /dev/null +++ b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/ConditionAgnosticCreateFhirBundleProps.java @@ -0,0 +1,19 @@ +package gov.cdc.usds.simplereport.api.converter; + +import java.util.List; +import lombok.Builder; +import lombok.Getter; +import org.hl7.fhir.r4.model.DiagnosticReport; +import org.hl7.fhir.r4.model.Observation; +import org.hl7.fhir.r4.model.Patient; +import org.springframework.boot.info.GitProperties; + +@Builder +@Getter +public class ConditionAgnosticCreateFhirBundleProps { + private Patient patient; + private List resultObservations; + private DiagnosticReport diagnosticReport; + private GitProperties gitProperties; + private String processingId; +} diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/FhirConstants.java b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/FhirConstants.java index 0c4c8a267b..d64d3e3986 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/FhirConstants.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/FhirConstants.java @@ -88,4 +88,16 @@ private FhirConstants() { public static final String ORDER_EFFECTIVE_DATE_EXTENSION_URL = "https://reportstream.cdc.gov/fhir/StructureDefinition/order-effective-date"; + + public static final String OBSERVATION_CATEGORY_CODE_SYSTEM = + "https://terminology.hl7.org/5.2.0/CodeSystem-observation-category.html"; + public static final String DATA_ABSENT_REASON_EXTENSION_URL = + "http://hl7.org/fhir/StructureDefinition/data-absent-reason"; + + public static final String DIAGNOSTIC_CODE_SYSTEM = + "https://terminology.hl7.org/5.2.0/CodeSystem-v2-0074.html"; + + // Hardcoded category values for our initial condition agnostic spec + public static final String LAB_STRING_LITERAL = "LAB"; + public static final String LABORATORY_STRING_LITERAL = "laboratory"; } diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/FhirConverter.java b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/FhirConverter.java index d6941e34cc..0d0bd86c7b 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/FhirConverter.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/api/converter/FhirConverter.java @@ -46,6 +46,7 @@ import static gov.cdc.usds.simplereport.api.converter.FhirConstants.UNIVERSAL_ID_SYSTEM; import static gov.cdc.usds.simplereport.api.converter.FhirConstants.YESNO_CODE_SYSTEM; import static gov.cdc.usds.simplereport.api.model.TestEventExport.FALLBACK_DEFAULT_TEST_MINUTES; +import static gov.cdc.usds.simplereport.api.model.TestEventExport.UNKNOWN_ADDRESS_INDICATOR; import static gov.cdc.usds.simplereport.db.model.PersonUtils.getResidenceTypeMap; import static gov.cdc.usds.simplereport.db.model.PersonUtils.pregnancyStatusDisplayMap; import static gov.cdc.usds.simplereport.db.model.PersonUtils.pregnancyStatusSnomedMap; @@ -454,16 +455,35 @@ public Organization convertToOrganization( return org; } - public Patient convertToPatient(Person person) { + public StreetAddress getPatientAddress(Person person, Facility facility) { + var personAddress = person.getAddress(); + if (UNKNOWN_ADDRESS_INDICATOR.equalsIgnoreCase(person.getStreet()) && facility != null) { + var facilityAddress = facility.getAddress(); + personAddress.setCity(facilityAddress.getCity()); + personAddress.setState(facilityAddress.getState()); + personAddress.setPostalCode(facilityAddress.getPostalCode()); + personAddress.setCounty(facilityAddress.getCounty()); + } + return personAddress; + } + + public List getPatientPhoneNumbers(Person person, Facility facility) { + if (person.getPhoneNumbers() == null || person.getPhoneNumbers().isEmpty()) { + return List.of(new PhoneNumber(PhoneType.LANDLINE, facility.getTelephone())); + } + return person.getPhoneNumbers(); + } + + public Patient convertToPatient(Person person, Facility facility) { return convertToPatient( ConvertToPatientProps.builder() .id(person.getInternalId().toString()) .name(person.getNameInfo()) - .phoneNumbers(person.getPhoneNumbers()) + .phoneNumbers(getPatientPhoneNumbers(person, facility)) .emails(person.getEmails()) .gender(person.getGender()) .dob(person.getBirthDate()) - .address(person.getAddress()) + .address(getPatientAddress(person, facility)) .country(person.getCountry()) .race(person.getRace()) .ethnicity(person.getEthnicity()) @@ -1081,7 +1101,7 @@ public Bundle createFhirBundle( return createFhirBundle( CreateFhirBundleProps.builder() - .patient(convertToPatient(testEvent.getPatient())) + .patient(convertToPatient(testEvent.getPatient(), testEvent.getFacility())) .testingLab(convertToOrganization(testEvent.getFacility())) .orderingFacility(null) .practitioner(convertToPractitioner(testEvent.getProviderData())) diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/api/model/TestEventExport.java b/backend/src/main/java/gov/cdc/usds/simplereport/api/model/TestEventExport.java index db7d1be7d7..d4284f3b72 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/api/model/TestEventExport.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/api/model/TestEventExport.java @@ -46,6 +46,7 @@ public class TestEventExport { public static final int FALLBACK_DEFAULT_TEST_MINUTES = 15; public static final String USA = "USA"; + public static final String UNKNOWN_ADDRESS_INDICATOR = "** Unknown / Not Given **"; private String processingModeCode = "P"; private final TestEvent testEvent; private final Optional patient; @@ -293,21 +294,37 @@ public String getPatientStreetTwo() { @JsonProperty("Patient_city") public String getPatientCity() { + var street = patient.map(Person::getStreet).orElse(null); + if (UNKNOWN_ADDRESS_INDICATOR.equalsIgnoreCase(street)) { + return getOrderingFacilityCity(); + } return patient.map(Person::getCity).orElse(null); } @JsonProperty("Patient_county") public String getPatientCounty() { + var street = patient.map(Person::getStreet).orElse(null); + if (UNKNOWN_ADDRESS_INDICATOR.equalsIgnoreCase(street)) { + return getOrderingFacilityCounty(); + } return patient.map(Person::getCounty).orElse(null); } @JsonProperty("Patient_state") public String getPatientState() { + var street = patient.map(Person::getStreet).orElse(null); + if (UNKNOWN_ADDRESS_INDICATOR.equalsIgnoreCase(street)) { + return getOrderingFacilityState(); + } return patient.map(Person::getState).orElse(null); } @JsonProperty("Patient_zip_code") public String getPatientZipCode() { + var street = patient.map(Person::getStreet).orElse(null); + if (UNKNOWN_ADDRESS_INDICATOR.equalsIgnoreCase(street)) { + return getOrderingFacilityZipCode(); + } return patient.map(Person::getZipCode).orElse(null); } @@ -318,7 +335,11 @@ public String getPatientCountry() { @JsonProperty("Patient_phone_number") public String getPatientPhoneNumber() { - return patient.map(Person::getTelephone).orElse(null); + var phone = patient.map(Person::getTelephone).orElse(null); + if (phone == null || phone.isBlank()) { + return getOrderingFacilityPhoneNumber(); + } + return phone; } @JsonProperty("Patient_email") diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/api/model/filerow/ConditionAgnosticResultRow.java b/backend/src/main/java/gov/cdc/usds/simplereport/api/model/filerow/ConditionAgnosticResultRow.java new file mode 100644 index 0000000000..bfa63468b3 --- /dev/null +++ b/backend/src/main/java/gov/cdc/usds/simplereport/api/model/filerow/ConditionAgnosticResultRow.java @@ -0,0 +1,117 @@ +package gov.cdc.usds.simplereport.api.model.filerow; + +import static gov.cdc.usds.simplereport.validators.CsvValidatorUtils.getValue; +import static gov.cdc.usds.simplereport.validators.CsvValidatorUtils.validateBiologicalSex; +import static gov.cdc.usds.simplereport.validators.CsvValidatorUtils.validateDataAbsentReason; +import static gov.cdc.usds.simplereport.validators.CsvValidatorUtils.validateDateTime; +import static gov.cdc.usds.simplereport.validators.CsvValidatorUtils.validateTestPerformedCode; +import static gov.cdc.usds.simplereport.validators.CsvValidatorUtils.validateTestResult; +import static gov.cdc.usds.simplereport.validators.CsvValidatorUtils.validateTestResultStatus; + +import gov.cdc.usds.simplereport.service.model.reportstream.FeedbackMessage; +import gov.cdc.usds.simplereport.validators.CsvValidatorUtils.ValueOrError; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import lombok.Getter; +import org.apache.commons.lang3.StringUtils; + +@Getter +public class ConditionAgnosticResultRow implements FileRow { + final ValueOrError testResultStatus; + final ValueOrError testResultEffectiveDate; + final ValueOrError testPerformedCode; + final ValueOrError testResultValue; + final ValueOrError patientId; + final ValueOrError patientFirstName; + final ValueOrError patientLastName; + final ValueOrError patientNameAbsentReason; + final ValueOrError patientAdminGender; + + public static final String TEST_RESULT_STATUS = "test_result_status"; + public static final String TEST_RESULT_EFFECTIVE_DATE = "test_result_effective_date"; + public static final String TEST_PERFORMED_CODE = "test_performed_code"; + public static final String TEST_RESULT_VALUE = "test_result_value"; + public static final String PATIENT_ID = "patient_id"; + public static final String PATIENT_LAST_NAME = "patient_last_name"; + public static final String PATIENT_FIRST_NAME = "patient_first_name"; + public static final String PATIENT_NAME_ABSENT_REASON = "patient_name_absent_reason"; + public static final String PATIENT_ADMIN_GENDER = "patient_admin_gender"; + + private static List initialRequiredFields = + List.of( + TEST_RESULT_STATUS, + TEST_RESULT_EFFECTIVE_DATE, + TEST_PERFORMED_CODE, + TEST_RESULT_VALUE, + PATIENT_ID, + PATIENT_ADMIN_GENDER); + + private List requiredFields; + + public ConditionAgnosticResultRow(Map rawRow) { + this.requiredFields = generateRequiredFields(rawRow); + testResultStatus = getValue(rawRow, TEST_RESULT_STATUS, isRequired(TEST_RESULT_STATUS)); + testResultEffectiveDate = + getValue(rawRow, TEST_RESULT_EFFECTIVE_DATE, isRequired(TEST_RESULT_EFFECTIVE_DATE)); + testPerformedCode = getValue(rawRow, TEST_PERFORMED_CODE, isRequired(TEST_PERFORMED_CODE)); + testResultValue = getValue(rawRow, TEST_RESULT_VALUE, isRequired(TEST_RESULT_VALUE)); + patientId = getValue(rawRow, PATIENT_ID, isRequired(PATIENT_ID)); + patientNameAbsentReason = + getValue(rawRow, PATIENT_NAME_ABSENT_REASON, isRequired(PATIENT_NAME_ABSENT_REASON)); + patientFirstName = getValue(rawRow, PATIENT_FIRST_NAME, isRequired(PATIENT_FIRST_NAME)); + patientLastName = getValue(rawRow, PATIENT_LAST_NAME, isRequired(PATIENT_LAST_NAME)); + patientAdminGender = getValue(rawRow, PATIENT_ADMIN_GENDER, isRequired(PATIENT_ADMIN_GENDER)); + } + + // The schema expects that (first_name || last_name) XOR name_absent_reason be present, so add the + // name-related fields to the required fields list accordingly + private static List generateRequiredFields(Map rawRow) { + String firstNameVal = getValue(rawRow, PATIENT_FIRST_NAME, false).getValue(); + String lastNameVal = getValue(rawRow, PATIENT_LAST_NAME, false).getValue(); + + boolean firstNameAbsent = StringUtils.isBlank(firstNameVal); + boolean lastNameAbsent = StringUtils.isBlank(lastNameVal); + + List requiredFields = new ArrayList<>(initialRequiredFields); + + if (firstNameAbsent ^ lastNameAbsent) { + if (firstNameAbsent) requiredFields.add(PATIENT_LAST_NAME); + else requiredFields.add(PATIENT_FIRST_NAME); + } else if (firstNameAbsent && lastNameAbsent) { + requiredFields.add(PATIENT_NAME_ABSENT_REASON); + } else { + requiredFields.add(PATIENT_LAST_NAME); + requiredFields.add(PATIENT_FIRST_NAME); + } + + return requiredFields; + } + + @Override + public Boolean isRequired(String rowName) { + return requiredFields.contains(rowName); + } + + @Override + public List validateRequiredFields() { + return getPossibleErrorsFromFields(); + } + + @Override + public List getRequiredFields() { + return requiredFields; + } + + @Override + public List validateIndividualValues() { + var errors = new ArrayList(); + errors.addAll(validateBiologicalSex(patientAdminGender)); + errors.addAll(validateDataAbsentReason(patientNameAbsentReason)); + errors.addAll(validateTestResultStatus(testResultStatus)); + errors.addAll(validateDateTime(testResultEffectiveDate)); + errors.addAll(validateTestPerformedCode(testPerformedCode)); + errors.addAll(validateTestResult(testResultValue)); + return errors; + } +} diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/api/patient/PatientDataResolver.java b/backend/src/main/java/gov/cdc/usds/simplereport/api/patient/PatientDataResolver.java index 6e59b2dba5..6de0f4e3ad 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/api/patient/PatientDataResolver.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/api/patient/PatientDataResolver.java @@ -10,6 +10,7 @@ import gov.cdc.usds.simplereport.db.model.auxiliary.PersonName; import gov.cdc.usds.simplereport.db.repository.PhoneNumberRepository; import gov.cdc.usds.simplereport.db.repository.TestEventRepository; +import java.util.Collections; import java.util.List; import java.util.Map; import java.util.UUID; @@ -77,7 +78,15 @@ public CompletableFuture getLastTest( @SchemaMapping(typeName = "Patient", field = "phoneNumbers") public CompletableFuture> getPhoneNumbers( Person person, DataLoader> patientPhoneNumbersLoader) { - return patientPhoneNumbersLoader.load(person.getInternalId()); + return patientPhoneNumbersLoader + .load(person.getInternalId()) + .thenApply( + phoneNumbers -> { + if (phoneNumbers == null) { + return Collections.emptyList(); + } + return phoneNumbers; + }); } @SchemaMapping(typeName = "Patient", field = "telephone") @@ -85,7 +94,7 @@ public CompletableFuture getPrimaryPhoneNumbers( Person person, DataLoader patientPrimaryPhoneNumberLoader) { return patientPrimaryPhoneNumberLoader .load(person.getInternalId()) - .thenApply(PhoneNumber::getNumber); + .thenApply(phoneNumber -> phoneNumber == null ? "" : phoneNumber.getNumber()); } @SchemaMapping(typeName = "Patient", field = "facility") diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/config/FeatureFlagsConfig.java b/backend/src/main/java/gov/cdc/usds/simplereport/config/FeatureFlagsConfig.java index dbf5119f6e..1685cc3403 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/config/FeatureFlagsConfig.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/config/FeatureFlagsConfig.java @@ -28,6 +28,7 @@ public class FeatureFlagsConfig { private boolean rsvEnabled; private boolean singleEntryRsvEnabled; private boolean agnosticEnabled; + private boolean agnosticBulkUploadEnabled; private boolean testCardRefactorEnabled; @Scheduled(fixedRateString = "60000") // 1 min @@ -42,6 +43,7 @@ private void flagMapping(String flagName, Boolean flagValue) { case "rsvEnabled" -> setRsvEnabled(flagValue); case "singleEntryRsvEnabled" -> setSingleEntryRsvEnabled(flagValue); case "agnosticEnabled" -> setAgnosticEnabled(flagValue); + case "agnosticBulkUploadEnabled" -> setAgnosticBulkUploadEnabled(flagValue); case "testCardRefactorEnabled" -> setTestCardRefactorEnabled(flagValue); default -> log.info("no mapping for " + flagName); } diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/config/FileValidatorConfiguration.java b/backend/src/main/java/gov/cdc/usds/simplereport/config/FileValidatorConfiguration.java index ea245cd974..26c4806212 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/config/FileValidatorConfiguration.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/config/FileValidatorConfiguration.java @@ -1,5 +1,6 @@ package gov.cdc.usds.simplereport.config; +import gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow; import gov.cdc.usds.simplereport.api.model.filerow.PatientUploadRow; import gov.cdc.usds.simplereport.api.model.filerow.TestResultRow; import gov.cdc.usds.simplereport.service.ResultsUploaderCachingService; @@ -17,6 +18,11 @@ public FileValidator testResultRowFileValidator( row -> new TestResultRow(row, resultsUploaderCachingService, featureFlagsConfig)); } + @Bean + public FileValidator conditionAgnosticResultRowFileValidator() { + return new FileValidator<>(row -> new ConditionAgnosticResultRow(row)); + } + @Bean public FileValidator patientUploadRowFileValidator() { return new FileValidator<>(PatientUploadRow::new); diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/config/WebConfiguration.java b/backend/src/main/java/gov/cdc/usds/simplereport/config/WebConfiguration.java index 26271a2b1a..a1c565e34e 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/config/WebConfiguration.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/config/WebConfiguration.java @@ -26,7 +26,10 @@ public class WebConfiguration implements WebMvcConfigurer { public static final String FEATURE_FLAGS = "/feature-flags"; public static final String PATIENT_UPLOAD = "/upload/patients"; public static final String RESULT_UPLOAD = "/upload/results"; + public static final String HIV_RESULT_UPLOAD = "/upload/hiv-results"; + + public static final String CONDITION_AGNOSTIC_RESULT_UPLOAD = "/upload/condition-agnostic"; public static final String GRAPH_QL = "/graphql"; @Autowired private RestLoggingInterceptor _loggingInterceptor; diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/service/LoggedInAuthorizationService.java b/backend/src/main/java/gov/cdc/usds/simplereport/service/LoggedInAuthorizationService.java index 7d6fec0593..ab8446840f 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/service/LoggedInAuthorizationService.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/service/LoggedInAuthorizationService.java @@ -5,6 +5,7 @@ import gov.cdc.usds.simplereport.config.authorization.OrganizationExtractor; import gov.cdc.usds.simplereport.config.authorization.OrganizationRoleClaims; import gov.cdc.usds.simplereport.config.authorization.TenantDataAuthenticationProvider; +import gov.cdc.usds.simplereport.service.errors.NobodyAuthenticatedException; import java.util.List; import java.util.Set; import org.springframework.context.annotation.Bean; @@ -33,7 +34,7 @@ public LoggedInAuthorizationService( private Authentication getCurrentAuth() { Authentication currentAuth = SecurityContextHolder.getContext().getAuthentication(); if (currentAuth == null) { - throw new RuntimeException("Nobody is currently authenticated"); + throw new NobodyAuthenticatedException(); } return currentAuth; } diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/service/OrganizationInitializingService.java b/backend/src/main/java/gov/cdc/usds/simplereport/service/OrganizationInitializingService.java index 135d96519d..896d810adf 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/service/OrganizationInitializingService.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/service/OrganizationInitializingService.java @@ -26,6 +26,7 @@ import gov.cdc.usds.simplereport.db.repository.ProviderRepository; import gov.cdc.usds.simplereport.db.repository.SpecimenTypeRepository; import gov.cdc.usds.simplereport.idp.repository.OktaRepository; +import gov.cdc.usds.simplereport.service.errors.UserFacilityNotInitializedException; import gov.cdc.usds.simplereport.service.model.IdentityAttributes; import java.util.ArrayList; import java.util.List; @@ -323,11 +324,8 @@ private void configureDemoUsers(List users, Map faci f -> { Facility facility = facilitiesByName.get(f); if (facility == null) { - throw new RuntimeException( - "User's facility=" - + f - + " was not initialized. Valid facilities=" - + facilitiesByName.keySet().toString()); + throw new UserFacilityNotInitializedException( + f, facilitiesByName.keySet().toString()); } return facility; }) diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/service/PersonService.java b/backend/src/main/java/gov/cdc/usds/simplereport/service/PersonService.java index bc38f4d157..7d511d2b6e 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/service/PersonService.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/service/PersonService.java @@ -460,6 +460,8 @@ private void updatePhoneNumbers(Person person, List incoming) { if (!deduplicatedPhoneNumbers.isEmpty()) { person.setPrimaryPhone(deduplicatedPhoneNumbers.get(0)); + } else { + person.setPrimaryPhone(null); } } diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/service/errors/NobodyAuthenticatedException.java b/backend/src/main/java/gov/cdc/usds/simplereport/service/errors/NobodyAuthenticatedException.java new file mode 100644 index 0000000000..29e5b4be83 --- /dev/null +++ b/backend/src/main/java/gov/cdc/usds/simplereport/service/errors/NobodyAuthenticatedException.java @@ -0,0 +1,13 @@ +package gov.cdc.usds.simplereport.service.errors; + +import org.springframework.http.HttpStatus; +import org.springframework.web.bind.annotation.ResponseStatus; + +@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR) +public class NobodyAuthenticatedException extends RuntimeException { + private static final long serialVersionUID = 1L; + + public NobodyAuthenticatedException() { + super("Nobody is currently authenticated"); + } +} diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/service/errors/UserFacilityNotInitializedException.java b/backend/src/main/java/gov/cdc/usds/simplereport/service/errors/UserFacilityNotInitializedException.java new file mode 100644 index 0000000000..9fe308a265 --- /dev/null +++ b/backend/src/main/java/gov/cdc/usds/simplereport/service/errors/UserFacilityNotInitializedException.java @@ -0,0 +1,17 @@ +package gov.cdc.usds.simplereport.service.errors; + +import org.springframework.http.HttpStatus; +import org.springframework.web.bind.annotation.ResponseStatus; + +@ResponseStatus(HttpStatus.BAD_REQUEST) +public class UserFacilityNotInitializedException extends RuntimeException { + private static final long serialVersionUID = 1L; + + public UserFacilityNotInitializedException(String invalidFacility, String validFacilitiesList) { + super( + "User's facility=" + + invalidFacility + + " was not initialized. Valid facilities=" + + validFacilitiesList); + } +} diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/utils/DateTimeUtils.java b/backend/src/main/java/gov/cdc/usds/simplereport/utils/DateTimeUtils.java index 067162bde8..a6250eb083 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/utils/DateTimeUtils.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/utils/DateTimeUtils.java @@ -75,12 +75,7 @@ public static ZonedDateTime convertToZonedDateTime( // If user provided timezone code in datetime field if (hasTimezoneSubstring(dateString)) { - var timezoneCode = dateString.substring(dateString.lastIndexOf(" ")).trim(); - try { - zoneId = parseZoneId(timezoneCode); - } catch (DateTimeException e) { - zoneId = FALLBACK_TIMEZONE_ID; - } + zoneId = parseDateStringZoneId(dateString); } else { // Otherwise try to get timezone by address zoneId = resultsUploaderCachingService.getZoneIdByAddress(addressForTimezone); // If that fails, use fallback @@ -93,6 +88,24 @@ public static ZonedDateTime convertToZonedDateTime( return ZonedDateTime.of(localDateTime, zoneId); } + public static ZonedDateTime convertToZonedDateTime(String dateString) { + ZoneId zoneId = parseDateStringZoneId(dateString); + LocalDateTime localDateTime = parseLocalDateTime(dateString, DATE_TIME_FORMATTER); + return ZonedDateTime.of(localDateTime, zoneId); + } + + private static ZoneId parseDateStringZoneId(String dateString) { + ZoneId zoneId; + + var timezoneCode = dateString.substring(dateString.lastIndexOf(" ")).trim(); + try { + zoneId = parseZoneId(timezoneCode); + } catch (DateTimeException e) { + zoneId = FALLBACK_TIMEZONE_ID; + } + return zoneId; + } + public static boolean hasTimezoneSubstring(String value) { return value.matches(TIMEZONE_SUFFIX_REGEX); } diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/utils/ResultUtils.java b/backend/src/main/java/gov/cdc/usds/simplereport/utils/ResultUtils.java new file mode 100644 index 0000000000..93766556cd --- /dev/null +++ b/backend/src/main/java/gov/cdc/usds/simplereport/utils/ResultUtils.java @@ -0,0 +1,19 @@ +package gov.cdc.usds.simplereport.utils; + +import gov.cdc.usds.simplereport.db.model.auxiliary.TestCorrectionStatus; + +public class ResultUtils { + private ResultUtils() { + throw new IllegalStateException("ResultUtils is a utility class"); + } + + public static TestCorrectionStatus mapTestResultStatusToSRValue(String input) { + switch (input) { + case "C": + return TestCorrectionStatus.CORRECTED; + case "F": + default: + return TestCorrectionStatus.ORIGINAL; + } + } +} diff --git a/backend/src/main/java/gov/cdc/usds/simplereport/validators/CsvValidatorUtils.java b/backend/src/main/java/gov/cdc/usds/simplereport/validators/CsvValidatorUtils.java index 10537519ab..094cc60923 100644 --- a/backend/src/main/java/gov/cdc/usds/simplereport/validators/CsvValidatorUtils.java +++ b/backend/src/main/java/gov/cdc/usds/simplereport/validators/CsvValidatorUtils.java @@ -93,6 +93,7 @@ public class CsvValidatorUtils { private static final String DATE_TIME_REGEX = "^(0{0,1}[1-9]|1[0-2])\\/(0{0,1}[1-9]|1\\d|2\\d|3[01])\\/\\d{4}( ([0-1]?[0-9]|2[0-3]):[0-5][0-9]( \\S+)?)?$"; + private static final String LOINC_CODE_REGEX = "([0-9]{5})-[0-9]"; private static final String EMAIL_REGEX = "^[\\w-\\.]+@([\\w-]+\\.)+[\\w-]{2,4}$"; private static final String SNOMED_REGEX = "(^[0-9]{9}$)|(^[0-9]{15}$)"; private static final String CLIA_REGEX = "^[A-Za-z0-9]{2}[Dd][A-Za-z0-9]{7}$"; @@ -198,6 +199,25 @@ public class CsvValidatorUtils { private static final Set TEST_RESULT_STATUS_VALUES = Set.of("f", "c"); public static final String ITEM_SCOPE = "item"; + // http://hl7.org/fhir/R4/codesystem-data-absent-reason.html#data-absent-reason-unknown + private static final Set DATA_ABSENT_REASONS = + Set.of( + UNKNOWN_LITERAL, + "asked-unknown", + "temp-unknown", + "not-asked", + "asked-declined", + "masked", + "not-applicable", + "unsupported", + "as-text", + "error", + "not-a-number", + "negative-infinity", + "positive-infinity", + "not-performed", + "not-permitted"); + private CsvValidatorUtils() { throw new IllegalStateException("CsvValidatorUtils is a utility class"); } @@ -214,6 +234,10 @@ public static List validateTestResult(ValueOrError input) { return validateSpecificValueOrSNOMED(input, TEST_RESULT_VALUES); } + public static List validateTestPerformedCode(ValueOrError input) { + return validateRegex(input, LOINC_CODE_REGEX); + } + public static List validateSpecimenType( ValueOrError input, Map specimenNameSNOMEDMap) { List errors = new ArrayList<>(); @@ -377,6 +401,10 @@ public static Map getNextRow(MappingIterator } } + public static List validateDataAbsentReason(ValueOrError input) { + return validateInSet(input, DATA_ABSENT_REASONS); + } + public static ValueOrError getValue(Map row, String name, boolean isRequired) { String value = row.get(name); if (value != null && !value.isBlank()) { diff --git a/backend/src/main/resources/application-azure-prod.yaml b/backend/src/main/resources/application-azure-prod.yaml index c29b64b0a8..eff9d729b1 100644 --- a/backend/src/main/resources/application-azure-prod.yaml +++ b/backend/src/main/resources/application-azure-prod.yaml @@ -28,3 +28,4 @@ features: singleEntryRsvEnabled: false agnosticEnabled: false testCardRefactorEnabled: false + agnosticBulkUploadEnabled: false diff --git a/backend/src/main/resources/application.yaml b/backend/src/main/resources/application.yaml index 48341fcfff..14bcbc2cad 100644 --- a/backend/src/main/resources/application.yaml +++ b/backend/src/main/resources/application.yaml @@ -154,6 +154,7 @@ features: singleEntryRsvEnabled: true agnosticEnabled: true testCardRefactorEnabled: true + agnosticBulkUploadEnabled: true slack: hook: token: ${SLACK_HOOK_TOKEN:foo} diff --git a/backend/src/test/java/gov/cdc/usds/simplereport/api/converter/FhirConverterTest.java b/backend/src/test/java/gov/cdc/usds/simplereport/api/converter/FhirConverterTest.java index 31725c24a0..0cd23b7bc6 100644 --- a/backend/src/test/java/gov/cdc/usds/simplereport/api/converter/FhirConverterTest.java +++ b/backend/src/test/java/gov/cdc/usds/simplereport/api/converter/FhirConverterTest.java @@ -1,6 +1,7 @@ package gov.cdc.usds.simplereport.api.converter; import static gov.cdc.usds.simplereport.api.converter.FhirConstants.NOTE_TYPE_EXTENSION_URL; +import static gov.cdc.usds.simplereport.api.model.TestEventExport.UNKNOWN_ADDRESS_INDICATOR; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.from; import static org.junit.jupiter.params.provider.Arguments.arguments; @@ -460,7 +461,7 @@ void convertToPatient_Person_matchesJson() throws IOException { new PhoneNumber(PhoneType.LANDLINE, "3045551233"))); ReflectionTestUtils.setField(person, "internalId", UUID.fromString(internalId)); - var actual = fhirConverter.convertToPatient(person); + var actual = fhirConverter.convertToPatient(person, null); String actualSerialized = parser.encodeResourceToString(actual); var expectedSerialized = @@ -471,6 +472,49 @@ void convertToPatient_Person_matchesJson() throws IOException { JSONAssert.assertEquals(expectedSerialized, actualSerialized, true); } + @Test + void convertToPatientWithUnknownFields_Person_matchesJson() throws IOException { + var birthDate = LocalDate.of(2022, 12, 13); + var internalId = "3c9c7370-e2e3-49ad-bb7a-f6005f41cf29"; + var facility = TestDataBuilder.createFacility(); + var person = + new Person( + null, + null, + null, + "Austin", + "Wingate", + "Curtis", + "Jr", + birthDate, + new StreetAddress(List.of(UNKNOWN_ADDRESS_INDICATOR, ""), "", "NA", "00000", ""), + "USA", + null, + List.of("email1", "email2"), + "black", + "hispanic", + List.of("123"), + "Male", + false, + false, + "English", + null); + ReflectionTestUtils.setField(person, "phoneNumbers", Collections.emptyList()); + ReflectionTestUtils.setField(person, "internalId", UUID.fromString(internalId)); + + var actual = fhirConverter.convertToPatient(person, facility); + + String actualSerialized = parser.encodeResourceToString(actual); + var expectedSerialized = + IOUtils.toString( + Objects.requireNonNull( + getClass() + .getClassLoader() + .getResourceAsStream("fhir/patient-unknown-fields.json")), + StandardCharsets.UTF_8); + JSONAssert.assertEquals(expectedSerialized, actualSerialized, true); + } + @Test void convertToDevice_Strings_valid() { var actual = diff --git a/backend/src/test/java/gov/cdc/usds/simplereport/api/model/TestEventExportTest.java b/backend/src/test/java/gov/cdc/usds/simplereport/api/model/TestEventExportTest.java index ca61be3bd6..1b93f33758 100644 --- a/backend/src/test/java/gov/cdc/usds/simplereport/api/model/TestEventExportTest.java +++ b/backend/src/test/java/gov/cdc/usds/simplereport/api/model/TestEventExportTest.java @@ -322,4 +322,27 @@ void sendPatientInfoWithCommonDeviceDiseaseInfo() { assertEquals("covidTestkitNameId", exportedEvent2.getTestKitNameId()); assertEquals("94500-6", exportedEvent2.getOrderedTestCode()); } + + @Test + void sendPatientInfoWithUnknownFields() { + // GIVEN + // unknown address & phone number + Organization org = dataFactory.saveValidOrganization(); + Facility facility = dataFactory.createValidFacility(org); + Person person = dataFactory.createFullPersonWithUnknownAddressAndPhone(org); + TestEvent testEvent = dataFactory.createTestEvent(person, facility, TestResult.NEGATIVE, false); + + // WHEN + TestEventExport exportedEvent = new TestEventExport(testEvent); + + // THEN + // City, State, Zip, County & Phone number information should default to the facility. + assertEquals("USA", exportedEvent.getPatientCountry()); + assertEquals(person.getStreet(), exportedEvent.getPatientStreet()); + assertEquals(facility.getAddress().getCity(), exportedEvent.getPatientCity()); + assertEquals(facility.getAddress().getState(), exportedEvent.getPatientState()); + assertEquals(facility.getAddress().getPostalCode(), exportedEvent.getPatientZipCode()); + assertEquals(facility.getAddress().getCounty(), exportedEvent.getPatientCounty()); + assertEquals(facility.getTelephone(), exportedEvent.getPatientPhoneNumber()); + } } diff --git a/backend/src/test/java/gov/cdc/usds/simplereport/service/LoggedInAuthorizationServiceTest.java b/backend/src/test/java/gov/cdc/usds/simplereport/service/LoggedInAuthorizationServiceTest.java new file mode 100644 index 0000000000..196d425037 --- /dev/null +++ b/backend/src/test/java/gov/cdc/usds/simplereport/service/LoggedInAuthorizationServiceTest.java @@ -0,0 +1,20 @@ +package gov.cdc.usds.simplereport.service; + +import static org.junit.jupiter.api.Assertions.assertThrows; + +import gov.cdc.usds.simplereport.service.errors.NobodyAuthenticatedException; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.context.SecurityContextHolder; + +class LoggedInAuthorizationServiceTest extends BaseServiceTest { + @Autowired LoggedInAuthorizationService loggedInAuthorizationService; + + @Test + void findAllOrganizationRoles_NobodyAuthenticatedException() { + SecurityContextHolder.getContext().setAuthentication(null); + assertThrows( + NobodyAuthenticatedException.class, + () -> loggedInAuthorizationService.findAllOrganizationRoles()); + } +} diff --git a/backend/src/test/java/gov/cdc/usds/simplereport/test_util/TestDataFactory.java b/backend/src/test/java/gov/cdc/usds/simplereport/test_util/TestDataFactory.java index 0152baf22b..c7a157bc23 100644 --- a/backend/src/test/java/gov/cdc/usds/simplereport/test_util/TestDataFactory.java +++ b/backend/src/test/java/gov/cdc/usds/simplereport/test_util/TestDataFactory.java @@ -255,6 +255,35 @@ public Person createFullPerson(Organization org) { return createFullPersonWithTelephone(org, "202-123-4567"); } + @Transactional + public Person createFullPersonWithUnknownAddressAndPhone(Organization org) { + + Person p = + new Person( + org, + "HELLOTHERE", + "FRED", + "M", + "ASTAIRE", + null, + DEFAULT_BDAY, + getUnknownAddress(), + "USA", + PersonRole.UNKNOWN, + List.of("test@testerson.com"), + "white", + "not_hispanic", + null, + "male", + "male", + false, + false, + "English", + TestResultDeliveryPreference.NONE, + "NOTES AND STUFF AND THINGS"); + return personRepository.save(p); + } + @Transactional public Person createFullPersonWithPreferredLanguage(Organization org, String language) { // consts are to keep style check happy othewise it complains about @@ -616,6 +645,10 @@ public StreetAddress getFullAddress() { "736 Jackson PI NW", "APT. 123", "Washington", "DC", "20503", "Washington"); } + public StreetAddress getUnknownAddress() { + return new StreetAddress("** Unknown / Not Given **", null, null, "NA", "00000", null); + } + public static List getListOfOnePhoneNumber() { return List.of(new PhoneNumber(PhoneType.MOBILE, "(503) 867-5309")); } diff --git a/backend/src/test/java/gov/cdc/usds/simplereport/utils/DateTimeUtilsTest.java b/backend/src/test/java/gov/cdc/usds/simplereport/utils/DateTimeUtilsTest.java index 512561c2a8..31de30d27e 100644 --- a/backend/src/test/java/gov/cdc/usds/simplereport/utils/DateTimeUtilsTest.java +++ b/backend/src/test/java/gov/cdc/usds/simplereport/utils/DateTimeUtilsTest.java @@ -56,6 +56,15 @@ void testConvertToZonedDateTime_withFallback() { testConvertToZonedDateTime("6/28/2023 14:00", ZoneId.of("US/Eastern")); } + @Test + void testConvertToZonedDateTime_withFallbackWithJustString() { + String dateString = "6/28/2023 14:00"; + + var actualZonedDateTime = convertToZonedDateTime(dateString); + var expectedZonedDateTime = ZonedDateTime.of(2023, 6, 28, 14, 0, 0, 0, ZoneId.of("US/Eastern")); + assertThat(actualZonedDateTime).hasToString(expectedZonedDateTime.toString()); + } + @Test void testConvertToZonedDateTime_withICANNTzIdentifier() { testConvertToZonedDateTime("6/28/2023 14:00 US/Samoa", ZoneId.of("US/Samoa")); diff --git a/backend/src/test/java/gov/cdc/usds/simplereport/validators/ConditionAgnosticResultRowTest.java b/backend/src/test/java/gov/cdc/usds/simplereport/validators/ConditionAgnosticResultRowTest.java new file mode 100644 index 0000000000..445665880d --- /dev/null +++ b/backend/src/test/java/gov/cdc/usds/simplereport/validators/ConditionAgnosticResultRowTest.java @@ -0,0 +1,207 @@ +package gov.cdc.usds.simplereport.validators; + +import static gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow.PATIENT_ADMIN_GENDER; +import static gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow.PATIENT_FIRST_NAME; +import static gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow.PATIENT_ID; +import static gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow.PATIENT_LAST_NAME; +import static gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow.PATIENT_NAME_ABSENT_REASON; +import static gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow.TEST_PERFORMED_CODE; +import static gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow.TEST_RESULT_EFFECTIVE_DATE; +import static gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow.TEST_RESULT_STATUS; +import static gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow.TEST_RESULT_VALUE; +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.from; + +import gov.cdc.usds.simplereport.api.model.filerow.ConditionAgnosticResultRow; +import gov.cdc.usds.simplereport.service.model.reportstream.FeedbackMessage; +import gov.cdc.usds.simplereport.test_util.TestErrorMessageUtil; +import gov.cdc.usds.simplereport.validators.CsvValidatorUtils.ValueOrError; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.springframework.test.context.junit.jupiter.SpringExtension; + +@ExtendWith(SpringExtension.class) +class ConditionAgnosticResultRowTest { + Map validRowMap; + final List requiredFields = + List.of( + TEST_RESULT_STATUS, + TEST_RESULT_EFFECTIVE_DATE, + TEST_PERFORMED_CODE, + TEST_RESULT_VALUE, + PATIENT_ID, + PATIENT_ADMIN_GENDER); + final List individualFields = + List.of( + TEST_RESULT_STATUS, + TEST_RESULT_EFFECTIVE_DATE, + TEST_PERFORMED_CODE, + TEST_RESULT_VALUE, + PATIENT_ADMIN_GENDER, + PATIENT_NAME_ABSENT_REASON); + + @BeforeEach + public void init() { + validRowMap = new HashMap<>(); + + validRowMap.put(PATIENT_ID, "1234"); + validRowMap.put(PATIENT_LAST_NAME, "Doe"); + validRowMap.put(PATIENT_FIRST_NAME, "Jane"); + validRowMap.put(PATIENT_ADMIN_GENDER, "F"); + validRowMap.put(PATIENT_NAME_ABSENT_REASON, ""); + + validRowMap.put(TEST_PERFORMED_CODE, "94534-5"); + validRowMap.put(TEST_RESULT_VALUE, "Detected"); + validRowMap.put(TEST_RESULT_EFFECTIVE_DATE, "12/20/2021 14:00"); + validRowMap.put(TEST_RESULT_STATUS, "F"); + } + + @Test + void processRowSetsAllValues() { + var conditionAgnosticResultRow = new ConditionAgnosticResultRow(validRowMap); + + assertThat(conditionAgnosticResultRow) + .returns( + validRowMap.get(PATIENT_ID), + from(ConditionAgnosticResultRow::getPatientId).andThen(ValueOrError::getValue)) + .returns( + validRowMap.get(PATIENT_LAST_NAME), + from(ConditionAgnosticResultRow::getPatientLastName).andThen(ValueOrError::getValue)) + .returns( + validRowMap.get(PATIENT_FIRST_NAME), + from(ConditionAgnosticResultRow::getPatientFirstName).andThen(ValueOrError::getValue)) + .returns( + validRowMap.get(PATIENT_ADMIN_GENDER), + from(ConditionAgnosticResultRow::getPatientAdminGender).andThen(ValueOrError::getValue)) + .returns( + validRowMap.get(PATIENT_NAME_ABSENT_REASON), + from(ConditionAgnosticResultRow::getPatientNameAbsentReason) + .andThen(ValueOrError::getValue)) + .returns( + validRowMap.get(TEST_PERFORMED_CODE), + from(ConditionAgnosticResultRow::getTestPerformedCode).andThen(ValueOrError::getValue)) + .returns( + validRowMap.get(TEST_RESULT_VALUE), + from(ConditionAgnosticResultRow::getTestResultValue).andThen(ValueOrError::getValue)) + .returns( + validRowMap.get(TEST_RESULT_EFFECTIVE_DATE), + from(ConditionAgnosticResultRow::getTestResultEffectiveDate) + .andThen(ValueOrError::getValue)) + .returns( + validRowMap.get(TEST_RESULT_STATUS), + from(ConditionAgnosticResultRow::getTestResultStatus).andThen(ValueOrError::getValue)); + } + + @Test + void validateRequiredFieldsReturnsErrorsForAllEmptyRequiredFields() { + var conditionAgnosticRow = new ConditionAgnosticResultRow(new HashMap<>()); + + var actual = conditionAgnosticRow.validateRequiredFields(); + + var messages = actual.stream().map(FeedbackMessage::getMessage).collect(Collectors.toSet()); + + assertThat(actual).hasSize(requiredFields.size() + 1); + requiredFields.forEach( + fieldName -> + assertThat(messages).contains("File is missing data in the " + fieldName + " column.")); + } + + @Test + void validateIndividualFields() { + var invalidIndividualFields = validRowMap; + + invalidIndividualFields.put(PATIENT_ADMIN_GENDER, "not a valid one"); + invalidIndividualFields.put(PATIENT_NAME_ABSENT_REASON, "not a valid one"); + invalidIndividualFields.put(TEST_RESULT_STATUS, "complete"); + invalidIndividualFields.put(TEST_RESULT_EFFECTIVE_DATE, "0/0/00"); + invalidIndividualFields.put(TEST_PERFORMED_CODE, "not a valid one"); + invalidIndividualFields.put(TEST_RESULT_VALUE, "not a valid one"); + + var conditionAgnosticRow = new ConditionAgnosticResultRow(invalidIndividualFields); + + var actual = conditionAgnosticRow.validateIndividualValues(); + + var messages = + actual.stream() + .map( + message -> + TestErrorMessageUtil.getColumnNameFromInvalidErrorMessage(message.getMessage())) + .collect(Collectors.toSet()); + assertThat(actual).hasSize(individualFields.size()); + individualFields.forEach(fieldName -> assertThat(messages).contains(fieldName)); + } + + @Test + void validateRowWithPresentFirstAndLastNameAndAbsentNameAbsentReason() { + var rowToCheck = validRowMap; + rowToCheck.remove(PATIENT_NAME_ABSENT_REASON); + + var conditionAgnosticRow = new ConditionAgnosticResultRow(rowToCheck); + + var shouldHaveNoErrors = conditionAgnosticRow.validateRequiredFields(); + assertThat(shouldHaveNoErrors).isEmpty(); + } + + @Test + void validateRowWithPresentFirstNameAndAbsentLastNameAndNameAbsentReason() { + var rowToCheck = validRowMap; + rowToCheck.remove(PATIENT_FIRST_NAME); + rowToCheck.remove(PATIENT_NAME_ABSENT_REASON); + + var conditionAgnosticRow = new ConditionAgnosticResultRow(rowToCheck); + + var shouldHaveNoErrors = conditionAgnosticRow.validateRequiredFields(); + assertThat(shouldHaveNoErrors).isEmpty(); + } + + @Test + void validateRowWithPresentLastNameAndAbsentFirstNameAndNameAbsentReason() { + var rowToCheck = validRowMap; + rowToCheck.remove(PATIENT_LAST_NAME); + rowToCheck.remove(PATIENT_NAME_ABSENT_REASON); + + var conditionAgnosticRow = new ConditionAgnosticResultRow(rowToCheck); + + var shouldHaveNoErrors = conditionAgnosticRow.validateRequiredFields(); + assertThat(shouldHaveNoErrors).isEmpty(); + } + + @Test + void validateRowWithPresentNameAbsentReasonAndAbsentName() { + var rowToCheck = validRowMap; + rowToCheck.remove(PATIENT_LAST_NAME); + rowToCheck.remove(PATIENT_FIRST_NAME); + rowToCheck.put(PATIENT_NAME_ABSENT_REASON, "Unknown"); + + var conditionAgnosticRow = new ConditionAgnosticResultRow(rowToCheck); + + var shouldHaveNoRequiredErrors = conditionAgnosticRow.validateRequiredFields(); + var shouldHaveNoValueErrors = conditionAgnosticRow.validateIndividualValues(); + + assertThat(shouldHaveNoRequiredErrors).isEmpty(); + assertThat(shouldHaveNoValueErrors).isEmpty(); + } + + @Test + void validateRowWithoutNameOrNameAbsentReasonReturnsErrorForPatientNameAbsentReason() { + var rowToCheck = validRowMap; + rowToCheck.remove(PATIENT_NAME_ABSENT_REASON); + rowToCheck.remove(PATIENT_FIRST_NAME); + rowToCheck.remove(PATIENT_LAST_NAME); + + var conditionAgnosticRow = new ConditionAgnosticResultRow(rowToCheck); + + var actual = conditionAgnosticRow.validateRequiredFields(); + + var messages = actual.stream().map(FeedbackMessage::getMessage).collect(Collectors.toSet()); + + assertThat(actual).hasSize(1); + assertThat(messages) + .contains("File is missing data in the " + PATIENT_NAME_ABSENT_REASON + " column."); + } +} diff --git a/backend/src/test/resources/fhir/patient-unknown-fields.json b/backend/src/test/resources/fhir/patient-unknown-fields.json new file mode 100644 index 0000000000..de0a1cab81 --- /dev/null +++ b/backend/src/test/resources/fhir/patient-unknown-fields.json @@ -0,0 +1,97 @@ +{ + "resourceType": "Patient", + "identifier": [ + { + "value": "3c9c7370-e2e3-49ad-bb7a-f6005f41cf29" + } + ], + "extension": [ + { + "url": "http://ibm.com/fhir/cdm/StructureDefinition/local-race-cd", + "valueCodeableConcept": { + "coding": [ + { + "system": "http://terminology.hl7.org/CodeSystem/v3-Race", + "code": "2054-5" + } + ], + "text": "black" + } + }, + { + "url": "https://reportstream.cdc.gov/fhir/StructureDefinition/ethnic-group", + "valueCodeableConcept": { + "coding": [ + { + "system": "http://terminology.hl7.org/CodeSystem/v2-0189", + "code": "H", + "display": "Hispanic or Latino" + } + ], + "text": "Hispanic or Latino" + } + }, + { + "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation", + "extension": [ + { + "url": "tribalAffiliation", + "valueCodeableConcept": { + "coding": [ + { + "system": "http://terminology.hl7.org/CodeSystem/v3-TribalEntityUS", + "code": "123", + "display": "Keweenaw Bay Indian Community, Michigan" + } + ], + "text": "Keweenaw Bay Indian Community, Michigan" + } + } + ] + } + ], + "id": "3c9c7370-e2e3-49ad-bb7a-f6005f41cf29", + "name": [ + { + "family": "Curtis", + "given": [ + "Austin", + "Wingate" + ], + "suffix": [ + "Jr" + ] + } + ], + "telecom": [ + { + "system": "phone", + "value": "(555) 867 5309", + "use": "home" + }, + { + "system": "email", + "value": "email1", + "use": "home" + }, + { + "system": "email", + "value": "email2", + "use": "home" + } + ], + "gender": "male", + "birthDate": "2022-12-13", + "address": [ + { + "line": [ + "** Unknown / Not Given **" + ], + "city": "Washington", + "district": "Washington", + "state": "DC", + "postalCode": "20503", + "country": "USA" + } + ] +} \ No newline at end of file diff --git a/cypress/package.json b/cypress/package.json index 6c5c6f89e7..4ab482163b 100644 --- a/cypress/package.json +++ b/cypress/package.json @@ -8,7 +8,7 @@ "cypress-localstorage-commands": "^2.2.4", "dayjs": "^1.11.10", "eslint": "^8.50.0", - "eslint-plugin-cypress": "^2.14.0", + "eslint-plugin-cypress": "^2.15.1", "otplib": "^12.0.1", "prettier": "3.0.3" }, @@ -22,7 +22,7 @@ "lint:write": "eslint --fix . && prettier . --write" }, "dependencies": { - "axe-core": "^4.8.1", + "axe-core": "^4.8.2", "cypress-axe": "^1.5.0" } } diff --git a/cypress/yarn.lock b/cypress/yarn.lock index 4c03263275..f794dc68aa 100644 --- a/cypress/yarn.lock +++ b/cypress/yarn.lock @@ -285,10 +285,10 @@ aws4@^1.8.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== -axe-core@^4.8.1: - version "4.8.1" - resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.8.1.tgz#6948854183ee7e7eae336b9877c5bafa027998ea" - integrity sha512-9l850jDDPnKq48nbad8SiEelCv4OrUWrKab/cPj0GScVg6cb6NbCCt/Ulk26QEq5jP9NnGr04Bit1BHyV6r5CQ== +axe-core@^4.8.2: + version "4.8.2" + resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.8.2.tgz#2f6f3cde40935825cf4465e3c1c9e77b240ff6ae" + integrity sha512-/dlp0fxyM3R8YW7MFzaHWXrf4zzbr0vaYb23VBFCl83R7nWNPg/yaQw2Dc8jzCMmDVLhSdzH8MjrsuIUuvX+6g== balanced-match@^1.0.0: version "1.0.2" @@ -596,10 +596,10 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -eslint-plugin-cypress@^2.14.0: - version "2.14.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-cypress/-/eslint-plugin-cypress-2.14.0.tgz#c65e1f592680dd25bbd00c86194ee85fecf59bd7" - integrity sha512-eW6tv7iIg7xujleAJX4Ujm649Bf5jweqa4ObPEIuueYRyLZt7qXGWhCY/n4bfeFW/j6nQZwbIBHKZt6EKcL/cg== +eslint-plugin-cypress@^2.15.1: + version "2.15.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-cypress/-/eslint-plugin-cypress-2.15.1.tgz#336afa7e8e27451afaf65aa359c9509e0a4f3a7b" + integrity sha512-eLHLWP5Q+I4j2AWepYq0PgFEei9/s5LvjuSqWrxurkg1YZ8ltxdvMNmdSf0drnsNo57CTgYY/NIHHLRSWejR7w== dependencies: globals "^13.20.0" diff --git a/frontend/package.json b/frontend/package.json index b2793f57d2..55581c3dcf 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -49,7 +49,7 @@ "react-transition-group": "^4.4.5", "react-uid": "^2.3.3", "redux": "^4.2.1", - "smartystreets-javascript-sdk": "^2.1.2", + "smartystreets-javascript-sdk": "^3.2.0", "uuid": "^9.0.1", "yup": "^0.32.9" }, @@ -176,18 +176,18 @@ "@graphql-codegen/typescript": "^4.0.1", "@graphql-codegen/typescript-operations": "^4.0.1", "@graphql-codegen/typescript-react-apollo": "^4.0.0", - "@storybook/addon-a11y": "^7.4.2", - "@storybook/addon-actions": "^7.4.2", - "@storybook/addon-essentials": "^7.4.2", - "@storybook/addon-interactions": "^7.4.2", - "@storybook/addon-links": "^7.4.2", - "@storybook/addon-mdx-gfm": "^7.4.2", - "@storybook/blocks": "^7.4.2", - "@storybook/cli": "^7.4.2", - "@storybook/node-logger": "^7.3.2", - "@storybook/preset-create-react-app": "^7.4.2", - "@storybook/react": "^7.4.2", - "@storybook/react-webpack5": "^7.4.2", + "@storybook/addon-a11y": "^7.4.6", + "@storybook/addon-actions": "^7.4.6", + "@storybook/addon-essentials": "^7.4.6", + "@storybook/addon-interactions": "^7.4.6", + "@storybook/addon-links": "^7.4.6", + "@storybook/addon-mdx-gfm": "^7.4.6", + "@storybook/blocks": "^7.4.6", + "@storybook/cli": "^7.4.6", + "@storybook/node-logger": "^7.4.6", + "@storybook/preset-create-react-app": "^7.4.6", + "@storybook/react": "^7.4.6", + "@storybook/react-webpack5": "^7.4.6", "@storybook/testing-library": "^0.2.1", "@testing-library/jest-dom": "^6.1.3", "@types/apollo-upload-client": "^17.0.0", @@ -226,7 +226,7 @@ "prettier": "^2.8.4", "redux-mock-store": "^1.5.4", "sass": "^1.63.6", - "storybook": "^7.4.2", + "storybook": "^7.4.6", "stylelint": "^13.13.1", "stylelint-config-standard": "^22.0.0", "typescript": "^5.0.3", diff --git a/frontend/public/index.html b/frontend/public/index.html index 79365e7351..61fb1f22df 100644 --- a/frontend/public/index.html +++ b/frontend/public/index.html @@ -1,47 +1,47 @@ - - <% if (process.env.NODE_ENV !== 'development') { %> - - <% } %> - - - - - - - - - - %REACT_APP_TITLE% - - - -
- + + %REACT_APP_TITLE% + + + +
+ - +To begin the development, run `yarn start`. +To create a production bundle, use `yarn build`. +--> + diff --git a/frontend/src/app/Settings/Users/UserFacilitiesSettingsForm.tsx b/frontend/src/app/Settings/Users/UserFacilitiesSettingsForm.tsx index 8d7ae0c406..11aa79f0bb 100644 --- a/frontend/src/app/Settings/Users/UserFacilitiesSettingsForm.tsx +++ b/frontend/src/app/Settings/Users/UserFacilitiesSettingsForm.tsx @@ -80,15 +80,15 @@ const UserFacilitiesSettingsForm: React.FC = ({ } }, [hasAllFacilityAccess, activeUser, onUpdateUser, allFacilities]); - const userFacilities = useMemo( - () => - hasAllFacilityAccess - ? [...allFacilities] - : activeUser.organization - ? [...activeUser.organization.testingFacility] - : [], - [activeUser, allFacilities, hasAllFacilityAccess] - ); + const userFacilities = useMemo(() => { + if (hasAllFacilityAccess) { + return [...allFacilities]; + } else if (activeUser.organization) { + return [...activeUser.organization.testingFacility]; + } else { + return []; + } + }, [activeUser, allFacilities, hasAllFacilityAccess]); userFacilities.sort(alphabeticalFacilitySort); diff --git a/frontend/src/app/constants/constants.d.ts b/frontend/src/app/constants/constants.d.ts index 84efbf7428..99c9f2c862 100644 --- a/frontend/src/app/constants/constants.d.ts +++ b/frontend/src/app/constants/constants.d.ts @@ -607,6 +607,8 @@ interface PersonUpdate extends Address { preferredLanguage: Language | null; notes: string | null; testResultDelivery: TestResultDeliveryPreference | null; + unknownPhoneNumber: boolean; + unknownAddress: boolean; } interface Person extends PersonUpdate { diff --git a/frontend/src/app/patients/AddPatient.test.tsx b/frontend/src/app/patients/AddPatient.test.tsx index 61ae6eb230..0fb63c9d8e 100644 --- a/frontend/src/app/patients/AddPatient.test.tsx +++ b/frontend/src/app/patients/AddPatient.test.tsx @@ -96,6 +96,22 @@ describe("AddPatient", () => { expect(screen.queryByText("State")).not.toBeInTheDocument(); expect(screen.queryByText("ZIP code")).not.toBeInTheDocument(); }); + + it("should hide address fields for unknown address checked", async () => { + const { user } = renderWithUserWithFacility(); + await user.click( + screen.getByText("Address unknown or patient unhoused", { + exact: false, + }) + ); + expect(screen.queryByText("Country")).not.toBeInTheDocument(); + expect(screen.queryByText("Street address 1")).not.toBeInTheDocument(); + expect(screen.queryByText("Street address 2")).not.toBeInTheDocument(); + expect(screen.queryByText("City")).not.toBeInTheDocument(); + expect(screen.queryByText("County")).not.toBeInTheDocument(); + expect(screen.queryByText("State")).not.toBeInTheDocument(); + expect(screen.queryByText("ZIP code")).not.toBeInTheDocument(); + }); }); describe("facility select input", () => { @@ -132,5 +148,23 @@ describe("AddPatient", () => { expect(await screen.findByText("Student ID")).toBeInTheDocument(); }); }); + + describe("With unknown phone number", () => { + it("should hide phone number fields when unknown phone number checked.", async () => { + const { user } = renderWithUserWithFacility(); + + expect(screen.getByText("Primary phone number")).toBeInTheDocument(); + expect(screen.getByText("Phone type")).toBeInTheDocument(); + + await user.click( + screen.getByText("Phone number unknown", { exact: false }) + ); + + expect( + screen.queryByText("Primary phone number") + ).not.toBeInTheDocument(); + expect(screen.queryByText("Phone type")).not.toBeInTheDocument(); + }); + }); }); }); diff --git a/frontend/src/app/patients/AddPatient.tsx b/frontend/src/app/patients/AddPatient.tsx index 143f46760f..bac3fbc000 100644 --- a/frontend/src/app/patients/AddPatient.tsx +++ b/frontend/src/app/patients/AddPatient.tsx @@ -53,6 +53,8 @@ export const EMPTY_PERSON: Nullable = { country: "USA", preferredLanguage: null, testResultDelivery: null, + unknownPhoneNumber: false, + unknownAddress: false, notes: null, }; diff --git a/frontend/src/app/patients/AddPatientTestUtils.tsx b/frontend/src/app/patients/AddPatientTestUtils.tsx index 45d786ad61..598c386947 100644 --- a/frontend/src/app/patients/AddPatientTestUtils.tsx +++ b/frontend/src/app/patients/AddPatientTestUtils.tsx @@ -109,6 +109,8 @@ const addPatientRequestParams = { facilityId: mockFacilityID, preferredLanguage: null, testResultDelivery: "SMS", + unknownAddress: false, + unknownPhoneNumber: false, }; const addPatientRequestNoDelivery = { diff --git a/frontend/src/app/patients/Components/ManageEmails.test.tsx b/frontend/src/app/patients/Components/ManageEmails.test.tsx index b631fbd6bb..8129234fc2 100644 --- a/frontend/src/app/patients/Components/ManageEmails.test.tsx +++ b/frontend/src/app/patients/Components/ManageEmails.test.tsx @@ -41,6 +41,8 @@ const patient = { testResultDelivery: null, preferredLanguage: null, tribalAffiliation: null, + unknownPhoneNumber: false, + unknownAddress: false, notes: null, }; diff --git a/frontend/src/app/patients/Components/ManageEmails.tsx b/frontend/src/app/patients/Components/ManageEmails.tsx index 6ed1bdf81b..5526a2920d 100644 --- a/frontend/src/app/patients/Components/ManageEmails.tsx +++ b/frontend/src/app/patients/Components/ManageEmails.tsx @@ -134,7 +134,7 @@ const ManageEmails: React.FC = ({ ([]); + const [unknownPhoneNumber, setUnknownPhoneNumber] = useState(false); return ( ); } @@ -117,4 +120,27 @@ describe("ManagePhoneNumbers", () => { expect(second).not.toBeInTheDocument(); }); }); + it("unknown number checkbox hides and displays phone number inputs", async () => { + const { user } = renderWithUser(); + const phoneNumberInput = await screen.findByLabelText( + "Primary phone number", + { exact: false } + ); + const phoneType = await screen.findByTestId("phoneType-0"); + expect(phoneNumberInput).toBeInTheDocument(); + expect(phoneType).toBeInTheDocument(); + + const checkbox = await screen.findByLabelText("Phone number unknown", { + exact: false, + }); + await user.click(checkbox); + expect(phoneNumberInput).not.toBeInTheDocument(); + expect(phoneType).not.toBeInTheDocument(); + + await user.click(checkbox); + expect(await screen.findByTestId("phoneType-0")).toBeInTheDocument(); + expect( + await screen.findByLabelText("Primary phone number", { exact: false }) + ).toBeInTheDocument(); + }); }); diff --git a/frontend/src/app/patients/Components/ManagePhoneNumbers.tsx b/frontend/src/app/patients/Components/ManagePhoneNumbers.tsx index e61f695e65..2573c539d2 100644 --- a/frontend/src/app/patients/Components/ManagePhoneNumbers.tsx +++ b/frontend/src/app/patients/Components/ManagePhoneNumbers.tsx @@ -1,6 +1,7 @@ import React, { useCallback, useState, useMemo, useEffect } from "react"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useTranslation } from "react-i18next"; +import { Checkbox } from "@trussworks/react-uswds"; import Button from "../../commonComponents/Button/Button"; import Input from "../../commonComponents/Input"; @@ -21,6 +22,8 @@ interface Props { testResultDelivery: TestResultDeliveryPreference ) => void; phoneNumberValidator: React.MutableRefObject; + unknownPhoneNumber?: boolean; + setUnknownPhoneNumber: (unknownPhoneNumber: boolean) => void; } const ManagePhoneNumbers: React.FC = ({ @@ -29,6 +32,8 @@ const ManagePhoneNumbers: React.FC = ({ updatePhoneNumbers, updateTestResultDelivery, phoneNumberValidator, + unknownPhoneNumber, + setUnknownPhoneNumber, }) => { const [errors, setErrors] = useState([]); @@ -84,10 +89,12 @@ const ManagePhoneNumbers: React.FC = ({ const validateField = useCallback( async (idx: number, field: keyof PhoneNumber) => { try { - await phoneNumberUpdateSchema.validateAt( - field, - phoneNumbersOrDefault[idx] - ); + if (!unknownPhoneNumber) { + await phoneNumberUpdateSchema.validateAt( + field, + phoneNumbersOrDefault[idx] + ); + } clearError(idx, field); } catch (e: any) { setErrors((existingErrors) => { @@ -102,6 +109,7 @@ const ManagePhoneNumbers: React.FC = ({ } }, [ + unknownPhoneNumber, phoneNumbersOrDefault, clearError, phoneNumberUpdateSchema, @@ -121,6 +129,14 @@ const ManagePhoneNumbers: React.FC = ({ phoneNumberValidator.current = validatePhoneNumbers; }, [phoneNumberValidator, validatePhoneNumbers]); + useEffect(() => { + if (unknownPhoneNumber) { + updatePhoneNumbers([]); + clearError(0, "type", "number"); + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [unknownPhoneNumber]); + // Make sure all existing errors are up-to-date (including translations) useEffect(() => { errors.forEach((phone, idx) => { @@ -262,32 +278,45 @@ const ManagePhoneNumbers: React.FC = ({ return (
- {generatePhoneNumberRows()} -
)} ); diff --git a/frontend/src/app/patients/Components/PersonAddressField.tsx b/frontend/src/app/patients/Components/PersonAddressField.tsx new file mode 100644 index 0000000000..7b6cc8d08e --- /dev/null +++ b/frontend/src/app/patients/Components/PersonAddressField.tsx @@ -0,0 +1,165 @@ +import React from "react"; +import { Checkbox } from "@trussworks/react-uswds"; +import { useTranslation } from "react-i18next"; + +import Select from "../../commonComponents/Select"; +import { + canadianProvinceCodes, + countryOptions, + stateCodes, +} from "../../../config/constants"; +import Input from "../../commonComponents/Input"; +import { PersonErrors } from "../personSchema"; + +import { PersonFormView } from "./PersonForm"; + +interface PersonAddressFieldProps { + view: PersonFormView; + formObject: Nullable; + onChange: ( + field: K + ) => (value: PersonFormData[K]) => void; + validate: (field: keyof PersonErrors) => Promise; + getValidationStatus: (name: keyof PersonFormData) => "error" | undefined; + errors: Partial>; +} + +const PersonAddressField: React.FC = ( + addressFieldProps +) => { + const { t } = useTranslation(); + const { view, ...commonInputProps } = addressFieldProps; + const { + formObject: patient, + onChange: onPersonChange, + validate: onBlurField, + errors, + getValidationStatus, + } = commonInputProps; + + return ( + <> + { + onPersonChange("unknownAddress")(e.target.checked); + }} + /> + {!patient.unknownAddress && ( +
+
+ +
+
+ +
+
+ + {view !== PersonFormView.SELF_REGISTRATION && ( + + )} + {patient.country === "USA" ? ( +
+
+ +
+
+ ) : null} + {patient.country === "CAN" ? ( +
+
+ +
+
+ ) : null} +
+
+ )} + + ); +}; + +export default PersonAddressField; diff --git a/frontend/src/app/patients/Components/PersonForm.scss b/frontend/src/app/patients/Components/PersonForm.scss new file mode 100644 index 0000000000..406210587d --- /dev/null +++ b/frontend/src/app/patients/Components/PersonForm.scss @@ -0,0 +1,8 @@ +.sr-patient-sub-header { + font-weight: bold; + display: block; + margin-block-start: 1.33em; + margin-block-end: 1.33em; + margin-inline-start: 0; + margin-inline-end: 0; +} diff --git a/frontend/src/app/patients/Components/PersonForm.tsx b/frontend/src/app/patients/Components/PersonForm.tsx index ce156255f9..21d7a57e45 100644 --- a/frontend/src/app/patients/Components/PersonForm.tsx +++ b/frontend/src/app/patients/Components/PersonForm.tsx @@ -3,11 +3,6 @@ import { SchemaOf } from "yup"; import { useTranslation } from "react-i18next"; import { ComboBox, Label, Textarea } from "@trussworks/react-uswds"; -import { - canadianProvinceCodes, - countryOptions, - stateCodes, -} from "../../../config/constants"; import getLanguages from "../../utils/languages"; import i18n from "../../../i18n"; import { @@ -47,6 +42,8 @@ import YesNoNotSureRadioGroup, { import FacilitySelect from "./FacilitySelect"; import ManagePhoneNumbers from "./ManagePhoneNumbers"; import ManageEmails from "./ManageEmails"; +import "./PersonForm.scss"; +import PersonAddressField from "./PersonAddressField"; export type ValidateField = (field: keyof PersonErrors) => Promise; @@ -79,6 +76,7 @@ const PersonForm = (props: Props) => { const [formChanged, setFormChanged] = useState(false); const [startTest, setStartTest] = useState(false); const [patient, setPatient] = useState(props.patient); + // Default country to USA if it's not set if (patient.country === null) { setPatient({ ...patient, country: "USA" }); @@ -169,6 +167,26 @@ const PersonForm = (props: Props) => { if (value === patient[field]) { return; } + if (field === "unknownAddress") { + setFormChanged(true); + + //if unknown address set to a valid default; else an empty string + const state = value ? "NA" : ""; + const zip = value ? "00000" : ""; + const street = value ? "** Unknown / Not Given **" : ""; + + setPatient({ + ...patient, + [field]: value, + state: state, + zipCode: zip, + street: street, + streetTwo: "", + city: "", + county: "", + }); + return; + } // If a patient has an international address, use special values for state and zip code if (field === "country") { setFormChanged(true); @@ -325,7 +343,8 @@ const PersonForm = (props: Props) => { if ( JSON.stringify(getAddress(patient)) === JSON.stringify(getAddress(props.patient)) || - patient.country !== "USA" + patient.country !== "USA" || + patient.unknownAddress ) { onSave(undefined, shouldStartTest); } else { @@ -468,13 +487,21 @@ const PersonForm = (props: Props) => {

{t("patient.form.contact.helpText")}

+
+ {t("patient.form.contact.phoneHeading")} +
+
+ {t("patient.form.contact.emailHeading")} +
{ /> )}
-
- -
-
- -
-
- - {view !== PersonFormView.SELF_REGISTRATION && ( - - )} - {patient.country === "USA" ? ( -
-
- -
-
- ) : null} - {patient.country === "CAN" ? ( -
-
- -
-
- ) : null} +
+ {t("patient.form.contact.addressHeading")}
+
); + const phoneNumberComparator = (x: PhoneNumber, y: PhoneNumber) => { + // A patient's primary phone number is returned in the + // query as `telephone` and should be the first element + // of the array of phone numbers + if (x.number === data.patient.telephone) { + return -1; + } else if (y.number === data.patient.telephone) { + return 1; + } + return 0; + }; + return (
@@ -370,24 +382,17 @@ const EditPatient = (props: Props) => { ...data.patient, tribalAffiliation: data.patient.tribalAffiliation?.[0] || undefined, - phoneNumbers: data.patient.phoneNumbers.sort(function ( - x: PhoneNumber, - y: PhoneNumber - ) { - // A patient's primary phone number is returned in the - // query as `telephone` and should be the first element - // of the array of phone numbers - return x.number === data.patient.telephone - ? -1 - : y.number === data.patient.telephone - ? 1 - : 0; - }), + phoneNumbers: data.patient.phoneNumbers.sort( + phoneNumberComparator + ), facilityId: data.patient.facility === null ? null : data.patient.facility?.id, city: data.patient.city === null ? "" : data.patient.city, + unknownPhoneNumber: data.patient.phoneNumbers.length === 0, + unknownAddress: + data.patient.street === "** Unknown / Not Given **", }} patientId={props.patientId} savePerson={savePerson} diff --git a/frontend/src/app/patients/UploadPatients.test.tsx b/frontend/src/app/patients/UploadPatients.test.tsx index 8688a93cb6..aee2a0049a 100644 --- a/frontend/src/app/patients/UploadPatients.test.tsx +++ b/frontend/src/app/patients/UploadPatients.test.tsx @@ -383,11 +383,23 @@ describe("Upload Patient", () => { }); it("should show loading message when file is being processed", async () => { const { user } = renderUploadPatients(); + const errorResponseBody = { + status: "FAILURE", + errors: [ + { + indices: [], + message: "File is missing headers and other required data", + }, + ], + }; + let mockResponse = new Response(JSON.stringify(errorResponseBody), { + status: 200, + }); jest .spyOn(FileUploadService, "uploadPatients") .mockImplementation(async () => { - await new Promise((resolve) => setTimeout(resolve, 500)); - return Promise.resolve(new Response()); + await new Promise((resolve) => setTimeout(resolve, 100)); + return Promise.resolve(mockResponse); }); await userEventUpload(user, file("abc"), "All facilities"); @@ -395,8 +407,11 @@ describe("Upload Patient", () => { expect( await screen.findByText("Uploading patient information...") ).toBeInTheDocument(); - }); + expect( + await screen.findByText("Error: File not accepted") + ).toBeInTheDocument(); + }); it("should show error if empty file is provided", async () => { const { user } = renderUploadPatients(); diff --git a/frontend/src/app/patients/__snapshots__/EditPatient.test.tsx.snap b/frontend/src/app/patients/__snapshots__/EditPatient.test.tsx.snap index c4edd5a387..ed9a08e687 100644 --- a/frontend/src/app/patients/__snapshots__/EditPatient.test.tsx.snap +++ b/frontend/src/app/patients/__snapshots__/EditPatient.test.tsx.snap @@ -1963,60 +1963,164 @@ exports[`EditPatient facility select input matches screenshot 1`] = ` > You're responsible for entering correct contact information, following applicable federal and state laws.

+
+ Phone +
-
-
+ + +
+
+
- - + Primary phone number + + + * + + + +
+
+
+
+ + Phone type + + + * + + +
+
+ + +
+
+ + +
+
+
+
- Phone type - - - * - + Would you like to receive your results via text message?
- -
-
- - Would you like to receive your results via text message? - -
-
- - -
-
- - -
-
-
-
+
+
+ Email
+ Address +
+
+ + +
+
- - - Bermuda - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
-
- - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
-
-
- - + + +
-
-
- - + Street address 2 + + +
- - + + +
+
+ + +
{ phoneNumbers = []; }); - it("returns false on empty input", () => { - expect(areValidPhoneNumbers(phoneNumbers)).toBe(false); + it("returns true on empty input", () => { + //phone numbers are conditionally required, based on a field outside the phone number array. + expect(areValidPhoneNumbers(phoneNumbers)).toBe(true); }); it("returns false if primary phone number is not provided", () => { diff --git a/frontend/src/app/patients/personSchema.ts b/frontend/src/app/patients/personSchema.ts index 99171b7d74..f5b7ec9be3 100644 --- a/frontend/src/app/patients/personSchema.ts +++ b/frontend/src/app/patients/personSchema.ts @@ -112,7 +112,7 @@ function isPartiallyBlankPhoneNumber(phoneNumber: any) { } export function areValidPhoneNumbers(phoneNumbers: any) { // At least one phone number is required - if (!phoneNumbers || phoneNumbers.length === 0) { + if (!phoneNumbers) { return false; } return phoneNumbers.every((phoneNumber: any, idx: number) => { @@ -218,19 +218,27 @@ const getPhoneNumberSchema = (t: TFunction) => { t("patient.form.errors.phoneNumbersType") || "", hasPhoneType ) - .required(); + .when("unknownPhoneNumber", { + is: false, + then: yup.array().min(1, t("patient.form.errors.phoneNumbers") || ""), + }); }; const getRequiredAddressSchema = (t: TFunction, key: string) => { - return yup - .string() - .max(MAX_LENGTH, t("patient.form.errors.fieldLength") || "") - .required(t(key) || ""); + return yup.string().when("unknownAddress", { + is: false, + then: yup + .string() + .max(MAX_LENGTH, t("patient.form.errors.fieldLength") || "") + .required(t(key) || ""), + }); }; const updateFieldSchemata: ( t: TFunction ) => Record = (t) => ({ + unknownPhoneNumber: yup.boolean().optional(), + unknownAddress: yup.boolean().optional(), lookupId: yup.string().nullable(), role: yup .mixed() diff --git a/frontend/src/lang/en.ts b/frontend/src/lang/en.ts index d0dd9c4f66..84db51b0e6 100644 --- a/frontend/src/lang/en.ts +++ b/frontend/src/lang/en.ts @@ -144,6 +144,11 @@ export const en = { }, contact: { heading: "Contact information", + phoneHeading: "Phone", + unknownPhoneNumber: "Phone number unknown", + emailHeading: "Email", + addressHeading: "Address", + unknownAddress: "Address unknown or patient unhoused", helpText: "You're responsible for entering correct contact information, following applicable federal and state laws.", primaryPhoneNumber: "Primary phone number", diff --git a/frontend/src/lang/es.ts b/frontend/src/lang/es.ts index 6a3eba09b9..4531b2819d 100644 --- a/frontend/src/lang/es.ts +++ b/frontend/src/lang/es.ts @@ -151,6 +151,12 @@ export const es: LanguageConfig = { }, contact: { heading: "Información de contacto", + phoneHeading: "Teléfono", + unknownPhoneNumber: "Se desconoce el número de teléfono", + emailHeading: "Correo electrónico", + addressHeading: "Dirección", + unknownAddress: + "Se desconoce la dirección o el/la paciente no tiene hogar", helpText: "Usted es responsable de ingresar la información de contacto correcta, siguiendo las leyes federales y estatales aplicables.", primaryPhoneNumber: "Número de teléfono principal", diff --git a/frontend/yarn.lock b/frontend/yarn.lock index f7a8cdce68..f060d5fc02 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -133,17 +133,12 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.5.tgz#86f172690b093373a933223b4745deeb6049e733" integrity sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g== -"@babel/compat-data@^7.22.5", "@babel/compat-data@^7.22.6": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" - integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== - -"@babel/compat-data@^7.22.9": +"@babel/compat-data@^7.22.20", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.20.tgz#8df6e96661209623f1975d66c35ffca66f3306d0" integrity sha512-BQYjKbpXjoXwFW5jGqiizJQQT/aC7pFm9Ok1OWssonuguICi264lbgMzRp2ZMmRSlfkX6DsWDDcsrctK8Rwfiw== -"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.13.16", "@babel/core@^7.14.0", "@babel/core@^7.16.0", "@babel/core@^7.17.9", "@babel/core@^7.7.2", "@babel/core@^7.8.0": +"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.14.0", "@babel/core@^7.16.0", "@babel/core@^7.17.9", "@babel/core@^7.7.2", "@babel/core@^7.8.0": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.9.tgz#bd96492c68822198f33e8a256061da3cf391f58f" integrity sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w== @@ -164,7 +159,7 @@ json5 "^2.2.2" semver "^6.3.1" -"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.22.9", "@babel/core@^7.7.5": +"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.7.5": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.20.tgz#e3d0eed84c049e2a2ae0a64d27b6a37edec385b7" integrity sha512-Y6jd1ahLubuYweD/zJH+vvOY141v4f9igNQAQ+MBgq9JlHS2iTsZKn1aMsb3vGccZsXI16VzTBw52Xx0DWmtnA== @@ -185,6 +180,27 @@ json5 "^2.2.3" semver "^6.3.1" +"@babel/core@^7.13.16", "@babel/core@^7.22.9": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.0.tgz#f8259ae0e52a123eb40f552551e647b506a94d83" + integrity sha512-97z/ju/Jy1rZmDxybphrBuI+jtJjFVoz7Mr9yUQVVVi+DNZE333uFQeMOqcCIy1x3WYBIbWftUSLmbNXNT7qFQ== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.23.0" + "@babel/helper-compilation-targets" "^7.22.15" + "@babel/helper-module-transforms" "^7.23.0" + "@babel/helpers" "^7.23.0" + "@babel/parser" "^7.23.0" + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.23.0" + "@babel/types" "^7.23.0" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + "@babel/eslint-parser@^7.16.3": version "7.19.1" resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz#4f68f6b0825489e00a24b41b6a1ae35414ecd2f4" @@ -194,7 +210,7 @@ eslint-visitor-keys "^2.1.0" semver "^6.3.0" -"@babel/generator@^7.12.11", "@babel/generator@^7.20.5", "@babel/generator@^7.22.15", "@babel/generator@^7.22.9": +"@babel/generator@^7.12.11": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.15.tgz#1564189c7ec94cb8f77b5e8a90c4d200d21b2339" integrity sha512-Zu9oWARBqeVOW0dZOjXc3JObrzuqothQ3y/n1kUtrjCoCPLkXUwMvOo/F/TCfoHMbWIFlWwpZtkZVb9ga4U2pA== @@ -213,14 +229,17 @@ "@jridgewell/gen-mapping" "^0.3.2" jsesc "^2.5.1" -"@babel/helper-annotate-as-pure@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" - integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA== +"@babel/generator@^7.20.5", "@babel/generator@^7.22.15", "@babel/generator@^7.22.9", "@babel/generator@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.0.tgz#df5c386e2218be505b34837acbcb874d7a983420" + integrity sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g== dependencies: - "@babel/types" "^7.18.6" + "@babel/types" "^7.23.0" + "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" + jsesc "^2.5.1" -"@babel/helper-annotate-as-pure@^7.22.5": +"@babel/helper-annotate-as-pure@^7.18.6", "@babel/helper-annotate-as-pure@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg== @@ -228,11 +247,11 @@ "@babel/types" "^7.22.5" "@babel/helper-builder-binary-assignment-operator-visitor@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.5.tgz#a3f4758efdd0190d8927fcffd261755937c71878" - integrity sha512-m1EP3lVOPptR+2DwD125gziZNcmoNSHGmJROKoy87loWUQyJaVXDgpmruWqDARZSmtYQ+Dl25okU8+qhVzuykw== + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz#5426b109cf3ad47b91120f8328d8ab1be8b0b956" + integrity sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.22.15" "@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0": version "7.20.0" @@ -244,7 +263,7 @@ browserslist "^4.21.3" semver "^6.3.0" -"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.9": +"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.5", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.22.9": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52" integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw== @@ -255,31 +274,7 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-compilation-targets@^7.22.5", "@babel/helper-compilation-targets@^7.22.6": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz#f9d0a7aaaa7cd32a3f31c9316a69f5a9bcacb892" - integrity sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw== - dependencies: - "@babel/compat-data" "^7.22.9" - "@babel/helper-validator-option" "^7.22.5" - browserslist "^4.21.9" - lru-cache "^5.1.1" - semver "^6.3.1" - -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.20.2", "@babel/helper-create-class-features-plugin@^7.20.5": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.5.tgz#327154eedfb12e977baa4ecc72e5806720a85a06" - integrity sha512-3RCdA/EmEaikrhayahwToF0fpweU/8o2p8vhc1c/1kftHOdTKuC65kik/TLc+qfbS8JKw4qqJbne4ovICDhmww== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-member-expression-to-functions" "^7.18.9" - "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-replace-supers" "^7.19.1" - "@babel/helper-split-export-declaration" "^7.18.6" - -"@babel/helper-create-class-features-plugin@^7.21.0": +"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.21.0", "@babel/helper-create-class-features-plugin@^7.22.11", "@babel/helper-create-class-features-plugin@^7.22.15", "@babel/helper-create-class-features-plugin@^7.22.5": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz#97a61b385e57fe458496fad19f8e63b63c867de4" integrity sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg== @@ -294,33 +289,23 @@ "@babel/helper-split-export-declaration" "^7.22.6" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.22.5", "@babel/helper-create-class-features-plugin@^7.22.9": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz#c36ea240bb3348f942f08b0fbe28d6d979fab236" - integrity sha512-Pwyi89uO4YrGKxL/eNJ8lfEH55DnRloGPOseaA8NFNL6jAUnn+KccaISiFazCj5IolPPDjGSdzQzXVzODVRqUQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.5" - "@babel/helper-function-name" "^7.22.5" - "@babel/helper-member-expression-to-functions" "^7.22.5" - "@babel/helper-optimise-call-expression" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - semver "^6.3.1" - -"@babel/helper-create-regexp-features-plugin@^7.18.6": +"@babel/helper-create-class-features-plugin@^7.20.2", "@babel/helper-create-class-features-plugin@^7.20.5": version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.20.5.tgz#5ea79b59962a09ec2acf20a963a01ab4d076ccca" - integrity sha512-m68B1lkg3XDGX5yCvGO0kPx3v9WIYLnzjKfPcQiwntEQa5ZeRkPmo2X/ISJc8qxWGfwUr+kvZAeEzAwLec2r2w== + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.5.tgz#327154eedfb12e977baa4ecc72e5806720a85a06" + integrity sha512-3RCdA/EmEaikrhayahwToF0fpweU/8o2p8vhc1c/1kftHOdTKuC65kik/TLc+qfbS8JKw4qqJbne4ovICDhmww== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - regexpu-core "^5.2.1" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.19.0" + "@babel/helper-member-expression-to-functions" "^7.18.9" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@babel/helper-replace-supers" "^7.19.1" + "@babel/helper-split-export-declaration" "^7.18.6" -"@babel/helper-create-regexp-features-plugin@^7.22.5": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz#9d8e61a8d9366fe66198f57c40565663de0825f6" - integrity sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.5": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz#5ee90093914ea09639b01c711db0d6775e558be1" + integrity sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" regexpu-core "^5.3.1" @@ -362,13 +347,13 @@ "@babel/template" "^7.18.10" "@babel/types" "^7.19.0" -"@babel/helper-function-name@^7.19.0", "@babel/helper-function-name@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz#ede300828905bb15e582c037162f99d5183af1be" - integrity sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ== +"@babel/helper-function-name@^7.19.0", "@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" + integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== dependencies: - "@babel/template" "^7.22.5" - "@babel/types" "^7.22.5" + "@babel/template" "^7.22.15" + "@babel/types" "^7.23.0" "@babel/helper-hoist-variables@^7.18.6", "@babel/helper-hoist-variables@^7.22.5": version "7.22.5" @@ -378,11 +363,11 @@ "@babel/types" "^7.22.5" "@babel/helper-member-expression-to-functions@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz#1531661e8375af843ad37ac692c132841e2fd815" - integrity sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg== + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366" + integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA== dependencies: - "@babel/types" "^7.18.9" + "@babel/types" "^7.23.0" "@babel/helper-member-expression-to-functions@^7.22.15": version "7.22.15" @@ -391,13 +376,6 @@ dependencies: "@babel/types" "^7.22.15" -"@babel/helper-member-expression-to-functions@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz#0a7c56117cad3372fbf8d2fb4bf8f8d64a1e76b2" - integrity sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ== - dependencies: - "@babel/types" "^7.22.5" - "@babel/helper-module-imports@^7.10.4", "@babel/helper-module-imports@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" @@ -426,10 +404,10 @@ "@babel/traverse" "^7.20.1" "@babel/types" "^7.20.2" -"@babel/helper-module-transforms@^7.22.20", "@babel/helper-module-transforms@^7.22.9": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.20.tgz#da9edc14794babbe7386df438f3768067132f59e" - integrity sha512-dLT7JVWIUUxKOs1UnJUBR3S70YK+pKX6AbJgB2vMIvEkZkrfJDbYDJesnPshtKV4LhDOR3Oc5YULeDizRek+5A== +"@babel/helper-module-transforms@^7.22.20", "@babel/helper-module-transforms@^7.22.5", "@babel/helper-module-transforms@^7.22.9", "@babel/helper-module-transforms@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz#3ec246457f6c842c0aee62a01f60739906f7047e" + integrity sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw== dependencies: "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-module-imports" "^7.22.15" @@ -437,51 +415,33 @@ "@babel/helper-split-export-declaration" "^7.22.6" "@babel/helper-validator-identifier" "^7.22.20" -"@babel/helper-module-transforms@^7.22.5": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz#92dfcb1fbbb2bc62529024f72d942a8c97142129" - integrity sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ== - dependencies: - "@babel/helper-environment-visitor" "^7.22.5" - "@babel/helper-module-imports" "^7.22.5" - "@babel/helper-simple-access" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/helper-validator-identifier" "^7.22.5" - -"@babel/helper-optimise-call-expression@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe" - integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-optimise-call-expression@^7.22.5": +"@babel/helper-optimise-call-expression@^7.18.6", "@babel/helper-optimise-call-expression@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e" integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== dependencies: "@babel/types" "^7.22.5" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.22.5": +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== -"@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": +"@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0": version "7.20.2" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== -"@babel/helper-remap-async-to-generator@^7.22.5": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz#53a25b7484e722d7efb9c350c75c032d4628de82" - integrity sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ== +"@babel/helper-remap-async-to-generator@^7.22.5", "@babel/helper-remap-async-to-generator@^7.22.9": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz#7b68e1cb4fa964d2996fd063723fb48eca8498e0" + integrity sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-environment-visitor" "^7.22.5" - "@babel/helper-wrap-function" "^7.22.9" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-wrap-function" "^7.22.20" -"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.19.1": +"@babel/helper-replace-supers@^7.18.6": version "7.19.1" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz#e1592a9b4b368aa6bdb8784a711e0bcbf0612b78" integrity sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw== @@ -492,13 +452,13 @@ "@babel/traverse" "^7.19.1" "@babel/types" "^7.19.0" -"@babel/helper-replace-supers@^7.22.5", "@babel/helper-replace-supers@^7.22.9": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz#cbdc27d6d8d18cd22c81ae4293765a5d9afd0779" - integrity sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg== +"@babel/helper-replace-supers@^7.19.1", "@babel/helper-replace-supers@^7.22.5", "@babel/helper-replace-supers@^7.22.9": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793" + integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw== dependencies: - "@babel/helper-environment-visitor" "^7.22.5" - "@babel/helper-member-expression-to-functions" "^7.22.5" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-member-expression-to-functions" "^7.22.15" "@babel/helper-optimise-call-expression" "^7.22.5" "@babel/helper-simple-access@^7.19.4", "@babel/helper-simple-access@^7.20.2": @@ -561,23 +521,23 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== -"@babel/helper-wrap-function@^7.22.9": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.9.tgz#189937248c45b0182c1dcf32f3444ca153944cb9" - integrity sha512-sZ+QzfauuUEfxSEjKFmi3qDSHgLsTPK/pEpoD/qonZKOtTPTLbf59oabPQ4rKekt9lFcj/hTZaOhWwFYrgjk+Q== +"@babel/helper-wrap-function@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz#15352b0b9bfb10fc9c76f79f6342c00e3411a569" + integrity sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw== dependencies: "@babel/helper-function-name" "^7.22.5" - "@babel/template" "^7.22.5" - "@babel/types" "^7.22.5" + "@babel/template" "^7.22.15" + "@babel/types" "^7.22.19" -"@babel/helpers@^7.22.15", "@babel/helpers@^7.22.6": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.22.15.tgz#f09c3df31e86e3ea0b7ff7556d85cdebd47ea6f1" - integrity sha512-7pAjK0aSdxOwR+CcYAqgWOGy5dcfvzsTIfFTb2odQqW47MDfv14UaJDY6eng8ylM2EaeKXdxaSWESbkmaQHTmw== +"@babel/helpers@^7.22.15", "@babel/helpers@^7.22.6", "@babel/helpers@^7.23.0": + version "7.23.1" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.1.tgz#44e981e8ce2b9e99f8f0b703f3326a4636c16d15" + integrity sha512-chNpneuK18yW5Oxsr+t553UZzzAs3aZnFm4bxhebsNTeshrC95yA7l5yl7GBAG+JG1rF0F7zzD2EixK9mWSDoA== dependencies: "@babel/template" "^7.22.15" - "@babel/traverse" "^7.22.15" - "@babel/types" "^7.22.15" + "@babel/traverse" "^7.23.0" + "@babel/types" "^7.23.0" "@babel/highlight@^7.18.6", "@babel/highlight@^7.22.13": version "7.22.20" @@ -593,36 +553,36 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.4.tgz#d5f92f57cf2c74ffe9b37981c0e72fee7311372e" integrity sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng== -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.10", "@babel/parser@^7.20.5", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.22.16", "@babel/parser@^7.22.7": - version "7.22.16" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.16.tgz#180aead7f247305cce6551bea2720934e2fa2c95" - integrity sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA== - -"@babel/parser@^7.13.16": - version "7.22.7" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.7.tgz#df8cf085ce92ddbdbf668a7f186ce848c9036cae" - integrity sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q== +"@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.20.5", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.22.16", "@babel/parser@^7.22.7", "@babel/parser@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" + integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== "@babel/parser@^7.14.0", "@babel/parser@^7.16.4", "@babel/parser@^7.16.8": version "7.20.5" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.5.tgz#7f3c7335fe417665d929f34ae5dceae4c04015e8" integrity sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA== -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz#87245a21cd69a73b0b81bcda98d443d6df08f05e" - integrity sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ== +"@babel/parser@^7.14.7", "@babel/parser@^7.18.10": + version "7.22.16" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.16.tgz#180aead7f247305cce6551bea2720934e2fa2c95" + integrity sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA== + +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.15", "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.15.tgz#02dc8a03f613ed5fdc29fb2f728397c78146c962" + integrity sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz#fef09f9499b1f1c930da8a0c419db42167d792ca" - integrity sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.22.15", "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.22.5": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.15.tgz#2aeb91d337d4e1a1e7ce85b76a37f5301781200f" + integrity sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" - "@babel/plugin-transform-optional-chaining" "^7.22.5" + "@babel/plugin-transform-optional-chaining" "^7.22.15" "@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.16.0": version "7.18.6" @@ -916,14 +876,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-async-generator-functions@^7.22.7": - version "7.22.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.7.tgz#053e76c0a903b72b573cb1ab7d6882174d460a1b" - integrity sha512-7HmE7pk/Fmke45TODvxvkxRMV9RazV+ZZzhOL9AG8G29TLrr3jkjwF7uJfxZ30EoXpO+LJkq4oA8NjO2DTnEDg== +"@babel/plugin-transform-async-generator-functions@^7.22.15", "@babel/plugin-transform-async-generator-functions@^7.22.7": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.15.tgz#3b153af4a6b779f340d5b80d3f634f55820aefa3" + integrity sha512-jBm1Es25Y+tVoTi5rfd5t1KLmL8ogLKpXszboWOTTtGFGz2RKnQe2yn7HbZ+kb/B8N0FVSGQo874NSlOU1T4+w== dependencies: "@babel/helper-environment-visitor" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-remap-async-to-generator" "^7.22.5" + "@babel/helper-remap-async-to-generator" "^7.22.9" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-transform-async-to-generator@^7.22.5": @@ -956,10 +916,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-block-scoping@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.5.tgz#8bfc793b3a4b2742c0983fadc1480d843ecea31b" - integrity sha512-EcACl1i5fSQ6bt+YGuU/XGCeZKStLmyVGytWkpyhCLeQVA0eu6Wtiw92V+I1T/hnezUv7j74dA/Ro69gWcU+hg== +"@babel/plugin-transform-block-scoping@^7.22.15", "@babel/plugin-transform-block-scoping@^7.22.5": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.0.tgz#8744d02c6c264d82e1a4bc5d2d501fd8aff6f022" + integrity sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -971,12 +931,12 @@ "@babel/helper-create-class-features-plugin" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-class-static-block@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz#3e40c46f048403472d6f4183116d5e46b1bff5ba" - integrity sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA== +"@babel/plugin-transform-class-static-block@^7.22.11", "@babel/plugin-transform-class-static-block@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz#dc8cc6e498f55692ac6b4b89e56d87cec766c974" + integrity sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.22.11" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-class-static-block" "^7.14.5" @@ -995,18 +955,18 @@ "@babel/helper-split-export-declaration" "^7.18.6" globals "^11.1.0" -"@babel/plugin-transform-classes@^7.22.6": - version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz#e04d7d804ed5b8501311293d1a0e6d43e94c3363" - integrity sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ== +"@babel/plugin-transform-classes@^7.22.15", "@babel/plugin-transform-classes@^7.22.6": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.15.tgz#aaf4753aee262a232bbc95451b4bdf9599c65a0b" + integrity sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-compilation-targets" "^7.22.6" + "@babel/helper-compilation-targets" "^7.22.15" "@babel/helper-environment-visitor" "^7.22.5" "@babel/helper-function-name" "^7.22.5" "@babel/helper-optimise-call-expression" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-replace-supers" "^7.22.5" + "@babel/helper-replace-supers" "^7.22.9" "@babel/helper-split-export-declaration" "^7.22.6" globals "^11.1.0" @@ -1032,14 +992,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-destructuring@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.5.tgz#d3aca7438f6c26c78cdd0b0ba920a336001b27cc" - integrity sha512-GfqcFuGW8vnEqTUBM7UtPd5A4q797LTvvwKxXTgRsFjoqaJiEg9deBG6kWeQYkVEL569NpnmpC0Pkr/8BLKGnQ== +"@babel/plugin-transform-destructuring@^7.22.15", "@babel/plugin-transform-destructuring@^7.22.5": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.0.tgz#6447aa686be48b32eaf65a73e0e2c0bd010a266c" + integrity sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-dotall-regex@^7.22.5": +"@babel/plugin-transform-dotall-regex@^7.22.5", "@babel/plugin-transform-dotall-regex@^7.4.4": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz#dbb4f0e45766eb544e193fb00e65a1dd3b2a4165" integrity sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw== @@ -1047,14 +1007,6 @@ "@babel/helper-create-regexp-features-plugin" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz#b286b3e7aae6c7b861e45bed0a2fafd6b1a4fef8" - integrity sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-transform-duplicate-keys@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz#b6e6428d9416f5f0bba19c70d1e6e7e0b88ab285" @@ -1062,10 +1014,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-dynamic-import@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz#d6908a8916a810468c4edff73b5b75bda6ad393e" - integrity sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ== +"@babel/plugin-transform-dynamic-import@^7.22.11", "@babel/plugin-transform-dynamic-import@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz#2c7722d2a5c01839eaf31518c6ff96d408e447aa" + integrity sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" @@ -1078,10 +1030,10 @@ "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-export-namespace-from@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz#57c41cb1d0613d22f548fddd8b288eedb9973a5b" - integrity sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg== +"@babel/plugin-transform-export-namespace-from@^7.22.11", "@babel/plugin-transform-export-namespace-from@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz#b3c84c8f19880b6c7440108f8929caf6056db26c" + integrity sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" @@ -1109,10 +1061,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-for-of@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz#ab1b8a200a8f990137aff9a084f8de4099ab173f" - integrity sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A== +"@babel/plugin-transform-for-of@^7.22.15", "@babel/plugin-transform-for-of@^7.22.5": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.15.tgz#f64b4ccc3a4f131a996388fae7680b472b306b29" + integrity sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -1134,10 +1086,10 @@ "@babel/helper-function-name" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-json-strings@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz#14b64352fdf7e1f737eed68de1a1468bd2a77ec0" - integrity sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A== +"@babel/plugin-transform-json-strings@^7.22.11", "@babel/plugin-transform-json-strings@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz#689a34e1eed1928a40954e37f74509f48af67835" + integrity sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-json-strings" "^7.8.3" @@ -1156,10 +1108,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-logical-assignment-operators@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz#66ae5f068fd5a9a5dc570df16f56c2a8462a9d6c" - integrity sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA== +"@babel/plugin-transform-logical-assignment-operators@^7.22.11", "@babel/plugin-transform-logical-assignment-operators@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz#24c522a61688bde045b7d9bc3c2597a4d948fc9c" + integrity sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" @@ -1179,11 +1131,11 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-modules-amd@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz#4e045f55dcf98afd00f85691a68fc0780704f526" - integrity sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ== + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.0.tgz#05b2bc43373faa6d30ca89214731f76f966f3b88" + integrity sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw== dependencies: - "@babel/helper-module-transforms" "^7.22.5" + "@babel/helper-module-transforms" "^7.23.0" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-modules-commonjs@^7.0.0": @@ -1195,24 +1147,24 @@ "@babel/helper-plugin-utils" "^7.19.0" "@babel/helper-simple-access" "^7.19.4" -"@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz#7d9875908d19b8c0536085af7b053fd5bd651bfa" - integrity sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA== +"@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.22.15", "@babel/plugin-transform-modules-commonjs@^7.22.5", "@babel/plugin-transform-modules-commonjs@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.0.tgz#b3dba4757133b2762c00f4f94590cf6d52602481" + integrity sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ== dependencies: - "@babel/helper-module-transforms" "^7.22.5" + "@babel/helper-module-transforms" "^7.23.0" "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-simple-access" "^7.22.5" -"@babel/plugin-transform-modules-systemjs@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz#18c31410b5e579a0092638f95c896c2a98a5d496" - integrity sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ== +"@babel/plugin-transform-modules-systemjs@^7.22.11", "@babel/plugin-transform-modules-systemjs@^7.22.5": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.0.tgz#77591e126f3ff4132a40595a6cccd00a6b60d160" + integrity sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg== dependencies: "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-module-transforms" "^7.22.5" + "@babel/helper-module-transforms" "^7.23.0" "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.20" "@babel/plugin-transform-modules-umd@^7.22.5": version "7.22.5" @@ -1237,32 +1189,32 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-nullish-coalescing-operator@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz#f8872c65776e0b552e0849d7596cddd416c3e381" - integrity sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA== +"@babel/plugin-transform-nullish-coalescing-operator@^7.22.11", "@babel/plugin-transform-nullish-coalescing-operator@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz#debef6c8ba795f5ac67cd861a81b744c5d38d9fc" + integrity sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-transform-numeric-separator@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz#57226a2ed9e512b9b446517ab6fa2d17abb83f58" - integrity sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g== +"@babel/plugin-transform-numeric-separator@^7.22.11", "@babel/plugin-transform-numeric-separator@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz#498d77dc45a6c6db74bb829c02a01c1d719cbfbd" + integrity sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-rest-spread@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz#9686dc3447df4753b0b2a2fae7e8bc33cdc1f2e1" - integrity sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ== +"@babel/plugin-transform-object-rest-spread@^7.22.15", "@babel/plugin-transform-object-rest-spread@^7.22.5": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.15.tgz#21a95db166be59b91cde48775310c0df6e1da56f" + integrity sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q== dependencies: - "@babel/compat-data" "^7.22.5" - "@babel/helper-compilation-targets" "^7.22.5" + "@babel/compat-data" "^7.22.9" + "@babel/helper-compilation-targets" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.22.5" + "@babel/plugin-transform-parameters" "^7.22.15" "@babel/plugin-transform-object-super@^7.0.0": version "7.18.6" @@ -1280,18 +1232,18 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-replace-supers" "^7.22.5" -"@babel/plugin-transform-optional-catch-binding@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz#842080be3076703be0eaf32ead6ac8174edee333" - integrity sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg== +"@babel/plugin-transform-optional-catch-binding@^7.22.11", "@babel/plugin-transform-optional-catch-binding@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz#461cc4f578a127bb055527b3e77404cad38c08e0" + integrity sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-transform-optional-chaining@^7.22.5", "@babel/plugin-transform-optional-chaining@^7.22.6": - version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.6.tgz#4bacfe37001fe1901117672875e931d439811564" - integrity sha512-Vd5HiWml0mDVtcLHIoEU5sw6HOUW/Zk0acLs/SAeuLzkGNOPc9DB4nkUajemhCmTIz3eiaKREZn2hQQqF79YTg== +"@babel/plugin-transform-optional-chaining@^7.22.15", "@babel/plugin-transform-optional-chaining@^7.22.6": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.0.tgz#73ff5fc1cf98f542f09f29c0631647d8ad0be158" + integrity sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" @@ -1304,10 +1256,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-parameters@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz#c3542dd3c39b42c8069936e48717a8d179d63a18" - integrity sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg== +"@babel/plugin-transform-parameters@^7.22.15", "@babel/plugin-transform-parameters@^7.22.5": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.15.tgz#719ca82a01d177af358df64a514d64c2e3edb114" + integrity sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -1319,13 +1271,13 @@ "@babel/helper-create-class-features-plugin" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-private-property-in-object@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz#07a77f28cbb251546a43d175a1dda4cf3ef83e32" - integrity sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ== +"@babel/plugin-transform-private-property-in-object@^7.22.11", "@babel/plugin-transform-private-property-in-object@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz#ad45c4fc440e9cb84c718ed0906d96cf40f9a4e1" + integrity sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.22.11" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" @@ -1416,13 +1368,13 @@ "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-regenerator@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.5.tgz#cd8a68b228a5f75fa01420e8cc2fc400f0fc32aa" - integrity sha512-rR7KePOE7gfEtNTh9Qw+iO3Q/e4DEsoQ+hdvM6QUDH7JRJ5qxq5AA52ZzBWbI5i9lfNuvySgOGP8ZN7LAmaiPw== +"@babel/plugin-transform-regenerator@^7.22.10", "@babel/plugin-transform-regenerator@^7.22.5": + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz#8ceef3bd7375c4db7652878b0241b2be5d0c3cca" + integrity sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" - regenerator-transform "^0.15.1" + regenerator-transform "^0.15.2" "@babel/plugin-transform-reserved-words@^7.22.5": version "7.22.5" @@ -1510,20 +1462,20 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-typescript" "^7.20.0" -"@babel/plugin-transform-typescript@^7.22.5": - version "7.22.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.9.tgz#91e08ad1eb1028ecc62662a842e93ecfbf3c7234" - integrity sha512-BnVR1CpKiuD0iobHPaM1iLvcwPYN2uVFAqoLVSpEDKWuOikoCv5HbKLxclhKYUXlWkX86DoZGtqI4XhbOsyrMg== +"@babel/plugin-transform-typescript@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.15.tgz#15adef906451d86349eb4b8764865c960eb54127" + integrity sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.22.9" + "@babel/helper-create-class-features-plugin" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-typescript" "^7.22.5" -"@babel/plugin-transform-unicode-escapes@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.5.tgz#ce0c248522b1cb22c7c992d88301a5ead70e806c" - integrity sha512-biEmVg1IYB/raUO5wT1tgfacCef15Fbzhkx493D3urBI++6hpJ+RFG4SrWMn0NEZLfvilqKf3QDrRVZHo08FYg== +"@babel/plugin-transform-unicode-escapes@^7.22.10", "@babel/plugin-transform-unicode-escapes@^7.22.5": + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz#c723f380f40a2b2f57a62df24c9005834c8616d9" + integrity sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -1551,7 +1503,7 @@ "@babel/helper-create-regexp-features-plugin" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/preset-env@^7.11.0", "@babel/preset-env@^7.12.1", "@babel/preset-env@^7.16.4", "@babel/preset-env@^7.22.9": +"@babel/preset-env@^7.11.0", "@babel/preset-env@^7.12.1", "@babel/preset-env@^7.16.4": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.22.9.tgz#57f17108eb5dfd4c5c25a44c1977eba1df310ac7" integrity sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g== @@ -1637,16 +1589,93 @@ core-js-compat "^3.31.0" semver "^6.3.1" -"@babel/preset-flow@^7.13.13": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.22.5.tgz#876f24ab6b38bd79703a93f32020ca2162312784" - integrity sha512-ta2qZ+LSiGCrP5pgcGt8xMnnkXQrq8Sa4Ulhy06BOlF5QbLw9q5hIx7bn5MrsvyTGAfh6kTOo07Q+Pfld/8Y5Q== +"@babel/preset-env@^7.22.9": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.22.20.tgz#de9e9b57e1127ce0a2f580831717f7fb677ceedb" + integrity sha512-11MY04gGC4kSzlPHRfvVkNAZhUxOvm7DCJ37hPDnUENwe06npjIRAfInEMTGSb4LZK5ZgDFkv5hw0lGebHeTyg== dependencies: + "@babel/compat-data" "^7.22.20" + "@babel/helper-compilation-targets" "^7.22.15" "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.22.5" - "@babel/plugin-transform-flow-strip-types" "^7.22.5" + "@babel/helper-validator-option" "^7.22.15" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.22.15" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.22.15" + "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-class-properties" "^7.12.13" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/plugin-syntax-import-assertions" "^7.22.5" + "@babel/plugin-syntax-import-attributes" "^7.22.5" + "@babel/plugin-syntax-import-meta" "^7.10.4" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/plugin-syntax-top-level-await" "^7.14.5" + "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" + "@babel/plugin-transform-arrow-functions" "^7.22.5" + "@babel/plugin-transform-async-generator-functions" "^7.22.15" + "@babel/plugin-transform-async-to-generator" "^7.22.5" + "@babel/plugin-transform-block-scoped-functions" "^7.22.5" + "@babel/plugin-transform-block-scoping" "^7.22.15" + "@babel/plugin-transform-class-properties" "^7.22.5" + "@babel/plugin-transform-class-static-block" "^7.22.11" + "@babel/plugin-transform-classes" "^7.22.15" + "@babel/plugin-transform-computed-properties" "^7.22.5" + "@babel/plugin-transform-destructuring" "^7.22.15" + "@babel/plugin-transform-dotall-regex" "^7.22.5" + "@babel/plugin-transform-duplicate-keys" "^7.22.5" + "@babel/plugin-transform-dynamic-import" "^7.22.11" + "@babel/plugin-transform-exponentiation-operator" "^7.22.5" + "@babel/plugin-transform-export-namespace-from" "^7.22.11" + "@babel/plugin-transform-for-of" "^7.22.15" + "@babel/plugin-transform-function-name" "^7.22.5" + "@babel/plugin-transform-json-strings" "^7.22.11" + "@babel/plugin-transform-literals" "^7.22.5" + "@babel/plugin-transform-logical-assignment-operators" "^7.22.11" + "@babel/plugin-transform-member-expression-literals" "^7.22.5" + "@babel/plugin-transform-modules-amd" "^7.22.5" + "@babel/plugin-transform-modules-commonjs" "^7.22.15" + "@babel/plugin-transform-modules-systemjs" "^7.22.11" + "@babel/plugin-transform-modules-umd" "^7.22.5" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5" + "@babel/plugin-transform-new-target" "^7.22.5" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.22.11" + "@babel/plugin-transform-numeric-separator" "^7.22.11" + "@babel/plugin-transform-object-rest-spread" "^7.22.15" + "@babel/plugin-transform-object-super" "^7.22.5" + "@babel/plugin-transform-optional-catch-binding" "^7.22.11" + "@babel/plugin-transform-optional-chaining" "^7.22.15" + "@babel/plugin-transform-parameters" "^7.22.15" + "@babel/plugin-transform-private-methods" "^7.22.5" + "@babel/plugin-transform-private-property-in-object" "^7.22.11" + "@babel/plugin-transform-property-literals" "^7.22.5" + "@babel/plugin-transform-regenerator" "^7.22.10" + "@babel/plugin-transform-reserved-words" "^7.22.5" + "@babel/plugin-transform-shorthand-properties" "^7.22.5" + "@babel/plugin-transform-spread" "^7.22.5" + "@babel/plugin-transform-sticky-regex" "^7.22.5" + "@babel/plugin-transform-template-literals" "^7.22.5" + "@babel/plugin-transform-typeof-symbol" "^7.22.5" + "@babel/plugin-transform-unicode-escapes" "^7.22.10" + "@babel/plugin-transform-unicode-property-regex" "^7.22.5" + "@babel/plugin-transform-unicode-regex" "^7.22.5" + "@babel/plugin-transform-unicode-sets-regex" "^7.22.5" + "@babel/preset-modules" "0.1.6-no-external-plugins" + "@babel/types" "^7.22.19" + babel-plugin-polyfill-corejs2 "^0.4.5" + babel-plugin-polyfill-corejs3 "^0.8.3" + babel-plugin-polyfill-regenerator "^0.5.2" + core-js-compat "^3.31.0" + semver "^6.3.1" -"@babel/preset-flow@^7.22.5": +"@babel/preset-flow@^7.13.13", "@babel/preset-flow@^7.22.5": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.22.15.tgz#30318deb9b3ebd9f5738e96da03a531e0cd3165d" integrity sha512-dB5aIMqpkgbTfN5vDdTRPzjqtWiZcRESNR88QYnoPR+bmdYoluOzMX9tQerTv0XzSgZYctPfO1oc0N5zdog1ew== @@ -1655,10 +1684,19 @@ "@babel/helper-validator-option" "^7.22.15" "@babel/plugin-transform-flow-strip-types" "^7.22.5" +"@babel/preset-modules@0.1.6-no-external-plugins": + version "0.1.6-no-external-plugins" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a" + integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/types" "^7.4.4" + esutils "^2.0.2" + "@babel/preset-modules@^0.1.5": - version "0.1.5" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" - integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== + version "0.1.6" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6.tgz#31bcdd8f19538437339d17af00d177d854d9d458" + integrity sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" @@ -1691,15 +1729,15 @@ "@babel/plugin-transform-react-pure-annotations" "^7.22.5" "@babel/preset-typescript@^7.13.0": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz#16367d8b01d640e9a507577ed4ee54e0101e51c8" - integrity sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ== + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.23.0.tgz#cc6602d13e7e5b2087c811912b87cf937a9129d9" + integrity sha512-6P6VVa/NM/VlAYj5s2Aq/gdVg8FSENCg3wlZ6Qau9AcPaoF5LbN1nyGlR9DTRIw9PpxI94e+ReydsJHcjwAweg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" - "@babel/helper-validator-option" "^7.22.5" + "@babel/helper-validator-option" "^7.22.15" "@babel/plugin-syntax-jsx" "^7.22.5" - "@babel/plugin-transform-modules-commonjs" "^7.22.5" - "@babel/plugin-transform-typescript" "^7.22.5" + "@babel/plugin-transform-modules-commonjs" "^7.23.0" + "@babel/plugin-transform-typescript" "^7.22.15" "@babel/preset-typescript@^7.16.0": version "7.18.6" @@ -1711,9 +1749,9 @@ "@babel/plugin-transform-typescript" "^7.18.6" "@babel/register@^7.13.16": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.22.5.tgz#e4d8d0f615ea3233a27b5c6ada6750ee59559939" - integrity sha512-vV6pm/4CijSQ8Y47RH5SopXzursN35RQINfGJkmOlcpAtGuf94miFvIPhCKGQN7WGIcsgG1BHEX2KVdTYwTwUQ== + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.22.15.tgz#c2c294a361d59f5fa7bcc8b97ef7319c32ecaec7" + integrity sha512-V3Q3EqoQdn65RCgTLwauZaTfd1ShhwPmbBv+1dkZV/HpCGMKVyn6oFcRlI7RaKqiDQjX2Qd3AuoEguBgdjIKlg== dependencies: clone-deep "^4.0.1" find-cache-dir "^2.0.0" @@ -1734,7 +1772,7 @@ core-js-pure "^3.25.1" regenerator-runtime "^0.13.11" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.1", "@babel/runtime@^7.15.4", "@babel/runtime@^7.18.9", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.1", "@babel/runtime@^7.15.4", "@babel/runtime@^7.18.9", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": version "7.21.5" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.21.5.tgz#8492dddda9644ae3bda3b45eabe87382caee7200" integrity sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q== @@ -1755,6 +1793,13 @@ dependencies: regenerator-runtime "^0.14.0" +"@babel/runtime@^7.8.4": + version "7.23.1" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.1.tgz#72741dc4d413338a91dcb044a86f3c0bc402646d" + integrity sha512-hC2v6p8ZSI/W0HUzh3V8C5g+NwSKzKPtJwSpTjwl0o297GP9+ZLQSkdvHz46CM3LqyoXxq+5G9komY+eSqSO0g== + dependencies: + regenerator-runtime "^0.14.0" + "@babel/template@^7.18.10", "@babel/template@^7.22.15", "@babel/template@^7.22.5": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" @@ -1773,7 +1818,7 @@ "@babel/parser" "^7.18.10" "@babel/types" "^7.18.10" -"@babel/traverse@^7.1.6", "@babel/traverse@^7.22.15", "@babel/traverse@^7.22.20", "@babel/traverse@^7.22.8": +"@babel/traverse@^7.1.6": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.20.tgz#db572d9cb5c79e02d83e5618b82f6991c07584c9" integrity sha512-eU260mPZbU7mZ0N+X10pxXhQFMGTeLb9eFS0mxehS8HZp9o1uSnFeWQuG1UPrlxgA7QoUzFhOnilHDp0AXCyHw== @@ -1789,7 +1834,7 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.12.5", "@babel/traverse@^7.14.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.19.1", "@babel/traverse@^7.20.1", "@babel/traverse@^7.7.2": +"@babel/traverse@^7.12.5", "@babel/traverse@^7.14.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.20.1", "@babel/traverse@^7.7.2": version "7.20.5" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.5.tgz#78eb244bea8270fdda1ef9af22a5d5e5b7e57133" integrity sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ== @@ -1805,16 +1850,32 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.19.0", "@babel/types@^7.2.0", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.3.0": - version "7.22.19" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.19.tgz#7425343253556916e440e662bb221a93ddb75684" - integrity sha512-P7LAw/LbojPzkgp5oznjE6tQEIWbp4PkkfrZDINTro9zgBRtI324/EYsiSI7lhPbpIQ+DCeR2NNmMWANGGfZsg== +"@babel/traverse@^7.19.1", "@babel/traverse@^7.22.20", "@babel/traverse@^7.22.8", "@babel/traverse@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.0.tgz#18196ddfbcf4ccea324b7f6d3ada00d8c5a99c53" + integrity sha512-t/QaEvyIoIkwzpiZ7aoSKK8kObQYeF7T2v+dazAYCb8SXtp58zEVkWW7zAnju8FNKNdr4ScAOEDmMItbyOmEYw== + dependencies: + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.23.0" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/parser" "^7.23.0" + "@babel/types" "^7.23.0" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.19.0", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.4.4": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" + integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg== dependencies: "@babel/helper-string-parser" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.19" + "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" -"@babel/types@^7.12.6", "@babel/types@^7.16.8", "@babel/types@^7.18.13", "@babel/types@^7.18.9", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.3.3", "@babel/types@^7.4.4": +"@babel/types@^7.12.6", "@babel/types@^7.16.8", "@babel/types@^7.18.13", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.3.3": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.5.tgz#cd93eeaab025880a3a47ec881f4b096a5b786fbe" integrity sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA== @@ -1823,6 +1884,15 @@ "@babel/helper-validator-identifier" "^7.22.5" to-fast-properties "^2.0.0" +"@babel/types@^7.18.10", "@babel/types@^7.2.0", "@babel/types@^7.3.0": + version "7.22.19" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.19.tgz#7425343253556916e440e662bb221a93ddb75684" + integrity sha512-P7LAw/LbojPzkgp5oznjE6tQEIWbp4PkkfrZDINTro9zgBRtI324/EYsiSI7lhPbpIQ+DCeR2NNmMWANGGfZsg== + dependencies: + "@babel/helper-string-parser" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.19" + to-fast-properties "^2.0.0" + "@base2/pretty-print-object@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@base2/pretty-print-object/-/pretty-print-object-1.0.1.tgz#371ba8be66d556812dc7fb169ebc3c08378f69d4" @@ -4045,38 +4115,38 @@ lodash.union "^4.6.0" lodash.values "^4.3.0" -"@storybook/addon-a11y@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-a11y/-/addon-a11y-7.4.2.tgz#cbb4d3d6872c021f5e34da73a99b70eac0cb2597" - integrity sha512-M8cj1NYM8oqntAsJdSZwXnngX8nHtWCBYyD9Zgt5qbjwzk5Ha56CBri8oS03dISNV2TPHREULiTTp0tzvql7IQ== - dependencies: - "@storybook/addon-highlight" "7.4.2" - "@storybook/channels" "7.4.2" - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-events" "7.4.2" +"@storybook/addon-a11y@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-a11y/-/addon-a11y-7.4.6.tgz#b1d1d98e11d1130d98b737decbc27eaa2a0bf9b3" + integrity sha512-RE8sXk9KEqgmjsFmG31eObgPMTOvvWnoNZIaZEHs88X30tNHtFwjc0jzvCR/xriKsBtQdYQTUSsB7pSjaJHNzQ== + dependencies: + "@storybook/addon-highlight" "7.4.6" + "@storybook/channels" "7.4.6" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/theming" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/theming" "7.4.6" + "@storybook/types" "7.4.6" axe-core "^4.2.0" lodash "^4.17.21" react-resize-detector "^7.1.2" -"@storybook/addon-actions@7.4.2", "@storybook/addon-actions@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-7.4.2.tgz#7f1d69a5439d6d39c7453e2167f831f34c620380" - integrity sha512-aKHyYjxcWaOTf/7B8x4EmUNkDAiYJZyJfGTYg2TDEDs89x7/9slujAA01qIgOp74C9nWkHDUVdm7/J+h3kWJWw== +"@storybook/addon-actions@7.4.6", "@storybook/addon-actions@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-7.4.6.tgz#080bd1612a744cc3fc4a435a07a63d2d8c05f030" + integrity sha512-SsqZr3js5NinKPnC8AeNI7Ij+Q6fIl9tRdRmSulEgjksjOg7E5S1/Wsn5Bb2CCgj7MaX6VxGyC7s3XskQtDiIQ== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/theming" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/theming" "7.4.6" + "@storybook/types" "7.4.6" dequal "^2.0.2" lodash "^4.17.21" polished "^4.2.2" @@ -4086,217 +4156,217 @@ ts-dedent "^2.0.0" uuid "^9.0.0" -"@storybook/addon-backgrounds@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-7.4.2.tgz#1d68c2a123e35580dc614c4849dd6a83976e4883" - integrity sha512-Vl6Vw1NzO5jRqlAEpG017z6N79Drlp7Wpw8O9+69/dKtTNmuLqLnPxWrn4nL2CNvghHToLMpToSAFpRo2fBZBg== +"@storybook/addon-backgrounds@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-7.4.6.tgz#315ac726e606259ce868b78c7b966cc9489b51ea" + integrity sha512-+LHTZB/ZYMAzkyD5ZxSriBsqmsrvIaW/Nnd/BeuXGbkrVKKqM0qAKiFZAfjc2WchA1piVNy0/1Rsf+kuYCEiJw== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/theming" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/theming" "7.4.6" + "@storybook/types" "7.4.6" memoizerific "^1.11.3" ts-dedent "^2.0.0" -"@storybook/addon-controls@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-7.4.2.tgz#6ab9486c493d6b1b6b75cdbe336fa5626bbe9b2b" - integrity sha512-qzSac1bulSa7mqkfBfyAqbP9PbIio5CjGJ5VyT055ab50e13gj1eS3I9EJHCupYb19E3f465QatrGhoaTsE4hg== - dependencies: - "@storybook/blocks" "7.4.2" - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-common" "7.4.2" - "@storybook/core-events" "7.4.2" - "@storybook/manager-api" "7.4.2" - "@storybook/node-logger" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/theming" "7.4.2" - "@storybook/types" "7.4.2" +"@storybook/addon-controls@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-7.4.6.tgz#b1db7a0faacb25b9a6f54c2dff2ba94d06619bd4" + integrity sha512-4lq3sycEUIsK8SUWDYc60QgF4vV9FZZ3lDr6M7j2W9bOnvGw49d2fbdlnq+bX1ZprZZ9VgglQpBAorQB3BXZRw== + dependencies: + "@storybook/blocks" "7.4.6" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-common" "7.4.6" + "@storybook/core-events" "7.4.6" + "@storybook/manager-api" "7.4.6" + "@storybook/node-logger" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/theming" "7.4.6" + "@storybook/types" "7.4.6" lodash "^4.17.21" ts-dedent "^2.0.0" -"@storybook/addon-docs@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-7.4.2.tgz#f733deca41c8b25f21a1965f96e2fab8dd7daca6" - integrity sha512-MV49/bGTibk2kvufk1+JEkDe2Ii/wfh5s+zO6a7p/FRy9zK0hQy3nEc56VpQ3+KzgDr0uyZI+mYq26OPwBuKRg== +"@storybook/addon-docs@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-7.4.6.tgz#f2cc635a77cfb3e2910d6ca813add9a16785595d" + integrity sha512-dLaub+XWFq4hChw+xfuF9yYg0Txp77FUawKoAigccfjWXx+OOhRV3XTuAcknpXkYq94GWynHgUFXosXT9kbDNA== dependencies: "@jest/transform" "^29.3.1" "@mdx-js/react" "^2.1.5" - "@storybook/blocks" "7.4.2" - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/csf-plugin" "7.4.2" - "@storybook/csf-tools" "7.4.2" + "@storybook/blocks" "7.4.6" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/csf-plugin" "7.4.6" + "@storybook/csf-tools" "7.4.6" "@storybook/global" "^5.0.0" "@storybook/mdx2-csf" "^1.0.0" - "@storybook/node-logger" "7.4.2" - "@storybook/postinstall" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/react-dom-shim" "7.4.2" - "@storybook/theming" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/node-logger" "7.4.6" + "@storybook/postinstall" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/react-dom-shim" "7.4.6" + "@storybook/theming" "7.4.6" + "@storybook/types" "7.4.6" fs-extra "^11.1.0" remark-external-links "^8.0.0" remark-slug "^6.0.0" ts-dedent "^2.0.0" -"@storybook/addon-essentials@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-essentials/-/addon-essentials-7.4.2.tgz#3319aa75f94afa697f00e4ef616ac3242edeb0c2" - integrity sha512-9VqVe8pUogA9TIAl9xxNSdqU1zfXXdZW6J3BfT3r0DolU4nLusejs2xIu6smhEjZ1KYD6V30Uy9HDft/GRCSnw== - dependencies: - "@storybook/addon-actions" "7.4.2" - "@storybook/addon-backgrounds" "7.4.2" - "@storybook/addon-controls" "7.4.2" - "@storybook/addon-docs" "7.4.2" - "@storybook/addon-highlight" "7.4.2" - "@storybook/addon-measure" "7.4.2" - "@storybook/addon-outline" "7.4.2" - "@storybook/addon-toolbars" "7.4.2" - "@storybook/addon-viewport" "7.4.2" - "@storybook/core-common" "7.4.2" - "@storybook/manager-api" "7.4.2" - "@storybook/node-logger" "7.4.2" - "@storybook/preview-api" "7.4.2" +"@storybook/addon-essentials@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-essentials/-/addon-essentials-7.4.6.tgz#b9c83dbdae0ffd6f24fa9328b36488d563714260" + integrity sha512-dWodufrt71TK7ELkeIvVae/x4PzECUlbOm57Iqqt4yQCyR291CgvI4PjeB8un2HbpcXCGZ+N/Oj3YkytvzBi4A== + dependencies: + "@storybook/addon-actions" "7.4.6" + "@storybook/addon-backgrounds" "7.4.6" + "@storybook/addon-controls" "7.4.6" + "@storybook/addon-docs" "7.4.6" + "@storybook/addon-highlight" "7.4.6" + "@storybook/addon-measure" "7.4.6" + "@storybook/addon-outline" "7.4.6" + "@storybook/addon-toolbars" "7.4.6" + "@storybook/addon-viewport" "7.4.6" + "@storybook/core-common" "7.4.6" + "@storybook/manager-api" "7.4.6" + "@storybook/node-logger" "7.4.6" + "@storybook/preview-api" "7.4.6" ts-dedent "^2.0.0" -"@storybook/addon-highlight@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-highlight/-/addon-highlight-7.4.2.tgz#f50ef4106b7e5ec69cb2f17524eddc83699d80c9" - integrity sha512-HpwQiYil9RlMz303wQ9+ElW6W+Z0baqBUemlQ1JJZ6Wm47mgVVy8vLPcdH3JQkv7E34f51apPKVKFqq49xDqaA== +"@storybook/addon-highlight@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-highlight/-/addon-highlight-7.4.6.tgz#ee688232fe260f1b926205ddc1ceb1e0781dcbaf" + integrity sha512-zCufxxD2KS5VwczxfkcBxe1oR/juTTn2H1Qm8kYvWCJQx3UxzX0+G9cwafbpV7eivqaufLweEwROkH+0KjAtkQ== dependencies: - "@storybook/core-events" "7.4.2" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/preview-api" "7.4.2" + "@storybook/preview-api" "7.4.6" -"@storybook/addon-interactions@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-interactions/-/addon-interactions-7.4.2.tgz#44618d9d00a041058e12d19b774d3cd8ef7baaa9" - integrity sha512-Gr3UbrPRgtBmwYctFiIxYlg4pfe07sC5gvMJmMdzHSJo0yAmcw2fSzKe4aEPX4trdAIb+diQKi3TDqIBrOfCLQ== +"@storybook/addon-interactions@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-interactions/-/addon-interactions-7.4.6.tgz#643659a6fd1a90e9fecaf6309276d29c3cee8af1" + integrity sha512-zVZYrEPZPhNrXBuPqM7HbQvr6jwsje1sbCYj3wnp83U5wjciuqrngqHIlaSZ30zOWSfRVyzbyqL+JQZKA58BNA== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-common" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-common" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/instrumenter" "7.4.2" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/theming" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/instrumenter" "7.4.6" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/theming" "7.4.6" + "@storybook/types" "7.4.6" jest-mock "^27.0.6" polished "^4.2.2" ts-dedent "^2.2.0" -"@storybook/addon-links@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-7.4.2.tgz#55271b4c1aaa8de630c919592d957e2a65891799" - integrity sha512-XAspek8kkfiGq3NVt8SD108m54/dJWo+iDSmW3t/BQj2+sDPW8EpOg93X08YGoGMD8FSLOToeVC2Qi+kmAV0iw== +"@storybook/addon-links@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-7.4.6.tgz#6bf1730b8f44d85a0b601d268fd6fb0726bbc360" + integrity sha512-BPygElZKX+CPI9Se6GJNk1dYc5oxuhA+vHigO1tBqhiM6VkHyFP3cvezJNQvpNYhkUnu3cxnZXb3UJnlRbPY3g== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/csf" "^0.1.0" "@storybook/global" "^5.0.0" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/router" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/router" "7.4.6" + "@storybook/types" "7.4.6" prop-types "^15.7.2" ts-dedent "^2.0.0" -"@storybook/addon-mdx-gfm@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-mdx-gfm/-/addon-mdx-gfm-7.4.2.tgz#5582a94b182a2df6bd06aca48b094a8ee57c4a14" - integrity sha512-q3xcediMB/CRxzU2MFitz30YoWk6T/+q7FWBbCRJ30wALUx1WO23Xk+MT7lTQYGN9aPPf0+bKAU2+KGxZTVnxA== +"@storybook/addon-mdx-gfm@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-mdx-gfm/-/addon-mdx-gfm-7.4.6.tgz#578ccb339771ec198e06332887c4947cedd06b93" + integrity sha512-5DCQd9syEsCjB4q8lplHwqOlrdgFn/Ttm7/7aNTeZxF1a4qH/n3Yi7P2SAehaKpJLU61aRFILzE46JD4yvMaHg== dependencies: - "@storybook/node-logger" "7.4.2" + "@storybook/node-logger" "7.4.6" remark-gfm "^3.0.1" ts-dedent "^2.0.0" -"@storybook/addon-measure@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-measure/-/addon-measure-7.4.2.tgz#c64a3ca48f76dedbee2a896494307f1c032bcfe5" - integrity sha512-fewNqI3mDAGAhFOFh/rdDS3dJ3e1QDmSVMB0KDJ7K22HOF2To/H9QfXHV24osnBRu6QemSIqObry1leF+u5BmQ== +"@storybook/addon-measure@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-measure/-/addon-measure-7.4.6.tgz#12cb5ffab78c922809178c0ee8574b264ff2de5d" + integrity sha512-nCymMLaHnxv8TE3yEM1A9Tulb1NuRXRNmtsdHTkjv7P1aWCxZo8A/GZaottKe/GLT8jSRjZ+dnpYWrbAhw6wTQ== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/types" "7.4.6" tiny-invariant "^1.3.1" -"@storybook/addon-outline@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-outline/-/addon-outline-7.4.2.tgz#59f529254997bda6c8fededdec85ad1b61e2f984" - integrity sha512-C6Zfoa6k2ef55O16GKV29T0wIYaDyiBtyd/fuTzz7hkpusSqKGFNeQyfG6hRmPv5yAib7+Pzl86cH3wGz85oTw== +"@storybook/addon-outline@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-outline/-/addon-outline-7.4.6.tgz#d375046bb6858ea9ec09fdaf03d5802a543b2a30" + integrity sha512-errNUblRVDLpuEaHQPr/nsrnsUkD2ARmXawkRvizgDWLIDMDJYjTON3MUCaVx3x+hlZ3I6X//G5TVcma8tCc8A== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/types" "7.4.6" ts-dedent "^2.0.0" -"@storybook/addon-toolbars@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-toolbars/-/addon-toolbars-7.4.2.tgz#faceec604618f06b0c7c0a8fbb7a57b9dc4ccd57" - integrity sha512-zSU8GpyMKo3vGxR7LQdvw5jV/6QUOfUepS3HEYGB88vlIPK7UriV8k9HB0FObEyYZKYU7wuPYBYhXApK4ZBVUA== - dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/theming" "7.4.2" - -"@storybook/addon-viewport@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-7.4.2.tgz#ab7c4381fa3439021b7faa2f7ceefdf5c77a5af0" - integrity sha512-0mlqJmHezyZG9lLpj2LKN6HTZI015T3hYuFP4MwZRj579e246DvcBTw/h3n3bjLRGglapmFqkCw9PRVMhsQ/CA== - dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-events" "7.4.2" +"@storybook/addon-toolbars@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-toolbars/-/addon-toolbars-7.4.6.tgz#04d270bb45f6cea45cecce084f7713c7dda047f9" + integrity sha512-L9m2FBcKeteGq7qIYsMJr0LEfiH7Wdrv5IDcldZTn68eZUJTh1p4GdJZcOmzX1P5IFRr76hpu03iWsNlWQjpbQ== + dependencies: + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/theming" "7.4.6" + +"@storybook/addon-viewport@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-7.4.6.tgz#ff6fbe9b67310d16cd7b4a38dbc445a8fede6373" + integrity sha512-INDtk54j7bi7NgxMfd2ATmbA0J7nAd6X8itMkLIyPuPJtx8bYHPDORyemDOd0AojgmAdTOAyUtDYdI/PFeo4Cw== + dependencies: + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/theming" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/theming" "7.4.6" memoizerific "^1.11.3" prop-types "^15.7.2" -"@storybook/addons@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-7.4.2.tgz#d87da2b4a247a2945527d764cb729594cc5b7543" - integrity sha512-3snQVlTIKgzk6apNZc9sHr+0n4riiQkKGUkoHS8B1G90qj/9OyRnkDq55A7mJ9CxskqIjei5Q+hlko87g0jDsA== +"@storybook/addons@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-7.4.6.tgz#cca556ca30aa34652f9bbab30467a538df5b10fe" + integrity sha512-c+4awrtwNlJayFdgLkEXa5H2Gj+KNlxuN+Z5oDAdZBLqXI8g0gn7eYO2F/eCSIDWdd/+zcU2uq57XPFKc8veHQ== dependencies: - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/types" "7.4.6" -"@storybook/blocks@7.4.2", "@storybook/blocks@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/blocks/-/blocks-7.4.2.tgz#6a4307323eeb1bf49a13050942d6e8c00e928e41" - integrity sha512-ijuZBsYfQBuwMA8Lb1dT6t2PzqhkOtIdc+G5iQ/IgWLX5HT1br+Wq8o3TUWrqACM9VKIASnJk13FMAOeGggD/w== +"@storybook/blocks@7.4.6", "@storybook/blocks@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/blocks/-/blocks-7.4.6.tgz#03134130fa20d6c36c6985008bc2c38892c5b8f5" + integrity sha512-HxBSAeOiTZW2jbHQlo1upRWFgoMsaAyKijUFf5MwwMNIesXCuuTGZDJ3xTABwAVLK2qC9Ektfbo0CZCiPVuDRQ== dependencies: - "@storybook/channels" "7.4.2" - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/channels" "7.4.6" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/csf" "^0.1.0" - "@storybook/docs-tools" "7.4.2" + "@storybook/docs-tools" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/manager-api" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/theming" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/theming" "7.4.6" + "@storybook/types" "7.4.6" "@types/lodash" "^4.14.167" color-convert "^2.0.1" dequal "^2.0.2" @@ -4310,15 +4380,15 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/builder-manager@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/builder-manager/-/builder-manager-7.4.2.tgz#de00614fbe14dc3d7929fdc96c495fff5d883182" - integrity sha512-MgdXr9QJ2sNk0fUshQ7hk4Ec9IkbPWR6alrmDByIOEU9bThx0j4OxU9uTLBy8r5uZsSL6nNtRyCvSP8YSKaQHQ== +"@storybook/builder-manager@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/builder-manager/-/builder-manager-7.4.6.tgz#942a1a5e0a8b5956bd30867841fa1c542eb3d0bf" + integrity sha512-zylZCD2rmyLOOFBFmUgtJg6UNUKmRNgXiig1XApzS2TkIbTZP827DsVEUl0ey/lskCe0uArkrEBR6ICba8p/Rw== dependencies: "@fal-works/esbuild-plugin-global-externals" "^2.1.2" - "@storybook/core-common" "7.4.2" - "@storybook/manager" "7.4.2" - "@storybook/node-logger" "7.4.2" + "@storybook/core-common" "7.4.6" + "@storybook/manager" "7.4.6" + "@storybook/node-logger" "7.4.6" "@types/ejs" "^3.1.1" "@types/find-cache-dir" "^3.2.1" "@yarnpkg/esbuild-plugin-pnp" "^3.0.0-rc.10" @@ -4332,28 +4402,28 @@ process "^0.11.10" util "^0.12.4" -"@storybook/builder-webpack5@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/builder-webpack5/-/builder-webpack5-7.4.2.tgz#b6875d37b054e7390403cd405d57ae2b330012d0" - integrity sha512-NmlHRU4+jie+9z4cxuXUM49JI2ypIc6JHCiuJIqF7rONrsyCExZvPnzk8mNogox+RK1C7rP60g23rywZdxQNNA== +"@storybook/builder-webpack5@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/builder-webpack5/-/builder-webpack5-7.4.6.tgz#a3d5b3e270d80cbbe31903de9dafb4a25e36e08e" + integrity sha512-j7AyDPlUuO2GiH6riB8iGbT7blQpyVGB+rMHXPSm7v6/U7IITbNzxFwe+sSMLoFr8K1e2VXpgqQ9p3rHFey+nw== dependencies: "@babel/core" "^7.22.9" - "@storybook/addons" "7.4.2" - "@storybook/channels" "7.4.2" - "@storybook/client-api" "7.4.2" - "@storybook/client-logger" "7.4.2" - "@storybook/components" "7.4.2" - "@storybook/core-common" "7.4.2" - "@storybook/core-events" "7.4.2" - "@storybook/core-webpack" "7.4.2" + "@storybook/addons" "7.4.6" + "@storybook/channels" "7.4.6" + "@storybook/client-api" "7.4.6" + "@storybook/client-logger" "7.4.6" + "@storybook/components" "7.4.6" + "@storybook/core-common" "7.4.6" + "@storybook/core-events" "7.4.6" + "@storybook/core-webpack" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/manager-api" "7.4.2" - "@storybook/node-logger" "7.4.2" - "@storybook/preview" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/router" "7.4.2" - "@storybook/store" "7.4.2" - "@storybook/theming" "7.4.2" + "@storybook/manager-api" "7.4.6" + "@storybook/node-logger" "7.4.6" + "@storybook/preview" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/router" "7.4.6" + "@storybook/store" "7.4.6" + "@storybook/theming" "7.4.6" "@swc/core" "^1.3.49" "@types/node" "^16.0.0" "@types/semver" "^7.3.4" @@ -4382,35 +4452,35 @@ webpack-hot-middleware "^2.25.1" webpack-virtual-modules "^0.5.0" -"@storybook/channels@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-7.4.2.tgz#6a730506e65d07e10faf8f16142db7284acc5848" - integrity sha512-Q95KnV+fTGaAV3S875+d5LlGg+bdC3bUnki3engODDS4ViSRHJ1bnXnqxKmAaS3O/52geIyWWR766YvwHw3avw== +"@storybook/channels@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-7.4.6.tgz#cadd16b91db08005c2b9e4938d3e1d1290d27a40" + integrity sha512-yPv/sfo2c18fM3fvG0i1xse63vG8l33Al/OU0k/dtovltPu001/HVa1QgBgsb/QrEfZtvGjGhmtdVeYb39fv3A== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" qs "^6.10.0" telejson "^7.2.0" tiny-invariant "^1.3.1" -"@storybook/cli@7.4.2", "@storybook/cli@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/cli/-/cli-7.4.2.tgz#a3134a58cc2b18c9a1326869f11377ce08c4f1ef" - integrity sha512-WleObtC7OU2lT+pI2vTdXZPFMKDGbg3bkUJ+PG8+yqGg53ea5ZkwKWg9qHpXuiMkYDztqhbA8kYrny1GqFuVdg== +"@storybook/cli@7.4.6", "@storybook/cli@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/cli/-/cli-7.4.6.tgz#c322fcfdacf839a55a9c2aaa592a820fdaa1422c" + integrity sha512-rRwaH8pOL+FHz/pJMEkNpMH2xvZvWsrl7obBYw26NQiHmiVSAkfHJicndSN1mwc+p5w+9iXthrgzbLtSAOSvkA== dependencies: "@babel/core" "^7.22.9" "@babel/preset-env" "^7.22.9" "@babel/types" "^7.22.5" "@ndelangen/get-tarball" "^3.0.7" - "@storybook/codemod" "7.4.2" - "@storybook/core-common" "7.4.2" - "@storybook/core-events" "7.4.2" - "@storybook/core-server" "7.4.2" - "@storybook/csf-tools" "7.4.2" - "@storybook/node-logger" "7.4.2" - "@storybook/telemetry" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/codemod" "7.4.6" + "@storybook/core-common" "7.4.6" + "@storybook/core-events" "7.4.6" + "@storybook/core-server" "7.4.6" + "@storybook/csf-tools" "7.4.6" + "@storybook/node-logger" "7.4.6" + "@storybook/telemetry" "7.4.6" + "@storybook/types" "7.4.6" "@types/semver" "^7.3.4" "@yarnpkg/fslib" "2.10.3" "@yarnpkg/libzip" "2.3.0" @@ -4441,33 +4511,33 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-api@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-7.4.2.tgz#bd7238c390e32163caefffb6b3418990431b6345" - integrity sha512-nmDoEUkUqnHXUKMEs6m59rc4ZPKCVMmHhqccFFIsuLbPtsTqvbWk3Zt+CK6LoI651pafoM4V4zAY5eW0OpApIg== +"@storybook/client-api@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-7.4.6.tgz#0007fa86d9aae34b6bde0220c0b68fc9d78bde73" + integrity sha512-O8yA/xEzPW9Oe3s5VJAFor2d2KwXHjUZ1gvou3o14zu/TJLgXwol0qBBr+YLRO2rcNNJ51pAIGwAT5bgmpUaeg== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/preview-api" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/preview-api" "7.4.6" -"@storybook/client-logger@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-7.4.2.tgz#bbd31bec31837b506a9e3a345571a0975d5e4b4d" - integrity sha512-LC8tYrYSJwF4DHRdNYh6y8hSvccwUIv5/WOZKJDmKx7mcEm6HsVuUu16C9jsl7iy6IqJYxgVz1va3WS6852E+A== +"@storybook/client-logger@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-7.4.6.tgz#3346f3ae51abb3ce61bf1a7d083d32f27b8f718f" + integrity sha512-XDw31ZziU//86PKuMRnmc+L/G0VopaGKENQOGEpvAXCU9IZASwGKlKAtcyosjrpi+ZiUXlMgUXCpXM7x3b1Ehw== dependencies: "@storybook/global" "^5.0.0" -"@storybook/codemod@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/codemod/-/codemod-7.4.2.tgz#fd5da534271d28c9355f59961c9bf4ef91f0cf5e" - integrity sha512-wU+SLHG/PpLptI0aWEhPxwFPcX7uYe+Id21DKNPg/HvYaLG3N+/DPDef+lm3Vaov9w4OD74iuQ3knT67SSkvmw== +"@storybook/codemod@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/codemod/-/codemod-7.4.6.tgz#b884304c246de6de22faa94e76cd38f129bd827e" + integrity sha512-lxmwEpwksCaAq96APN2YlooSDfKjJ1vKzN5Ni2EqQzf2TEXl7XQjLacHd7OOaII1kfsy+D5gNG4N5wBo7Ub30g== dependencies: "@babel/core" "^7.22.9" "@babel/preset-env" "^7.22.9" "@babel/types" "^7.22.5" "@storybook/csf" "^0.1.0" - "@storybook/csf-tools" "7.4.2" - "@storybook/node-logger" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/csf-tools" "7.4.6" + "@storybook/node-logger" "7.4.6" + "@storybook/types" "7.4.6" "@types/cross-spawn" "^6.0.2" cross-spawn "^7.0.3" globby "^11.0.2" @@ -4476,38 +4546,38 @@ prettier "^2.8.0" recast "^0.23.1" -"@storybook/components@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/components/-/components-7.4.2.tgz#f8c3019a2255a48de61712e8de9f2c60cf4b3f5e" - integrity sha512-ecbDzSUd74vf6IwHsbQr+9mVRxKWLmwd9zJ8RHMcR8UejTRAAR/eVvYoCG331TQ8TrhTmHTy5xCVv47pm6ORkQ== +"@storybook/components@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-7.4.6.tgz#e804407bd3a047e9f6026edfbbe188244661b55a" + integrity sha512-nIRBhewAgrJJVafyCzuaLx1l+YOfvvD5dOZ0JxZsxJsefOdw1jFpUqUZ5fIpQ2moyvrR0mAUFw378rBfMdHz5Q== dependencies: "@radix-ui/react-select" "^1.2.2" "@radix-ui/react-toolbar" "^1.0.4" - "@storybook/client-logger" "7.4.2" + "@storybook/client-logger" "7.4.6" "@storybook/csf" "^0.1.0" "@storybook/global" "^5.0.0" - "@storybook/theming" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/theming" "7.4.6" + "@storybook/types" "7.4.6" memoizerific "^1.11.3" use-resize-observer "^9.1.0" util-deprecate "^1.0.2" -"@storybook/core-client@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-7.4.2.tgz#30ae78e856cf1af7898be43f01773c58b52553c8" - integrity sha512-2K4g8ZaqBUv6oC+1/Bd6XSQ/F7hNyy8OLqnnxjoYsjUQc8DaN5wUckEEgT9WSvLQg88B/FYFtNAX5m17aySWrg== +"@storybook/core-client@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-7.4.6.tgz#880ab2a431133912d0b76f2273cefe95b287d8ca" + integrity sha512-tfgxAHeCvMcs6DsVgtb4hQSDaCHeAPJOsoyhb47eDQfk4OmxzriM0qWucJV5DePSMi+KutX/rN2u0JxfOuN68g== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/preview-api" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/preview-api" "7.4.6" -"@storybook/core-common@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-7.4.2.tgz#6f2873cb49e893967764839cb240c18df737372b" - integrity sha512-Qj9S97TYO+jSNdC2+LrMFtZRvTnELeFnRtn/MDWhkM6mpZgRglxlZuXi5enJjqTh0dISAUxPpTtXNAJDfX99JA== +"@storybook/core-common@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-7.4.6.tgz#8cb3fd94c4c7c5d307fb1606dcb0e06fc8672410" + integrity sha512-05MJFmOM86qvTLtgDskokIFz9txe0Lbhq4L3by1FtF0GwgH+p+W6I94KI7c6ANER+kVZkXQZhiRzwBFnVTW+Cg== dependencies: - "@storybook/core-events" "7.4.2" - "@storybook/node-logger" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/core-events" "7.4.6" + "@storybook/node-logger" "7.4.6" + "@storybook/types" "7.4.6" "@types/find-cache-dir" "^3.2.1" "@types/node" "^16.0.0" "@types/node-fetch" "^2.6.4" @@ -4529,33 +4599,33 @@ resolve-from "^5.0.0" ts-dedent "^2.0.0" -"@storybook/core-events@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-7.4.2.tgz#8b362bf86ade69a164094d9647992c3f8598034e" - integrity sha512-WCEBw+Ew8DrccnB0hpP9TXadreoOlMnWCyuXU2XrvmK/vde009leWQIsLs1rY+L17zDVuogBms62AxrDDJmMpw== +"@storybook/core-events@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-7.4.6.tgz#f0b652c623c1afebda42d1702d631cecc1c137bf" + integrity sha512-r5vrE+32lwrJh1NGFr1a0mWjvxo7q8FXYShylcwRWpacmL5NTtLkrXOoJSeGvJ4yKNYkvxQFtOPId4lzDxa32w== dependencies: ts-dedent "^2.0.0" -"@storybook/core-server@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-7.4.2.tgz#ce2568d9793d752a3319cc8a907ea07264ef9e2d" - integrity sha512-4aaFQTjb8jsbzJeCs+VTo3gdyK3r3VhQN2sxn6k/lcKjQFeO84+iqGgGmb+oWUVz2TJL+JrNh7SUXkVsMZBXVQ== +"@storybook/core-server@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-7.4.6.tgz#82a3834d9a063ff01a126f7c1724c8997bdd1555" + integrity sha512-jqmRTGCJ1W0WReImivkisPVaLFT5sjtLnFoAk0feHp6QS5j7EYOPN7CYzliyQmARWTLUEXOVaFf3VD6nJZQhJQ== dependencies: "@aw-web-design/x-default-browser" "1.4.126" "@discoveryjs/json-ext" "^0.5.3" - "@storybook/builder-manager" "7.4.2" - "@storybook/channels" "7.4.2" - "@storybook/core-common" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/builder-manager" "7.4.6" + "@storybook/channels" "7.4.6" + "@storybook/core-common" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/csf" "^0.1.0" - "@storybook/csf-tools" "7.4.2" + "@storybook/csf-tools" "7.4.6" "@storybook/docs-mdx" "^0.1.0" "@storybook/global" "^5.0.0" - "@storybook/manager" "7.4.2" - "@storybook/node-logger" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/telemetry" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/manager" "7.4.6" + "@storybook/node-logger" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/telemetry" "7.4.6" + "@storybook/types" "7.4.6" "@types/detect-port" "^1.3.0" "@types/node" "^16.0.0" "@types/pretty-hrtime" "^1.0.0" @@ -4575,7 +4645,6 @@ prompts "^2.4.0" read-pkg-up "^7.0.1" semver "^7.3.7" - serve-favicon "^2.5.0" telejson "^7.2.0" tiny-invariant "^1.3.1" ts-dedent "^2.0.0" @@ -4584,36 +4653,36 @@ watchpack "^2.2.0" ws "^8.2.3" -"@storybook/core-webpack@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/core-webpack/-/core-webpack-7.4.2.tgz#8983599b1480b1eef05b00a0f610c014307d31d1" - integrity sha512-k6YBkExt1XtQSx6E25nE9lCq87hbzkwBlAhzPcFKGeKQia7Uc+l5IG73+9sWXXJ2sbL/7eCaFg4L7payo2aOkw== +"@storybook/core-webpack@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/core-webpack/-/core-webpack-7.4.6.tgz#d8063c3854f49e383b68ff13311b3767a55eaaed" + integrity sha512-EqQDmd+vKAWOAjoe539LsfP8WvQG9V9i1priMA53u1FOEged8o0NBtRiRy2+JDdUSiGUdpe/X5+V/TyyQw/KWw== dependencies: - "@storybook/core-common" "7.4.2" - "@storybook/node-logger" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/core-common" "7.4.6" + "@storybook/node-logger" "7.4.6" + "@storybook/types" "7.4.6" "@types/node" "^16.0.0" ts-dedent "^2.0.0" -"@storybook/csf-plugin@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/csf-plugin/-/csf-plugin-7.4.2.tgz#13321a8aa29eb39d56990e07c5a873a68673cf10" - integrity sha512-b0yQ8oXEH0s3SGgjhOVrbjkc3C8IYGyTSnDtPwx/Dgmru/rC6LT7ZOdBegmGqBN1+6Ho0+AxFrmAmuuYK8p2rA== +"@storybook/csf-plugin@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/csf-plugin/-/csf-plugin-7.4.6.tgz#63b4498c9be329ba9cdd53bb8cbe66ef225230ec" + integrity sha512-yi7Qa4NSqKOyiJTWCxlB0ih2ijXq6oY5qZKW6MuMMBP14xJNRGLbH5KabpfXgN2T7YECcOWG1uWaGj2veJb1KA== dependencies: - "@storybook/csf-tools" "7.4.2" + "@storybook/csf-tools" "7.4.6" unplugin "^1.3.1" -"@storybook/csf-tools@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-7.4.2.tgz#55e4c275d8ce7ef2f67d473d5a74f2a6f7964ad9" - integrity sha512-5AvF2YRcYHIqQqskb3R8JvsmSWnNwkP0CGmP8Zq7zIfK/C+npKb/onv5YQlbSgh+2UrVxVdIDLc9AepBeXC3uQ== +"@storybook/csf-tools@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/csf-tools/-/csf-tools-7.4.6.tgz#3987e31d5975dcaa8f3dfa4f5e0fb5cd457cbae6" + integrity sha512-ocKpcIUtTBy6hlLY34RUFQyX403cWpB2gGfqvkHbpGe2BQj7EyV0zpWnjsfVxvw+M9OWlCdxHWDOPUgXM33ELw== dependencies: "@babel/generator" "^7.22.9" "@babel/parser" "^7.22.7" "@babel/traverse" "^7.22.8" "@babel/types" "^7.22.5" "@storybook/csf" "^0.1.0" - "@storybook/types" "7.4.2" + "@storybook/types" "7.4.6" fs-extra "^11.1.0" recast "^0.23.1" ts-dedent "^2.0.0" @@ -4637,14 +4706,14 @@ resolved "https://registry.yarnpkg.com/@storybook/docs-mdx/-/docs-mdx-0.1.0.tgz#33ba0e39d1461caf048b57db354b2cc410705316" integrity sha512-JDaBR9lwVY4eSH5W8EGHrhODjygPd6QImRbwjAuJNEnY0Vw4ie3bPkeGfnacB3OBW6u/agqPv2aRlR46JcAQLg== -"@storybook/docs-tools@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/docs-tools/-/docs-tools-7.4.2.tgz#403885e64cff1876397d0651e82a16cecb19bce4" - integrity sha512-MXW+xaxah+C+aqJ5178oOILqX7dCSwJMKJefIJHHwr9w6UuGRaiPG1NDYK/0N0IEv9H8pNnXPnw3R8S6x7COhQ== +"@storybook/docs-tools@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/docs-tools/-/docs-tools-7.4.6.tgz#cbba8dadd13adc7a9a3c792261ca875ff12ae451" + integrity sha512-nZj1L/8WwKWWJ41FW4MaKGajZUtrhnr9UwflRCkQJaWhAKmDfOb5M5TqI93uCOULpFPOm5wpoMBz2IHInQ2Lrg== dependencies: - "@storybook/core-common" "7.4.2" - "@storybook/preview-api" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/core-common" "7.4.6" + "@storybook/preview-api" "7.4.6" + "@storybook/types" "7.4.6" "@types/doctrine" "^0.0.3" doctrine "^3.0.0" lodash "^4.17.21" @@ -4654,30 +4723,30 @@ resolved "https://registry.yarnpkg.com/@storybook/global/-/global-5.0.0.tgz#b793d34b94f572c1d7d9e0f44fac4e0dbc9572ed" integrity sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ== -"@storybook/instrumenter@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/instrumenter/-/instrumenter-7.4.2.tgz#4c8c59bcdbafaddf6e214aef6297d735af13ea28" - integrity sha512-g0tYjfv8q6RLl7PK3cyZGcdhad+4BspT1TXHl5Z4DFSo+bqFyHkP6X9tXzrpfQk+3abNrh5EjPaeec4+YHAOEw== +"@storybook/instrumenter@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/instrumenter/-/instrumenter-7.4.6.tgz#7a941a31aeae6cc1864689288d66cb282368b602" + integrity sha512-K5atRoVFCl6HEgkSxIbwygpzgE/iROc7BrtJ3z3a7E70sanFr6Jxt6Egu6fz2QkL3ef4EWpXMnle2vhEfG29pA== dependencies: - "@storybook/channels" "7.4.2" - "@storybook/client-logger" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/channels" "7.4.6" + "@storybook/client-logger" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/preview-api" "7.4.2" + "@storybook/preview-api" "7.4.6" -"@storybook/manager-api@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/manager-api/-/manager-api-7.4.2.tgz#821d1a07e9b3058d7470eab091392d1bdbe06c94" - integrity sha512-gKPG0At9AGhF32iwjiba+ILqswc3ZFj9ZIu5HjGEmaoiOfqI6TayuHoptup0QxkI/Hx8f9mNkHCwR9COrmb69w== +"@storybook/manager-api@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/manager-api/-/manager-api-7.4.6.tgz#e74bd0a0a983d6b9b7f66dfe0d94d8465f5e7a34" + integrity sha512-inrm3DIbCp8wjXSN/wK6e6i2ysQ/IEmtC7IN0OJ7vdrp+USCooPT448SQTUmVctUGCFmOU3fxXByq8g77oIi7w== dependencies: - "@storybook/channels" "7.4.2" - "@storybook/client-logger" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/channels" "7.4.6" + "@storybook/client-logger" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/csf" "^0.1.0" "@storybook/global" "^5.0.0" - "@storybook/router" "7.4.2" - "@storybook/theming" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/router" "7.4.6" + "@storybook/theming" "7.4.6" + "@storybook/types" "7.4.6" dequal "^2.0.2" lodash "^4.17.21" memoizerific "^1.11.3" @@ -4686,51 +4755,51 @@ telejson "^7.2.0" ts-dedent "^2.0.0" -"@storybook/manager@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/manager/-/manager-7.4.2.tgz#423312640930b39c3263f2db9a0ffd564045cc53" - integrity sha512-MtjmbAaf4hUObAa2ETQkm0+SzESoPeNm+TyzwZU5qq3Ouj4IOj2Ugd8EJPO3isdHxYt26A255tW/G9mb9v20fQ== +"@storybook/manager@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/manager/-/manager-7.4.6.tgz#96acb0ab60e05b74947d7895e04efa557fd8892f" + integrity sha512-kA1hUDxpn1i2SO9OinvLvVXDeL4xgJkModp+pbE8IXv4NJWReNq1ecMeQCzPLS3Sil2gnrullQ9uYXsnZ9bxxA== "@storybook/mdx2-csf@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@storybook/mdx2-csf/-/mdx2-csf-1.1.0.tgz#97f6df04d0bf616991cc1005a073ac004a7281e5" integrity sha512-TXJJd5RAKakWx4BtpwvSNdgTDkKM6RkXU8GK34S/LhidQ5Pjz3wcnqb0TxEkfhK/ztbP8nKHqXFwLfa2CYkvQw== -"@storybook/node-logger@7.4.2", "@storybook/node-logger@^7.3.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-7.4.2.tgz#e8058aab8266a00d253f724fef78e793d7d790ff" - integrity sha512-iSBjhnMpWY9Hs5KGnf/xfHjGtGl740LUg4Gce874DuL773Mdc4hdppSKr4X/Pp1/AD67mNuifSXYx3V7d6XzTQ== +"@storybook/node-logger@7.4.6", "@storybook/node-logger@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-7.4.6.tgz#d92eb7e99cb8aefffe67eb63583a21398ce9a0ab" + integrity sha512-djZb310Q27GviDug1XBv0jOEDLCiwr4hhDE0aifCEKZpfNCi/EaP31nbWimFzZwxu4hE/YAPWExzScruR1zw9Q== -"@storybook/postinstall@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-7.4.2.tgz#e3383ac3b19669a4b506949bc21d55d88801f3fd" - integrity sha512-L9r14KqS87HPyXw0S3pK2X29ckel/4sdBSmy9nVF8n/ADafKE0pSLKB935VL0+88eMx06aT32SMcQoqjubGKWw== +"@storybook/postinstall@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-7.4.6.tgz#2d5da361fc8baee1866c80b2244815a9e217b843" + integrity sha512-TqI5BucPAGRWrkh55BYiG2/gHLFtC0In4cuu0GsUzB/1jc4i51npLRorCwhmT7r7YliGl5F7JaP0Bni/qHN3Lg== -"@storybook/preset-create-react-app@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/preset-create-react-app/-/preset-create-react-app-7.4.2.tgz#2bcd9812c3534e4927eb9869c3a462a77db668d9" - integrity sha512-rHRaiWmNAFXVHlRBG4iQE0Vsg3n4ZUyRWqddV2NuqZnHYQYUP07Rp0c3TFigGeTqF/gNbj8rTBDawcwpc8VkqQ== +"@storybook/preset-create-react-app@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/preset-create-react-app/-/preset-create-react-app-7.4.6.tgz#733bb04aaf19b179942e42f09521996bcb86c1a1" + integrity sha512-Uu5ekx31NAhJQ3ZIxc910FYrRCpGizuTtawJjJ+ARuh1AU5wTYuNhAaqesf1M4qXijBs3OBwkj3EwsjSu6qcoA== dependencies: "@pmmmwh/react-refresh-webpack-plugin" "^0.5.1" "@storybook/react-docgen-typescript-plugin" "1.0.6--canary.9.0c3f3b7.0" - "@storybook/types" "7.4.2" + "@storybook/types" "7.4.6" "@types/babel__core" "^7.1.7" babel-plugin-react-docgen "^4.1.0" pnp-webpack-plugin "^1.7.0" semver "^7.3.5" -"@storybook/preset-react-webpack@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/preset-react-webpack/-/preset-react-webpack-7.4.2.tgz#d54ce58d41afd0586bc7ec923ed3d5dad72e0471" - integrity sha512-CWWiwZa3/0zHnc6zLvI9Sgj12gJDTktZO87/gfwq2VfbWqAEUYsKs6NE4Pm0Yg9O4/IG8DHoHIB+bTNlLp/lCA== +"@storybook/preset-react-webpack@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/preset-react-webpack/-/preset-react-webpack-7.4.6.tgz#11c07fbfc06e87d42da87c9e07f05e5a5b9a1339" + integrity sha512-FfJvlk3bJfg66t06YLiyu+1o/DZN3uNfFP37zv5cJux7TpdmJRV/4m9LKQPJOvcnWBQYem8xX8k5cRS29vdW5g== dependencies: "@babel/preset-flow" "^7.22.5" "@babel/preset-react" "^7.22.5" "@pmmmwh/react-refresh-webpack-plugin" "^0.5.5" - "@storybook/core-webpack" "7.4.2" - "@storybook/docs-tools" "7.4.2" - "@storybook/node-logger" "7.4.2" - "@storybook/react" "7.4.2" + "@storybook/core-webpack" "7.4.6" + "@storybook/docs-tools" "7.4.6" + "@storybook/node-logger" "7.4.6" + "@storybook/react" "7.4.6" "@storybook/react-docgen-typescript-plugin" "1.0.6--canary.9.0c3f3b7.0" "@types/node" "^16.0.0" "@types/semver" "^7.3.4" @@ -4741,17 +4810,17 @@ semver "^7.3.7" webpack "5" -"@storybook/preview-api@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/preview-api/-/preview-api-7.4.2.tgz#b481d3cbeac6ee1813b97e8fbdd76e0393b78772" - integrity sha512-ihTHRYzI/sI6bD215aYppiWF+1u38TrlsNjFYJ/Grftbti5d40g5wCwvAXK41SxJNYpk6CRtfvNKOwbEAC33gg== +"@storybook/preview-api@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/preview-api/-/preview-api-7.4.6.tgz#a42749ff867216b89849ada6ac0f49f4fa8f03a8" + integrity sha512-byUS/Opt3ytWD4cWz3sNEKw5Yks8MkQgRN+GDSyIomaEAQkLAM0rchPC0MYjwCeUSecV7IIQweNX5RbV4a34BA== dependencies: - "@storybook/channels" "7.4.2" - "@storybook/client-logger" "7.4.2" - "@storybook/core-events" "7.4.2" + "@storybook/channels" "7.4.6" + "@storybook/client-logger" "7.4.6" + "@storybook/core-events" "7.4.6" "@storybook/csf" "^0.1.0" "@storybook/global" "^5.0.0" - "@storybook/types" "7.4.2" + "@storybook/types" "7.4.6" "@types/qs" "^6.9.5" dequal "^2.0.2" lodash "^4.17.21" @@ -4761,10 +4830,10 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/preview@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/preview/-/preview-7.4.2.tgz#8539e0379f195d12774832bd9c87166b0382fc1e" - integrity sha512-T7rAV6qQ7tBeSvgi0RuA5EU8tm1OMhU8PcCqosWGaLhMCR0VMzw1/WGKuR11g1XmzvaAm2xGgMp82nqi4G0i7A== +"@storybook/preview@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/preview/-/preview-7.4.6.tgz#b0d9f5a843d4c7aea8857f6bc5d7253cc04c7c4b" + integrity sha512-2RPXusJ4CTDrIipIKKvbotD7fP0+8VzoFjImunflIrzN9rni+2rq5eMjqlXAaB+77w064zIR4uDUzI9fxsMDeQ== "@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0": version "1.0.6--canary.9.0c3f3b7.0" @@ -4779,33 +4848,33 @@ react-docgen-typescript "^2.2.2" tslib "^2.0.0" -"@storybook/react-dom-shim@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/react-dom-shim/-/react-dom-shim-7.4.2.tgz#861e6afd540634f5dda8639251f207c8d8e722e0" - integrity sha512-9Ae2As3Hf//mdFEAv58VgDbi9R5JRGne8Ai6Vspc5FZMCJIjr5kullckBi3n9uKRg2L8V7wjDRK8Cql2tEr0Yg== +"@storybook/react-dom-shim@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/react-dom-shim/-/react-dom-shim-7.4.6.tgz#7f7e01dbb6abe104ae140e25b7ed98c347a5fb9f" + integrity sha512-DSq8l9FDocUF1ooVI+TF83pddj1LynE/Hv0/y8XZhc3IgJ/HkuOQuUmfz29ezgfAi9gFYUR8raTIBi3/xdoRmw== -"@storybook/react-webpack5@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/react-webpack5/-/react-webpack5-7.4.2.tgz#3299d55b523807225398263a1596ee864d270102" - integrity sha512-pnl11MYKM3jRmHQz2dSnEDfDiApdH7ys3zH/FjImsTK6S8etMKlxGnZ58Puxj05qvrBRgpxnQSL+ZazfrEX/6w== +"@storybook/react-webpack5@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/react-webpack5/-/react-webpack5-7.4.6.tgz#585256d9e44ba24514a7391ac786379f8f81551a" + integrity sha512-OSwf+E2tRcfBmzCH+WwM7JlfEYjg5Womi1yrtotfcjVXAU6ubHOk2G87zsrKLp/TeCOFM2aHohHBTyWUCejQKQ== dependencies: - "@storybook/builder-webpack5" "7.4.2" - "@storybook/preset-react-webpack" "7.4.2" - "@storybook/react" "7.4.2" + "@storybook/builder-webpack5" "7.4.6" + "@storybook/preset-react-webpack" "7.4.6" + "@storybook/react" "7.4.6" "@types/node" "^16.0.0" -"@storybook/react@7.4.2", "@storybook/react@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/react/-/react-7.4.2.tgz#a5b5f0f2e63ca60936e874eca243082d0eb2544c" - integrity sha512-8bAnSOpDTiE1c9pSkIKRipvqbuZP6Hu1CYaG1RXWF8AIBsjiV9+SsR919Flj1UiCmcw4BLO/ZIvIDGny4ktHhA== +"@storybook/react@7.4.6", "@storybook/react@^7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/react/-/react-7.4.6.tgz#240a78547add8db69b5d2eeae3d6c45feb79559b" + integrity sha512-w0dVo64baFFPTGpUOWFqkKsu6pQincoymegSNgqaBd5DxEyMDRiRoTWSJHMKE9BwgE8SyWhRkP1ak1mkccSOhQ== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/core-client" "7.4.2" - "@storybook/docs-tools" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/core-client" "7.4.6" + "@storybook/docs-tools" "7.4.6" "@storybook/global" "^5.0.0" - "@storybook/preview-api" "7.4.2" - "@storybook/react-dom-shim" "7.4.2" - "@storybook/types" "7.4.2" + "@storybook/preview-api" "7.4.6" + "@storybook/react-dom-shim" "7.4.6" + "@storybook/types" "7.4.6" "@types/escodegen" "^0.0.6" "@types/estree" "^0.0.51" "@types/node" "^16.0.0" @@ -4821,31 +4890,31 @@ type-fest "~2.19" util-deprecate "^1.0.2" -"@storybook/router@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/router/-/router-7.4.2.tgz#04644705bf0703a5c65163dff0f11d42c8727b93" - integrity sha512-TFpMrmliklWNSrF84kGnh3WcLZciqIvaAjhxahqD+kx070KLqjxrsiny7UC6PUUYZdjLkbR9m8n3SFdXAVKgLw== +"@storybook/router@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-7.4.6.tgz#54d3014af26f82d79eae7dc5b0e6a89509b11912" + integrity sha512-Vl1esrHkcHxDKqc+HY7+6JQpBPW3zYvGk0cQ2rxVMhWdLZTAz1hss9DqzN9tFnPyfn0a1Q77EpMySkUrvWKKNQ== dependencies: - "@storybook/client-logger" "7.4.2" + "@storybook/client-logger" "7.4.6" memoizerific "^1.11.3" qs "^6.10.0" -"@storybook/store@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/store/-/store-7.4.2.tgz#c31c41a2a314870b968591db7bc4e4debbd0ca88" - integrity sha512-WYwhdyGEtOZlLkbGqfzsTY5IsVuQCz6J00g63bEQwxiCx3ZNco+HXGoQhV/SH3G+em2++1sh6BETFuZ5sbwmkQ== +"@storybook/store@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/store/-/store-7.4.6.tgz#e83d65af2e0c142d8da941defc252ccc18f504fc" + integrity sha512-tlm9rQ+djkYjEyCuEjaUv+c+jVgwnMEF9mZxnOoA6zrzU2g0S/1oE9/MdVLByGbH67U0NuuP0FcvsWLhAOQzjQ== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/preview-api" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/preview-api" "7.4.6" -"@storybook/telemetry@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/telemetry/-/telemetry-7.4.2.tgz#cc03efd39661c0d4c8eacfe02e95e90b1cba52a6" - integrity sha512-ZAh1Bjk9JVpL5j0Aj3PHr3XEDZcOrFeugVyRuuul2gAyu6SbpPhl8Dd2Wr9YJS0ZDWs3u0CgKRCeFPPAi3QosA== +"@storybook/telemetry@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/telemetry/-/telemetry-7.4.6.tgz#748c978a188c988d688a50635025c12e7e90f924" + integrity sha512-c8p/C1NIH8EMBviZkBCx8MMDk6rrITJ+b29DEp5MaWSRlklIVyhGiC4RPIRv6sxJwlD41PnqWVFtfu2j2eXLdQ== dependencies: - "@storybook/client-logger" "7.4.2" - "@storybook/core-common" "7.4.2" - "@storybook/csf-tools" "7.4.2" + "@storybook/client-logger" "7.4.6" + "@storybook/core-common" "7.4.6" + "@storybook/csf-tools" "7.4.6" chalk "^4.1.0" detect-package-manager "^2.0.1" fetch-retry "^5.0.2" @@ -4861,22 +4930,22 @@ "@testing-library/user-event" "~14.4.0" ts-dedent "^2.2.0" -"@storybook/theming@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-7.4.2.tgz#57396b3c520187103ce99168b8473e2138311194" - integrity sha512-wVmxZHVCqDoZgUOXTS4HRV4UClLtCydRNOEuUZ7X08QIPSA1FVL3gEpTQJfgCsyBX/cwSSofAMUbzAGEVNo+9g== +"@storybook/theming@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-7.4.6.tgz#72f7e42a57347d84128cef9abfba5ac1a810118e" + integrity sha512-HW77iJ9ptCMqhoBOYFjRQw7VBap+38fkJGHP5KylEJCyYCgIAm2dEcQmtWpMVYFssSGcb6djfbtAMhYU4TL4Iw== dependencies: "@emotion/use-insertion-effect-with-fallbacks" "^1.0.0" - "@storybook/client-logger" "7.4.2" + "@storybook/client-logger" "7.4.6" "@storybook/global" "^5.0.0" memoizerific "^1.11.3" -"@storybook/types@7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@storybook/types/-/types-7.4.2.tgz#c7ae7521e6f7a3f811797464724d5e4714597ca9" - integrity sha512-OOJ2TeS3Zzc6spHbdH+JXml0q4IHuYt9axmXAv1/pkhqHjA5072pyUacmlYNQeihpQOOsKLiCQUQlvtMy9fTnQ== +"@storybook/types@7.4.6": + version "7.4.6" + resolved "https://registry.yarnpkg.com/@storybook/types/-/types-7.4.6.tgz#536f21b82e1f809052b4d09802f99a580e960175" + integrity sha512-6QLXtMVsFZFpzPkdGWsu/iuc8na9dnS67AMOBKm5qCLPwtUJOYkwhMdFRSSeJthLRpzV7JLAL8Kwvl7MFP3QSw== dependencies: - "@storybook/channels" "7.4.2" + "@storybook/channels" "7.4.6" "@types/babel__core" "^7.0.0" "@types/express" "^4.7.0" file-system-cache "2.3.0" @@ -5276,9 +5345,9 @@ integrity sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q== "@types/cross-spawn@^6.0.2": - version "6.0.2" - resolved "https://registry.yarnpkg.com/@types/cross-spawn/-/cross-spawn-6.0.2.tgz#168309de311cd30a2b8ae720de6475c2fbf33ac7" - integrity sha512-KuwNhp3eza+Rhu8IFI5HUXRP0LIhqH5cAjubUvGXXthh4YYBuP2ntwEX+Cz8GJoZUHlKo247wPWOfA9LYEq4cw== + version "6.0.3" + resolved "https://registry.yarnpkg.com/@types/cross-spawn/-/cross-spawn-6.0.3.tgz#c743cb2608f55860ee9776d8c99135d6032c763c" + integrity sha512-BDAkU7WHHRHnvBf5z89lcvACsvkz/n7Tv+HyD/uW76O29HoH1Tk/W6iQrepaZVbisvlEek4ygwT8IW7ow9XLAA== dependencies: "@types/node" "*" @@ -5300,14 +5369,14 @@ integrity sha512-w5jZ0ee+HaPOaX25X2/2oGR/7rgAQSYII7X7pp0m9KgBfMP7uKfMfTvcpl5Dj+eDBbpxKGiqE+flqDr6XTd2RA== "@types/ejs@^3.1.1": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@types/ejs/-/ejs-3.1.2.tgz#75d277b030bc11b3be38c807e10071f45ebc78d9" - integrity sha512-ZmiaE3wglXVWBM9fyVC17aGPkLo/UgaOjEiI2FXQfyczrCefORPxIe+2dVmnmk3zkVIbizjrlQzmPGhSYGXG5g== + version "3.1.3" + resolved "https://registry.yarnpkg.com/@types/ejs/-/ejs-3.1.3.tgz#ad91d1dd6e24fb60bbf96c534bce58b95eef9b57" + integrity sha512-mv5T/JI/bu+pbfz1o+TLl1NF0NIBbjS0Vl6Ppz1YY9DkXfzZT0lelXpfS5i3ZS3U/p90it7uERQpBvLYoK8e4A== "@types/emscripten@^1.39.6": - version "1.39.6" - resolved "https://registry.yarnpkg.com/@types/emscripten/-/emscripten-1.39.6.tgz#698b90fe60d44acf93c31064218fbea93fbfd85a" - integrity sha512-H90aoynNhhkQP6DRweEjJp5vfUVdIj7tdPLsu7pq89vODD/lcugKfZOsfgwpvM6XUewEp2N5dCg1Uf3Qe55Dcg== + version "1.39.8" + resolved "https://registry.yarnpkg.com/@types/emscripten/-/emscripten-1.39.8.tgz#5e3e81fb37397345cc7c12d189bd72c7d0095af8" + integrity sha512-Rk0HKcMXFUuqT32k1kXHZWgxiMvsyYsmlnjp0rLKa0MMoqXLE3T9dogDBTRfuc3SAsXu97KD3k4SKR1lHqd57w== "@types/escodegen@^0.0.6": version "0.0.6" @@ -5363,9 +5432,9 @@ "@types/range-parser" "*" "@types/express-serve-static-core@^4.17.33": - version "4.17.36" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.36.tgz#baa9022119bdc05a4adfe740ffc97b5f9360e545" - integrity sha512-zbivROJ0ZqLAtMzgzIUC4oNqDG9iF0lSsAqpOD9kbs5xcIM3dTiyuHvBc7R8MtWBp3AAWGaovJa+wzWPjLYW7Q== + version "4.17.37" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.37.tgz#7e4b7b59da9142138a2aaa7621f5abedce8c7320" + integrity sha512-ZohaCYTgGFcOP7u6aJOhY9uIZQgZ2vxC2yWoArY+FeDXlqeH66ZVBjgvg+RLVAS/DWNq4Ap9ZXu1+SUQiiWYMg== dependencies: "@types/node" "*" "@types/qs" "*" @@ -5383,9 +5452,9 @@ "@types/serve-static" "*" "@types/express@^4.7.0": - version "4.17.17" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.17.tgz#01d5437f6ef9cfa8668e616e13c2f2ac9a491ae4" - integrity sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q== + version "4.17.18" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.18.tgz#efabf5c4495c1880df1bdffee604b143b29c4a95" + integrity sha512-Sxv8BSLLgsBYmcnGdGjjEjqET2U+AKAdCRODmMiq02FgjwuV75Ut85DRpvFjyw/Mk0vgUOliGRU0UUmuuZHByQ== dependencies: "@types/body-parser" "*" "@types/express-serve-static-core" "^4.17.33" @@ -5558,19 +5627,19 @@ integrity sha512-BG4tyr+4amr3WsSEmHn/fXPqaCba/AYZ7dsaQTiavihQunHSIxk+uAtqsjvicNpyHN6cm+B9RVrUOtW9VzIKHw== "@types/mime-types@^2.1.0": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@types/mime-types/-/mime-types-2.1.1.tgz#d9ba43490fa3a3df958759adf69396c3532cf2c1" - integrity sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw== + version "2.1.2" + resolved "https://registry.yarnpkg.com/@types/mime-types/-/mime-types-2.1.2.tgz#b4fe6996d2f32975b6603b26b4e4b3b6c92c9901" + integrity sha512-q9QGHMGCiBJCHEvd4ZLdasdqXv570agPsUW0CeIm/B8DzhxsYMerD0l3IlI+EQ1A2RWHY2mmM9x1YIuuWxisCg== "@types/mime@*": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-3.0.1.tgz#5f8f2bca0a5863cb69bc0b0acd88c96cb1d4ae10" - integrity sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA== + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-3.0.2.tgz#c1ae807f13d308ee7511a5b81c74f327028e66e8" + integrity sha512-Wj+fqpTLtTbG7c0tH47dkahefpLKEbB+xAZuLq7b4/IDHPl/n6VoXcyUQ2bypFlbSwvCr0y+bD4euTTqTJsPxQ== "@types/mime@^1": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" - integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== + version "1.3.3" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.3.tgz#bbe64987e0eb05de150c305005055c7ad784a9ce" + integrity sha512-Ys+/St+2VF4+xuY6+kDIXGxbNRO0mesVg0bbxEfB97Od1Vjpjx9KD1qxs64Gcb3CWPirk9Xe+PT4YiiHQ9T+eg== "@types/minimatch@^3.0.3": version "3.0.5" @@ -5588,17 +5657,19 @@ integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA== "@types/node-fetch@^2.6.4": - version "2.6.5" - resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.5.tgz#972756a9a0fe354b2886bf3defe667ddb4f0d30a" - integrity sha512-OZsUlr2nxvkqUFLSaY2ZbA+P1q22q+KrlxWOn/38RX+u5kTkYL2mTujEpzUhGkS+K/QCYp9oagfXG39XOzyySg== + version "2.6.6" + resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.6.tgz#b72f3f4bc0c0afee1c0bc9cff68e041d01e3e779" + integrity sha512-95X8guJYhfqiuVVhRFxVQcf4hW/2bCuoPwDasMf/531STFoNoWTT7YDnWdXHEZKqAGUigmpG31r2FE70LwnzJw== dependencies: "@types/node" "*" form-data "^4.0.0" "@types/node@*": - version "20.6.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.6.2.tgz#a065925409f59657022e9063275cd0b9bd7e1b12" - integrity sha512-Y+/1vGBHV/cYk6OI1Na/LHzwnlNCAfU3ZNGrc1LdRe/LAIbdDPTTv/HU3M7yXN448aTVDq3eKRm2cg7iKLb8gw== + version "20.8.4" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.4.tgz#0e9ebb2ff29d5c3302fc84477d066fa7c6b441aa" + integrity sha512-ZVPnqU58giiCjSxjVUESDtdPk4QR5WQhhINbc9UBrKLU68MX5BF6kbQzTrkwbolyr0X8ChBpXfavr5mZFKZQ5A== + dependencies: + undici-types "~5.25.1" "@types/node@^13.7.0": version "13.13.52" @@ -5606,9 +5677,9 @@ integrity sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ== "@types/node@^16.0.0": - version "16.18.52" - resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.52.tgz#70c56b55d0d7e15fafa875127e95a92605c59c9b" - integrity sha512-sm2aph6cRSsTMFYFgI+RpPLunXO9ClJkpizUVdT7KmGeyfQ14xnjTMT/f3MHcfKqevXqGT6BgVFzW8wcEoDUtA== + version "16.18.58" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.58.tgz#bf66f63983104ed57c754f4e84ccaf16f8235adb" + integrity sha512-YGncyA25/MaVtQkjWW9r0EFBukZ+JulsLcVZBlGUfIb96OBMjkoRWwQo5IEWJ8Fj06Go3GHw+bjYDitv6BaGsA== "@types/node@^18.11.9": version "18.11.18" @@ -5616,9 +5687,9 @@ integrity sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA== "@types/normalize-package-data@^2.4.0": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" - integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== + version "2.4.2" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.2.tgz#9b0e3e8533fe5024ad32d6637eb9589988b6fdca" + integrity sha512-lqa4UEhhv/2sjjIQgjX8B+RBjj47eo0mzGasklVJ78UKGQY1r0VpB9XHDaZZO9qzEFDdy4MrXLuEaSmPrPSe/A== "@types/parse-json@^4.0.0": version "4.0.0" @@ -5651,9 +5722,9 @@ integrity sha512-u95svzDlTysU5xecFNTgfFG5RUWu1A9P0VzgpcIiGZA9iraHOdSzcxMxQ55DyeRaGCSxQi7LxXDI4rzq/MYfdg== "@types/range-parser@*": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" - integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== + version "1.2.5" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.5.tgz#38bd1733ae299620771bd414837ade2e57757498" + integrity sha512-xrO9OoVPqFuYyR/loIHjnbvvyRZREYKLjxV4+dY6v3FQR3stQ9ZxIGkaclF7YhI9hfjpuTbu14hZEy94qKLtOA== "@types/react-csv@^1.1.2": version "1.1.3" @@ -5755,14 +5826,14 @@ integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw== "@types/semver@^7.3.4": - version "7.5.2" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.2.tgz#31f6eec1ed7ec23f4f05608d3a2d381df041f564" - integrity sha512-7aqorHYgdNO4DM36stTiGO3DvKoex9TQRwsJU6vMaFGyqpBA1MNZkz+PG3gaNUPpTAOYhT1WR7M1JyA3fbS9Cw== + version "7.5.3" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.3.tgz#9a726e116beb26c24f1ccd6850201e1246122e04" + integrity sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw== "@types/send@*": - version "0.17.1" - resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.1.tgz#ed4932b8a2a805f1fe362a70f4e62d0ac994e301" - integrity sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q== + version "0.17.2" + resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.2.tgz#af78a4495e3c2b79bfbdac3955fdd50e03cc98f2" + integrity sha512-aAG6yRf6r0wQ29bkS+x97BIs64ZLxeE/ARwyS6wrldMm3C1MdKwCcnnEwMC1slI8wuxJOpiUH9MioC0A0i+GJw== dependencies: "@types/mime" "^1" "@types/node" "*" @@ -5775,9 +5846,9 @@ "@types/express" "*" "@types/serve-static@*": - version "1.15.2" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.2.tgz#3e5419ecd1e40e7405d34093f10befb43f63381a" - integrity sha512-J2LqtvFYCzaj8pVYKw8klQXrLLk7TBZmQ4ShlcdkELFKGwGMfevMLneMMRkMgZxotOD9wg497LpC7O8PcvAmfw== + version "1.15.3" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.3.tgz#2cfacfd1fd4520bbc3e292cca432d5e8e2e3ee61" + integrity sha512-yVRvFsEMrv7s0lGhzrggJjNOSmZCdgCjw9xWrPr/kNNLp6FaDfMC1KaYl3TSJ0c58bECwNBMoQrZJ8hA8E1eFg== dependencies: "@types/http-errors" "*" "@types/mime" "*" @@ -7277,7 +7348,7 @@ babel-plugin-polyfill-corejs2@^0.3.3: "@babel/helper-define-polyfill-provider" "^0.3.3" semver "^6.1.1" -babel-plugin-polyfill-corejs2@^0.4.4: +babel-plugin-polyfill-corejs2@^0.4.4, babel-plugin-polyfill-corejs2@^0.4.5: version "0.4.5" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz#8097b4cb4af5b64a1d11332b6fb72ef5e64a054c" integrity sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg== @@ -7294,13 +7365,13 @@ babel-plugin-polyfill-corejs3@^0.6.0: "@babel/helper-define-polyfill-provider" "^0.3.3" core-js-compat "^3.25.1" -babel-plugin-polyfill-corejs3@^0.8.2: - version "0.8.3" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz#b4f719d0ad9bb8e0c23e3e630c0c8ec6dd7a1c52" - integrity sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA== +babel-plugin-polyfill-corejs3@^0.8.2, babel-plugin-polyfill-corejs3@^0.8.3: + version "0.8.4" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.4.tgz#1fac2b1dcef6274e72b3c72977ed8325cb330591" + integrity sha512-9l//BZZsPR+5XjyJMPtZSK4jv0BsTO1zDac2GC6ygx9WLGlcsnRd1Co0B2zT5fF5Ic6BZy+9m3HNZ3QcOeDKfg== dependencies: "@babel/helper-define-polyfill-provider" "^0.4.2" - core-js-compat "^3.31.0" + core-js-compat "^3.32.2" babel-plugin-polyfill-regenerator@^0.4.1: version "0.4.1" @@ -7309,7 +7380,7 @@ babel-plugin-polyfill-regenerator@^0.4.1: dependencies: "@babel/helper-define-polyfill-provider" "^0.3.3" -babel-plugin-polyfill-regenerator@^0.5.1: +babel-plugin-polyfill-regenerator@^0.5.1, babel-plugin-polyfill-regenerator@^0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz#80d0f3e1098c080c8b5a65f41e9427af692dc326" integrity sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA== @@ -7589,7 +7660,7 @@ browserify-zlib@^0.1.4: dependencies: pako "~0.2.0" -browserslist@4.21.10, browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.21.9: +browserslist@4.21.10, browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.21.3, browserslist@^4.21.4: version "4.21.10" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0" integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ== @@ -7599,6 +7670,16 @@ browserslist@4.21.10, browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4 node-releases "^2.0.13" update-browserslist-db "^1.0.11" +browserslist@^4.21.9, browserslist@^4.22.1: + version "4.22.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619" + integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== + dependencies: + caniuse-lite "^1.0.30001541" + electron-to-chromium "^1.4.535" + node-releases "^2.0.13" + update-browserslist-db "^1.0.13" + bser@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" @@ -7742,10 +7823,10 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001426: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001532.tgz#c6a4d5d2da6d2b967f0ee5e12e7f680db6ad2fca" integrity sha512-FbDFnNat3nMnrROzqrsg314zhqN5LGQ1kyyMk2opcrwGbVGpHRhgCWtAgD5YJUqNAiQ+dklreil/c3Qf1dfCTw== -caniuse-lite@^1.0.30001517: - version "1.0.30001535" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001535.tgz#908a5b7ef11172f51f0b88f3d850aef1c6a3cf7b" - integrity sha512-48jLyUkiWFfhm/afF7cQPqPjaUmSraEhK4j+FCTJpgnGGEZHqyLe3hmWH7lIooZdSzXL0ReMvHz0vKDoTBsrwg== +caniuse-lite@^1.0.30001517, caniuse-lite@^1.0.30001541: + version "1.0.30001547" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001547.tgz#d4f92efc488aab3c7f92c738d3977c2a3180472b" + integrity sha512-W7CrtIModMAxobGhz8iXmDfuJiiKg1WADMO/9x7/CLNin5cpSbuBjooyoIUVB5eyCc36QuTVlkVa1iB2S5+/eA== capital-case@^1.0.4: version "1.0.4" @@ -7973,9 +8054,9 @@ cli-cursor@^3.1.0: restore-cursor "^3.1.0" cli-spinners@^2.5.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" - integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== + version "2.9.1" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.1.tgz#9c0b9dad69a6d47cbb4333c14319b060ed395a35" + integrity sha512-jHgecW0pxkonBJdrKsqxgRX9AcG+u/5k0Q7WPDfi8AogLAdwxEkyYYNWwZ5GvVFoFx2uiY1eNcSK00fh+1+FyQ== cli-table3@^0.6.1: version "0.6.3" @@ -8112,7 +8193,7 @@ colord@^2.9.1: resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== -colorette@^2.0.10, colorette@^2.0.19: +colorette@^2.0.10, colorette@^2.0.20: version "2.0.20" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== @@ -8267,12 +8348,12 @@ core-js-compat@^3.25.1: dependencies: browserslist "^4.21.4" -core-js-compat@^3.31.0: - version "3.31.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.31.1.tgz#5084ad1a46858df50ff89ace152441a63ba7aae0" - integrity sha512-wIDWd2s5/5aJSdpOJHfSibxNODxoGoWOBHt8JSPB41NOE94M7kuTPZCYLOlTtuoXTsBPKobpJ6T+y0SSy5L9SA== +core-js-compat@^3.31.0, core-js-compat@^3.32.2: + version "3.33.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.33.0.tgz#24aa230b228406450b2277b7c8bfebae932df966" + integrity sha512-0w4LcLXsVEuNkIqwjjf9rjCoPhK8uqA4tMRh4Ge26vfLtUutshn+aRJU21I9LCJlh2QQHfisNToLjw1XEJLTWw== dependencies: - browserslist "^4.21.9" + browserslist "^4.22.1" core-js-pure@^3.23.3: version "3.32.2" @@ -8750,12 +8831,30 @@ defer-to-connect@^2.0.0: resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587" integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg== +define-data-property@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.0.tgz#0db13540704e1d8d479a0656cf781267531b9451" + integrity sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g== + dependencies: + get-intrinsic "^1.2.1" + gopd "^1.0.1" + has-property-descriptors "^1.0.0" + define-lazy-prop@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0: +define-properties@^1.1.3, define-properties@^1.1.4: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + +define-properties@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5" integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA== @@ -9133,10 +9232,10 @@ ejs@^3.1.8: dependencies: jake "^10.8.5" -electron-to-chromium@^1.4.477: - version "1.4.523" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.523.tgz#f82f99243c827df05c26776d49712cb284972df6" - integrity sha512-9AreocSUWnzNtvLcbpng6N+GkXnCcBR80IQkxRC9Dfdyg4gaWNUPBujAHUpKkiUkoSoR9UlhA4zD/IgBklmhzg== +electron-to-chromium@^1.4.477, electron-to-chromium@^1.4.535: + version "1.4.548" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.548.tgz#e695d769e0e801fa6d438b63f6bc9b80372000d6" + integrity sha512-R77KD6mXv37DOyKLN/eW1rGS61N6yHOfapNSX9w+y9DdPG83l9Gkuv7qkCFZ4Ta4JPhrjgQfYbv4Y3TnM1Hi2Q== element-closest@^2.0.1: version "2.0.2" @@ -9946,7 +10045,7 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^3.1.1, fast-glob@^3.2.12, fast-glob@^3.2.2, fast-glob@^3.2.5, fast-glob@^3.2.9: +fast-glob@^3.1.1, fast-glob@^3.2.12, fast-glob@^3.2.2, fast-glob@^3.2.5: version "3.2.12" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== @@ -9957,6 +10056,17 @@ fast-glob@^3.1.1, fast-glob@^3.2.12, fast-glob@^3.2.2, fast-glob@^3.2.5, fast-gl merge2 "^1.3.0" micromatch "^4.0.4" +fast-glob@^3.2.9: + version "3.3.1" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4" + integrity sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + fast-json-parse@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/fast-json-parse/-/fast-json-parse-1.0.3.tgz#43e5c61ee4efa9265633046b770fb682a7577c4d" @@ -9992,9 +10102,9 @@ fastest-levenshtein@^1.0.12: integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== fastq@^1.6.0: - version "1.14.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.14.0.tgz#107f69d7295b11e0fccc264e1fc6389f623731ce" - integrity sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg== + version "1.15.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" + integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== dependencies: reusify "^1.0.4" @@ -10072,7 +10182,7 @@ file-system-cache@2.3.0: fs-extra "11.1.1" ramda "0.29.0" -filelist@^1.0.1: +filelist@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== @@ -10181,9 +10291,9 @@ flatted@^3.2.7: integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ== flow-parser@0.*: - version "0.213.1" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.213.1.tgz#c1916465050b165c9d8b931c02d78fe582e6c20c" - integrity sha512-l+vyZO6hrWG60DredryA8mq62fK9vxL6/RR13HA/aVLBNh9No/wEJsKI+CJqPRkF4CIRUfcJQBeaMXSKcncxUQ== + version "0.218.0" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.218.0.tgz#ec2e446b00eba373c661b4f5ccd9705996278c0a" + integrity sha512-mk4e7UK4P/W3tjrJyto6oxPuCjwvRMyzBh72hTl8T0dOcTzkP0M2JJHpncgyhKphMFi9pnjwHfc8e0oe4Uk3LA== follow-redirects@^1.0.0, follow-redirects@^1.14.8: version "1.15.2" @@ -10434,17 +10544,17 @@ get-symbol-description@^1.0.0: get-intrinsic "^1.1.1" giget@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/giget/-/giget-1.1.2.tgz#f99a49cb0ff85479c8c3612cdc7ca27f2066e818" - integrity sha512-HsLoS07HiQ5oqvObOI+Qb2tyZH4Gj5nYGfF9qQcZNrPw+uEFhdXtgJr01aO2pWadGHucajYDLxxbtQkm97ON2A== + version "1.1.3" + resolved "https://registry.yarnpkg.com/giget/-/giget-1.1.3.tgz#574ed901031eafa732347a7990d84bfa6484c51a" + integrity sha512-zHuCeqtfgqgDwvXlR84UNgnJDuUHQcNI5OqWqFxxuk2BshuKbYhJWdxBsEo4PvKqoGh23lUAIvBNpChMLv7/9Q== dependencies: - colorette "^2.0.19" + colorette "^2.0.20" defu "^6.1.2" - https-proxy-agent "^5.0.1" + https-proxy-agent "^7.0.2" mri "^1.2.0" - node-fetch-native "^1.0.2" - pathe "^1.1.0" - tar "^6.1.13" + node-fetch-native "^1.4.0" + pathe "^1.1.1" + tar "^6.2.0" github-slugger@^1.0.0: version "1.5.0" @@ -10471,12 +10581,12 @@ glob-to-regexp@^0.4.1: integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== glob@^10.0.0: - version "10.3.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.4.tgz#c85c9c7ab98669102b6defda76d35c5b1ef9766f" - integrity sha512-6LFElP3A+i/Q8XQKEvZjkEWEOTgAIALR9AO2rwT8bgPhDd1anmqDJDZ6lLddI4ehxxxR1S5RIqKe1uapMQfYaQ== + version "10.3.10" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" + integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g== dependencies: foreground-child "^3.1.0" - jackspeak "^2.0.3" + jackspeak "^2.3.5" minimatch "^9.0.1" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" path-scurry "^1.10.1" @@ -10763,11 +10873,9 @@ has-tostringtag@^1.0.0: has-symbols "^1.0.2" has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" + version "1.0.4" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.4.tgz#2eb2860e000011dae4f1406a86fe80e530fb2ec6" + integrity sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ== he@^1.2.0: version "1.2.0" @@ -10997,7 +11105,7 @@ https-proxy-agent@^4.0.0: agent-base "5" debug "4" -https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: +https-proxy-agent@^5.0.0: version "5.0.1" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== @@ -11005,7 +11113,7 @@ https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: agent-base "6" debug "4" -https-proxy-agent@^7.0.0: +https-proxy-agent@^7.0.0, https-proxy-agent@^7.0.2: version "7.0.2" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz#e2645b846b90e96c6e6f347fb5b2e41f1590b09b" integrity sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA== @@ -11702,24 +11810,24 @@ iterall@^1.2.1: resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== -jackspeak@^2.0.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.3.tgz#95e4cbcc03b3eb357bf6bcce14a903fb3d1151e1" - integrity sha512-R2bUw+kVZFS/h1AZqBKrSgDmdmjApzgY0AlCPumopFiAlbUxE2gf+SCuBzQ0cP5hHmUmFYF5yw55T97Th5Kstg== +jackspeak@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" + integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== dependencies: "@isaacs/cliui" "^8.0.2" optionalDependencies: "@pkgjs/parseargs" "^0.11.0" jake@^10.8.5: - version "10.8.5" - resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46" - integrity sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw== + version "10.8.7" + resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.7.tgz#63a32821177940c33f356e0ba44ff9d34e1c7d8f" + integrity sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w== dependencies: async "^3.2.3" chalk "^4.0.2" - filelist "^1.0.1" - minimatch "^3.0.4" + filelist "^1.0.4" + minimatch "^3.1.2" jest-axe@^8.0.0: version "8.0.0" @@ -13236,9 +13344,9 @@ lru-cache@^6.0.0: yallist "^4.0.0" "lru-cache@^9.1.1 || ^10.0.0": - version "10.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.0.tgz#b9e2a6a72a129d81ab317202d93c7691df727e61" - integrity sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw== + version "10.0.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.1.tgz#0a3be479df549cca0e5d693ac402ff19537a6b7a" + integrity sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g== lz-string@^1.5.0: version "1.5.0" @@ -13928,9 +14036,9 @@ minimatch@^4.2.3: brace-expansion "^1.1.7" minimatch@^5.0.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.2.tgz#0939d7d6f0898acbd1508abe534d1929368a8fff" - integrity sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg== + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== dependencies: brace-expansion "^2.0.1" @@ -13955,12 +14063,12 @@ minimist@1.2.6: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== -minimist@^1.2.0, minimist@^1.2.6: +minimist@^1.2.0: version "1.2.7" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== -minimist@^1.2.5: +minimist@^1.2.5, minimist@^1.2.6: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== @@ -13978,9 +14086,9 @@ minipass@^5.0.0: integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== "minipass@^5.0.0 || ^6.0.2 || ^7.0.0": - version "7.0.3" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.3.tgz#05ea638da44e475037ed94d1c7efcc76a25e1974" - integrity sha512-LhbbwCfz3vsb12j/WkWQPZfKTsgqIe1Nf/ti1pKjYESGLHIVjWU96G9/ljLH4F9mWNVhlQOm0VySdAWzf05dpg== + version "7.0.4" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" + integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== minizlib@^2.1.1: version "2.1.2" @@ -14027,11 +14135,6 @@ ms@2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== -ms@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - ms@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" @@ -14159,10 +14262,10 @@ node-dir@^0.1.10, node-dir@^0.1.17: dependencies: minimatch "^3.0.2" -node-fetch-native@^1.0.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-1.2.0.tgz#13ec6df98f33168958dbfb6945f10aedf42e7ea8" - integrity sha512-5IAMBTl9p6PaAjYCnMv5FmqIF6GcZnawAVnzaCG0rX2aYZJ4CxEkZNtVPuTRug7fL7wyM5BQYTlAzcyMPi6oTQ== +node-fetch-native@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-1.4.0.tgz#fbe8ac033cb6aa44bd106b5e4fd2b6277ba70fa1" + integrity sha512-F5kfEj95kX8tkDhUCYdV8dg3/8Olx/94zB8+ZNthFs6Bz31UpUi8Xh40TN3thLwXgrwXry1pEg9lJ++tLWTcqA== node-fetch@2.6.1, node-fetch@2.6.7, node-fetch@^2.0.0, node-fetch@^2.6.1, node-fetch@^2.6.12, node-fetch@^2.6.7: version "2.6.12" @@ -14426,7 +14529,7 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" -open@^8.0.4: +open@^8.0.4, open@^8.4.0: version "8.4.2" resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9" integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ== @@ -14435,7 +14538,7 @@ open@^8.0.4: is-docker "^2.1.1" is-wsl "^2.2.0" -open@^8.0.9, open@^8.4.0: +open@^8.0.9: version "8.4.0" resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q== @@ -14745,7 +14848,7 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -pathe@^1.1.0: +pathe@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.1.tgz#1dd31d382b974ba69809adc9a7a347e65d84829a" integrity sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q== @@ -14804,16 +14907,11 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pirates@^4.0.4: +pirates@^4.0.4, pirates@^4.0.5: version "4.0.6" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== -pirates@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" - integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== - pkg-dir@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" @@ -16181,7 +16279,7 @@ readable-stream@^2.0.1: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0: +readable-stream@^3.0.6: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -16190,6 +16288,15 @@ readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0: string_decoder "^1.1.1" util-deprecate "^1.0.1" +readable-stream@^3.1.1, readable-stream@^3.4.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + readdirp@^3.5.0, readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -16258,9 +16365,9 @@ redux@^4.0.5, redux@^4.2.1: "@babel/runtime" "^7.9.2" regenerate-unicode-properties@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c" - integrity sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ== + version "10.1.1" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz#6b0e05489d9076b04c436f318d9b067bba459480" + integrity sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q== dependencies: regenerate "^1.4.2" @@ -16279,10 +16386,10 @@ regenerator-runtime@^0.14.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz#5e19d68eb12d486f797e15a3c6a918f7cec5eb45" integrity sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA== -regenerator-transform@^0.15.1: - version "0.15.1" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.1.tgz#f6c4e99fc1b4591f780db2586328e4d9a9d8dc56" - integrity sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg== +regenerator-transform@^0.15.2: + version "0.15.2" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4" + integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg== dependencies: "@babel/runtime" "^7.8.4" @@ -16305,18 +16412,6 @@ regexpp@^3.2.0: resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== -regexpu-core@^5.2.1: - version "5.2.2" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.2.2.tgz#3e4e5d12103b64748711c3aad69934d7718e75fc" - integrity sha512-T0+1Zp2wjF/juXMrMxHxidqGYn8U4R+zleSJhX9tQ1PUsS8a9UtYfbsF9LdiVgNX3kiX8RNaKM42nfSgvFJjmw== - dependencies: - regenerate "^1.4.2" - regenerate-unicode-properties "^10.1.0" - regjsgen "^0.7.1" - regjsparser "^0.9.1" - unicode-match-property-ecmascript "^2.0.0" - unicode-match-property-value-ecmascript "^2.1.0" - regexpu-core@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b" @@ -16329,11 +16424,6 @@ regexpu-core@^5.3.1: unicode-match-property-ecmascript "^2.0.0" unicode-match-property-value-ecmascript "^2.1.0" -regjsgen@^0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.7.1.tgz#ee5ef30e18d3f09b7c369b76e7c2373ed25546f6" - integrity sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA== - regjsparser@^0.9.1: version "0.9.1" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709" @@ -16517,7 +16607,7 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.1.7, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.18.1, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.1: +resolve@^1.1.7, resolve@^1.18.1, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.1: version "1.22.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== @@ -16526,6 +16616,15 @@ resolve@^1.1.7, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.18.1, resolve@^1.19 path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" +resolve@^1.10.0, resolve@^1.14.2: + version "1.22.6" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.6.tgz#dd209739eca3aef739c626fea1b4f3c506195362" + integrity sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + resolve@^2.0.0-next.3: version "2.0.0-next.4" resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.4.tgz#3d37a113d6429f496ec4752d2a2e58efb1fd4660" @@ -16644,11 +16743,6 @@ safe-array-concat@^1.0.0: has-symbols "^1.0.3" isarray "^2.0.5" -safe-buffer@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" - integrity sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg== - safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" @@ -16856,17 +16950,6 @@ serialize-javascript@^6.0.1: dependencies: randombytes "^2.1.0" -serve-favicon@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.5.0.tgz#935d240cdfe0f5805307fdfe967d88942a2cbcf0" - integrity sha512-FMW2RvqNr03x+C0WxTyu6sOv21oOjkq5j8tjquWccwa6ScNyGFOGJVpuS1NmTVGBAHS07xnSKotgf2ehQmf9iA== - dependencies: - etag "~1.8.1" - fresh "0.5.2" - ms "2.1.1" - parseurl "~1.3.2" - safe-buffer "5.1.1" - serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" @@ -17015,10 +17098,10 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" -smartystreets-javascript-sdk@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/smartystreets-javascript-sdk/-/smartystreets-javascript-sdk-2.1.2.tgz#60d433b920cc6b8763e0067b6bc2ec5f485a3cba" - integrity sha512-F4mmyTfkDHYmsW8O2mGGztkMRyg+utQcXEYLxrKYWoWcyEfY65El876E7YoltL+CwoYSxcNUEQkJifUi1tEaLQ== +smartystreets-javascript-sdk@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/smartystreets-javascript-sdk/-/smartystreets-javascript-sdk-3.2.0.tgz#1f6f0e9353298a5f87755cb3fe1dd523fd033257" + integrity sha512-+67s2ISG9vivWMwduOl9d4Vba72ooqxw3TPf5KMXY4GUU4YbLF2/XMSBSM62Aou0GMrwjEHGAjC21k1F54lkQg== dependencies: axios "^0.26.1" axios-retry "3.2.0" @@ -17133,9 +17216,9 @@ space-separated-tokens@^1.0.0: integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA== spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== + version "3.2.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" + integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== dependencies: spdx-expression-parse "^3.0.0" spdx-license-ids "^3.0.0" @@ -17154,9 +17237,9 @@ spdx-expression-parse@^3.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.12" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz#69077835abe2710b65f03969898b6637b505a779" - integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA== + version "3.0.16" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz#a14f64e0954f6e25cc6587bd4f392522db0d998f" + integrity sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw== spdy-transport@^3.0.0: version "3.0.0" @@ -17237,12 +17320,12 @@ store2@^2.14.2: resolved "https://registry.yarnpkg.com/store2/-/store2-2.14.2.tgz#56138d200f9fe5f582ad63bc2704dbc0e4a45068" integrity sha512-siT1RiqlfQnGqgT/YzXVUNsom9S0H1OX+dpdGN1xkyYATo4I6sep5NmsRD/40s3IIOvlCq6akxkqG82urIZW1w== -storybook@^7.4.2: - version "7.4.2" - resolved "https://registry.yarnpkg.com/storybook/-/storybook-7.4.2.tgz#e27fe7915060526db9ed9a72a6108f08df9aee1d" - integrity sha512-UuYmdxEWEQAepfjgQFbbHTq47Xxpw16naAvJ9n/nsjMnOhYupm1ZIdWYaeNjz4LOfz+1WzgU7us0IvaBrxzl4g== +storybook@^7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/storybook/-/storybook-7.4.6.tgz#f688649af6c2cd1329dd120d8f61a930f76262d0" + integrity sha512-YkFSpnR47j5zz7yElA+2axLjXN7K7TxDGJRHHlqXmG5iQ0PXzmjrj2RxMDKFz4Ybp/QjEUoJ4rx//ESEY0Nb5A== dependencies: - "@storybook/cli" "7.4.2" + "@storybook/cli" "7.4.6" stream-buffers@^3.0.2: version "3.0.2" @@ -17734,10 +17817,10 @@ tar-stream@^2.0.1, tar-stream@^2.1.4: inherits "^2.0.3" readable-stream "^3.1.1" -tar@^6.1.13: - version "6.1.15" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.15.tgz#c9738b0b98845a3b344d334b8fa3041aaba53a69" - integrity sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A== +tar@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.0.tgz#b14ce49a79cb1cd23bc9b016302dea5474493f73" + integrity sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ== dependencies: chownr "^2.0.0" fs-minipass "^2.0.0" @@ -18032,12 +18115,12 @@ tslib@^1.13.0, tslib@^1.8.1, tslib@^1.9.3: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.3.1, tslib@^2.4.0, tslib@^2.4.1, tslib@^2.5.0, tslib@~2.5.0: +tslib@^2, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.3.1, tslib@^2.4.1, tslib@^2.5.0, tslib@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== -tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@~2.6.0: +tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.4.0, tslib@~2.6.0: version "2.6.2" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== @@ -18220,6 +18303,11 @@ unc-path-regex@^0.1.2: resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg== +undici-types@~5.25.1: + version "5.25.3" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.25.3.tgz#e044115914c85f0bcbb229f346ab739f064998c3" + integrity sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA== + undici@5.22.1: version "5.22.1" resolved "https://registry.yarnpkg.com/undici/-/undici-5.22.1.tgz#877d512effef2ac8be65e695f3586922e1a57d7b" @@ -18396,10 +18484,10 @@ upath@^1.2.0: resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== -update-browserslist-db@^1.0.11: - version "1.0.11" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940" - integrity sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA== +update-browserslist-db@^1.0.11, update-browserslist-db@^1.0.13: + version "1.0.13" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" + integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== dependencies: escalade "^3.1.1" picocolors "^1.0.0" @@ -19287,12 +19375,12 @@ ws@^6.1.0: dependencies: async-limiter "~1.0.0" -ws@^8.12.0, ws@^8.2.3: +ws@^8.12.0: version "8.13.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0" integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA== -ws@^8.13.0: +ws@^8.13.0, ws@^8.2.3: version "8.14.2" resolved "https://registry.yarnpkg.com/ws/-/ws-8.14.2.tgz#6c249a806eb2db7a20d26d51e7709eab7b2e6c7f" integrity sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g== diff --git a/ops/services/app_functions/report_stream_batched_publisher/functions/package.json b/ops/services/app_functions/report_stream_batched_publisher/functions/package.json index 53fc265738..6d6809034d 100644 --- a/ops/services/app_functions/report_stream_batched_publisher/functions/package.json +++ b/ops/services/app_functions/report_stream_batched_publisher/functions/package.json @@ -23,7 +23,7 @@ "@azure/storage-queue": "^12.6.0", "applicationinsights": "^2.9.0", "csv-stringify": "^6.4.2", - "jsonwebtoken": "^9.0.1", + "jsonwebtoken": "^9.0.2", "node-fetch": "^2.7.0" }, "resolutions": { diff --git a/ops/services/app_functions/report_stream_batched_publisher/functions/yarn.lock b/ops/services/app_functions/report_stream_batched_publisher/functions/yarn.lock index a7ff03810a..981a095e85 100644 --- a/ops/services/app_functions/report_stream_batched_publisher/functions/yarn.lock +++ b/ops/services/app_functions/report_stream_batched_publisher/functions/yarn.lock @@ -2572,15 +2572,21 @@ json5@^2.2.3: resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== -jsonwebtoken@^9.0.1: - version "9.0.1" - resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-9.0.1.tgz#81d8c901c112c24e497a55daf6b2be1225b40145" - integrity sha512-K8wx7eJ5TPvEjuiVSkv167EVboBDv9PZdDoF7BgeQnBLVvZWW9clr2PsQHVJDTKaEIH5JBIwHujGcHp7GgI2eg== +jsonwebtoken@^9.0.2: + version "9.0.2" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz#65ff91f4abef1784697d40952bb1998c504caaf3" + integrity sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ== dependencies: jws "^3.2.2" - lodash "^4.17.21" + lodash.includes "^4.3.0" + lodash.isboolean "^3.0.3" + lodash.isinteger "^4.0.4" + lodash.isnumber "^3.0.3" + lodash.isplainobject "^4.0.6" + lodash.isstring "^4.0.1" + lodash.once "^4.0.0" ms "^2.1.1" - semver "^7.3.8" + semver "^7.5.4" jwa@^1.4.1: version "1.4.1" @@ -2636,6 +2642,36 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" +lodash.includes@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" + integrity sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w== + +lodash.isboolean@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" + integrity sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg== + +lodash.isinteger@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" + integrity sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA== + +lodash.isnumber@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" + integrity sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw== + +lodash.isplainobject@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== + +lodash.isstring@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" + integrity sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw== + lodash.memoize@4.x: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" @@ -2646,10 +2682,10 @@ lodash.merge@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash@^4.17.21: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== +lodash.once@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" + integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== long@^4.0.0: version "4.0.0" @@ -3088,7 +3124,7 @@ sax@>=0.6.0: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -semver@7.5.2, semver@^5.3.0, semver@^5.4.1, semver@^6.3.0, semver@^6.3.1, semver@^7.3.7, semver@^7.3.8, semver@^7.5.1, semver@^7.5.3, semver@^7.5.4: +semver@7.5.2, semver@^5.3.0, semver@^5.4.1, semver@^6.3.0, semver@^6.3.1, semver@^7.3.7, semver@^7.5.1, semver@^7.5.3, semver@^7.5.4: version "7.5.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.2.tgz#5b851e66d1be07c1cdaf37dfc856f543325a2beb" integrity sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ==