diff --git a/.github/issue-labeler.yml b/.github/issue-labeler.yml index 34ca1e28321c..8fc424b1e785 100644 --- a/.github/issue-labeler.yml +++ b/.github/issue-labeler.yml @@ -111,7 +111,6 @@ programming: - build plan - code hint - \b(? - + - + \ No newline at end of file diff --git a/README.md b/README.md index 14970443fb21..55452d6ff241 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ Artemis brings interactive learning to life with instant, individual feedback on * **Integrated feedback**: Reviews can provide feedback and points directly next to the text segments. * **Language detection**: Artemis detects the language of the submission and shows the word and character count. 7. **[File upload exercises](https://docs.artemis.cit.tum.de/user/exercises/file-upload/)** allow full flexibility to instructors. Students can create any kind of file (e.g. PDF, PNG) and submit it to Artemis when they have completed their work. Artemis allows instructors and tutors to download the files and assess them manually based on structured grading criteria (see below in the section Assessment). -8. **[Exam mode](https://docs.artemis.cit.tum.de/user/exam_mode/)**: Instructors can create online exams with exercise variants, integrated plagiarism checks, test runs and student reviews. You can find more information on [Exam mode student features](https://artemis.cit.tum.de/features/students) and on [Exam mode instructor features](https://artemis.cit.tum.de/features/instructors). +8. **[Exam mode](https://docs.artemis.cit.tum.de/user/exam_mode/)**: Instructors can create online exams with exercise variants, integrated plagiarism checks, test runs and student reviews. You can find more information on [Exam mode student features](https://artemis.tum.de/features/students) and on [Exam mode instructor features](https://artemis.tum.de/features/instructors). 9. **[Assessment](https://docs.artemis.cit.tum.de/user/exercises/assessment/)**: Artemis uses double-blind grading and structured grading criteria to improve consistency and fairness. * **Training process**: It integrates an assessment training process (based on example submissions and example assessments defined by the instructor), has a grading leader board, and allows students to rate the assessments. Students can complain or ask for more feedback. * **Grading**: Instructors can configure grade keys for courses and exams to automatically calculate grades and display them to students. Grades can be easily exported as csv files to upload them into university systems (such as Campus online). They can define bonus configurations for final exams to improve student grades according to their grades from a midterm exam or course exercises. @@ -59,7 +59,7 @@ Artemis brings interactive learning to life with instant, individual feedback on * **[Adaptive learning](https://docs.artemis.cit.tum.de/user/adaptive-learning)**: Artemis allows instructors and students to define and track competencies. Students can monitor their progress towards these goals, while instructors can provide tailored feedback. This approach integrates lectures and exercises under overarching learning objectives. * **[Learning analytics](https://docs.artemis.cit.tum.de/user/learning-analytics)**: Artemis integrated different statistics for students to compare themselves to the course average. It allows instructors to evaluate the average student performance based on exercises and competencies. * **[Learning paths](https://docs.artemis.cit.tum.de/user/adaptive-learning/adaptive-learning-student.html#learning-paths)**: Based on the competency model and students' individual progress, Artemis creates learning paths that guide students through the course content. -13. **[Iris](https://artemis.cit.tum.de/about-iris)**: Artemis integrates Iris, a LLM based virtual assistant that supports students and instructors with common questions and tasks. +13. **[Iris](https://artemis.tum.de/about-iris)**: Artemis integrates Iris, a LLM based virtual assistant that supports students and instructors with common questions and tasks. * **Questions**: Iris supports students with answering questions about exercises, lectures, and the learning performance instantly. * **Pro-active assistance**: Iris can pro-actively communicate with the students, help them with the next steps in their learning experience and motivate them to continue. 14. **[Athena](https://github.com/ls1intum/Athena)**: Artemis integrates Athena, a machine learning-based tool that supports instructors with the assessment of text, modeling and programming exercises. Athena offers different modules including automatic feedback suggestions based on generate AI. @@ -193,7 +193,7 @@ Refer to [Using JHipster in production](http://www.jhipster.tech/production) for The following command can automate the deployment to a server. The example shows the deployment to the main Artemis test server (which runs a virtual machine): ```shell -./artemis-server-cli deploy username@artemis-test0.artemis.in.tum.de -w build/libs/Artemis-7.8.1.war +./artemis-server-cli deploy username@artemis-test0.artemis.in.tum.de -w build/libs/Artemis-7.9.0.war ``` ## Architecture @@ -242,7 +242,7 @@ We communicate using GitHub issues and pull requests. Additionally, you can join The following universities are actively using Artemis or are currently evaluating Artemis. * **Technical University of Munich** - https://artemis.cit.tum.de + https://artemis.tum.de Main contact person: [Stephan Krusche](mailto:krusche@tum.de) * **LFU Innsbruck, Uni Salzburg, JKU Linz, AAU Klagenfurt, TU Wien** diff --git a/angular.json b/angular.json index 24f70a21a733..bb1e8e3817f7 100644 --- a/angular.json +++ b/angular.json @@ -18,7 +18,7 @@ "prefix": "jhi", "architect": { "build": { - "builder": "@angular-devkit/build-angular:application", + "builder": "@angular/build:application", "options": { "allowedCommonJsDependencies": [ "@vscode/markdown-it-katex", @@ -187,7 +187,7 @@ "defaultConfiguration": "production" }, "serve": { - "builder": "@angular-devkit/build-angular:dev-server", + "builder": "@angular/build:dev-server", "options": { "buildTarget": "artemis:build:development", "proxyConfig": "proxy.conf.mjs", diff --git a/build.gradle b/build.gradle index 2e9a4946c7ad..1e98e96b2cea 100644 --- a/build.gradle +++ b/build.gradle @@ -2,7 +2,9 @@ buildscript { dependencies { classpath "com.diffplug.spotless:spotless-plugin-gradle:${spotless_plugin_version}" // This is required so that the latest version of the liquibase gradle plugin works - classpath "org.liquibase:liquibase-core:${liquibase_version}" + classpath("org.liquibase:liquibase-core:${liquibase_version}") { + exclude group: 'com.opencsv', module: 'opencsv' + } } } @@ -19,13 +21,14 @@ plugins { id "com.google.cloud.tools.jib" version "3.4.4" id "com.gorylenko.gradle-git-properties" version "2.4.2" id "io.spring.dependency-management" version "1.1.7" + id "nebula.lint" version "20.5.5" id "org.liquibase.gradle" version "${liquibase_plugin_version}" - id "org.owasp.dependencycheck" version "11.1.1" + id "org.owasp.dependencycheck" version "12.0.0" id "org.springframework.boot" version "${spring_boot_version}" } group = "de.tum.cit.aet.artemis" -version = "7.8.1" +version = "7.9.0" description = "Interactive Learning with Individual Feedback" java { @@ -94,13 +97,13 @@ repositories { } configurations.configureEach { -// exclude group: "org.dom4j", module: "dom4j" + exclude group: "org.dom4j", module: "dom4j" exclude group: "org.xmlpull", module: "pull-parser" exclude group: "jaxen", module: "jaxen" exclude group: "xmlpull", module: "xpp3" exclude group: "xsdlib", module: "xsdlib" exclude group: "javax.xml.stream", module: "stax-api" -// exclude group: "javax.xml.bind", module: "jaxb-api" + exclude group: "javax.xml.bind", module: "jaxb-api" exclude group: "org.junit.vintage", module: "junit-vintage-engine" exclude group: "com.vaadin.external.google", module: "android-json" @@ -123,27 +126,39 @@ configurations.configureEach { exclude group: "org.apache.lucene", module: "lucene-core" exclude group: "org.apache.lucene", module: "lucene-analyzers-common" exclude group: "com.google.protobuf", module: "protobuf-java" + + exclude group: "org.jasypt", module: "jasypt" + + // required by eureka client, but not used in this project + exclude group: "com.thoughtworks.xstream", module: "xstream" + // required by JPlag, but not used in this project + exclude group: "xerces", module: "xercesImpl" + // required by JPlag, but not used in this project + exclude group: "xalan", module: "xalan" + // required by JPlag, but not used in this project + exclude group: "xalan", module: "serializer" + + exclude group: "org.springframework.boot", module: "spring-boot-starter-cache" + exclude group: "io.micrometer", module: "micrometer-registry-prometheus" + exclude group: "net.logstash.logback", module: "logstash-logback-encoder" + + exclude group: "javax.cache", module: "cache-api" + exclude group: "javax.transaction", module: "javax.transaction-api" + + // JPlag depends on those, but they are not really needed + exclude group: "org.jgrapht", module: "jgrapht-core" + exclude group: "org.apfloat", module: "apfloat" + + // only support one csv parser org.apache.commons:commons-csv +// exclude group: "com.opencsv", module: "opencsv" } dependencies { - // Note: jenkins-client is not well maintained and includes dependencies to libraries with critical security issues (e.g. CVE-2020-10683 for dom4j@1.6.1) - // implementation "com.offbytwo.jenkins:jenkins-client:0.3.8" - implementation files("libs/jenkins-client-0.4.1.jar") - // The following 4 dependencies are explicitly integrated as transitive dependencies of jenkins-client-0.4.0.jar + // Required by Spring cloud implementation "org.apache.httpcomponents.client5:httpclient5:5.4.1" - implementation "org.apache.httpcomponents.core5:httpcore5:5.3.1" + implementation "org.apache.httpcomponents.core5:httpcore5:5.3.2" implementation "org.apache.httpcomponents:httpmime:4.5.14" - implementation("org.dom4j:dom4j:2.1.4") { - // Note: avoid org.xml.sax.SAXNotRecognizedException: unrecognized feature http://xml.org/sax/features/external-general-entities - // also see https://github.com/dom4j/dom4j/issues/99 - exclude module: "pull-parser" - exclude module: "jaxen" - exclude module: "xpp3" - exclude module: "xsdlib" - exclude module: "stax-api" - exclude module: "jaxb-api" - } implementation "org.gitlab4j:gitlab4j-api:6.0.0-rc.8" @@ -172,8 +187,10 @@ dependencies { } } + // Sentry depends on this implementation "org.apache.logging.log4j:log4j-to-slf4j:2.24.3" + // Used for LTI (e.g. Moodle --> Artemis) implementation "uk.ac.ox.ctl:spring-security-lti13:0.3.0" // https://search.maven.org/artifact/org.eclipse.jgit/org.eclipse.jgit @@ -189,7 +206,6 @@ dependencies { // https://mvnrepository.com/artifact/net.sourceforge.plantuml/plantuml implementation "net.sourceforge.plantuml:plantuml:1.2024.8" - implementation "org.jasypt:jasypt:1.9.3" implementation "me.xdrop:fuzzywuzzy:1.4.0" implementation("org.yaml:snakeyaml") { version { @@ -205,19 +221,12 @@ dependencies { // NOTE: the following six dependencies use the newer versions explicitly to avoid other dependencies to use older versions implementation "ch.qos.logback:logback-classic:${logback_version}" implementation "ch.qos.logback:logback-core:${logback_version}" - // required by eureka client - implementation "com.thoughtworks.xstream:xstream:1.4.21" - // required by JPlag, should NOT be used in other places - implementation "xerces:xercesImpl:2.12.2" - // required by JPlag, should NOT be used in other places - implementation "xalan:xalan:2.7.3" - // required by JPlag, should NOT be used in other places - implementation "xalan:serializer:2.7.3" + // required by Saml2, should NOT be used in other places implementation "org.apache.santuario:xmlsec:4.0.3" implementation "org.jsoup:jsoup:1.18.3" - implementation "commons-codec:commons-codec:1.17.1" // needed for spring security saml2 + implementation "commons-codec:commons-codec:1.17.2" // needed for spring security saml2 // use the latest version to avoid security vulnerabilities implementation "org.springframework:spring-webmvc:${spring_framework_version}" @@ -231,14 +240,7 @@ dependencies { // use newest version of commons-compress to avoid security issues through outdated dependencies implementation "org.apache.commons:commons-compress:1.27.1" - - // import JHipster dependencies BOM - implementation platform("tech.jhipster:jhipster-dependencies:${jhipster_dependencies_version}") - implementation "tech.jhipster:jhipster-framework:${jhipster_dependencies_version}" - implementation "org.springframework.boot:spring-boot-starter-cache:${spring_boot_version}" - implementation "io.micrometer:micrometer-registry-prometheus:1.14.2" - implementation "net.logstash.logback:logstash-logback-encoder:8.0" // Defines low-level streaming API, and includes JSON-specific implementations implementation "com.fasterxml.jackson.core:jackson-core:${fasterxml_version}" @@ -256,21 +258,24 @@ dependencies { implementation "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:${fasterxml_version}" + // Required for synchronization between nodes and build agents (LocalCI) implementation "com.hazelcast:hazelcast:${hazelcast_version}" implementation "com.hazelcast:hazelcast-spring:${hazelcast_version}" - implementation "com.hazelcast:hazelcast-hibernate53:5.2.0" + // Required for Hibernate multi node caching + runtimeOnly "com.hazelcast:hazelcast-hibernate53:5.2.0" - implementation "javax.cache:cache-api:1.1.1" implementation "org.hibernate.orm:hibernate-core:${hibernate_version}" + // Required for jdbc connection pooling to databases implementation "com.zaxxer:HikariCP:6.2.1" + // Required for several dependencies implementation "org.apache.commons:commons-text:1.13.0" implementation "org.apache.commons:commons-math3:3.6.1" - implementation "javax.transaction:javax.transaction-api:1.3" - - implementation "org.liquibase:liquibase-core:${liquibase_version}" + implementation("org.liquibase:liquibase-core:${liquibase_version}") { + exclude group: 'com.opencsv', module: 'opencsv' + } implementation "org.springframework.boot:spring-boot-starter-validation:${spring_boot_version}" implementation "org.springframework.boot:spring-boot-loader-tools:${spring_boot_version}" @@ -289,15 +294,16 @@ dependencies { implementation "org.springframework.boot:spring-boot-starter-oauth2-client:${spring_boot_version}" implementation "org.springframework.ldap:spring-ldap-core:3.2.10" - implementation "org.springframework.data:spring-data-ldap:3.4.1" + implementation "org.springframework.data:spring-data-ldap:3.4.2" implementation "org.springframework.cloud:spring-cloud-starter-netflix-eureka-client:${spring_cloud_version}" implementation "org.springframework.cloud:spring-cloud-starter-config:${spring_cloud_version}" implementation "org.springframework.cloud:spring-cloud-commons:${spring_cloud_version}" - implementation "io.netty:netty-all:4.1.116.Final" - implementation "io.projectreactor.netty:reactor-netty:1.2.1" + // required by the Websocket Broker Connection in WebsocketConfiguration (due to multi node setup support) + implementation "io.projectreactor.netty:reactor-netty:1.2.2" implementation "org.springframework:spring-messaging:${spring_framework_version}" + // required for the connection to Hermes (push notifications) implementation "org.springframework.retry:spring-retry:2.0.11" implementation "org.springframework.security:spring-security-config:${spring_security_version}" @@ -306,7 +312,7 @@ dependencies { implementation "org.springframework.security:spring-security-oauth2-core:${spring_security_version}" implementation "org.springframework.security:spring-security-oauth2-client:${spring_security_version}" // use newest version of nimbus-jose-jwt to avoid security issues through outdated dependencies - implementation "com.nimbusds:nimbus-jose-jwt:9.48" + implementation "com.nimbusds:nimbus-jose-jwt:10.0.1" implementation "org.springframework.security:spring-security-oauth2-jose:${spring_security_version}" implementation "org.springframework.security:spring-security-crypto:${spring_security_version}" @@ -324,27 +330,28 @@ dependencies { runtimeOnly "io.jsonwebtoken:jjwt-impl:${jwt_version}" runtimeOnly "io.jsonwebtoken:jjwt-jackson:${jwt_version}" - implementation "org.bouncycastle:bcpkix-jdk18on:1.79" - implementation "org.bouncycastle:bcprov-jdk18on:1.79" + // required by sshd-git + implementation "org.bouncycastle:bcpkix-jdk18on:1.80" + implementation "org.bouncycastle:bcprov-jdk18on:1.80" implementation "com.mysql:mysql-connector-j:${mysql_version}" - implementation "org.postgresql:postgresql:42.7.4" + implementation "org.postgresql:postgresql:42.7.5" implementation "org.zalando:problem-spring-web:0.29.1" implementation "org.zalando:jackson-datatype-problem:0.27.1" + // Required by JPlag implementation "com.ibm.icu:icu4j-charset:76.1" + // Required by exam session service implementation "com.github.seancfoley:ipaddress:5.5.1" + + // used for testing and Java Template Upgrade Service implementation "org.apache.maven:maven-model:3.9.9" implementation "org.apache.pdfbox:pdfbox:3.0.3" - implementation "org.apache.commons:commons-csv:1.12.0" + implementation "org.apache.commons:commons-csv:1.13.0" implementation "org.commonmark:commonmark:0.24.0" implementation "commons-fileupload:commons-fileupload:1.5" implementation "net.lingala.zip4j:zip4j:2.11.5" - implementation "org.jgrapht:jgrapht-core:1.5.2" - // use the latest version explicitly to avoid security vulnerabilities (currently Artemis and JPlag rely on jgrapht 1.5.2 which relies on apfloat) - implementation "org.apfloat:apfloat:1.14.0" - // use newest version of guava to avoid security issues through outdated dependencies implementation "com.google.guava:guava:33.4.0-jre" implementation "com.sun.activation:jakarta.activation:2.0.1" @@ -352,6 +359,9 @@ dependencies { // use newest version of gson to avoid security issues through outdated dependencies implementation "com.google.code.gson:gson:2.11.0" + // explicitly only use this at runtime, because developers should prefer org.apache.commons:csv + runtimeOnly "com.opencsv:opencsv:5.10" + implementation "com.google.errorprone:error_prone_annotations:2.36.0" @@ -400,7 +410,7 @@ dependencies { testImplementation "org.springframework.boot:spring-boot-starter-test:${spring_boot_version}" testImplementation "org.springframework.security:spring-security-test:${spring_security_version}" testImplementation "org.springframework.boot:spring-boot-test:${spring_boot_version}" - testImplementation "org.assertj:assertj-core:3.27.0" + testImplementation "org.assertj:assertj-core:3.27.2" testImplementation "org.mockito:mockito-core:${mockito_version}" testImplementation "org.mockito:mockito-junit-jupiter:${mockito_version}" @@ -409,7 +419,6 @@ dependencies { testImplementation "org.apache.maven.shared:maven-invoker:3.3.0" testImplementation "org.gradle:gradle-tooling-api:8.12" testImplementation "org.apache.maven.surefire:surefire-report-parser:3.5.2" - testImplementation "com.opencsv:opencsv:5.9" testImplementation "io.zonky.test:embedded-database-spring-test:2.6.0" testImplementation "com.tngtech.archunit:archunit:1.3.0" @@ -420,7 +429,7 @@ dependencies { testImplementation "com.h2database:h2:2.2.224" // Lightweight JSON library needed for the internals of the MockRestServiceServer - testImplementation "org.json:json:20240303" + testImplementation "org.json:json:20250107" // NOTE: make sure this corresponds to the version used for JUnit in the testImplementation testRuntimeOnly "org.junit.platform:junit-platform-launcher:${junit_platform_version}" @@ -457,6 +466,12 @@ checkstyle { maxErrors = 0 } +gradleLint { + rules = ['dependency-parentheses'] +// criticalRules = ['unused-dependency'] // <-- this will fail the build in the event of a violation +} + + def isNonStable = { String version -> def stableKeyword = ["RELEASE", "FINAL", "GA"].any { it -> version.toUpperCase().contains(it) } def regex = /^[0-9,.v-]+(-r)?$/ @@ -492,3 +507,4 @@ tasks.named("dependencyUpdates").configure { // 10) Clear Liquibase checksums: ./gradlew liquibaseClearChecksums // 11) Create changelog between Java and DB ./gradlew liquibaseDiffChangeLog (make sure to set the correct username and password in liquibase.gradle) // 12) Generate initial schema from DB ./gradlew liquibaseGenerateChangelog (make sure to set the correct username and password in liquibase.gradle) +// 13) Find unused dependencies ./gradlew lintGradle -x webapp diff --git a/check.sh b/check.sh new file mode 100644 index 000000000000..6ba7ec7c32c8 --- /dev/null +++ b/check.sh @@ -0,0 +1,14 @@ +set -o pipefail + +chmod +x ./changed-modules.sh +CHANGED_MODULES=$(./changed-modules.sh) + +if [ -n "${CHANGED_MODULES}" ]; then + # Always execute ArchitectureTests + CHANGED_MODULES+=("ArchitectureTest") + + IFS=, + TEST_MODULE_TAGS=$(echo "-DtestTags=${CHANGED_MODULES[*]}") +fi + +echo "./gradlew --console=plain test jacocoTestReport -x webapp jacocoTestCoverageVerification $TEST_MODULE_TAGS | tee tests.log" diff --git a/docker/test-server-multi-node-postgresql-localci.yml b/docker/test-server-multi-node-postgresql-localci.yml index 124a1936aab2..366bed944595 100644 --- a/docker/test-server-multi-node-postgresql-localci.yml +++ b/docker/test-server-multi-node-postgresql-localci.yml @@ -96,6 +96,8 @@ services: artemis-app-node-3: condition: service_started restart: always + command: + - rm -rf /var/log/nginx volumes: - ./nginx/artemis-upstream-multi-node.conf:/etc/nginx/includes/artemis-upstream.conf:ro - ./nginx/artemis-ssh-upstream-multi-node.conf:/etc/nginx/includes/artemis-ssh-upstream.conf:ro diff --git a/docs/admin/registration.rst b/docs/admin/registration.rst index bb16b33cd78c..ad583a52cfa3 100644 --- a/docs/admin/registration.rst +++ b/docs/admin/registration.rst @@ -30,7 +30,7 @@ Example: trust: jhipster: mail: - base-url: https://artemis.cit.tum.de + base-url: https://artemis.tum.de from: artemis@xcit.tum.de management: health: diff --git a/docs/admin/setup/programming-exercises.rst b/docs/admin/setup/programming-exercises.rst index f51ce2f2a3a7..b7c5c9b94ea6 100644 --- a/docs/admin/setup/programming-exercises.rst +++ b/docs/admin/setup/programming-exercises.rst @@ -98,9 +98,6 @@ server or exercise settings: * - ``#isStaticCodeAnalysisEnabled`` - Defines if static code analysis should be performed. - Exercise configuration - * - ``#isTestWiseCoverageEnabled`` - - Defines if testwise coverage should be collected. - - Exercise configuration The ``pipeline.groovy`` file can be customized further by instructors after creating the exercise from within Artemis via the ‘Edit Build Plan’ button on the details page of the exercise. diff --git a/docs/dev/system-design/integrated-code-lifecycle/Integrated_Code_Lifecycle_Build_Job_Item.svg b/docs/dev/system-design/integrated-code-lifecycle/Integrated_Code_Lifecycle_Build_Job_Item.svg index da5ecebbbb14..2dbf86daeb33 100644 --- a/docs/dev/system-design/integrated-code-lifecycle/Integrated_Code_Lifecycle_Build_Job_Item.svg +++ b/docs/dev/system-design/integrated-code-lifecycle/Integrated_Code_Lifecycle_Build_Job_Item.svg @@ -1,3 +1,3 @@ -LocalCIBuildJobQueueItemid: Stringname: StringbuildAgentAddress: StringparticipationId: longcourseId: longexerciseId: longretryCount: intpriority: intstatus: BuildJobResultRepositoryInforepositoryName: StringrepositoryType: RepositoryTypetriggeredByPushTo: RepositoryTypeassignmentRepositoryUri: StringtestRepositoryUri: StringsolutionRepositoryUri: StringauxiliaryRepositoryUris: String []auxiliaryRepositoryCheckoutDirectories: String []<<Enumeration>>BuildJobResultSUCCESSFULFAILEDCANCELLED<<Enumeration>>RepositoryTypeTEMPLATESOLUTIONTESTSAUXILIARYUSERJobTimingInfosubmissionDate: ZonedDateTimebuildStartDate: ZonedDateTimebuildCompletionDate: ZonedDateTime1BuildConfigbuildScript: StringdockerImage: StringcommitHash: StringcommitHash: Stringbranch: StringprogrammingLanguage: ProgrammingLanguageprojectType: ProjectTypescaEnabled: booleansequentialTestRunsEnabled: booleantestwiseCoverageEnabled: booleanresultPaths: String []11 \ No newline at end of file +LocalCIBuildJobQueueItemid: Stringname: StringbuildAgentAddress: StringparticipationId: longcourseId: longexerciseId: longretryCount: intpriority: intstatus: BuildJobResultRepositoryInforepositoryName: StringrepositoryType: RepositoryTypetriggeredByPushTo: RepositoryTypeassignmentRepositoryUri: StringtestRepositoryUri: StringsolutionRepositoryUri: StringauxiliaryRepositoryUris: String []auxiliaryRepositoryCheckoutDirectories: String []<<Enumeration>>BuildJobResultSUCCESSFULFAILEDCANCELLED<<Enumeration>>RepositoryTypeTEMPLATESOLUTIONTESTSAUXILIARYUSERJobTimingInfosubmissionDate: ZonedDateTimebuildStartDate: ZonedDateTimebuildCompletionDate: ZonedDateTime1BuildConfigbuildScript: StringdockerImage: StringcommitHash: StringcommitHash: Stringbranch: StringprogrammingLanguage: ProgrammingLanguageprojectType: ProjectTypescaEnabled: booleansequentialTestRunsEnabled: booleanresultPaths: String []11 diff --git a/docs/user/exercises/programming-exercise-features.inc b/docs/user/exercises/programming-exercise-features.inc index 18434aaed70f..2c29ff79a1f4 100644 --- a/docs/user/exercises/programming-exercise-features.inc +++ b/docs/user/exercises/programming-exercise-features.inc @@ -47,6 +47,8 @@ Instructors can still use those templates to generate programming exercises and +----------------------+----------+---------+ | Go | yes | yes | +----------------------+----------+---------+ + | Bash | yes | yes | + +----------------------+----------+---------+ - Not all ``templates`` support the same feature set and supported features can also change depending on the continuous integration system setup. Depending on the feature set, some options might not be available during the creation of the programming exercise. @@ -54,43 +56,45 @@ Instructors can still use those templates to generate programming exercises and In case a feature has different support for different continuous integration systems, the table shows the differences between Local CI **(L)** and Jenkins **(J)**. (Note that Gitlab CI is experimental and therefore has a limited set of features which are not mentioned here to keep the overview simpler.) - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | Programming Language | Sequential Test Runs | Static Code Analysis | Plagiarism Check | Package Name | Project Type | Solution Repository Checkout | Testwise Coverage Analysis | Auxiliary repositories | - +======================+======================+======================+=====================+==============+==========================================+==============================+============================+========================+ - | Java | yes | yes | yes | yes | Gradle, Maven, J: `DejaGnu`_ | no | J: yes; L: no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | Python | L: yes; J: no | no | yes | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | C | no | L: yes; J: no | yes | no | FACT, GCC | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | C (FACT framework) | no | L: yes; J: no | yes | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | Haskell | L: yes; J: no | no | no | no | n/a | L: yes; J: no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | Kotlin | yes | no | yes | yes | n/a | no | J: yes; L: no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | VHDL | no | no | no | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | Assembler | no | no | no | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | Swift | no | yes | yes | yes | Plain (Xcode: not supported) | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | OCaml | no | no | no | no | n/a | yes | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | Rust | no | no | yes | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | JavaScript | no | no | yes | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | R | no | no | yes | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | C++ | no | no | yes | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | TypeScript | no | no | yes | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | C# | no | no | yes | no | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ - | Go | no | no | yes | yes | n/a | no | no | L: yes, J: no | - +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+----------------------------+------------------------+ + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | Programming Language | Sequential Test Runs | Static Code Analysis | Plagiarism Check | Package Name | Project Type | Solution Repository Checkout | Auxiliary repositories | + +======================+======================+======================+=====================+==============+==========================================+==============================+========================+ + | Java | yes | yes | yes | yes | Gradle, Maven, J: `DejaGnu`_ | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | Python | L: yes; J: no | no | yes | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | C | no | L: yes; J: no | yes | no | FACT, GCC | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | C (FACT framework) | no | L: yes; J: no | yes | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | Haskell | L: yes; J: no | no | no | no | n/a | L: yes; J: no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | Kotlin | yes | no | yes | yes | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | VHDL | no | no | no | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | Assembler | no | no | no | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | Swift | no | yes | yes | yes | Plain (Xcode: not supported) | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | OCaml | no | no | no | no | n/a | yes | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | Rust | no | no | yes | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | JavaScript | no | no | yes | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | R | no | no | yes | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | C++ | no | no | yes | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | TypeScript | no | no | yes | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | C# | no | no | yes | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | Go | no | no | yes | yes | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ + | Bash | no | no | no | no | n/a | no | L: yes, J: no | + +----------------------+----------------------+----------------------+---------------------+--------------+------------------------------------------+------------------------------+------------------------+ - *Sequential Test Runs*: ``Artemis`` can generate a build plan which first executes structural and then behavioral tests. This feature can help students to better concentrate on the immediate challenge at hand. - *Static Code Analysis*: ``Artemis`` can generate a build plan which additionally executes static code analysis tools. @@ -98,8 +102,6 @@ Instructors can still use those templates to generate programming exercises and - *Plagiarism Checks*: ``Artemis`` is able to automatically calculate the similarity between student submissions. A side-by-side view of similar submissions is available to confirm the plagiarism suspicion. - *Package Name*: A package name has to be provided - *Solution Repository Checkout*: Instructors are able to compare a student submission against a sample solution in the solution repository - - *Testwise Coverage Analysis*: ``Artemis`` can generate a build plan which additionally executes a testwise coverage analysis. - ``Artemis`` aggregates the recorded data into different metrics. This feature allows instructors to check which code in the solution submission is how often executed by the test cases. .. note:: Only some ``templates`` for ``LocalCI`` support ``Sequential Test Runs`` at the moment. @@ -107,9 +109,6 @@ Instructors can still use those templates to generate programming exercises and .. note:: Static Code Analysis for ``C`` exercises is only supported for ``LocalCI`` at the moment. -.. note:: - Testwise Coverage Analysis is currently not supported, but will be again supported in future versions. - .. note:: Instructors are still able to extend the generated programming exercises with additional features that are not available in one specific template. diff --git a/docs/user/exercises/programming-exercise-setup.inc b/docs/user/exercises/programming-exercise-setup.inc index 563f65f48361..b95420105763 100644 --- a/docs/user/exercises/programming-exercise-setup.inc +++ b/docs/user/exercises/programming-exercise-setup.inc @@ -106,9 +106,6 @@ Generate programming exercise - **Sequential Test Runs:** Activate this option to first run structural and then behavior tests. This feature allows students to better concentrate on the immediate challenge at hand. Not supported together with static code analysis. Cannot be changed after the exercise creation. - - **Record Testwise Coverage:** Activate this option to record the testwise coverage for the solution repository. - This is necessary when working with Hestia to generate code-based hints. - This option is only available for Java/Kotlin-exercises with non-sequential test runs. - **Customize Build Plan** Activate this option if you want to customize the build plan of your exercise. This feature is available for all programming languages, and works with LocalCI and Jenkins, Artemis provides templates for the build plan configuration. The build plan can also be customized after the exercise creation. diff --git a/docs/user/mobile-applications.rst b/docs/user/mobile-applications.rst index 64485cb2e2fd..15732acfe684 100644 --- a/docs/user/mobile-applications.rst +++ b/docs/user/mobile-applications.rst @@ -59,7 +59,7 @@ Server Selection After installation, users have to first decide which Artemis server they want to connect to. Per default, the user can choose between the following instances: -* TUM: https://artemis.cit.tum.de +* TUM: https://artemis.tum.de * CodeAbility: https://artemis.codeability.uibk.ac.at * KIT: https://artemis.praktomat.cs.kit.edu @@ -170,7 +170,7 @@ Server Selection After installation, users have to first decide which Artemis server they want to connect to. Per default, the user can choose between the following instances: -* TUM: https://artemis.cit.tum.de +* TUM: https://artemis.tum.de * CodeAbility: https://artemis.codeability.uibk.ac.at * KIT: https://artemis.praktomat.cs.kit.edu * Hochschule Munich: https://artemis.cs.hm.edu/ diff --git a/docs/user/orion.rst b/docs/user/orion.rst index d6abba219fc6..1a7d857f7c07 100644 --- a/docs/user/orion.rst +++ b/docs/user/orion.rst @@ -39,8 +39,8 @@ Settings Orion's settings are at *Settings -> Tools -> Orion*. The settings include: -- Artemis base url: Can be changed to switch to a specific Artemis instance. Defaults to https://artemis.cit.tum.de. **Important:** The url must not end with a ``/``, otherwise it does not work! -- Artemis git url: Can be changed to switch to a specific Artemis instance. Defaults to https://artemis.cit.tum.de/git +- Artemis base url: Can be changed to switch to a specific Artemis instance. Defaults to https://artemis.tum.de. **Important:** The url must not end with a ``/``, otherwise it does not work! +- Artemis git url: Can be changed to switch to a specific Artemis instance. Defaults to https://artemis.tum.de/git - Artemis exercise paths: Orion suggests to store newly downloaded exercises at ``default-path/course/exercise-name``, with the default path dependent of the setting. - Default commit message: The default message for each commit. - Change user agent: The user agent is sent to Artemis to identify Orion. Usually, no changes are required. diff --git a/eslint.config.js b/eslint.config.js index 6029bf30bcd8..045271a554d2 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -51,22 +51,6 @@ module.exports = [ ...tsPlugin.configs.recommended.rules, ...angularPlugin.configs.recommended.rules, 'custom-rules/enforce-no-http-client-testing-module': 'error', - '@angular-eslint/directive-selector': [ - 'warn', - { - type: 'attribute', - prefix: 'jhi', - style: 'camelCase', - }, - ], - '@angular-eslint/component-selector': [ - 'warn', - { - type: 'element', - prefix: 'jhi', - style: 'kebab-case', - }, - ], '@typescript-eslint/no-non-null-assertion': 'off', '@typescript-eslint/no-unsafe-return': 'off', '@typescript-eslint/no-unsafe-member-access': 'off', diff --git a/gradle.properties b/gradle.properties index 646b23dcf6fa..25bb5481099d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,7 +8,7 @@ npm_version=10.9.0 # Dependency versions jhipster_dependencies_version=8.8.0 spring_boot_version=3.4.1 -spring_framework_version=6.2.1 +spring_framework_version=6.2.2 spring_cloud_version=4.2.0 spring_security_version=6.4.2 # TODO: upgrading to 6.6.x currently leads to issues due to internal changes in Hibernate and potentially wrong use in Artemis server code @@ -28,10 +28,10 @@ jplag_version=5.1.0 # NOTE: we cannot need to use the latest version 9.x or 10.x here as long as Stanford CoreNLP does not reference it lucene_version=8.11.4 slf4j_version=2.0.16 -sentry_version=7.19.1 -liquibase_version=4.30.0 +sentry_version=7.20.0 +liquibase_version=4.31.0 docker_java_version=3.4.1 -logback_version=1.5.15 +logback_version=1.5.16 java_parser_version=3.26.2 byte_buddy_version=1.15.11 netty_version=4.1.115.Final @@ -41,7 +41,7 @@ mysql_version=9.1.0 # make sure both versions are compatible junit_version=5.11.3 junit_platform_version=1.11.4 -mockito_version=5.14.2 +mockito_version=5.15.2 testcontainer_version=1.20.4 # gradle plugin version @@ -49,7 +49,7 @@ gradle_node_plugin_version=7.1.0 apt_plugin_version=0.21 liquibase_plugin_version=3.0.1 modernizer_plugin_version=1.10.0 -spotless_plugin_version=6.25.0 +spotless_plugin_version=7.0.2 org.gradle.jvmargs=-Xmx2g -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en \ --add-exports jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED \ diff --git a/gradle/liquibase.gradle b/gradle/liquibase.gradle index 70ed9b74070c..01154e5236b6 100644 --- a/gradle/liquibase.gradle +++ b/gradle/liquibase.gradle @@ -5,7 +5,9 @@ configurations { } dependencies { - implementation "org.liquibase:liquibase-core:${liquibase_version}" + implementation("org.liquibase:liquibase-core:${liquibase_version}") { + exclude group: 'com.opencsv', module: 'opencsv' + } liquibaseRuntime "org.liquibase:liquibase-core:${liquibase_version}" // Dependency required to parse options. Refer to https://github.com/liquibase/liquibase-gradle-plugin/tree/Release_2.2.0#news. liquibaseRuntime "info.picocli:picocli:4.7.6" diff --git a/gradle/test.gradle b/gradle/test.gradle index cbbf4220b038..1e883a246a3a 100644 --- a/gradle/test.gradle +++ b/gradle/test.gradle @@ -79,7 +79,6 @@ test { } } } - testClassesDirs = testing.suites.test.sources.output.classesDirs classpath = testing.suites.test.sources.runtimeClasspath testLogging { diff --git a/gradlew b/gradlew index f5feea6d6b11..f3b75f3b0d4f 100755 --- a/gradlew +++ b/gradlew @@ -86,8 +86,7 @@ done # shellcheck disable=SC2034 APP_BASE_NAME=${0##*/} # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s -' "$PWD" ) || exit +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD=maximum diff --git a/jest.config.js b/jest.config.js index a5ce2254e1a5..d036d9fb7f03 100644 --- a/jest.config.js +++ b/jest.config.js @@ -105,10 +105,10 @@ module.exports = { coverageThreshold: { global: { // TODO: in the future, the following values should increase to at least 90% - statements: 87.71, - branches: 73.85, - functions: 82.28, - lines: 87.77, + statements: 88.18, + branches: 74.20, + functions: 81.09, + lines: 88.46, }, }, coverageReporters: ['clover', 'json', 'lcov', 'text-summary'], diff --git a/libs/jenkins-client-0.4.1.jar b/libs/jenkins-client-0.4.1.jar deleted file mode 100644 index 51d84492baf2..000000000000 Binary files a/libs/jenkins-client-0.4.1.jar and /dev/null differ diff --git a/package-lock.json b/package-lock.json index 3f71e3b6a204..2778b13e2a54 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,52 +1,52 @@ { "name": "artemis", - "version": "7.8.1", + "version": "7.9.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "artemis", - "version": "7.8.1", + "version": "7.9.0", "hasInstallScript": true, "license": "MIT", "dependencies": { - "@angular/animations": "18.2.13", - "@angular/cdk": "18.2.13", - "@angular/common": "18.2.13", - "@angular/compiler": "18.2.13", - "@angular/core": "18.2.13", - "@angular/forms": "18.2.13", - "@angular/localize": "18.2.13", - "@angular/material": "18.2.13", - "@angular/platform-browser": "18.2.13", - "@angular/platform-browser-dynamic": "18.2.13", - "@angular/router": "18.2.13", - "@angular/service-worker": "18.2.13", + "@angular/animations": "19.1.1", + "@angular/cdk": "19.1.0", + "@angular/common": "19.1.1", + "@angular/compiler": "19.1.1", + "@angular/core": "19.1.1", + "@angular/forms": "19.1.1", + "@angular/localize": "19.1.1", + "@angular/material": "19.1.0", + "@angular/platform-browser": "19.1.1", + "@angular/platform-browser-dynamic": "19.1.1", + "@angular/router": "19.1.1", + "@angular/service-worker": "19.1.1", "@ctrl/ngx-emoji-mart": "9.2.0", - "@danielmoncada/angular-datetime-picker": "18.1.0", + "@danielmoncada/angular-datetime-picker": "19.0.0", "@fingerprintjs/fingerprintjs": "4.5.1", - "@fortawesome/angular-fontawesome": "0.15.0", + "@fortawesome/angular-fontawesome": "1.0.0", "@fortawesome/fontawesome-svg-core": "6.7.2", "@fortawesome/free-regular-svg-icons": "6.7.2", "@fortawesome/free-solid-svg-icons": "6.7.2", "@ls1intum/apollon": "3.3.15", - "@ng-bootstrap/ng-bootstrap": "17.0.1", + "@ng-bootstrap/ng-bootstrap": "18.0.0", "@ngx-translate/core": "16.0.4", "@ngx-translate/http-loader": "16.0.1", - "@sentry/angular": "8.47.0", + "@sentry/angular": "8.50.0", "@siemens/ngx-datatable": "22.4.1", "@swimlane/ngx-charts": "21.1.2", - "@swimlane/ngx-graph": "8.4.0", + "@swimlane/ngx-graph": "9.0.1", "@vscode/codicons": "0.0.36", "@vscode/markdown-it-katex": "1.1.1", "bootstrap": "5.3.3", "compare-versions": "6.1.1", - "core-js": "3.39.0", + "core-js": "3.40.0", "crypto-js": "4.2.0", "dayjs": "1.11.13", "diff-match-patch-typescript": "1.1.0", "dompurify": "3.2.3", - "emoji-js": "3.8.0", + "emoji-js": "3.8.1", "export-to-csv": "1.4.0", "fast-json-patch": "3.1.1", "franc-min": "6.2.0", @@ -58,14 +58,15 @@ "lodash-es": "4.17.21", "markdown-it": "14.1.0", "markdown-it-class": "1.0.0", + "markdown-it-github-alerts": "0.3.0", "markdown-it-highlightjs": "4.2.0", "mobile-drag-drop": "3.0.0-rc.0", "monaco-editor": "0.52.2", - "ngx-infinite-scroll": "18.0.0", - "ngx-webstorage": "18.0.0", - "papaparse": "5.4.1", + "ngx-infinite-scroll": "19.0.0", + "ngx-webstorage": "19.0.1", + "papaparse": "5.5.1", "pdf-lib": "1.17.1", - "pdfjs-dist": "4.9.155", + "pdfjs-dist": "4.10.38", "rxjs": "7.8.1", "simple-statistics": "7.8.7", "smoothscroll-polyfill": "0.4.4", @@ -74,47 +75,47 @@ "ts-cacheable": "1.0.10", "tslib": "2.8.1", "turndown": "7.2.0", - "uuid": "11.0.3", + "uuid": "11.0.5", "webstomp-client": "1.2.6", "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz", - "zone.js": "0.14.10" + "zone.js": "0.15.0" }, "devDependencies": { - "@analogjs/vite-plugin-angular": "1.10.3", - "@angular-builders/jest": "18.0.0", - "@angular-devkit/build-angular": "18.2.12", - "@angular-eslint/builder": "18.4.1", - "@angular-eslint/eslint-plugin": "18.4.1", - "@angular-eslint/eslint-plugin-template": "18.4.1", - "@angular-eslint/schematics": "18.4.1", - "@angular-eslint/template-parser": "18.4.1", - "@angular/cli": "18.2.12", - "@angular/compiler-cli": "18.2.13", - "@angular/language-service": "18.2.13", - "@sentry/types": "8.47.0", + "@analogjs/vite-plugin-angular": "1.12.0", + "@angular-builders/jest": "19.0.0", + "@angular-eslint/builder": "19.0.2", + "@angular-eslint/eslint-plugin": "19.0.2", + "@angular-eslint/eslint-plugin-template": "19.0.2", + "@angular-eslint/schematics": "19.0.2", + "@angular-eslint/template-parser": "19.0.2", + "@angular/build": "19.1.1", + "@angular/cli": "19.1.1", + "@angular/compiler-cli": "19.1.1", + "@angular/language-service": "19.1.1", + "@sentry/types": "8.50.0", "@testing-library/angular": "17.3.5", "@types/crypto-js": "4.2.2", - "@types/d3-shape": "3.1.6", + "@types/d3-shape": "3.1.7", "@types/dompurify": "3.0.5", "@types/emoji-js": "3.5.2", "@types/jest": "29.5.14", "@types/lodash-es": "4.17.12", "@types/markdown-it": "14.1.2", - "@types/node": "22.10.2", + "@types/node": "22.10.7", "@types/papaparse": "5.3.15", "@types/smoothscroll-polyfill": "0.3.4", "@types/sockjs-client": "1.5.4", "@types/turndown": "5.0.5", "@types/uuid": "10.0.0", - "@typescript-eslint/eslint-plugin": "8.18.1", - "@typescript-eslint/parser": "8.18.1", - "eslint": "9.17.0", - "eslint-config-prettier": "9.1.0", + "@typescript-eslint/eslint-plugin": "8.20.0", + "@typescript-eslint/parser": "8.20.0", + "eslint": "9.18.0", + "eslint-config-prettier": "10.0.1", "eslint-plugin-deprecation": "3.0.0", - "eslint-plugin-jest": "28.10.0", + "eslint-plugin-jest": "28.11.0", "eslint-plugin-jest-extended": "2.4.0", - "eslint-plugin-prettier": "5.2.1", - "folder-hash": "4.0.4", + "eslint-plugin-prettier": "5.2.2", + "folder-hash": "4.1.1", "husky": "9.1.7", "jest": "29.7.0", "jest-canvas-mock": "2.5.2", @@ -122,18 +123,18 @@ "jest-extended": "4.0.2", "jest-fail-on-console": "3.3.1", "jest-junit": "16.0.0", - "jest-preset-angular": "14.4.2", - "lint-staged": "15.2.11", + "jest-preset-angular": "14.5.0", + "lint-staged": "15.4.0", "ng-mocks": "14.13.1", - "ngxtension": "4.2.0", + "patch-package": "8.0.0", "prettier": "3.4.2", "rimraf": "6.0.1", - "sass": "1.83.0", + "sass": "1.83.4", "ts-jest": "29.2.5", - "typescript": "5.5.4", - "typescript-eslint": "8.18.2", + "typescript": "5.7.3", + "typescript-eslint": "8.20.0", "vite-tsconfig-paths": "5.1.4", - "vitest": "2.1.8", + "vitest": "3.0.0", "weak-napi": "2.0.2" }, "engines": { @@ -154,9 +155,9 @@ } }, "node_modules/@analogjs/vite-plugin-angular": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/@analogjs/vite-plugin-angular/-/vite-plugin-angular-1.10.3.tgz", - "integrity": "sha512-3EWappJ5K6YopJpq2QRVim8qZgaTQJD0RB4G/DXo+Fg0s27BjDORiaeixqLHIwhUzzZ5FR2d1S7dgIi9zOg4sA==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@analogjs/vite-plugin-angular/-/vite-plugin-angular-1.12.0.tgz", + "integrity": "sha512-D/INewdBlO24eYs1wvau9uaEsIg74GqSYx457SL/wHw3WTtqagCVPcOhAI4UlnIryjw1EAvUQiwbgFnMo+bYfQ==", "dev": true, "license": "MIT", "dependencies": { @@ -180,96 +181,62 @@ } } }, - "node_modules/@analogjs/vite-plugin-angular/node_modules/@ts-morph/common": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.22.0.tgz", - "integrity": "sha512-HqNBuV/oIlMKdkLshXd1zKBqNQCsuPEsgQOkfFQ/eUKjRlwndXW1AjN9LVkBEIukm00gGXSRmfkl0Wv5VXLnlw==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-glob": "^3.3.2", - "minimatch": "^9.0.3", - "mkdirp": "^3.0.1", - "path-browserify": "^1.0.1" - } - }, - "node_modules/@analogjs/vite-plugin-angular/node_modules/code-block-writer": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-12.0.0.tgz", - "integrity": "sha512-q4dMFMlXtKR3XNBHyMHt/3pwYNA69EDk00lloMOaaUMKPUXBw6lpXtbu3MMVG6/uOihGnRDOlkyqsONEUj60+w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@analogjs/vite-plugin-angular/node_modules/mkdirp": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", - "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", - "dev": true, - "license": "MIT", - "bin": { - "mkdirp": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@analogjs/vite-plugin-angular/node_modules/ts-morph": { - "version": "21.0.1", - "resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-21.0.1.tgz", - "integrity": "sha512-dbDtVdEAncKctzrVZ+Nr7kHpHkv+0JDJb2MjjpBaj8bFeCkePU9rHfMklmhuLFnpeq/EJZk2IhStY6NzqgjOkg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@ts-morph/common": "~0.22.0", - "code-block-writer": "^12.0.0" - } - }, "node_modules/@angular-builders/common": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@angular-builders/common/-/common-2.0.0.tgz", - "integrity": "sha512-O5YJc++DtJVJhqA/OomRKN2jGYzvU/YXtfrPAqcA9Is3Ob5jvV0L0JHSAjSw/KaLvk/FjBIqoRVcYdLp5LKddA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@angular-builders/common/-/common-3.0.0.tgz", + "integrity": "sha512-AACGMwlBFYF3PaFekgJDCmqO1hMBrK5eyjHMN5aqJk3PV46BhnlNcQEa9pftLUKxoGijXBQzlalDZkceatyoMw==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "^18.0.0", + "@angular-devkit/core": "^19.0.0", "ts-node": "^10.0.0", "tsconfig-paths": "^4.1.0" }, "engines": { - "node": "^14.20.0 || ^16.13.0 || >=18.10.0" + "node": "^18.19.1 || ^20.11.1 || >=22.0.0" } }, "node_modules/@angular-builders/jest": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/@angular-builders/jest/-/jest-18.0.0.tgz", - "integrity": "sha512-nPNWMlV1ryjir6CC8dY8f6yaNe0lM1VJwbvYM99HmJSeRo+1IwouQQGUjRM/2Dx4OMAmL4EAPh7Ud2nr3Gj/FA==", + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/@angular-builders/jest/-/jest-19.0.0.tgz", + "integrity": "sha512-DEKragHT26kwUhXx9goYehQ/WxFzpVrMHIicYF+L7sLVmFyCwPwAslYZZBe/eTm/x++tKRHnun1lbcf1ZDccRg==", "dev": true, "license": "MIT", "dependencies": { - "@angular-builders/common": "2.0.0", - "@angular-devkit/architect": ">=0.1800.0 < 0.1900.0", - "@angular-devkit/core": "^18.0.0", - "jest-preset-angular": "14.1.0", + "@angular-builders/common": "3.0.0", + "@angular-devkit/architect": ">=0.1900.0 < 0.2000.0", + "@angular-devkit/core": "^19.0.0", + "jest-preset-angular": "14.4.2", "lodash": "^4.17.15" }, "engines": { - "node": "^14.20.0 || ^16.13.0 || >=18.10.0" + "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular-devkit/build-angular": "^18.0.0", - "@angular/compiler-cli": "^18.0.0", - "@angular/core": "^18.0.0", - "@angular/platform-browser-dynamic": "^18.0.0", + "@angular-devkit/build-angular": "^19.0.0", + "@angular/compiler-cli": "^19.0.0", + "@angular/core": "^19.0.0", + "@angular/platform-browser-dynamic": "^19.0.0", "jest": ">=29" } }, + "node_modules/@angular-builders/jest/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/@angular-builders/jest/node_modules/jest-preset-angular": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/jest-preset-angular/-/jest-preset-angular-14.1.0.tgz", - "integrity": "sha512-UJwPtpsAMl30UtBjHW0Ai0hhoKsNURC1dXH5tSYjumUsWR7iDke+oBEykz7uXv4rN+PWgeNIqkxo4KHQjOITlw==", + "version": "14.4.2", + "resolved": "https://registry.npmjs.org/jest-preset-angular/-/jest-preset-angular-14.4.2.tgz", + "integrity": "sha512-BYYv0FaTDfBNh8WyA9mpOV3krfw20kurBGK8INZUnv7KZDAWZuQtCET4TwTWxSNQ9jS1OX1+a5weCm/bTDDM1A==", "dev": true, "license": "MIT", "dependencies": { @@ -287,22 +254,43 @@ "esbuild": ">=0.15.13" }, "peerDependencies": { - "@angular-devkit/build-angular": ">=15.0.0 <19.0.0", - "@angular/compiler-cli": ">=15.0.0 <19.0.0", - "@angular/core": ">=15.0.0 <19.0.0", - "@angular/platform-browser-dynamic": ">=15.0.0 <19.0.0", + "@angular/compiler-cli": ">=15.0.0 <20.0.0", + "@angular/core": ">=15.0.0 <20.0.0", + "@angular/platform-browser-dynamic": ">=15.0.0 <20.0.0", "jest": "^29.0.0", "typescript": ">=4.8" } }, + "node_modules/@angular-builders/jest/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@angular-builders/jest/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/@angular-devkit/architect": { - "version": "0.1802.12", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1802.12.tgz", - "integrity": "sha512-bepVb2/GtJppYKaeW8yTGE6egmoWZ7zagFDsmBdbF+BYp+HmeoPsclARcdryBPVq68zedyTRdvhWSUTbw1AYuw==", + "version": "0.1901.1", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1901.1.tgz", + "integrity": "sha512-fhRID3z4Va1nvP4QS7iraMP+J0zpvsqax0MtoaHXiaSvruwcPbcYSvWj9aO/oo9cq2XTd1zVigrKUwfhabXRVw==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "18.2.12", + "@angular-devkit/core": "19.1.1", "rxjs": "7.8.1" }, "engines": { @@ -312,72 +300,66 @@ } }, "node_modules/@angular-devkit/build-angular": { - "version": "18.2.12", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-18.2.12.tgz", - "integrity": "sha512-quVUi7eqTq9OHumQFNl9Y8t2opm8miu4rlYnuF6rbujmmBDvdUvR6trFChueRczl2p5HWqTOr6NPoDGQm8AyNw==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-19.1.1.tgz", + "integrity": "sha512-hpldWNWWvALDOzWodoRBXJtOBwZfIgvN8isuLHzSbmA4IeHh2WsTUfLFaWUstiJC9mapi9JT+p1dGwxXlaI/8Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@ampproject/remapping": "2.3.0", - "@angular-devkit/architect": "0.1802.12", - "@angular-devkit/build-webpack": "0.1802.12", - "@angular-devkit/core": "18.2.12", - "@angular/build": "18.2.12", - "@babel/core": "7.25.2", - "@babel/generator": "7.25.0", - "@babel/helper-annotate-as-pure": "7.24.7", + "@angular-devkit/architect": "0.1901.1", + "@angular-devkit/build-webpack": "0.1901.1", + "@angular-devkit/core": "19.1.1", + "@angular/build": "19.1.1", + "@babel/core": "7.26.0", + "@babel/generator": "7.26.3", + "@babel/helper-annotate-as-pure": "7.25.9", "@babel/helper-split-export-declaration": "7.24.7", - "@babel/plugin-transform-async-generator-functions": "7.25.0", - "@babel/plugin-transform-async-to-generator": "7.24.7", - "@babel/plugin-transform-runtime": "7.24.7", - "@babel/preset-env": "7.25.3", - "@babel/runtime": "7.25.0", - "@discoveryjs/json-ext": "0.6.1", - "@ngtools/webpack": "18.2.12", - "@vitejs/plugin-basic-ssl": "1.1.0", + "@babel/plugin-transform-async-generator-functions": "7.25.9", + "@babel/plugin-transform-async-to-generator": "7.25.9", + "@babel/plugin-transform-runtime": "7.25.9", + "@babel/preset-env": "7.26.0", + "@babel/runtime": "7.26.0", + "@discoveryjs/json-ext": "0.6.3", + "@ngtools/webpack": "19.1.1", + "@vitejs/plugin-basic-ssl": "1.2.0", "ansi-colors": "4.1.3", "autoprefixer": "10.4.20", - "babel-loader": "9.1.3", + "babel-loader": "9.2.1", "browserslist": "^4.21.5", "copy-webpack-plugin": "12.0.2", - "critters": "0.0.24", "css-loader": "7.1.2", - "esbuild-wasm": "0.23.0", - "fast-glob": "3.3.2", + "esbuild-wasm": "0.24.2", + "fast-glob": "3.3.3", "http-proxy-middleware": "3.0.3", - "https-proxy-agent": "7.0.5", "istanbul-lib-instrument": "6.0.3", "jsonc-parser": "3.3.1", "karma-source-map-support": "1.4.0", - "less": "4.2.0", + "less": "4.2.1", "less-loader": "12.2.0", "license-webpack-plugin": "4.0.2", "loader-utils": "3.3.1", - "magic-string": "0.30.11", - "mini-css-extract-plugin": "2.9.0", - "mrmime": "2.0.0", + "mini-css-extract-plugin": "2.9.2", "open": "10.1.0", "ora": "5.4.1", - "parse5-html-rewriting-stream": "7.0.0", "picomatch": "4.0.2", - "piscina": "4.6.1", - "postcss": "8.4.41", + "piscina": "4.8.0", + "postcss": "8.4.49", "postcss-loader": "8.1.1", "resolve-url-loader": "5.0.0", "rxjs": "7.8.1", - "sass": "1.77.6", - "sass-loader": "16.0.0", + "sass": "1.83.1", + "sass-loader": "16.0.4", "semver": "7.6.3", "source-map-loader": "5.0.0", "source-map-support": "0.5.21", - "terser": "5.31.6", + "terser": "5.37.0", "tree-kill": "1.2.2", - "tslib": "2.6.3", - "vite": "5.4.6", - "watchpack": "2.4.1", - "webpack": "5.94.0", + "tslib": "2.8.1", + "webpack": "5.97.1", "webpack-dev-middleware": "7.4.2", - "webpack-dev-server": "5.0.4", + "webpack-dev-server": "5.2.0", "webpack-merge": "6.0.1", "webpack-subresource-integrity": "5.1.0" }, @@ -387,22 +369,23 @@ "yarn": ">= 1.13.0" }, "optionalDependencies": { - "esbuild": "0.23.0" + "esbuild": "0.24.2" }, "peerDependencies": { - "@angular/compiler-cli": "^18.0.0", - "@angular/localize": "^18.0.0", - "@angular/platform-server": "^18.0.0", - "@angular/service-worker": "^18.0.0", - "@web/test-runner": "^0.18.0", + "@angular/compiler-cli": "^19.0.0", + "@angular/localize": "^19.0.0", + "@angular/platform-server": "^19.0.0", + "@angular/service-worker": "^19.0.0", + "@angular/ssr": "^19.1.1", + "@web/test-runner": "^0.19.0", "browser-sync": "^3.0.2", "jest": "^29.5.0", "jest-environment-jsdom": "^29.5.0", "karma": "^6.3.0", - "ng-packagr": "^18.0.0", + "ng-packagr": "^19.0.0", "protractor": "^7.0.0", "tailwindcss": "^2.0.0 || ^3.0.0", - "typescript": ">=5.4 <5.6" + "typescript": ">=5.5 <5.8" }, "peerDependenciesMeta": { "@angular/localize": { @@ -414,6 +397,9 @@ "@angular/service-worker": { "optional": true }, + "@angular/ssr": { + "optional": true + }, "@web/test-runner": { "optional": true }, @@ -440,22 +426,16 @@ } } }, - "node_modules/@angular-devkit/build-angular/node_modules/immutable": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", - "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", - "dev": true, - "license": "MIT" - }, "node_modules/@angular-devkit/build-angular/node_modules/sass": { - "version": "1.77.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.6.tgz", - "integrity": "sha512-ByXE1oLD79GVq9Ht1PeHWCPMPB8XHpBuz1r85oByKHjZY6qV6rWnQovQzXJXuQ/XyE1Oj3iPk3lo28uzaRA2/Q==", + "version": "1.83.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.83.1.tgz", + "integrity": "sha512-EVJbDaEs4Rr3F0glJzFSOvtg2/oy2V/YrGFPqPY24UqcLDWcI9ZY5sN+qyO3c/QCZwzgfirvhXvINiJCE/OLcA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", + "chokidar": "^4.0.0", + "immutable": "^5.0.2", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { @@ -463,23 +443,20 @@ }, "engines": { "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" } }, - "node_modules/@angular-devkit/build-angular/node_modules/tslib": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", - "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", - "dev": true, - "license": "0BSD" - }, "node_modules/@angular-devkit/build-webpack": { - "version": "0.1802.12", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1802.12.tgz", - "integrity": "sha512-0Z3fdbZVRnjYWE2/VYyfy+uieY+6YZyEp4ylzklVkc+fmLNsnz4Zw6cK1LzzcBqAwKIyh1IdW20Cg7o8b0sONA==", + "version": "0.1901.1", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1901.1.tgz", + "integrity": "sha512-WKh0uA7TNfGeOFLAfHS4yCRx3pPtsFrQJTOeYLU/r/scJS/xvDfvFNE0P1CZeL0G6V0O80V/Kj0ZoTS8zBac0g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@angular-devkit/architect": "0.1802.12", + "@angular-devkit/architect": "0.1901.1", "rxjs": "7.8.1" }, "engines": { @@ -493,9 +470,9 @@ } }, "node_modules/@angular-devkit/core": { - "version": "18.2.12", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-18.2.12.tgz", - "integrity": "sha512-NtB6ypsaDyPE6/fqWOdfTmACs+yK5RqfH5tStEzWFeeDsIEDYKsJ06ypuRep7qTjYus5Rmttk0Ds+cFgz8JdUQ==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-19.1.1.tgz", + "integrity": "sha512-CAqst7WEasPHR4OFdbxxX3+NVqNTvYk3vtPbXT/jZ0L2EZRICQta2EClkdhSIiMkiMf0/2LNT05rYD7k4NHIQA==", "dev": true, "license": "MIT", "dependencies": { @@ -512,7 +489,7 @@ "yarn": ">= 1.13.0" }, "peerDependencies": { - "chokidar": "^3.5.2" + "chokidar": "^4.0.0" }, "peerDependenciesMeta": { "chokidar": { @@ -521,15 +498,15 @@ } }, "node_modules/@angular-devkit/schematics": { - "version": "18.2.12", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-18.2.12.tgz", - "integrity": "sha512-mMea9txHbnCX5lXLHlo0RAgfhFHDio45/jMsREM2PA8UtVf2S8ltXz7ZwUrUyMQRv8vaSfn4ijDstF4hDMnRgQ==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-19.1.1.tgz", + "integrity": "sha512-4xodirv/kErn7L5N6NhIDfuVuNgNDmGX1+Pdu3yG2c1moOTyRBV684lv2qQJClNctOpELDM55IuX3MXud2qQaw==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "18.2.12", + "@angular-devkit/core": "19.1.1", "jsonc-parser": "3.3.1", - "magic-string": "0.30.11", + "magic-string": "0.30.17", "ora": "5.4.1", "rxjs": "7.8.1" }, @@ -540,32 +517,36 @@ } }, "node_modules/@angular-eslint/builder": { - "version": "18.4.1", - "resolved": "https://registry.npmjs.org/@angular-eslint/builder/-/builder-18.4.1.tgz", - "integrity": "sha512-Ofkwd9Rg52K+AgvnV1RXYXVBGJvl5jD7+4dqwoprqXG7YKNTdHy5vqNZ5XDSMb26qjoZF7JC+IKruKFaON/ZaA==", + "version": "19.0.2", + "resolved": "https://registry.npmjs.org/@angular-eslint/builder/-/builder-19.0.2.tgz", + "integrity": "sha512-BdmMSndQt2fSBiTVniskUcUpQaeweUapbsL0IDfQ7a13vL0NVXpc3K89YXuVE/xsb08uHtqphuwxPAAj6kX3OA==", "dev": true, "license": "MIT", + "dependencies": { + "@angular-devkit/architect": ">= 0.1900.0 < 0.2000.0", + "@angular-devkit/core": ">= 19.0.0 < 20.0.0" + }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": "*" } }, "node_modules/@angular-eslint/bundled-angular-compiler": { - "version": "18.4.1", - "resolved": "https://registry.npmjs.org/@angular-eslint/bundled-angular-compiler/-/bundled-angular-compiler-18.4.1.tgz", - "integrity": "sha512-gCQC0mgBO1bwHDXL9CUgHW+Rf1XGZCLAopoXnggwxGkBCx+oww507t+jrSOxdh+4OTKU4ZfmbtWd7Y8AeXns8w==", + "version": "19.0.2", + "resolved": "https://registry.npmjs.org/@angular-eslint/bundled-angular-compiler/-/bundled-angular-compiler-19.0.2.tgz", + "integrity": "sha512-HPmp92r70SNO/0NdIaIhxrgVSpomqryuUk7jszvNRtu+OzYCJGcbLhQD38T3dbBWT/AV0QXzyzExn6/2ai9fEw==", "dev": true, "license": "MIT" }, "node_modules/@angular-eslint/eslint-plugin": { - "version": "18.4.1", - "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin/-/eslint-plugin-18.4.1.tgz", - "integrity": "sha512-FoHwj+AFo8ONKb8wEK5qpo6uefuyklZlDqErJxeC3fpNIJzDe8PWBcJsuZt7Wwm/HeggWgt0Au6h+3IEa0V3BQ==", + "version": "19.0.2", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin/-/eslint-plugin-19.0.2.tgz", + "integrity": "sha512-DLuNVVGGFicSThOcMSJyNje+FZSPdG0B3lCBRiqcgKH/16kfM4pV8MobPM7RGK2NhaOmmZ4zzJNwpwWPSgi+Lw==", "dev": true, "license": "MIT", "dependencies": { - "@angular-eslint/bundled-angular-compiler": "18.4.1", - "@angular-eslint/utils": "18.4.1" + "@angular-eslint/bundled-angular-compiler": "19.0.2", + "@angular-eslint/utils": "19.0.2" }, "peerDependencies": { "@typescript-eslint/utils": "^7.11.0 || ^8.0.0", @@ -574,14 +555,14 @@ } }, "node_modules/@angular-eslint/eslint-plugin-template": { - "version": "18.4.1", - "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin-template/-/eslint-plugin-template-18.4.1.tgz", - "integrity": "sha512-sofnKpi6wOZ6avVfYYqB7sCgGgWF2HgCZfW+IAp1MtVD2FBa1zTSbbfIZ1I8Akpd22UXa4LKJd0TLwm5XHHkiQ==", + "version": "19.0.2", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin-template/-/eslint-plugin-template-19.0.2.tgz", + "integrity": "sha512-f/OCF9ThnxQ8m0eNYPwnCrySQPhYfCOF6STL7F9LnS8Bs3ZeW3/oT1yLaMIZ1Eg0ogIkgxksMAJZjrJPUPBD1Q==", "dev": true, "license": "MIT", "dependencies": { - "@angular-eslint/bundled-angular-compiler": "18.4.1", - "@angular-eslint/utils": "18.4.1", + "@angular-eslint/bundled-angular-compiler": "19.0.2", + "@angular-eslint/utils": "19.0.2", "aria-query": "5.3.2", "axobject-query": "4.1.0" }, @@ -593,31 +574,29 @@ } }, "node_modules/@angular-eslint/schematics": { - "version": "18.4.1", - "resolved": "https://registry.npmjs.org/@angular-eslint/schematics/-/schematics-18.4.1.tgz", - "integrity": "sha512-1+gGodwh+UevtEx9mzZbzP1uY/9NAGEbsn8jisG1TEPDby2wKScQj6U6JwGxoW/Dd/4SIeSdilruZPALkqha7g==", + "version": "19.0.2", + "resolved": "https://registry.npmjs.org/@angular-eslint/schematics/-/schematics-19.0.2.tgz", + "integrity": "sha512-wI4SyiAnUCrpigtK6PHRlVWMC9vWljqmlLhbsJV5O5yDajlmRdvgXvSHDefhJm0hSfvZYRXuiAARYv2+QVfnGA==", "dev": true, "license": "MIT", "dependencies": { - "@angular-eslint/eslint-plugin": "18.4.1", - "@angular-eslint/eslint-plugin-template": "18.4.1", + "@angular-devkit/core": ">= 19.0.0 < 20.0.0", + "@angular-devkit/schematics": ">= 19.0.0 < 20.0.0", + "@angular-eslint/eslint-plugin": "19.0.2", + "@angular-eslint/eslint-plugin-template": "19.0.2", "ignore": "6.0.2", "semver": "7.6.3", "strip-json-comments": "3.1.1" - }, - "peerDependencies": { - "@angular-devkit/core": ">= 18.0.0 < 19.0.0", - "@angular-devkit/schematics": ">= 18.0.0 < 19.0.0" } }, "node_modules/@angular-eslint/template-parser": { - "version": "18.4.1", - "resolved": "https://registry.npmjs.org/@angular-eslint/template-parser/-/template-parser-18.4.1.tgz", - "integrity": "sha512-LsStXVyso/89gQU5eiJebB/b1j+wrRtTLjk+ODVUTa7NGCCT7B7xI6ToTchkBEpSTHLT9pEQXHsHer3FymsQRQ==", + "version": "19.0.2", + "resolved": "https://registry.npmjs.org/@angular-eslint/template-parser/-/template-parser-19.0.2.tgz", + "integrity": "sha512-z3rZd2sBfuYcFf9rGDsB2zz2fbGX8kkF+0ftg9eocyQmzWrlZHFmuw9ha7oP/Mz8gpblyCS/aa1U/Srs6gz0UQ==", "dev": true, "license": "MIT", "dependencies": { - "@angular-eslint/bundled-angular-compiler": "18.4.1", + "@angular-eslint/bundled-angular-compiler": "19.0.2", "eslint-scope": "^8.0.2" }, "peerDependencies": { @@ -626,13 +605,13 @@ } }, "node_modules/@angular-eslint/utils": { - "version": "18.4.1", - "resolved": "https://registry.npmjs.org/@angular-eslint/utils/-/utils-18.4.1.tgz", - "integrity": "sha512-F5UGE1J/CRmTbl8vjexQRwRglNqnJwdXCUejaG+qlGssSHoWcRB+ubbR/na3PdnzeJdBE6DkLYElXnOQZ6YKfg==", + "version": "19.0.2", + "resolved": "https://registry.npmjs.org/@angular-eslint/utils/-/utils-19.0.2.tgz", + "integrity": "sha512-HotBT8OKr7zCaX1S9k27JuhRiTVIbbYVl6whlb3uwdMIPIWY8iOcEh1tjI4qDPUafpLfR72Dhwi5bO1E17F3/Q==", "dev": true, "license": "MIT", "dependencies": { - "@angular-eslint/bundled-angular-compiler": "18.4.1" + "@angular-eslint/bundled-angular-compiler": "19.0.2" }, "peerDependencies": { "@typescript-eslint/utils": "^7.11.0 || ^8.0.0", @@ -641,9 +620,9 @@ } }, "node_modules/@angular/animations": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-18.2.13.tgz", - "integrity": "sha512-rG5J5Ek5Hg+Tz2NjkNOaG6PupiNK/lPfophXpsR1t/nWujqnMWX2krahD/i6kgD+jNWNKCJCYSOVvCx/BHOtKA==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-19.1.1.tgz", + "integrity": "sha512-MWZKQSFBr7iEfLH4tSpsjjC/Afq8Udp4v6kv4YGRcXuJKn8cL6KZ+8nPFkZACYPNrB/5jrWN27HGjWWlO2Z2Hg==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -652,56 +631,62 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/core": "18.2.13" + "@angular/core": "19.1.1" } }, "node_modules/@angular/build": { - "version": "18.2.12", - "resolved": "https://registry.npmjs.org/@angular/build/-/build-18.2.12.tgz", - "integrity": "sha512-4Ohz+OSILoL+cCAQ4UTiCT5v6pctu3fXNoNpTEUK46OmxELk9jDITO5rNyNS7TxBn9wY69kjX5VcDf7MenquFQ==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/build/-/build-19.1.1.tgz", + "integrity": "sha512-E4jvi48zRCLkwcThQQm1Q1vq9aypf3+xSMQQMDcHzvt/89sucWTKkwgNHSW/Fi8qH23GhijCLXBHa4dHSoCB/A==", "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "2.3.0", - "@angular-devkit/architect": "0.1802.12", - "@babel/core": "7.25.2", - "@babel/helper-annotate-as-pure": "7.24.7", + "@angular-devkit/architect": "0.1901.1", + "@babel/core": "7.26.0", + "@babel/helper-annotate-as-pure": "7.25.9", "@babel/helper-split-export-declaration": "7.24.7", - "@babel/plugin-syntax-import-attributes": "7.24.7", - "@inquirer/confirm": "3.1.22", - "@vitejs/plugin-basic-ssl": "1.1.0", + "@babel/plugin-syntax-import-attributes": "7.26.0", + "@inquirer/confirm": "5.1.1", + "@vitejs/plugin-basic-ssl": "1.2.0", + "beasties": "0.2.0", "browserslist": "^4.23.0", - "critters": "0.0.24", - "esbuild": "0.23.0", - "fast-glob": "3.3.2", - "https-proxy-agent": "7.0.5", - "listr2": "8.2.4", - "lmdb": "3.0.13", - "magic-string": "0.30.11", + "esbuild": "0.24.2", + "fast-glob": "3.3.3", + "https-proxy-agent": "7.0.6", + "istanbul-lib-instrument": "6.0.3", + "listr2": "8.2.5", + "magic-string": "0.30.17", "mrmime": "2.0.0", "parse5-html-rewriting-stream": "7.0.0", "picomatch": "4.0.2", - "piscina": "4.6.1", - "rollup": "4.22.4", - "sass": "1.77.6", + "piscina": "4.8.0", + "rollup": "4.30.1", + "sass": "1.83.1", "semver": "7.6.3", - "vite": "5.4.6", - "watchpack": "2.4.1" + "vite": "6.0.7", + "watchpack": "2.4.2" }, "engines": { "node": "^18.19.1 || ^20.11.1 || >=22.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, + "optionalDependencies": { + "lmdb": "3.2.2" + }, "peerDependencies": { - "@angular/compiler-cli": "^18.0.0", - "@angular/localize": "^18.0.0", - "@angular/platform-server": "^18.0.0", - "@angular/service-worker": "^18.0.0", + "@angular/compiler": "^19.0.0", + "@angular/compiler-cli": "^19.0.0", + "@angular/localize": "^19.0.0", + "@angular/platform-server": "^19.0.0", + "@angular/service-worker": "^19.0.0", + "@angular/ssr": "^19.1.1", "less": "^4.2.0", + "ng-packagr": "^19.0.0", "postcss": "^8.4.0", "tailwindcss": "^2.0.0 || ^3.0.0", - "typescript": ">=5.4 <5.6" + "typescript": ">=5.5 <5.8" }, "peerDependenciesMeta": { "@angular/localize": { @@ -713,9 +698,15 @@ "@angular/service-worker": { "optional": true }, + "@angular/ssr": { + "optional": true + }, "less": { "optional": true }, + "ng-packagr": { + "optional": true + }, "postcss": { "optional": true }, @@ -724,22 +715,15 @@ } } }, - "node_modules/@angular/build/node_modules/immutable": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", - "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", - "dev": true, - "license": "MIT" - }, "node_modules/@angular/build/node_modules/sass": { - "version": "1.77.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.6.tgz", - "integrity": "sha512-ByXE1oLD79GVq9Ht1PeHWCPMPB8XHpBuz1r85oByKHjZY6qV6rWnQovQzXJXuQ/XyE1Oj3iPk3lo28uzaRA2/Q==", + "version": "1.83.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.83.1.tgz", + "integrity": "sha512-EVJbDaEs4Rr3F0glJzFSOvtg2/oy2V/YrGFPqPY24UqcLDWcI9ZY5sN+qyO3c/QCZwzgfirvhXvINiJCE/OLcA==", "dev": true, "license": "MIT", "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", + "chokidar": "^4.0.0", + "immutable": "^5.0.2", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { @@ -747,12 +731,15 @@ }, "engines": { "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" } }, "node_modules/@angular/cdk": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-18.2.13.tgz", - "integrity": "sha512-yBKoqcOwmwXnc5phFMEEMO130/Bz9beQLJrKzIS87f6TXaGCeBs4xrPHq2i7Xx/2TqvMiOD9ucjmlVbtGvNG3w==", + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-19.1.0.tgz", + "integrity": "sha512-h7VSaMA/vFHb7u1bwoHKl3L3mZLIcXNZw6v7Nei9ITfEo1PfSKbrYhleeqpNikzE+LxNDKJrbZtpAckSYHblmA==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -761,32 +748,32 @@ "parse5": "^7.1.2" }, "peerDependencies": { - "@angular/common": "^18.0.0 || ^19.0.0", - "@angular/core": "^18.0.0 || ^19.0.0", + "@angular/common": "^19.0.0 || ^20.0.0", + "@angular/core": "^19.0.0 || ^20.0.0", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/cli": { - "version": "18.2.12", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-18.2.12.tgz", - "integrity": "sha512-xhuZ/b7IhqNw1MgXf+arWf4x+GfUSt/IwbdWU4+CO8A7h0Y46zQywouP/KUK3cMQZfVdHdciTBvlpF3vFacA6Q==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-19.1.1.tgz", + "integrity": "sha512-eggTJ6jaGtSlvq0qbncLvOGVFCvSUaHJarpnLUJhZKX6F3zXtc4gPGvW4za4yp2+IbeXWYbOhdqeDkwgEomNHg==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/architect": "0.1802.12", - "@angular-devkit/core": "18.2.12", - "@angular-devkit/schematics": "18.2.12", - "@inquirer/prompts": "5.3.8", - "@listr2/prompt-adapter-inquirer": "2.0.15", - "@schematics/angular": "18.2.12", + "@angular-devkit/architect": "0.1901.1", + "@angular-devkit/core": "19.1.1", + "@angular-devkit/schematics": "19.1.1", + "@inquirer/prompts": "7.2.1", + "@listr2/prompt-adapter-inquirer": "2.0.18", + "@schematics/angular": "19.1.1", "@yarnpkg/lockfile": "1.1.0", - "ini": "4.1.3", + "ini": "5.0.0", "jsonc-parser": "3.3.1", - "listr2": "8.2.4", - "npm-package-arg": "11.0.3", - "npm-pick-manifest": "9.1.0", - "pacote": "18.0.6", - "resolve": "1.22.8", + "listr2": "8.2.5", + "npm-package-arg": "12.0.1", + "npm-pick-manifest": "10.0.0", + "pacote": "20.0.0", + "resolve": "1.22.10", "semver": "7.6.3", "symbol-observable": "4.0.0", "yargs": "17.7.2" @@ -801,9 +788,9 @@ } }, "node_modules/@angular/common": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-18.2.13.tgz", - "integrity": "sha512-4ZqrNp1PoZo7VNvW+sbSc2CB2axP1sCH2wXl8B0wdjsj8JY1hF1OhuugwhpAHtGxqewed2kCXayE+ZJqSTV4jw==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-19.1.1.tgz", + "integrity": "sha512-2ZbnV8lM81ekLjRMRufRho7N8adz+Yjwj+3y5RB7+GW8fX5f9mm740ifyieBCXPLtiWb8ZK1i9gime6y64BEBQ==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -812,14 +799,14 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/core": "18.2.13", + "@angular/core": "19.1.1", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/compiler": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-18.2.13.tgz", - "integrity": "sha512-TzWcrkopyjFF+WeDr2cRe8CcHjU72KfYV3Sm2TkBkcXrkYX5sDjGWrBGrG3hRB4e4okqchrOCvm1MiTdy2vKMA==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-19.1.1.tgz", + "integrity": "sha512-bXPiJKQYjH6kSBnlVHx8aLzYY7YhWw1cidthWwqNaXyZ4YYILom1lN3C7nJYOVDX8W64QCMimHqf8iD4guByxA==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -828,7 +815,7 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/core": "18.2.13" + "@angular/core": "19.1.1" }, "peerDependenciesMeta": { "@angular/core": { @@ -837,12 +824,12 @@ } }, "node_modules/@angular/compiler-cli": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-18.2.13.tgz", - "integrity": "sha512-DBSh4AQwkiJDSiVvJATRmjxf6wyUs9pwQLgaFdSlfuTRO+sdb0J2z1r3BYm8t0IqdoyXzdZq2YCH43EmyvD71g==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-19.1.1.tgz", + "integrity": "sha512-mk+CIV98WtZPfk4R0cdo7Jx8bZZewCO5K0dcG7/AMck+e2dDl2pjtXz1wYJi8NpUUAtcrr9HWlvxQ2L8IJMIag==", "license": "MIT", "dependencies": { - "@babel/core": "7.25.2", + "@babel/core": "7.26.0", "@jridgewell/sourcemap-codec": "^1.4.14", "chokidar": "^4.0.0", "convert-source-map": "^1.5.1", @@ -860,42 +847,14 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/compiler": "18.2.13", - "typescript": ">=5.4 <5.6" - } - }, - "node_modules/@angular/compiler-cli/node_modules/chokidar": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", - "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", - "license": "MIT", - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@angular/compiler-cli/node_modules/readdirp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", - "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", - "license": "MIT", - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" + "@angular/compiler": "19.1.1", + "typescript": ">=5.5 <5.8" } }, "node_modules/@angular/core": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-18.2.13.tgz", - "integrity": "sha512-8mbWHMgO95OuFV1Ejy4oKmbe9NOJ3WazQf/f7wks8Bck7pcihd0IKhlPBNjFllbF5o+04EYSwFhEtvEgjMDClA==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-19.1.1.tgz", + "integrity": "sha512-uEDnomaIh7yUPx6hHWMFcWrUMOwishkkPToSFMltVLfRrfmAQL+WMpOGtR6qiFG6PIppsADIxXPRWVzfnYOYZg==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -905,13 +864,13 @@ }, "peerDependencies": { "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.14.10" + "zone.js": "~0.15.0" } }, "node_modules/@angular/forms": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-18.2.13.tgz", - "integrity": "sha512-A67D867fu3DSBhdLWWZl/F5pr7v2+dRM2u3U7ZJ0ewh4a+sv+0yqWdJW+a8xIoiHxS+btGEJL2qAKJiH+MCFfg==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-19.1.1.tgz", + "integrity": "sha512-MtvoAeOXa2v+24U+5BMwmJpbQs/SQ296u+mJiZ/hIuuB/XBZdlPMzGg0U9ENDg6kwwoZIypcgiQ0/+gIwxlCSw==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -920,16 +879,16 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/common": "18.2.13", - "@angular/core": "18.2.13", - "@angular/platform-browser": "18.2.13", + "@angular/common": "19.1.1", + "@angular/core": "19.1.1", + "@angular/platform-browser": "19.1.1", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/language-service": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-18.2.13.tgz", - "integrity": "sha512-4E4VJDrbOAxS69F9C1twQPbR9AjY47Qlz8+lwg5lJOyUJ4GoEThLbXKfadt/vIeYBwMJ7fIsYWXD0Dlmxh4k+w==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-19.1.1.tgz", + "integrity": "sha512-W2NDVvDVMcVcQ7cfl1fUFRWoOpsPO9YXcbFNoBlANfamAcu4gR7cssaAWh3o3UPchdxQui9Ka8X+UhrF5bGxVA==", "dev": true, "license": "MIT", "engines": { @@ -937,14 +896,14 @@ } }, "node_modules/@angular/localize": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/localize/-/localize-18.2.13.tgz", - "integrity": "sha512-qQaIYdDS/l1w6tr/wpOoimjpmoJU0WmB8AGbNeKLoM36K+ix6hkvn67+UgkpZtaDHZylm8GsGW1NjzpM2tr3pA==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/localize/-/localize-19.1.1.tgz", + "integrity": "sha512-MHrCE8bxNEp2BkSoLeuGJE0PMBF+Xu3zV52VpUaCrMQRHvHpq4ie+qosinQSDX72DKUUJUZuv0unApFCvhr2HA==", "license": "MIT", "dependencies": { - "@babel/core": "7.25.2", + "@babel/core": "7.26.0", "@types/babel__core": "7.20.5", - "fast-glob": "3.3.2", + "fast-glob": "3.3.3", "yargs": "^17.2.1" }, "bin": { @@ -956,32 +915,32 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/compiler": "18.2.13", - "@angular/compiler-cli": "18.2.13" + "@angular/compiler": "19.1.1", + "@angular/compiler-cli": "19.1.1" } }, "node_modules/@angular/material": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-18.2.13.tgz", - "integrity": "sha512-Gxyyo6G+IXJwgf6zDTjPfFJ2PnjC2YXWKGkKKG2oR0jfiYiovDvNR4oXxhsztTwkaxLwck/gscoVTSQXMkU5fg==", + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-19.1.0.tgz", + "integrity": "sha512-LTQBWtuRGjNpA7ceQu9PyiUUq0KLfBP8LvL04hLFbEsZ0fIPQ/OO/Otn67/7TMtnHRFnPeezYPHcAHBhiNlR4A==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "peerDependencies": { - "@angular/animations": "^18.0.0 || ^19.0.0", - "@angular/cdk": "18.2.13", - "@angular/common": "^18.0.0 || ^19.0.0", - "@angular/core": "^18.0.0 || ^19.0.0", - "@angular/forms": "^18.0.0 || ^19.0.0", - "@angular/platform-browser": "^18.0.0 || ^19.0.0", + "@angular/animations": "^19.0.0 || ^20.0.0", + "@angular/cdk": "19.1.0", + "@angular/common": "^19.0.0 || ^20.0.0", + "@angular/core": "^19.0.0 || ^20.0.0", + "@angular/forms": "^19.0.0 || ^20.0.0", + "@angular/platform-browser": "^19.0.0 || ^20.0.0", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/platform-browser": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-18.2.13.tgz", - "integrity": "sha512-tu7ZzY6qD3ATdWFzcTcsAKe7M6cJeWbT/4/bF9unyGO3XBPcNYDKoiz10+7ap2PUd0fmPwvuvTvSNJiFEBnB8Q==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-19.1.1.tgz", + "integrity": "sha512-L33rk7j3FepDqHo29iqp7ucL1tBjGQed+e22ei9bCsj7CG0GNi5w8id3nyNImhwN26wtg++4cu4la+XxKWIkXg==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -990,9 +949,9 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/animations": "18.2.13", - "@angular/common": "18.2.13", - "@angular/core": "18.2.13" + "@angular/animations": "19.1.1", + "@angular/common": "19.1.1", + "@angular/core": "19.1.1" }, "peerDependenciesMeta": { "@angular/animations": { @@ -1001,9 +960,9 @@ } }, "node_modules/@angular/platform-browser-dynamic": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-18.2.13.tgz", - "integrity": "sha512-kbQCf9+8EpuJC7buBxhSiwBtXvjAwAKh6MznD6zd2pyCYqfY6gfRCZQRtK59IfgVtKmEONWI9grEyNIRoTmqJg==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-19.1.1.tgz", + "integrity": "sha512-iEVOFKpBEFXKDqQb42xhEXpseQc2vpl16kuT9gbjuvBC8KJLsTdvE34HIoZN1Igm22wZzp+PBzSWYa8WiQK83A==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -1012,16 +971,16 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/common": "18.2.13", - "@angular/compiler": "18.2.13", - "@angular/core": "18.2.13", - "@angular/platform-browser": "18.2.13" + "@angular/common": "19.1.1", + "@angular/compiler": "19.1.1", + "@angular/core": "19.1.1", + "@angular/platform-browser": "19.1.1" } }, "node_modules/@angular/router": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-18.2.13.tgz", - "integrity": "sha512-VKmfgi/r/CkyBq9nChQ/ptmfu0JT/8ONnLVJ5H+SkFLRYJcIRyHLKjRihMCyVm6xM5yktOdCaW73NTQrFz7+bg==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-19.1.1.tgz", + "integrity": "sha512-DbgluW4P0AfZ01kaoSJK+4eKrYnBvP5yGVSx+rhZhXOPpoVx76IOn691cdwC9CQuDIG9RqQWZL5TLfS959K0cA==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -1030,16 +989,16 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/common": "18.2.13", - "@angular/core": "18.2.13", - "@angular/platform-browser": "18.2.13", + "@angular/common": "19.1.1", + "@angular/core": "19.1.1", + "@angular/platform-browser": "19.1.1", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/service-worker": { - "version": "18.2.13", - "resolved": "https://registry.npmjs.org/@angular/service-worker/-/service-worker-18.2.13.tgz", - "integrity": "sha512-fVC943qEqGNUy923NMmSSzfoIqNw2k2UbG/3Y4QEmel/nZFWHA3PhiYr+lE7J3RhRHFMmnNP1bmXDJgy+R+pzA==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@angular/service-worker/-/service-worker-19.1.1.tgz", + "integrity": "sha512-yj+1qkvrSIKdae0ReYZo5/sILAP+XDVW457DFNH0DgVLe3rncreVGKKQhlp/kY8zUCq2D0IeclG8YLq6yc5dog==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -1051,10 +1010,31 @@ "node": "^18.19.1 || ^20.11.1 || >=22.0.0" }, "peerDependencies": { - "@angular/common": "18.2.13", - "@angular/core": "18.2.13" + "@angular/common": "19.1.1", + "@angular/core": "19.1.1" + } + }, + "node_modules/@asamuzakjp/css-color": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-2.8.3.tgz", + "integrity": "sha512-GIc76d9UI1hCvOATjZPyHFmE5qhRccp3/zGfMPapK3jBi+yocEzp6BBB0UnfRYP9NP4FANqUZYb0hnfs3TM3hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@csstools/css-calc": "^2.1.1", + "@csstools/css-color-parser": "^3.0.7", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" } }, + "node_modules/@asamuzakjp/css-color/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, "node_modules/@babel/code-frame": { "version": "7.26.2", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", @@ -1070,30 +1050,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.2.tgz", - "integrity": "sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.5.tgz", + "integrity": "sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==", "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", - "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz", + "integrity": "sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==", "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.25.0", - "@babel/helper-compilation-targets": "^7.25.2", - "@babel/helper-module-transforms": "^7.25.2", - "@babel/helpers": "^7.25.0", - "@babel/parser": "^7.25.0", - "@babel/template": "^7.25.0", - "@babel/traverse": "^7.25.2", - "@babel/types": "^7.25.2", + "@babel/code-frame": "^7.26.0", + "@babel/generator": "^7.26.0", + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.0", + "@babel/parser": "^7.26.0", + "@babel/template": "^7.25.9", + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.26.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -1115,40 +1095,27 @@ "license": "MIT" }, "node_modules/@babel/generator": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz", - "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.3.tgz", + "integrity": "sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==", "license": "MIT", "dependencies": { - "@babel/types": "^7.25.0", + "@babel/parser": "^7.26.3", + "@babel/types": "^7.26.3", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz", - "integrity": "sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.9.tgz", - "integrity": "sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g==", - "dev": true, + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", "license": "MIT", "dependencies": { - "@babel/traverse": "^7.25.9", "@babel/types": "^7.25.9" }, "engines": { @@ -1156,12 +1123,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz", - "integrity": "sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", + "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.25.9", + "@babel/compat-data": "^7.26.5", "@babel/helper-validator-option": "^7.25.9", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", @@ -1177,6 +1144,7 @@ "integrity": "sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", "@babel/helper-member-expression-to-functions": "^7.25.9", @@ -1193,28 +1161,16 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-annotate-as-pure": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", - "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.25.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.9.tgz", - "integrity": "sha512-ORPNZ3h6ZRkOyAa/SaHU+XsLZr0UQzRwuDQ0cczIA17nAzZ+85G5cVkOJIj7QavLZGSe8QXUmNFxSZzjcZF9bw==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.26.3.tgz", + "integrity": "sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", - "regexpu-core": "^6.1.1", + "regexpu-core": "^6.2.0", "semver": "^6.3.1" }, "engines": { @@ -1224,25 +1180,13 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/@babel/helper-annotate-as-pure": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", - "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.25.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-define-polyfill-provider": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.3.tgz", "integrity": "sha512-HK7Bi+Hj6H+VTHA3ZvBis7V/6hu9QuTrnMXNybfUf2iiuU/N97I8VjB+KbhFF8Rld/Lx5MzoCwPCpPjfK+n8Cg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-compilation-targets": "^7.22.6", "@babel/helper-plugin-utils": "^7.22.5", @@ -1260,6 +1204,7 @@ "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/traverse": "^7.25.9", "@babel/types": "^7.25.9" @@ -1304,6 +1249,7 @@ "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/types": "^7.25.9" }, @@ -1312,9 +1258,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz", - "integrity": "sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", "license": "MIT", "engines": { "node": ">=6.9.0" @@ -1326,6 +1272,7 @@ "integrity": "sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", "@babel/helper-wrap-function": "^7.25.9", @@ -1338,29 +1285,17 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/helper-annotate-as-pure": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", - "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.25.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-replace-supers": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz", - "integrity": "sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz", + "integrity": "sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-member-expression-to-functions": "^7.25.9", "@babel/helper-optimise-call-expression": "^7.25.9", - "@babel/traverse": "^7.25.9" + "@babel/traverse": "^7.26.5" }, "engines": { "node": ">=6.9.0" @@ -1369,26 +1304,13 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-simple-access": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.9.tgz", - "integrity": "sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.25.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-skip-transparent-expression-wrappers": { "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz", "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/traverse": "^7.25.9", "@babel/types": "^7.25.9" @@ -1443,6 +1365,7 @@ "integrity": "sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/template": "^7.25.9", "@babel/traverse": "^7.25.9", @@ -1466,12 +1389,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz", - "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.5.tgz", + "integrity": "sha512-SRJ4jYmXRqV1/Xc+TIVG84WjHBXKlxO9sHQnA2Pf12QQEAp1LOh6kDzNHXcUnbH1QI0FDoPPVOt+vyUDucxpaw==", "license": "MIT", "dependencies": { - "@babel/types": "^7.26.0" + "@babel/types": "^7.26.5" }, "bin": { "parser": "bin/babel-parser.js" @@ -1486,6 +1409,7 @@ "integrity": "sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9", "@babel/traverse": "^7.25.9" @@ -1503,6 +1427,7 @@ "integrity": "sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -1519,6 +1444,7 @@ "integrity": "sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -1535,6 +1461,7 @@ "integrity": "sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9", "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", @@ -1553,6 +1480,7 @@ "integrity": "sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9", "@babel/traverse": "^7.25.9" @@ -1570,6 +1498,7 @@ "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=6.9.0" }, @@ -1632,38 +1561,13 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-import-assertions": { "version": "7.26.0", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz", "integrity": "sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -1675,13 +1579,13 @@ } }, "node_modules/@babel/plugin-syntax-import-attributes": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.7.tgz", - "integrity": "sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz", + "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.24.7" + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -1863,6 +1767,7 @@ "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.18.6", "@babel/helper-plugin-utils": "^7.18.6" @@ -1880,6 +1785,7 @@ "integrity": "sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -1891,16 +1797,16 @@ } }, "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.0.tgz", - "integrity": "sha512-uaIi2FdqzjpAMvVqvB51S42oC2JEVgh0LDsGfZVDysWE8LrJtQC2jvKmOqEYThKyB7bDEb7BP1GYWDm7tABA0Q==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.9.tgz", + "integrity": "sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.24.8", - "@babel/helper-remap-async-to-generator": "^7.25.0", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/traverse": "^7.25.0" + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-remap-async-to-generator": "^7.25.9", + "@babel/traverse": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -1910,15 +1816,16 @@ } }, "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.7.tgz", - "integrity": "sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.9.tgz", + "integrity": "sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@babel/helper-module-imports": "^7.24.7", - "@babel/helper-plugin-utils": "^7.24.7", - "@babel/helper-remap-async-to-generator": "^7.24.7" + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-remap-async-to-generator": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -1928,13 +1835,14 @@ } }, "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.9.tgz", - "integrity": "sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.26.5.tgz", + "integrity": "sha512-chuTSY+hq09+/f5lMj8ZSYgCFpppV2CbYrhNFJ1BFoXpiWPnnAb7R0MqrafCpN8E1+YRrtM1MXZHJdIx8B6rMQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.25.9" + "@babel/helper-plugin-utils": "^7.26.5" }, "engines": { "node": ">=6.9.0" @@ -1949,6 +1857,7 @@ "integrity": "sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -1965,6 +1874,7 @@ "integrity": "sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-class-features-plugin": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -1982,6 +1892,7 @@ "integrity": "sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-class-features-plugin": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -1999,6 +1910,7 @@ "integrity": "sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", "@babel/helper-compilation-targets": "^7.25.9", @@ -2014,25 +1926,13 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-classes/node_modules/@babel/helper-annotate-as-pure": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", - "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.25.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/plugin-transform-computed-properties": { "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz", "integrity": "sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9", "@babel/template": "^7.25.9" @@ -2050,6 +1950,7 @@ "integrity": "sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2066,6 +1967,7 @@ "integrity": "sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -2083,6 +1985,7 @@ "integrity": "sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2099,6 +2002,7 @@ "integrity": "sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -2116,6 +2020,7 @@ "integrity": "sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2127,13 +2032,13 @@ } }, "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.9.tgz", - "integrity": "sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.26.3.tgz", + "integrity": "sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { @@ -2149,6 +2054,7 @@ "integrity": "sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2165,6 +2071,7 @@ "integrity": "sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9", "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" @@ -2182,6 +2089,7 @@ "integrity": "sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-compilation-targets": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9", @@ -2200,6 +2108,7 @@ "integrity": "sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2216,6 +2125,7 @@ "integrity": "sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2232,6 +2142,7 @@ "integrity": "sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2248,6 +2159,7 @@ "integrity": "sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2264,6 +2176,7 @@ "integrity": "sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-module-transforms": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -2276,15 +2189,15 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.9.tgz", - "integrity": "sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz", + "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@babel/helper-module-transforms": "^7.25.9", - "@babel/helper-plugin-utils": "^7.25.9", - "@babel/helper-simple-access": "^7.25.9" + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -2299,6 +2212,7 @@ "integrity": "sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-module-transforms": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9", @@ -2318,6 +2232,7 @@ "integrity": "sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-module-transforms": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -2335,6 +2250,7 @@ "integrity": "sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -2352,6 +2268,7 @@ "integrity": "sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2363,13 +2280,14 @@ } }, "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.9.tgz", - "integrity": "sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog==", + "version": "7.26.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.26.6.tgz", + "integrity": "sha512-CKW8Vu+uUZneQCPtXmSBUC6NCAUdya26hWCElAWh5mVSlSRsmiCPUUDKb3Z0szng1hiAJa098Hkhg9o4SE35Qw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.25.9" + "@babel/helper-plugin-utils": "^7.26.5" }, "engines": { "node": ">=6.9.0" @@ -2384,6 +2302,7 @@ "integrity": "sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2400,6 +2319,7 @@ "integrity": "sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-compilation-targets": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9", @@ -2418,6 +2338,7 @@ "integrity": "sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9", "@babel/helper-replace-supers": "^7.25.9" @@ -2435,6 +2356,7 @@ "integrity": "sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2451,6 +2373,7 @@ "integrity": "sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9", "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" @@ -2468,6 +2391,7 @@ "integrity": "sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2484,6 +2408,7 @@ "integrity": "sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-class-features-plugin": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -2501,6 +2426,7 @@ "integrity": "sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", "@babel/helper-create-class-features-plugin": "^7.25.9", @@ -2513,25 +2439,13 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-private-property-in-object/node_modules/@babel/helper-annotate-as-pure": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", - "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.25.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/plugin-transform-property-literals": { "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz", "integrity": "sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2548,6 +2462,7 @@ "integrity": "sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9", "regenerator-transform": "^0.15.2" @@ -2559,12 +2474,31 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-transform-regexp-modifiers": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.26.0.tgz", + "integrity": "sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, "node_modules/@babel/plugin-transform-reserved-words": { "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz", "integrity": "sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2576,16 +2510,17 @@ } }, "node_modules/@babel/plugin-transform-runtime": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.7.tgz", - "integrity": "sha512-YqXjrk4C+a1kZjewqt+Mmu2UuV1s07y8kqcUf4qYLnoqemhR4gRQikhdAhSVJioMjVTu6Mo6pAbaypEA3jY6fw==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.9.tgz", + "integrity": "sha512-nZp7GlEl+yULJrClz0SwHPqir3lc0zsPrDHQUcxGspSL7AKrexNSEfTbfqnDNJUO13bgKyfuOLMF8Xqtu8j3YQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@babel/helper-module-imports": "^7.24.7", - "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", "babel-plugin-polyfill-corejs2": "^0.4.10", - "babel-plugin-polyfill-corejs3": "^0.10.1", + "babel-plugin-polyfill-corejs3": "^0.10.6", "babel-plugin-polyfill-regenerator": "^0.6.1", "semver": "^6.3.1" }, @@ -2602,6 +2537,7 @@ "integrity": "sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2618,6 +2554,7 @@ "integrity": "sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9", "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" @@ -2635,6 +2572,7 @@ "integrity": "sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2651,6 +2589,7 @@ "integrity": "sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2667,6 +2606,7 @@ "integrity": "sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2683,6 +2623,7 @@ "integrity": "sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.25.9" }, @@ -2699,6 +2640,7 @@ "integrity": "sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -2716,6 +2658,7 @@ "integrity": "sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -2733,6 +2676,7 @@ "integrity": "sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.25.9", "@babel/helper-plugin-utils": "^7.25.9" @@ -2745,94 +2689,81 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.25.3", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.3.tgz", - "integrity": "sha512-QsYW7UeAaXvLPX9tdVliMJE7MD7M6MLYVTovRTIwhoYQVFHR1rM4wO8wqAezYi3/BpSD+NzVCZ69R6smWiIi8g==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.26.0.tgz", + "integrity": "sha512-H84Fxq0CQJNdPFT2DrfnylZ3cf5K43rGfWK4LJGPpjKHiZlk0/RzwEus3PDDZZg+/Er7lCA03MVacueUuXdzfw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@babel/compat-data": "^7.25.2", - "@babel/helper-compilation-targets": "^7.25.2", - "@babel/helper-plugin-utils": "^7.24.8", - "@babel/helper-validator-option": "^7.24.8", - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.3", - "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.0", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.0", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.7", - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.0", + "@babel/compat-data": "^7.26.0", + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-validator-option": "^7.25.9", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.9", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.9", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.9", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.25.9", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.9", "@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.24.7", - "@babel/plugin-syntax-import-attributes": "^7.24.7", - "@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-import-assertions": "^7.26.0", + "@babel/plugin-syntax-import-attributes": "^7.26.0", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", - "@babel/plugin-transform-arrow-functions": "^7.24.7", - "@babel/plugin-transform-async-generator-functions": "^7.25.0", - "@babel/plugin-transform-async-to-generator": "^7.24.7", - "@babel/plugin-transform-block-scoped-functions": "^7.24.7", - "@babel/plugin-transform-block-scoping": "^7.25.0", - "@babel/plugin-transform-class-properties": "^7.24.7", - "@babel/plugin-transform-class-static-block": "^7.24.7", - "@babel/plugin-transform-classes": "^7.25.0", - "@babel/plugin-transform-computed-properties": "^7.24.7", - "@babel/plugin-transform-destructuring": "^7.24.8", - "@babel/plugin-transform-dotall-regex": "^7.24.7", - "@babel/plugin-transform-duplicate-keys": "^7.24.7", - "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.0", - "@babel/plugin-transform-dynamic-import": "^7.24.7", - "@babel/plugin-transform-exponentiation-operator": "^7.24.7", - "@babel/plugin-transform-export-namespace-from": "^7.24.7", - "@babel/plugin-transform-for-of": "^7.24.7", - "@babel/plugin-transform-function-name": "^7.25.1", - "@babel/plugin-transform-json-strings": "^7.24.7", - "@babel/plugin-transform-literals": "^7.25.2", - "@babel/plugin-transform-logical-assignment-operators": "^7.24.7", - "@babel/plugin-transform-member-expression-literals": "^7.24.7", - "@babel/plugin-transform-modules-amd": "^7.24.7", - "@babel/plugin-transform-modules-commonjs": "^7.24.8", - "@babel/plugin-transform-modules-systemjs": "^7.25.0", - "@babel/plugin-transform-modules-umd": "^7.24.7", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.7", - "@babel/plugin-transform-new-target": "^7.24.7", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.7", - "@babel/plugin-transform-numeric-separator": "^7.24.7", - "@babel/plugin-transform-object-rest-spread": "^7.24.7", - "@babel/plugin-transform-object-super": "^7.24.7", - "@babel/plugin-transform-optional-catch-binding": "^7.24.7", - "@babel/plugin-transform-optional-chaining": "^7.24.8", - "@babel/plugin-transform-parameters": "^7.24.7", - "@babel/plugin-transform-private-methods": "^7.24.7", - "@babel/plugin-transform-private-property-in-object": "^7.24.7", - "@babel/plugin-transform-property-literals": "^7.24.7", - "@babel/plugin-transform-regenerator": "^7.24.7", - "@babel/plugin-transform-reserved-words": "^7.24.7", - "@babel/plugin-transform-shorthand-properties": "^7.24.7", - "@babel/plugin-transform-spread": "^7.24.7", - "@babel/plugin-transform-sticky-regex": "^7.24.7", - "@babel/plugin-transform-template-literals": "^7.24.7", - "@babel/plugin-transform-typeof-symbol": "^7.24.8", - "@babel/plugin-transform-unicode-escapes": "^7.24.7", - "@babel/plugin-transform-unicode-property-regex": "^7.24.7", - "@babel/plugin-transform-unicode-regex": "^7.24.7", - "@babel/plugin-transform-unicode-sets-regex": "^7.24.7", + "@babel/plugin-transform-arrow-functions": "^7.25.9", + "@babel/plugin-transform-async-generator-functions": "^7.25.9", + "@babel/plugin-transform-async-to-generator": "^7.25.9", + "@babel/plugin-transform-block-scoped-functions": "^7.25.9", + "@babel/plugin-transform-block-scoping": "^7.25.9", + "@babel/plugin-transform-class-properties": "^7.25.9", + "@babel/plugin-transform-class-static-block": "^7.26.0", + "@babel/plugin-transform-classes": "^7.25.9", + "@babel/plugin-transform-computed-properties": "^7.25.9", + "@babel/plugin-transform-destructuring": "^7.25.9", + "@babel/plugin-transform-dotall-regex": "^7.25.9", + "@babel/plugin-transform-duplicate-keys": "^7.25.9", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.9", + "@babel/plugin-transform-dynamic-import": "^7.25.9", + "@babel/plugin-transform-exponentiation-operator": "^7.25.9", + "@babel/plugin-transform-export-namespace-from": "^7.25.9", + "@babel/plugin-transform-for-of": "^7.25.9", + "@babel/plugin-transform-function-name": "^7.25.9", + "@babel/plugin-transform-json-strings": "^7.25.9", + "@babel/plugin-transform-literals": "^7.25.9", + "@babel/plugin-transform-logical-assignment-operators": "^7.25.9", + "@babel/plugin-transform-member-expression-literals": "^7.25.9", + "@babel/plugin-transform-modules-amd": "^7.25.9", + "@babel/plugin-transform-modules-commonjs": "^7.25.9", + "@babel/plugin-transform-modules-systemjs": "^7.25.9", + "@babel/plugin-transform-modules-umd": "^7.25.9", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.25.9", + "@babel/plugin-transform-new-target": "^7.25.9", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.25.9", + "@babel/plugin-transform-numeric-separator": "^7.25.9", + "@babel/plugin-transform-object-rest-spread": "^7.25.9", + "@babel/plugin-transform-object-super": "^7.25.9", + "@babel/plugin-transform-optional-catch-binding": "^7.25.9", + "@babel/plugin-transform-optional-chaining": "^7.25.9", + "@babel/plugin-transform-parameters": "^7.25.9", + "@babel/plugin-transform-private-methods": "^7.25.9", + "@babel/plugin-transform-private-property-in-object": "^7.25.9", + "@babel/plugin-transform-property-literals": "^7.25.9", + "@babel/plugin-transform-regenerator": "^7.25.9", + "@babel/plugin-transform-regexp-modifiers": "^7.26.0", + "@babel/plugin-transform-reserved-words": "^7.25.9", + "@babel/plugin-transform-shorthand-properties": "^7.25.9", + "@babel/plugin-transform-spread": "^7.25.9", + "@babel/plugin-transform-sticky-regex": "^7.25.9", + "@babel/plugin-transform-template-literals": "^7.25.9", + "@babel/plugin-transform-typeof-symbol": "^7.25.9", + "@babel/plugin-transform-unicode-escapes": "^7.25.9", + "@babel/plugin-transform-unicode-property-regex": "^7.25.9", + "@babel/plugin-transform-unicode-regex": "^7.25.9", + "@babel/plugin-transform-unicode-sets-regex": "^7.25.9", "@babel/preset-modules": "0.1.6-no-external-plugins", "babel-plugin-polyfill-corejs2": "^0.4.10", - "babel-plugin-polyfill-corejs3": "^0.10.4", + "babel-plugin-polyfill-corejs3": "^0.10.6", "babel-plugin-polyfill-regenerator": "^0.6.1", - "core-js-compat": "^3.37.1", + "core-js-compat": "^3.38.1", "semver": "^6.3.1" }, "engines": { @@ -2848,6 +2779,7 @@ "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", "@babel/types": "^7.4.4", @@ -2858,9 +2790,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.0.tgz", - "integrity": "sha512-7dRy4DwXwtzBrPbZflqxnvfxLF8kdZXPkhymtDeFoFqE6ldzjQFgYTtYIFARcLEYDrqfBfYcZt1WqFxRoyC9Rw==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz", + "integrity": "sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==", "license": "MIT", "dependencies": { "regenerator-runtime": "^0.14.0" @@ -2884,16 +2816,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz", - "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.5.tgz", + "integrity": "sha512-rkOSPOw+AXbgtwUga3U4u8RpoK9FEFWBNAlTpcnkLFjL5CT+oyHNuUUC/xx6XefEJ16r38r8Bc/lfp6rYuHeJQ==", "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.25.9", - "@babel/generator": "^7.25.9", - "@babel/parser": "^7.25.9", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.5", + "@babel/parser": "^7.26.5", "@babel/template": "^7.25.9", - "@babel/types": "^7.25.9", + "@babel/types": "^7.26.5", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -2902,13 +2834,13 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/generator": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.2.tgz", - "integrity": "sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.5.tgz", + "integrity": "sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==", "license": "MIT", "dependencies": { - "@babel/parser": "^7.26.2", - "@babel/types": "^7.26.0", + "@babel/parser": "^7.26.5", + "@babel/types": "^7.26.5", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -2917,22 +2849,10 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/traverse/node_modules/jsesc": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/@babel/types": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz", - "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.5.tgz", + "integrity": "sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==", "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -2973,6 +2893,121 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@csstools/color-helpers": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.1.tgz", + "integrity": "sha512-MKtmkA0BX87PKaO1NFRTFH+UnkgnmySQOvNxJubsadusqPEC2aJ9MOQiMceZJJ6oitUl/i0L6u0M1IrmAOmgBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + } + }, + "node_modules/@csstools/css-calc": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.1.tgz", + "integrity": "sha512-rL7kaUnTkL9K+Cvo2pnCieqNpTKgQzy5f+N+5Iuko9HAoasP+xgprVh7KN/MaJVvVL1l0EzQq2MoqBHKSrDrag==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3" + } + }, + "node_modules/@csstools/css-color-parser": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.7.tgz", + "integrity": "sha512-nkMp2mTICw32uE5NN+EsJ4f5N+IGFeCFu4bGpiKgb2Pq/7J/MpyLBeQ5ry4KKtRFZaYs6sTmcMYrSRIyj5DFKA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/color-helpers": "^5.0.1", + "@csstools/css-calc": "^2.1.1" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.4.tgz", + "integrity": "sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.3" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.3.tgz", + "integrity": "sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/@ctrl/ngx-emoji-mart": { "version": "9.2.0", "resolved": "https://registry.npmjs.org/@ctrl/ngx-emoji-mart/-/ngx-emoji-mart-9.2.0.tgz", @@ -2986,61 +3021,31 @@ } }, "node_modules/@danielmoncada/angular-datetime-picker": { - "version": "18.1.0", - "resolved": "https://registry.npmjs.org/@danielmoncada/angular-datetime-picker/-/angular-datetime-picker-18.1.0.tgz", - "integrity": "sha512-hNp0DBFlCMIKa6yvZKocmm2ZCVzevX60z/ZIhRlNVaKwU+Wwh9B/KfvqwT03uvmZWSFQSnNUoPGBTyx0fyTayw==", + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/@danielmoncada/angular-datetime-picker/-/angular-datetime-picker-19.0.0.tgz", + "integrity": "sha512-et7y0E7Yn24ey757Txyoq0xokPOzhtqqj23fDvdBmR9oLh4w9A9dQoFA1aizpPw+7kc0dwbid+gGNZxdbrxfng==", "license": "MIT", "dependencies": { "tslib": "^2.6.2" }, "peerDependencies": { - "@angular/cdk": "^18.0.0", - "@angular/common": "^18.0.0", - "@angular/core": "^18.0.0" + "@angular/cdk": "^19.0.0", + "@angular/common": "^19.0.0", + "@angular/core": "^19.0.0" } }, "node_modules/@discoveryjs/json-ext": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.6.1.tgz", - "integrity": "sha512-boghen8F0Q8D+0/Q1/1r6DUEieUJ8w2a1gIknExMSHBsJFOr2+0KUfHiVYBvucPwl3+RU5PFBK833FjFCh3BhA==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.6.3.tgz", + "integrity": "sha512-4B4OijXeVNOPZlYA2oEwWOTkzyltLao+xbotHQeqN++Rv27Y6s818+n2Qkp8q+Fxhn0t/5lA5X1Mxktud8eayQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=14.17.0" } }, - "node_modules/@emnapi/core": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.3.1.tgz", - "integrity": "sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==", - "dev": true, - "license": "MIT", - "dependencies": { - "@emnapi/wasi-threads": "1.0.1", - "tslib": "^2.4.0" - } - }, - "node_modules/@emnapi/runtime": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz", - "integrity": "sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@emnapi/wasi-threads": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz", - "integrity": "sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@emotion/is-prop-valid": { + "node_modules/@emotion/is-prop-valid": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz", "integrity": "sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==", @@ -3068,9 +3073,9 @@ "license": "MIT" }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.0.tgz", - "integrity": "sha512-3sG8Zwa5fMcA9bgqB8AfWPQ+HFke6uD3h1s3RIwUNK8EG7a4buxvuFTs3j1IMs2NXAk9F30C/FF4vxRgQCcmoQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", + "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==", "cpu": [ "ppc64" ], @@ -3085,9 +3090,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.0.tgz", - "integrity": "sha512-+KuOHTKKyIKgEEqKbGTK8W7mPp+hKinbMBeEnNzjJGyFcWsfrXjSTNluJHCY1RqhxFurdD8uNXQDei7qDlR6+g==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz", + "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==", "cpu": [ "arm" ], @@ -3102,9 +3107,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.0.tgz", - "integrity": "sha512-EuHFUYkAVfU4qBdyivULuu03FhJO4IJN9PGuABGrFy4vUuzk91P2d+npxHcFdpUnfYKy0PuV+n6bKIpHOB3prQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz", + "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==", "cpu": [ "arm64" ], @@ -3119,9 +3124,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.0.tgz", - "integrity": "sha512-WRrmKidLoKDl56LsbBMhzTTBxrsVwTKdNbKDalbEZr0tcsBgCLbEtoNthOW6PX942YiYq8HzEnb4yWQMLQuipQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz", + "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==", "cpu": [ "x64" ], @@ -3136,9 +3141,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.0.tgz", - "integrity": "sha512-YLntie/IdS31H54Ogdn+v50NuoWF5BDkEUFpiOChVa9UnKpftgwzZRrI4J132ETIi+D8n6xh9IviFV3eXdxfow==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz", + "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==", "cpu": [ "arm64" ], @@ -3153,9 +3158,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.0.tgz", - "integrity": "sha512-IMQ6eme4AfznElesHUPDZ+teuGwoRmVuuixu7sv92ZkdQcPbsNHzutd+rAfaBKo8YK3IrBEi9SLLKWJdEvJniQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz", + "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==", "cpu": [ "x64" ], @@ -3170,9 +3175,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.0.tgz", - "integrity": "sha512-0muYWCng5vqaxobq6LB3YNtevDFSAZGlgtLoAc81PjUfiFz36n4KMpwhtAd4he8ToSI3TGyuhyx5xmiWNYZFyw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz", + "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==", "cpu": [ "arm64" ], @@ -3187,9 +3192,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.0.tgz", - "integrity": "sha512-XKDVu8IsD0/q3foBzsXGt/KjD/yTKBCIwOHE1XwiXmrRwrX6Hbnd5Eqn/WvDekddK21tfszBSrE/WMaZh+1buQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz", + "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==", "cpu": [ "x64" ], @@ -3204,9 +3209,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.0.tgz", - "integrity": "sha512-SEELSTEtOFu5LPykzA395Mc+54RMg1EUgXP+iw2SJ72+ooMwVsgfuwXo5Fn0wXNgWZsTVHwY2cg4Vi/bOD88qw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz", + "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==", "cpu": [ "arm" ], @@ -3221,9 +3226,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.0.tgz", - "integrity": "sha512-j1t5iG8jE7BhonbsEg5d9qOYcVZv/Rv6tghaXM/Ug9xahM0nX/H2gfu6X6z11QRTMT6+aywOMA8TDkhPo8aCGw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz", + "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==", "cpu": [ "arm64" ], @@ -3238,9 +3243,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.0.tgz", - "integrity": "sha512-P7O5Tkh2NbgIm2R6x1zGJJsnacDzTFcRWZyTTMgFdVit6E98LTxO+v8LCCLWRvPrjdzXHx9FEOA8oAZPyApWUA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz", + "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==", "cpu": [ "ia32" ], @@ -3255,9 +3260,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.0.tgz", - "integrity": "sha512-InQwepswq6urikQiIC/kkx412fqUZudBO4SYKu0N+tGhXRWUqAx+Q+341tFV6QdBifpjYgUndV1hhMq3WeJi7A==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz", + "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==", "cpu": [ "loong64" ], @@ -3272,9 +3277,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.0.tgz", - "integrity": "sha512-J9rflLtqdYrxHv2FqXE2i1ELgNjT+JFURt/uDMoPQLcjWQA5wDKgQA4t/dTqGa88ZVECKaD0TctwsUfHbVoi4w==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz", + "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==", "cpu": [ "mips64el" ], @@ -3289,9 +3294,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.0.tgz", - "integrity": "sha512-cShCXtEOVc5GxU0fM+dsFD10qZ5UpcQ8AM22bYj0u/yaAykWnqXJDpd77ublcX6vdDsWLuweeuSNZk4yUxZwtw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz", + "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==", "cpu": [ "ppc64" ], @@ -3306,9 +3311,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.0.tgz", - "integrity": "sha512-HEtaN7Y5UB4tZPeQmgz/UhzoEyYftbMXrBCUjINGjh3uil+rB/QzzpMshz3cNUxqXN7Vr93zzVtpIDL99t9aRw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz", + "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==", "cpu": [ "riscv64" ], @@ -3323,9 +3328,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.0.tgz", - "integrity": "sha512-WDi3+NVAuyjg/Wxi+o5KPqRbZY0QhI9TjrEEm+8dmpY9Xir8+HE/HNx2JoLckhKbFopW0RdO2D72w8trZOV+Wg==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz", + "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==", "cpu": [ "s390x" ], @@ -3340,9 +3345,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.0.tgz", - "integrity": "sha512-a3pMQhUEJkITgAw6e0bWA+F+vFtCciMjW/LPtoj99MhVt+Mfb6bbL9hu2wmTZgNd994qTAEw+U/r6k3qHWWaOQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz", + "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==", "cpu": [ "x64" ], @@ -3356,10 +3361,27 @@ "node": ">=18" } }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz", + "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.0.tgz", - "integrity": "sha512-cRK+YDem7lFTs2Q5nEv/HHc4LnrfBCbH5+JHu6wm2eP+d8OZNoSMYgPZJq78vqQ9g+9+nMuIsAO7skzphRXHyw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz", + "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==", "cpu": [ "x64" ], @@ -3374,9 +3396,9 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.0.tgz", - "integrity": "sha512-suXjq53gERueVWu0OKxzWqk7NxiUWSUlrxoZK7usiF50C6ipColGR5qie2496iKGYNLhDZkPxBI3erbnYkU0rQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz", + "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==", "cpu": [ "arm64" ], @@ -3391,9 +3413,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.0.tgz", - "integrity": "sha512-6p3nHpby0DM/v15IFKMjAaayFhqnXV52aEmv1whZHX56pdkK+MEaLoQWj+H42ssFarP1PcomVhbsR4pkz09qBg==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz", + "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==", "cpu": [ "x64" ], @@ -3408,9 +3430,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.0.tgz", - "integrity": "sha512-BFelBGfrBwk6LVrmFzCq1u1dZbG4zy/Kp93w2+y83Q5UGYF1d8sCzeLI9NXjKyujjBBniQa8R8PzLFAUrSM9OA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz", + "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==", "cpu": [ "x64" ], @@ -3425,9 +3447,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.0.tgz", - "integrity": "sha512-lY6AC8p4Cnb7xYHuIxQ6iYPe6MfO2CC43XXKo9nBXDb35krYt7KGhQnOkRGar5psxYkircpCqfbNDB4uJbS2jQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz", + "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==", "cpu": [ "arm64" ], @@ -3442,9 +3464,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.0.tgz", - "integrity": "sha512-7L1bHlOTcO4ByvI7OXVI5pNN6HSu6pUQq9yodga8izeuB1KcT2UkHaH6118QJwopExPn0rMHIseCTx1CRo/uNA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz", + "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==", "cpu": [ "ia32" ], @@ -3459,9 +3481,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.0.tgz", - "integrity": "sha512-Arm+WgUFLUATuoxCJcahGuk6Yj9Pzxd6l11Zb/2aAuv5kWWvvfhLFo2fni4uSK5vzlUdCGZ/BdV5tH8klj8p8g==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz", + "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==", "cpu": [ "x64" ], @@ -3505,13 +3527,13 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.0.tgz", - "integrity": "sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==", + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.1.tgz", + "integrity": "sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@eslint/object-schema": "^2.1.4", + "@eslint/object-schema": "^2.1.5", "debug": "^4.3.1", "minimatch": "^3.1.2" }, @@ -3544,11 +3566,14 @@ } }, "node_modules/@eslint/core": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.0.tgz", - "integrity": "sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz", + "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==", "dev": true, "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } @@ -3649,9 +3674,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.17.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.17.0.tgz", - "integrity": "sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==", + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.18.0.tgz", + "integrity": "sha512-fK6L7rxcq6/z+AaQMtiFTkvbHkBLNlwyRxHpKawP0x3u9+NC6MQTnFW+AdpwC6gfHTW0051cokQgtTN2FqlxQA==", "dev": true, "license": "MIT", "engines": { @@ -3659,9 +3684,9 @@ } }, "node_modules/@eslint/object-schema": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz", - "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.5.tgz", + "integrity": "sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==", "dev": true, "license": "Apache-2.0", "engines": { @@ -3669,12 +3694,13 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.3.tgz", - "integrity": "sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==", + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.5.tgz", + "integrity": "sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==", "dev": true, "license": "Apache-2.0", "dependencies": { + "@eslint/core": "^0.10.0", "levn": "^0.4.1" }, "engines": { @@ -3691,16 +3717,16 @@ } }, "node_modules/@fortawesome/angular-fontawesome": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.15.0.tgz", - "integrity": "sha512-oxmJDYGNSym5ycFR0LX4ZOPAU+wWmMAznYpkm5DNAtWWkhMLcrZl15eZQmVIEE+qruQ7JiVrg3tpo8bEkFlDgw==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-1.0.0.tgz", + "integrity": "sha512-EC2fYuXIuw2ld1kzJi+zysWus6OeGGfLQtbh0hW9zyyq5aBo8ZJkcJKBsVQ8E6Mg7nHyTWaXn+sdcXTPDWz+UQ==", "license": "MIT", "dependencies": { - "@fortawesome/fontawesome-svg-core": "^6.5.2", - "tslib": "^2.6.2" + "@fortawesome/fontawesome-svg-core": "^6.7.1", + "tslib": "^2.8.1" }, "peerDependencies": { - "@angular/core": "^18.0.0" + "@angular/core": "^19.0.0" } }, "node_modules/@fortawesome/fontawesome-common-types": { @@ -3824,51 +3850,54 @@ } }, "node_modules/@inquirer/checkbox": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-2.5.0.tgz", - "integrity": "sha512-sMgdETOfi2dUHT8r7TT1BTKOwNvdDGFDXYWtQ2J69SvlYNntk9I/gJe7r5yvMwwsuKnYbuRs3pNhx4tgNck5aA==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-4.0.6.tgz", + "integrity": "sha512-PgP35JfmGjHU0LSXOyRew0zHuA9N6OJwOlos1fZ20b7j8ISeAdib3L+n0jIxBtX958UeEpte6xhG/gxJ5iUqMw==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.1.0", - "@inquirer/figures": "^1.0.5", - "@inquirer/type": "^1.5.3", + "@inquirer/core": "^10.1.4", + "@inquirer/figures": "^1.0.9", + "@inquirer/type": "^3.0.2", "ansi-escapes": "^4.3.2", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/confirm": { - "version": "3.1.22", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-3.1.22.tgz", - "integrity": "sha512-gsAKIOWBm2Q87CDfs9fEo7wJT3fwWIJfnDGMn9Qy74gBnNFOACDNfhUzovubbJjWnKLGBln7/NcSmZwj5DuEXg==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.1.1.tgz", + "integrity": "sha512-vVLSbGci+IKQvDOtzpPTCOiEJCNidHcAq9JYVoWTW0svb5FiwSLotkM+JXNXejfjnzVYV9n0DTBythl9+XgTxg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.0.10", - "@inquirer/type": "^1.5.2" + "@inquirer/core": "^10.1.2", + "@inquirer/type": "^3.0.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/core": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-9.2.1.tgz", - "integrity": "sha512-F2VBt7W/mwqEU4bL0RnHNZmC/OxzNx9cOYxHqnXX3MP6ruYvZUZAW9imgN9+h/uBT/oP8Gh888J2OZSbjSeWcg==", + "version": "10.1.4", + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.1.4.tgz", + "integrity": "sha512-5y4/PUJVnRb4bwWY67KLdebWOhOc7xj5IP2J80oWXa64mVag24rwQ1VAdnj7/eDY/odhguW0zQ1Mp1pj6fO/2w==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/figures": "^1.0.6", - "@inquirer/type": "^2.0.0", - "@types/mute-stream": "^0.0.4", - "@types/node": "^22.5.5", - "@types/wrap-ansi": "^3.0.0", + "@inquirer/figures": "^1.0.9", + "@inquirer/type": "^3.0.2", "ansi-escapes": "^4.3.2", "cli-width": "^4.1.0", - "mute-stream": "^1.0.0", + "mute-stream": "^2.0.0", "signal-exit": "^4.1.0", "strip-ansi": "^6.0.1", "wrap-ansi": "^6.2.0", @@ -3878,53 +3907,46 @@ "node": ">=18" } }, - "node_modules/@inquirer/core/node_modules/@inquirer/type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-2.0.0.tgz", - "integrity": "sha512-XvJRx+2KR3YXyYtPUUy+qd9i7p+GO9Ko6VIIpWlBrpWwXDv8WLFeHTxz35CfQFUiBMLXlGHhGzys7lqit9gWag==", - "dev": true, - "license": "MIT", - "dependencies": { - "mute-stream": "^1.0.0" - }, - "engines": { - "node": ">=18" - } - }, "node_modules/@inquirer/editor": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-2.2.0.tgz", - "integrity": "sha512-9KHOpJ+dIL5SZli8lJ6xdaYLPPzB8xB9GZItg39MBybzhxA16vxmszmQFrRwbOA918WA2rvu8xhDEg/p6LXKbw==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-4.2.3.tgz", + "integrity": "sha512-S9KnIOJuTZpb9upeRSBBhoDZv7aSV3pG9TECrBj0f+ZsFwccz886hzKBrChGrXMJwd4NKY+pOA9Vy72uqnd6Eg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.1.0", - "@inquirer/type": "^1.5.3", + "@inquirer/core": "^10.1.4", + "@inquirer/type": "^3.0.2", "external-editor": "^3.1.0" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/expand": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-2.3.0.tgz", - "integrity": "sha512-qnJsUcOGCSG1e5DTOErmv2BPQqrtT6uzqn1vI/aYGiPKq+FgslGZmtdnXbhuI7IlT7OByDoEEqdnhUnVR2hhLw==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-4.0.6.tgz", + "integrity": "sha512-TRTfi1mv1GeIZGyi9PQmvAaH65ZlG4/FACq6wSzs7Vvf1z5dnNWsAAXBjWMHt76l+1hUY8teIqJFrWBk5N6gsg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.1.0", - "@inquirer/type": "^1.5.3", + "@inquirer/core": "^10.1.4", + "@inquirer/type": "^3.0.2", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/figures": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.8.tgz", - "integrity": "sha512-tKd+jsmhq21AP1LhexC0pPwsCxEhGgAkg28byjJAd+xhmIs8LUX8JbUc3vBf3PhLxWiB5EvyBE5X7JSPAqMAqg==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.9.tgz", + "integrity": "sha512-BXvGj0ehzrngHTPTDqUoDT3NXL8U0RxUk2zJm2A66RhCEIWdtU1v6GuUqNAgArW4PQ9CinqIWyHdQgdwOj06zQ==", "dev": true, "license": "MIT", "engines": { @@ -3932,129 +3954,150 @@ } }, "node_modules/@inquirer/input": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-2.3.0.tgz", - "integrity": "sha512-XfnpCStx2xgh1LIRqPXrTNEEByqQWoxsWYzNRSEUxJ5c6EQlhMogJ3vHKu8aXuTacebtaZzMAHwEL0kAflKOBw==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-4.1.3.tgz", + "integrity": "sha512-zeo++6f7hxaEe7OjtMzdGZPHiawsfmCZxWB9X1NpmYgbeoyerIbWemvlBxxl+sQIlHC0WuSAG19ibMq3gbhaqQ==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.1.0", - "@inquirer/type": "^1.5.3" + "@inquirer/core": "^10.1.4", + "@inquirer/type": "^3.0.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/number": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-1.1.0.tgz", - "integrity": "sha512-ilUnia/GZUtfSZy3YEErXLJ2Sljo/mf9fiKc08n18DdwdmDbOzRcTv65H1jjDvlsAuvdFXf4Sa/aL7iw/NanVA==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-3.0.6.tgz", + "integrity": "sha512-xO07lftUHk1rs1gR0KbqB+LJPhkUNkyzV/KhH+937hdkMazmAYHLm1OIrNKpPelppeV1FgWrgFDjdUD8mM+XUg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.1.0", - "@inquirer/type": "^1.5.3" + "@inquirer/core": "^10.1.4", + "@inquirer/type": "^3.0.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/password": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-2.2.0.tgz", - "integrity": "sha512-5otqIpgsPYIshqhgtEwSspBQE40etouR8VIxzpJkv9i0dVHIpyhiivbkH9/dGiMLdyamT54YRdGJLfl8TFnLHg==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-4.0.6.tgz", + "integrity": "sha512-QLF0HmMpHZPPMp10WGXh6F+ZPvzWE7LX6rNoccdktv/Rov0B+0f+eyXkAcgqy5cH9V+WSpbLxu2lo3ysEVK91w==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.1.0", - "@inquirer/type": "^1.5.3", + "@inquirer/core": "^10.1.4", + "@inquirer/type": "^3.0.2", "ansi-escapes": "^4.3.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/prompts": { - "version": "5.3.8", - "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-5.3.8.tgz", - "integrity": "sha512-b2BudQY/Si4Y2a0PdZZL6BeJtl8llgeZa7U2j47aaJSCeAl1e4UI7y8a9bSkO3o/ZbZrgT5muy/34JbsjfIWxA==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-7.2.1.tgz", + "integrity": "sha512-v2JSGri6/HXSfoGIwuKEn8sNCQK6nsB2BNpy2lSX6QH9bsECrMv93QHnj5+f+1ZWpF/VNioIV2B/PDox8EvGuQ==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/checkbox": "^2.4.7", - "@inquirer/confirm": "^3.1.22", - "@inquirer/editor": "^2.1.22", - "@inquirer/expand": "^2.1.22", - "@inquirer/input": "^2.2.9", - "@inquirer/number": "^1.0.10", - "@inquirer/password": "^2.1.22", - "@inquirer/rawlist": "^2.2.4", - "@inquirer/search": "^1.0.7", - "@inquirer/select": "^2.4.7" + "@inquirer/checkbox": "^4.0.4", + "@inquirer/confirm": "^5.1.1", + "@inquirer/editor": "^4.2.1", + "@inquirer/expand": "^4.0.4", + "@inquirer/input": "^4.1.1", + "@inquirer/number": "^3.0.4", + "@inquirer/password": "^4.0.4", + "@inquirer/rawlist": "^4.0.4", + "@inquirer/search": "^3.0.4", + "@inquirer/select": "^4.0.4" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/rawlist": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-2.3.0.tgz", - "integrity": "sha512-zzfNuINhFF7OLAtGHfhwOW2TlYJyli7lOUoJUXw/uyklcwalV6WRXBXtFIicN8rTRK1XTiPWB4UY+YuW8dsnLQ==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-4.0.6.tgz", + "integrity": "sha512-QoE4s1SsIPx27FO4L1b1mUjVcoHm1pWE/oCmm4z/Hl+V1Aw5IXl8FYYzGmfXaBT0l/sWr49XmNSiq7kg3Kd/Lg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.1.0", - "@inquirer/type": "^1.5.3", + "@inquirer/core": "^10.1.4", + "@inquirer/type": "^3.0.2", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/search": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-1.1.0.tgz", - "integrity": "sha512-h+/5LSj51dx7hp5xOn4QFnUaKeARwUCLs6mIhtkJ0JYPBLmEYjdHSYh7I6GrLg9LwpJ3xeX0FZgAG1q0QdCpVQ==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-3.0.6.tgz", + "integrity": "sha512-eFZ2hiAq0bZcFPuFFBmZEtXU1EarHLigE+ENCtpO+37NHCl4+Yokq1P/d09kUblObaikwfo97w+0FtG/EXl5Ng==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.1.0", - "@inquirer/figures": "^1.0.5", - "@inquirer/type": "^1.5.3", + "@inquirer/core": "^10.1.4", + "@inquirer/figures": "^1.0.9", + "@inquirer/type": "^3.0.2", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/select": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-2.5.0.tgz", - "integrity": "sha512-YmDobTItPP3WcEI86GvPo+T2sRHkxxOq/kXmsBjHS5BVXUgvgZ5AfJjkvQvZr03T81NnI3KrrRuMzeuYUQRFOA==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-4.0.6.tgz", + "integrity": "sha512-yANzIiNZ8fhMm4NORm+a74+KFYHmf7BZphSOBovIzYPVLquseTGEkU5l2UTnBOf5k0VLmTgPighNDLE9QtbViQ==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^9.1.0", - "@inquirer/figures": "^1.0.5", - "@inquirer/type": "^1.5.3", + "@inquirer/core": "^10.1.4", + "@inquirer/figures": "^1.0.9", + "@inquirer/type": "^3.0.2", "ansi-escapes": "^4.3.2", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/type": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-1.5.5.tgz", - "integrity": "sha512-MzICLu4yS7V8AA61sANROZ9vT1H3ooca5dSmI1FjZkzq7o/koMsRfQSzRtFo+F3Ao4Sf1C0bpLKejpKB/+j6MA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-3.0.2.tgz", + "integrity": "sha512-ZhQ4TvhwHZF+lGhQ2O/rsjo80XoZR5/5qhOY3t6FJuX5XBg5Be8YzYTvaUGJnc12AUGI2nr4QSUE4PhKSigx7g==", "dev": true, "license": "MIT", - "dependencies": { - "mute-stream": "^1.0.0" - }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@interactjs/types": { @@ -4166,6 +4209,19 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -4366,6 +4422,41 @@ } } }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/@jest/core/node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -4640,9 +4731,9 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", "license": "MIT", "dependencies": { "@jridgewell/set-array": "^1.2.1", @@ -4677,6 +4768,7 @@ "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25" @@ -4704,6 +4796,7 @@ "integrity": "sha512-q6XAnWQDIMA3+FTiOYajoYqySkO+JSat0ytXGSuRdq9uXE7o92gzuQwQM14xaCRlBLGq3v5miDGC4vkVTn54xA==", "dev": true, "license": "Apache-2.0", + "peer": true, "engines": { "node": ">=10.0" }, @@ -4716,11 +4809,12 @@ } }, "node_modules/@jsonjoy.com/json-pack": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.1.0.tgz", - "integrity": "sha512-zlQONA+msXPPwHWZMKFVS78ewFczIll5lXiVPwFPCZUsrOKdxc2AvxU1HoNBmMRhqDZUR9HkC3UOm+6pME6Xsg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.1.1.tgz", + "integrity": "sha512-osjeBqMJ2lb/j/M8NCPjs1ylqWIcTRTycIhVB5pt6LgzgeRSb0YRZ7j9RfA8wIUrsr/medIuhVyonXRZWLyfdw==", "dev": true, "license": "Apache-2.0", + "peer": true, "dependencies": { "@jsonjoy.com/base64": "^1.1.1", "@jsonjoy.com/util": "^1.1.2", @@ -4744,6 +4838,7 @@ "integrity": "sha512-ojoNsrIuPI9g6o8UxhraZQSyF2ByJanAY4cTFbc8Mf2AXEF4aQRGY1dJxyJpuyav8r9FGflEt/Ff3u5Nt6YMPA==", "dev": true, "license": "Apache-2.0", + "peer": true, "engines": { "node": ">=10.0" }, @@ -4760,28 +4855,52 @@ "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@listr2/prompt-adapter-inquirer": { - "version": "2.0.15", - "resolved": "https://registry.npmjs.org/@listr2/prompt-adapter-inquirer/-/prompt-adapter-inquirer-2.0.15.tgz", - "integrity": "sha512-MZrGem/Ujjd4cPTLYDfCZK2iKKeiO/8OX13S6jqxldLs0Prf2aGqVlJ77nMBqMv7fzqgXEgjrNHLXcKR8l9lOg==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/@listr2/prompt-adapter-inquirer/-/prompt-adapter-inquirer-2.0.18.tgz", + "integrity": "sha512-0hz44rAcrphyXcA8IS7EJ2SCoaBZD2u5goE8S/e+q/DL+dOGpqpcLidVOFeLG3VgML62SXmfRLAhWt0zL1oW4Q==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/type": "^1.5.1" + "@inquirer/type": "^1.5.5" }, "engines": { "node": ">=18.0.0" }, "peerDependencies": { - "@inquirer/prompts": ">= 3 < 6" + "@inquirer/prompts": ">= 3 < 8" + } + }, + "node_modules/@listr2/prompt-adapter-inquirer/node_modules/@inquirer/type": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-1.5.5.tgz", + "integrity": "sha512-MzICLu4yS7V8AA61sANROZ9vT1H3ooca5dSmI1FjZkzq7o/koMsRfQSzRtFo+F3Ao4Sf1C0bpLKejpKB/+j6MA==", + "dev": true, + "license": "MIT", + "dependencies": { + "mute-stream": "^1.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@listr2/prompt-adapter-inquirer/node_modules/mute-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", + "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/@lmdb/lmdb-darwin-arm64": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-3.0.13.tgz", - "integrity": "sha512-uiKPB0Fv6WEEOZjruu9a6wnW/8jrjzlZbxXscMB8kuCJ1k6kHpcBnuvaAWcqhbI7rqX5GKziwWEdD+wi2gNLfA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-3.2.2.tgz", + "integrity": "sha512-WBSJT9Z7DTol5viq+DZD2TapeWOw7mlwXxiSBHgAzqVwsaVb0h/ekMD9iu/jDD8MUA20tO9N0WEdnT06fsUp+g==", "cpu": [ "arm64" ], @@ -4793,9 +4912,9 @@ ] }, "node_modules/@lmdb/lmdb-darwin-x64": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-3.0.13.tgz", - "integrity": "sha512-bEVIIfK5mSQoG1R19qA+fJOvCB+0wVGGnXHT3smchBVahYBdlPn2OsZZKzlHWfb1E+PhLBmYfqB5zQXFP7hJig==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-3.2.2.tgz", + "integrity": "sha512-4S13kUtR7c/j/MzkTIBJCXv52hQ41LG2ukeaqw4Eng9K0pNKLFjo1sDSz96/yKhwykxrWDb13ddJ/ZqD3rAhUA==", "cpu": [ "x64" ], @@ -4807,9 +4926,9 @@ ] }, "node_modules/@lmdb/lmdb-linux-arm": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-3.0.13.tgz", - "integrity": "sha512-Yml1KlMzOnXj/tnW7yX8U78iAzTk39aILYvCPbqeewAq1kSzl+w59k/fiVkTBfvDi/oW/5YRxL+Fq+Y1Fr1r2Q==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-3.2.2.tgz", + "integrity": "sha512-uW31JmfuPAaLUYW7NsEU8gzwgDAzpGPwjvkxnKlcWd8iDutoPKDJi8Wk9lFmPEZRxVSB0j1/wDQ7N2qliR9UFA==", "cpu": [ "arm" ], @@ -4821,9 +4940,9 @@ ] }, "node_modules/@lmdb/lmdb-linux-arm64": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-3.0.13.tgz", - "integrity": "sha512-afbVrsMgZ9dUTNUchFpj5VkmJRxvht/u335jUJ7o23YTbNbnpmXif3VKQGCtnjSh+CZaqm6N3CPG8KO3zwyZ1Q==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-3.2.2.tgz", + "integrity": "sha512-4hdgZtWI1idQlWRp+eleWXD9KLvObgboRaVoBj2POdPEYvsKANllvMW0El8tEQwtw74yB9NT6P8ENBB5UJf5+g==", "cpu": [ "arm64" ], @@ -4835,9 +4954,9 @@ ] }, "node_modules/@lmdb/lmdb-linux-x64": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-3.0.13.tgz", - "integrity": "sha512-vOtxu0xC0SLdQ2WRXg8Qgd8T32ak4SPqk5zjItRszrJk2BdeXqfGxBJbP7o4aOvSPSmSSv46Lr1EP4HXU8v7Kg==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-3.2.2.tgz", + "integrity": "sha512-A0zjf4a2vM4B4GAx78ncuOTZ8Ka1DbTaG1Axf1e00Sa7f5coqlWiLg1PX7Gxvyibc2YqtqB+8tg1KKrE8guZVw==", "cpu": [ "x64" ], @@ -4849,9 +4968,9 @@ ] }, "node_modules/@lmdb/lmdb-win32-x64": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-3.0.13.tgz", - "integrity": "sha512-UCrMJQY/gJnOl3XgbWRZZUvGGBuKy6i0YNSptgMzHBjs+QYDYR1Mt/RLTOPy4fzzves65O1EDmlL//OzEqoLlA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-3.2.2.tgz", + "integrity": "sha512-Y0qoSCAja+xZE7QQ0LCHoYAuyI1n9ZqukQJa8lv9X3yCvWahFF7OYHAgVH1ejp43XWstj3U89/PAAzcowgF/uQ==", "cpu": [ "x64" ], @@ -5179,70 +5298,364 @@ "node": ">= 10" } }, - "node_modules/@napi-rs/wasm-runtime": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.4.tgz", - "integrity": "sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==", + "node_modules/@napi-rs/nice": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice/-/nice-1.0.1.tgz", + "integrity": "sha512-zM0mVWSXE0a0h9aKACLwKmD6nHcRiKrPpCfvaKqG1CqDEyjEawId0ocXxVzPMCAm6kkWr2P025msfxXEnt8UGQ==", "dev": true, "license": "MIT", - "dependencies": { - "@emnapi/core": "^1.1.0", - "@emnapi/runtime": "^1.1.0", - "@tybys/wasm-util": "^0.9.0" - } - }, - "node_modules/@ng-bootstrap/ng-bootstrap": { - "version": "17.0.1", - "resolved": "https://registry.npmjs.org/@ng-bootstrap/ng-bootstrap/-/ng-bootstrap-17.0.1.tgz", - "integrity": "sha512-utbm8OXIoqVVYGVzQkOS773ymbjc+UMkXv8lyi7hTqLhCQs0rZ0yA74peqVZRuOGXLHgcSTA7fnJhA80iQOblw==", - "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" + "optional": true, + "engines": { + "node": ">= 10" }, - "peerDependencies": { - "@angular/common": "^18.0.0", - "@angular/core": "^18.0.0", - "@angular/forms": "^18.0.0", - "@angular/localize": "^18.0.0", - "@popperjs/core": "^2.11.8", - "rxjs": "^6.5.3 || ^7.4.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + }, + "optionalDependencies": { + "@napi-rs/nice-android-arm-eabi": "1.0.1", + "@napi-rs/nice-android-arm64": "1.0.1", + "@napi-rs/nice-darwin-arm64": "1.0.1", + "@napi-rs/nice-darwin-x64": "1.0.1", + "@napi-rs/nice-freebsd-x64": "1.0.1", + "@napi-rs/nice-linux-arm-gnueabihf": "1.0.1", + "@napi-rs/nice-linux-arm64-gnu": "1.0.1", + "@napi-rs/nice-linux-arm64-musl": "1.0.1", + "@napi-rs/nice-linux-ppc64-gnu": "1.0.1", + "@napi-rs/nice-linux-riscv64-gnu": "1.0.1", + "@napi-rs/nice-linux-s390x-gnu": "1.0.1", + "@napi-rs/nice-linux-x64-gnu": "1.0.1", + "@napi-rs/nice-linux-x64-musl": "1.0.1", + "@napi-rs/nice-win32-arm64-msvc": "1.0.1", + "@napi-rs/nice-win32-ia32-msvc": "1.0.1", + "@napi-rs/nice-win32-x64-msvc": "1.0.1" + } + }, + "node_modules/@napi-rs/nice-android-arm-eabi": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-android-arm-eabi/-/nice-android-arm-eabi-1.0.1.tgz", + "integrity": "sha512-5qpvOu5IGwDo7MEKVqqyAxF90I6aLj4n07OzpARdgDRfz8UbBztTByBp0RC59r3J1Ij8uzYi6jI7r5Lws7nn6w==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" } }, - "node_modules/@ngtools/webpack": { - "version": "18.2.12", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-18.2.12.tgz", - "integrity": "sha512-FFJAwtWbtpncMOVNuULPBwFJB7GSjiUwO93eGTzRp8O4EPQ8lCQeFbezQm/NP34+T0+GBLGzPSuQT+muob8YKw==", + "node_modules/@napi-rs/nice-android-arm64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-android-arm64/-/nice-android-arm64-1.0.1.tgz", + "integrity": "sha512-GqvXL0P8fZ+mQqG1g0o4AO9hJjQaeYG84FRfZaYjyJtZZZcMjXW5TwkL8Y8UApheJgyE13TQ4YNUssQaTgTyvA==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "@angular/compiler-cli": "^18.0.0", - "typescript": ">=5.4 <5.6", - "webpack": "^5.54.0" + "node": ">= 10" } }, - "node_modules/@ngx-translate/core": { - "version": "16.0.4", - "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-16.0.4.tgz", - "integrity": "sha512-s8llTL2SJvROhqttxvEs7Cg+6qSf4kvZPFYO+cTOY1d8DWTjlutRkWAleZcPPoeX927Dm7ALfL07G7oYDJ7z6w==", + "node_modules/@napi-rs/nice-darwin-arm64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-darwin-arm64/-/nice-darwin-arm64-1.0.1.tgz", + "integrity": "sha512-91k3HEqUl2fsrz/sKkuEkscj6EAj3/eZNCLqzD2AA0TtVbkQi8nqxZCZDMkfklULmxLkMxuUdKe7RvG/T6s2AA==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" - }, - "peerDependencies": { - "@angular/common": ">=16", - "@angular/core": ">=16" + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" } }, - "node_modules/@ngx-translate/http-loader": { - "version": "16.0.1", - "resolved": "https://registry.npmjs.org/@ngx-translate/http-loader/-/http-loader-16.0.1.tgz", - "integrity": "sha512-xJEOUpvs6Zfc8G4cmQmegFOEpfYSoplTHHoisPNrATXjRBjpaKsBaPOXlZsuFUW2XV00s16gIyI4+9z1XkO5bw==", - "license": "MIT", + "node_modules/@napi-rs/nice-darwin-x64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-darwin-x64/-/nice-darwin-x64-1.0.1.tgz", + "integrity": "sha512-jXnMleYSIR/+TAN/p5u+NkCA7yidgswx5ftqzXdD5wgy/hNR92oerTXHc0jrlBisbd7DpzoaGY4cFD7Sm5GlgQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-freebsd-x64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-freebsd-x64/-/nice-freebsd-x64-1.0.1.tgz", + "integrity": "sha512-j+iJ/ezONXRQsVIB/FJfwjeQXX7A2tf3gEXs4WUGFrJjpe/z2KB7sOv6zpkm08PofF36C9S7wTNuzHZ/Iiccfw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-linux-arm-gnueabihf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-linux-arm-gnueabihf/-/nice-linux-arm-gnueabihf-1.0.1.tgz", + "integrity": "sha512-G8RgJ8FYXYkkSGQwywAUh84m946UTn6l03/vmEXBYNJxQJcD+I3B3k5jmjFG/OPiU8DfvxutOP8bi+F89MCV7Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-linux-arm64-gnu": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-linux-arm64-gnu/-/nice-linux-arm64-gnu-1.0.1.tgz", + "integrity": "sha512-IMDak59/W5JSab1oZvmNbrms3mHqcreaCeClUjwlwDr0m3BoR09ZiN8cKFBzuSlXgRdZ4PNqCYNeGQv7YMTjuA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-linux-arm64-musl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-linux-arm64-musl/-/nice-linux-arm64-musl-1.0.1.tgz", + "integrity": "sha512-wG8fa2VKuWM4CfjOjjRX9YLIbysSVV1S3Kgm2Fnc67ap/soHBeYZa6AGMeR5BJAylYRjnoVOzV19Cmkco3QEPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-linux-ppc64-gnu": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-linux-ppc64-gnu/-/nice-linux-ppc64-gnu-1.0.1.tgz", + "integrity": "sha512-lxQ9WrBf0IlNTCA9oS2jg/iAjQyTI6JHzABV664LLrLA/SIdD+I1i3Mjf7TsnoUbgopBcCuDztVLfJ0q9ubf6Q==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-linux-riscv64-gnu": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-linux-riscv64-gnu/-/nice-linux-riscv64-gnu-1.0.1.tgz", + "integrity": "sha512-3xs69dO8WSWBb13KBVex+yvxmUeEsdWexxibqskzoKaWx9AIqkMbWmE2npkazJoopPKX2ULKd8Fm9veEn0g4Ig==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-linux-s390x-gnu": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-linux-s390x-gnu/-/nice-linux-s390x-gnu-1.0.1.tgz", + "integrity": "sha512-lMFI3i9rlW7hgToyAzTaEybQYGbQHDrpRkg+1gJWEpH0PLAQoZ8jiY0IzakLfNWnVda1eTYYlxxFYzW8Rqczkg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-linux-x64-gnu": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-linux-x64-gnu/-/nice-linux-x64-gnu-1.0.1.tgz", + "integrity": "sha512-XQAJs7DRN2GpLN6Fb+ZdGFeYZDdGl2Fn3TmFlqEL5JorgWKrQGRUrpGKbgZ25UeZPILuTKJ+OowG2avN8mThBA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-linux-x64-musl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-linux-x64-musl/-/nice-linux-x64-musl-1.0.1.tgz", + "integrity": "sha512-/rodHpRSgiI9o1faq9SZOp/o2QkKQg7T+DK0R5AkbnI/YxvAIEHf2cngjYzLMQSQgUhxym+LFr+UGZx4vK4QdQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-win32-arm64-msvc": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-win32-arm64-msvc/-/nice-win32-arm64-msvc-1.0.1.tgz", + "integrity": "sha512-rEcz9vZymaCB3OqEXoHnp9YViLct8ugF+6uO5McifTedjq4QMQs3DHz35xBEGhH3gJWEsXMUbzazkz5KNM5YUg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-win32-ia32-msvc": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-win32-ia32-msvc/-/nice-win32-ia32-msvc-1.0.1.tgz", + "integrity": "sha512-t7eBAyPUrWL8su3gDxw9xxxqNwZzAqKo0Szv3IjVQd1GpXXVkb6vBBQUuxfIYaXMzZLwlxRQ7uzM2vdUE9ULGw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/nice-win32-x64-msvc": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-win32-x64-msvc/-/nice-win32-x64-msvc-1.0.1.tgz", + "integrity": "sha512-JlF+uDcatt3St2ntBG8H02F1mM45i5SF9W+bIKiReVE6wiy3o16oBP/yxt+RZ+N6LbCImJXJ6bXNO2kn9AXicg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@ng-bootstrap/ng-bootstrap": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@ng-bootstrap/ng-bootstrap/-/ng-bootstrap-18.0.0.tgz", + "integrity": "sha512-GeSAz4yiGq49psdte8kcf+Y562wB3jK/qKRAkh6iA32lcXmy2sfQXVAmlHdjZ3AyP+E8lf3yMwuPdSKiYcDgSg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": "^19.0.0", + "@angular/core": "^19.0.0", + "@angular/forms": "^19.0.0", + "@angular/localize": "^19.0.0", + "@popperjs/core": "^2.11.8", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@ngtools/webpack": { + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-19.1.1.tgz", + "integrity": "sha512-FKtKRiXTmfLfRFLNScyNNCQpazC9CylUFSCQmFjd02jChfC0IH2WYh4zPrWKYDbOgv2H1oerRD2fZDmFaBi5Ew==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^19.0.0", + "typescript": ">=5.5 <5.8", + "webpack": "^5.54.0" + } + }, + "node_modules/@ngx-translate/core": { + "version": "16.0.4", + "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-16.0.4.tgz", + "integrity": "sha512-s8llTL2SJvROhqttxvEs7Cg+6qSf4kvZPFYO+cTOY1d8DWTjlutRkWAleZcPPoeX927Dm7ALfL07G7oYDJ7z6w==", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": ">=16", + "@angular/core": ">=16" + } + }, + "node_modules/@ngx-translate/http-loader": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/@ngx-translate/http-loader/-/http-loader-16.0.1.tgz", + "integrity": "sha512-xJEOUpvs6Zfc8G4cmQmegFOEpfYSoplTHHoisPNrATXjRBjpaKsBaPOXlZsuFUW2XV00s16gIyI4+9z1XkO5bw==", + "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, @@ -5287,9 +5700,9 @@ } }, "node_modules/@npmcli/agent": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", - "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-3.0.0.tgz", + "integrity": "sha512-S79NdEgDQd/NGCay6TCoVzXSj74skRZIKJcpJjC5lOq34SZzyI6MqtiiWoiVWoVrTcGjNeC4ipbh1VIHlpfF5Q==", "dev": true, "license": "ISC", "dependencies": { @@ -5300,7 +5713,7 @@ "socks-proxy-agent": "^8.0.3" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { @@ -5311,37 +5724,37 @@ "license": "ISC" }, "node_modules/@npmcli/fs": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", - "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-4.0.0.tgz", + "integrity": "sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==", "dev": true, "license": "ISC", "dependencies": { "semver": "^7.3.5" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/git": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz", - "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.1.tgz", + "integrity": "sha512-BBWMMxeQzalmKadyimwb2/VVQyJB01PH0HhVSNLHNBDZN/M/h/02P6f8fxedIiFhpMj11SO9Ep5tKTBE7zL2nw==", "dev": true, "license": "ISC", "dependencies": { - "@npmcli/promise-spawn": "^7.0.0", - "ini": "^4.1.3", + "@npmcli/promise-spawn": "^8.0.0", + "ini": "^5.0.0", "lru-cache": "^10.0.1", - "npm-pick-manifest": "^9.0.0", - "proc-log": "^4.0.0", + "npm-pick-manifest": "^10.0.0", + "proc-log": "^5.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^4.0.0" + "which": "^5.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/git/node_modules/isexe": { @@ -5362,9 +5775,9 @@ "license": "ISC" }, "node_modules/@npmcli/git/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", "dev": true, "license": "ISC", "dependencies": { @@ -5374,53 +5787,53 @@ "node-which": "bin/which.js" }, "engines": { - "node": "^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/installed-package-contents": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", - "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-3.0.0.tgz", + "integrity": "sha512-fkxoPuFGvxyrH+OQzyTkX2LUEamrF4jZSmxjAtPPHHGO0dqsQ8tTKjnIS8SAnPHdk2I03BDtSMR5K/4loKg79Q==", "dev": true, "license": "ISC", "dependencies": { - "npm-bundled": "^3.0.0", - "npm-normalize-package-bin": "^3.0.0" + "npm-bundled": "^4.0.0", + "npm-normalize-package-bin": "^4.0.0" }, "bin": { "installed-package-contents": "bin/index.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/node-gyp": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", - "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-4.0.0.tgz", + "integrity": "sha512-+t5DZ6mO/QFh78PByMq1fGSAub/agLJZDRfJRMeOSNCt8s9YVlTjmGpIPwPhvXTGUIJk+WszlT0rQa1W33yzNA==", "dev": true, "license": "ISC", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/package-json": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.1.tgz", - "integrity": "sha512-f7zYC6kQautXHvNbLEWgD/uGu1+xCn9izgqBfgItWSx22U0ZDekxN08A1vM8cTxj/cRVe0Q94Ode+tdoYmIOOQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.1.0.tgz", + "integrity": "sha512-t6G+6ZInT4X+tqj2i+wlLIeCKnKOTuz9/VFYDtj+TGTur5q7sp/OYrQA19LdBbWfXDOi0Y4jtedV6xtB8zQ9ug==", "dev": true, "license": "ISC", "dependencies": { - "@npmcli/git": "^5.0.0", + "@npmcli/git": "^6.0.0", "glob": "^10.2.2", - "hosted-git-info": "^7.0.0", - "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^6.0.0", - "proc-log": "^4.0.0", + "hosted-git-info": "^8.0.0", + "json-parse-even-better-errors": "^4.0.0", + "normalize-package-data": "^7.0.0", + "proc-log": "^5.0.0", "semver": "^7.5.3" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/package-json/node_modules/glob": { @@ -5445,16 +5858,16 @@ } }, "node_modules/@npmcli/promise-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz", - "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.2.tgz", + "integrity": "sha512-/bNJhjc+o6qL+Dwz/bqfTQClkEO5nTQ1ZEcdCkAQjhkZMHIh22LPG7fNh1enJP1NKWDqYiiABnjFCY7E0zHYtQ==", "dev": true, "license": "ISC", "dependencies": { - "which": "^4.0.0" + "which": "^5.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/promise-spawn/node_modules/isexe": { @@ -5468,9 +5881,9 @@ } }, "node_modules/@npmcli/promise-spawn/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", "dev": true, "license": "ISC", "dependencies": { @@ -5480,35 +5893,35 @@ "node-which": "bin/which.js" }, "engines": { - "node": "^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/redact": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz", - "integrity": "sha512-YgsR5jCQZhVmTJvjduTOIHph0L73pK8xwMVaDY0PatySqVM9AZj93jpoXYSJqfHFxFkN9dmqTw6OiqExsS3LPw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.0.0.tgz", + "integrity": "sha512-/1uFzjVcfzqrgCeGW7+SZ4hv0qLWmKXVzFahZGJ6QuJBj6Myt9s17+JL86i76NV9YSnJRcGXJYQbAU0rn1YTCQ==", "dev": true, "license": "ISC", "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/run-script": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz", - "integrity": "sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.0.2.tgz", + "integrity": "sha512-cJXiUlycdizQwvqE1iaAb4VRUM3RX09/8q46zjvy+ct9GhfZRWd7jXYVc1tn/CfRlGPVkX/u4sstRlepsm7hfw==", "dev": true, "license": "ISC", "dependencies": { - "@npmcli/node-gyp": "^3.0.0", - "@npmcli/package-json": "^5.0.0", - "@npmcli/promise-spawn": "^7.0.0", - "node-gyp": "^10.0.0", - "proc-log": "^4.0.0", - "which": "^4.0.0" + "@npmcli/node-gyp": "^4.0.0", + "@npmcli/package-json": "^6.0.0", + "@npmcli/promise-spawn": "^8.0.0", + "node-gyp": "^11.0.0", + "proc-log": "^5.0.0", + "which": "^5.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/run-script/node_modules/isexe": { @@ -5522,9 +5935,9 @@ } }, "node_modules/@npmcli/run-script/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", "dev": true, "license": "ISC", "dependencies": { @@ -5534,233 +5947,7 @@ "node-which": "bin/which.js" }, "engines": { - "node": "^16.13.0 || >=18.0.0" - } - }, - "node_modules/@nx/devkit": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/devkit/-/devkit-20.1.4.tgz", - "integrity": "sha512-Opz7eRPmpt3e4SGkbwZbE9Bg3MhKeivh1QTNCj4tQVAB4gucz0lW/F3mdtRDFdj6gUbqIc5rRrbO/DGlNaEzYw==", - "dev": true, - "license": "MIT", - "dependencies": { - "ejs": "^3.1.7", - "enquirer": "~2.3.6", - "ignore": "^5.0.4", - "minimatch": "9.0.3", - "semver": "^7.5.3", - "tmp": "~0.2.1", - "tslib": "^2.3.0", - "yargs-parser": "21.1.1" - }, - "peerDependencies": { - "nx": ">= 19 <= 21" - } - }, - "node_modules/@nx/devkit/node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@nx/devkit/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@nx/devkit/node_modules/tmp": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", - "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.14" - } - }, - "node_modules/@nx/nx-darwin-arm64": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-20.1.4.tgz", - "integrity": "sha512-afyDOZbIyHi6BgKk+Bb4RI1t8dZ6/oIbOY89z4mBPNNevZkbGqUfMwO2vjKnaOoThcjT93SEMJfCLGL8i857ww==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nx/nx-darwin-x64": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-20.1.4.tgz", - "integrity": "sha512-aiYklAt95aX0EinepJRryMna8K53G52ngYOFuac1G8iLlguinJvg/YgSKCf7GOAzec8b7Hm7KauPjSJE/P3/iw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nx/nx-freebsd-x64": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-20.1.4.tgz", - "integrity": "sha512-WUh4bsLK+e7wuN3lE3ZQUj+xQKdWU4P4RymutfLQQnPYiilCMtFwITcvDmazmOHFWI2vPhzSyYJRbOu+YMIR3A==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nx/nx-linux-arm-gnueabihf": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-20.1.4.tgz", - "integrity": "sha512-9vPMw5s89v3od7aw3enTWjdMSCAmQ0tIA89Uz7xbbjB2kX2mAdihSzAKd9woi/cj+ROnY+ynNXzU9UjqhfxdBg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nx/nx-linux-arm64-gnu": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-20.1.4.tgz", - "integrity": "sha512-JUE4l8utr9KmQSG9tO2Qw5R5i/bZ16s1+J5xnEar7UfcSOfOLqxGHS7HCBUZcfr46dmtv6KjIC83uHMs19AwDQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nx/nx-linux-arm64-musl": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-20.1.4.tgz", - "integrity": "sha512-EaPUDqXvnPc/ure0x7N+5lRYvk5zqOQ3LzFOTRPWdqnFXejyTkGjZEYWbLFIJTFrvyEdpfaPTHyNmCHUrEz9TQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nx/nx-linux-x64-gnu": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-20.1.4.tgz", - "integrity": "sha512-vaWV37ZayfyckVI/faWdQWIV9XQb06ZT8jHQnwgSd9tKbGz37vN30eYtgZlFL0P4bHfhjtmMXnLvADmfyO/KOw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nx/nx-linux-x64-musl": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-20.1.4.tgz", - "integrity": "sha512-wjq4Ea1oweBsIA9jq+jDT6BALxv/uac0aFykwoN23dOiwwSMFWMxbXUuBrxp0LjMFGV49S62kVDoRezukvkiZA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nx/nx-win32-arm64-msvc": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-20.1.4.tgz", - "integrity": "sha512-d9jN8biyEJh4Mjdc3RU1j/+WIOjrO9mCDxYuERXP2ELaNsOk0tJgcXE1xsa9AF88AHGpOkCOS2rxy61DKBtFKg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nx/nx-win32-x64-msvc": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-20.1.4.tgz", - "integrity": "sha512-s3RwOkkWKzOflbTmc5MRc4EH2mk1AkJ/V8Gu3Qi2QncF9r1GrR7hDxROpu0MEoHfIhRG+d+n8OGX31nC9GZWUg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@parcel/watcher": { @@ -6205,9 +6392,9 @@ "license": "MIT" }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.22.4.tgz", - "integrity": "sha512-Fxamp4aEZnfPOcGA8KSNEohV8hX7zVHOemC8jVBoBUHu5zpJK/Eu3uJwt6BMgy9fkvzxDaurgj96F/NiLukF2w==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.30.1.tgz", + "integrity": "sha512-pSWY+EVt3rJ9fQ3IqlrEUtXh3cGqGtPDH1FQlNZehO2yYxCHEX1SPsz1M//NXwYfbTlcKr9WObLnJX9FsS9K1Q==", "cpu": [ "arm" ], @@ -6219,9 +6406,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.22.4.tgz", - "integrity": "sha512-VXoK5UMrgECLYaMuGuVTOx5kcuap1Jm8g/M83RnCHBKOqvPPmROFJGQaZhGccnsFtfXQ3XYa4/jMCJvZnbJBdA==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.30.1.tgz", + "integrity": "sha512-/NA2qXxE3D/BRjOJM8wQblmArQq1YoBVJjrjoTSBS09jgUisq7bqxNHJ8kjCHeV21W/9WDGwJEWSN0KQ2mtD/w==", "cpu": [ "arm64" ], @@ -6233,9 +6420,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.22.4.tgz", - "integrity": "sha512-xMM9ORBqu81jyMKCDP+SZDhnX2QEVQzTcC6G18KlTQEzWK8r/oNZtKuZaCcHhnsa6fEeOBionoyl5JsAbE/36Q==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.30.1.tgz", + "integrity": "sha512-r7FQIXD7gB0WJ5mokTUgUWPl0eYIH0wnxqeSAhuIwvnnpjdVB8cRRClyKLQr7lgzjctkbp5KmswWszlwYln03Q==", "cpu": [ "arm64" ], @@ -6247,9 +6434,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.22.4.tgz", - "integrity": "sha512-aJJyYKQwbHuhTUrjWjxEvGnNNBCnmpHDvrb8JFDbeSH3m2XdHcxDd3jthAzvmoI8w/kSjd2y0udT+4okADsZIw==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.30.1.tgz", + "integrity": "sha512-x78BavIwSH6sqfP2xeI1hd1GpHL8J4W2BXcVM/5KYKoAD3nNsfitQhvWSw+TFtQTLZ9OmlF+FEInEHyubut2OA==", "cpu": [ "x64" ], @@ -6260,10 +6447,38 @@ "darwin" ] }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.30.1.tgz", + "integrity": "sha512-HYTlUAjbO1z8ywxsDFWADfTRfTIIy/oUlfIDmlHYmjUP2QRDTzBuWXc9O4CXM+bo9qfiCclmHk1x4ogBjOUpUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.30.1.tgz", + "integrity": "sha512-1MEdGqogQLccphhX5myCJqeGNYTNcmTyaic9S7CG3JhwuIByJ7J05vGbZxsizQthP1xpVx7kd3o31eOogfEirw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.22.4.tgz", - "integrity": "sha512-j63YtCIRAzbO+gC2L9dWXRh5BFetsv0j0va0Wi9epXDgU/XUi5dJKo4USTttVyK7fGw2nPWK0PbAvyliz50SCQ==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.30.1.tgz", + "integrity": "sha512-PaMRNBSqCx7K3Wc9QZkFx5+CX27WFpAMxJNiYGAXfmMIKC7jstlr32UhTgK6T07OtqR+wYlWm9IxzennjnvdJg==", "cpu": [ "arm" ], @@ -6275,9 +6490,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.22.4.tgz", - "integrity": "sha512-dJnWUgwWBX1YBRsuKKMOlXCzh2Wu1mlHzv20TpqEsfdZLb3WoJW2kIEsGwLkroYf24IrPAvOT/ZQ2OYMV6vlrg==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.30.1.tgz", + "integrity": "sha512-B8Rcyj9AV7ZlEFqvB5BubG5iO6ANDsRKlhIxySXcF1axXYUyqwBok+XZPgIYGBgs7LDXfWfifxhw0Ik57T0Yug==", "cpu": [ "arm" ], @@ -6289,9 +6504,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.22.4.tgz", - "integrity": "sha512-AdPRoNi3NKVLolCN/Sp4F4N1d98c4SBnHMKoLuiG6RXgoZ4sllseuGioszumnPGmPM2O7qaAX/IJdeDU8f26Aw==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.30.1.tgz", + "integrity": "sha512-hqVyueGxAj3cBKrAI4aFHLV+h0Lv5VgWZs9CUGqr1z0fZtlADVV1YPOij6AhcK5An33EXaxnDLmJdQikcn5NEw==", "cpu": [ "arm64" ], @@ -6303,9 +6518,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.22.4.tgz", - "integrity": "sha512-Gl0AxBtDg8uoAn5CCqQDMqAx22Wx22pjDOjBdmG0VIWX3qUBHzYmOKh8KXHL4UpogfJ14G4wk16EQogF+v8hmA==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.30.1.tgz", + "integrity": "sha512-i4Ab2vnvS1AE1PyOIGp2kXni69gU2DAUVt6FSXeIqUCPIR3ZlheMW3oP2JkukDfu3PsexYRbOiJrY+yVNSk9oA==", "cpu": [ "arm64" ], @@ -6316,10 +6531,24 @@ "linux" ] }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.30.1.tgz", + "integrity": "sha512-fARcF5g296snX0oLGkVxPmysetwUk2zmHcca+e9ObOovBR++9ZPOhqFUM61UUZ2EYpXVPN1redgqVoBB34nTpQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.22.4.tgz", - "integrity": "sha512-3aVCK9xfWW1oGQpTsYJJPF6bfpWfhbRnhdlyhak2ZiyFLDaayz0EP5j9V1RVLAAxlmWKTDfS9wyRyY3hvhPoOg==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.30.1.tgz", + "integrity": "sha512-GLrZraoO3wVT4uFXh67ElpwQY0DIygxdv0BNW9Hkm3X34wu+BkqrDrkcsIapAY+N2ATEbvak0XQ9gxZtCIA5Rw==", "cpu": [ "ppc64" ], @@ -6331,9 +6560,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.22.4.tgz", - "integrity": "sha512-ePYIir6VYnhgv2C5Xe9u+ico4t8sZWXschR6fMgoPUK31yQu7hTEJb7bCqivHECwIClJfKgE7zYsh1qTP3WHUA==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.30.1.tgz", + "integrity": "sha512-0WKLaAUUHKBtll0wvOmh6yh3S0wSU9+yas923JIChfxOaaBarmb/lBKPF0w/+jTVozFnOXJeRGZ8NvOxvk/jcw==", "cpu": [ "riscv64" ], @@ -6345,9 +6574,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.22.4.tgz", - "integrity": "sha512-GqFJ9wLlbB9daxhVlrTe61vJtEY99/xB3C8e4ULVsVfflcpmR6c8UZXjtkMA6FhNONhj2eA5Tk9uAVw5orEs4Q==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.30.1.tgz", + "integrity": "sha512-GWFs97Ruxo5Bt+cvVTQkOJ6TIx0xJDD/bMAOXWJg8TCSTEK8RnFeOeiFTxKniTc4vMIaWvCplMAFBt9miGxgkA==", "cpu": [ "s390x" ], @@ -6359,9 +6588,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.22.4.tgz", - "integrity": "sha512-87v0ol2sH9GE3cLQLNEy0K/R0pz1nvg76o8M5nhMR0+Q+BBGLnb35P0fVz4CQxHYXaAOhE8HhlkaZfsdUOlHwg==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.30.1.tgz", + "integrity": "sha512-UtgGb7QGgXDIO+tqqJ5oZRGHsDLO8SlpE4MhqpY9Llpzi5rJMvrK6ZGhsRCST2abZdBqIBeXW6WPD5fGK5SDwg==", "cpu": [ "x64" ], @@ -6373,9 +6602,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.22.4.tgz", - "integrity": "sha512-UV6FZMUgePDZrFjrNGIWzDo/vABebuXBhJEqrHxrGiU6HikPy0Z3LfdtciIttEUQfuDdCn8fqh7wiFJjCNwO+g==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.30.1.tgz", + "integrity": "sha512-V9U8Ey2UqmQsBT+xTOeMzPzwDzyXmnAoO4edZhL7INkwQcaW1Ckv3WJX3qrrp/VHaDkEWIBWhRwP47r8cdrOow==", "cpu": [ "x64" ], @@ -6387,9 +6616,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.22.4.tgz", - "integrity": "sha512-BjI+NVVEGAXjGWYHz/vv0pBqfGoUH0IGZ0cICTn7kB9PyjrATSkX+8WkguNjWoj2qSr1im/+tTGRaY+4/PdcQw==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.30.1.tgz", + "integrity": "sha512-WabtHWiPaFF47W3PkHnjbmWawnX/aE57K47ZDT1BXTS5GgrBUEpvOzq0FI0V/UYzQJgdb8XlhVNH8/fwV8xDjw==", "cpu": [ "arm64" ], @@ -6401,9 +6630,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.22.4.tgz", - "integrity": "sha512-SiWG/1TuUdPvYmzmYnmd3IEifzR61Tragkbx9D3+R8mzQqDBz8v+BvZNDlkiTtI9T15KYZhP0ehn3Dld4n9J5g==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.30.1.tgz", + "integrity": "sha512-pxHAU+Zv39hLUTdQQHUVHf4P+0C47y/ZloorHpzs2SXMRqeAWmGghzAhfOlzFHHwjvgokdFAhC4V+6kC1lRRfw==", "cpu": [ "ia32" ], @@ -6415,9 +6644,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.22.4.tgz", - "integrity": "sha512-j8pPKp53/lq9lMXN57S8cFz0MynJk8OWNuUnXct/9KCpKU7DgU3bYMJhwWmcqC0UU29p8Lr0/7KEVcaM6bf47Q==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.30.1.tgz", + "integrity": "sha512-D6qjsXGcvhTjv0kI4fU8tUuBDF/Ueee4SVX79VfNDXZa64TfCW1Slkb6Z7O1p7vflqZjcmOVdZlqf8gvJxc6og==", "cpu": [ "x64" ], @@ -6429,14 +6658,14 @@ ] }, "node_modules/@schematics/angular": { - "version": "18.2.12", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-18.2.12.tgz", - "integrity": "sha512-sIoeipsisK5eTLW3XuNZYcal83AfslBbgI7LnV+3VrXwpasKPGHwo2ZdwhCd2IXAkuJ02Iyu7MyV0aQRM9i/3g==", + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-19.1.1.tgz", + "integrity": "sha512-XrnmSbCcDPePCbEVhgEPFZFiL/fowvkPJ8qOa1m9tWHSPYb739Vk3g+VDrAqNMm7FULcRzQzqHBq/IBB8qYfIg==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "18.2.12", - "@angular-devkit/schematics": "18.2.12", + "@angular-devkit/core": "19.1.1", + "@angular-devkit/schematics": "19.1.1", "jsonc-parser": "3.3.1" }, "engines": { @@ -6446,63 +6675,63 @@ } }, "node_modules/@sentry-internal/browser-utils": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/browser-utils/-/browser-utils-8.47.0.tgz", - "integrity": "sha512-vOXzYzHTKkahTLDzWWIA4EiVCQ+Gk+7xGWUlNcR2ZiEPBqYZVb5MjsUozAcc7syrSUy6WicyFjcomZ3rlCVQhg==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/browser-utils/-/browser-utils-8.50.0.tgz", + "integrity": "sha512-hZm6ngWTEzZhaMHpLIKB4wWp0Od1MdCZdvR5FRdIThUMLa1P8rXeolovTRfOE81NE755EiwJHzj4O7rq3EjA+A==", "license": "MIT", "dependencies": { - "@sentry/core": "8.47.0" + "@sentry/core": "8.50.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry-internal/feedback": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-8.47.0.tgz", - "integrity": "sha512-IAiIemTQIalxAOYhUENs9bZ8pMNgJnX3uQSuY7v0gknEqClOGpGkG04X/cxCmtJUj1acZ9ShTGDxoh55a+ggAQ==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-8.50.0.tgz", + "integrity": "sha512-79WlvSJYCXL/D0PBC8AIT4JbyS44AE3h6lP05IESXMqzTZl3KeSqCx317rwJw1KaxzeFd/JQwkFq95jaKAcLhg==", "license": "MIT", "dependencies": { - "@sentry/core": "8.47.0" + "@sentry/core": "8.50.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry-internal/replay": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/replay/-/replay-8.47.0.tgz", - "integrity": "sha512-G/S40ZBORj0HSMLw/uVC6YDEPN/dqVk901vf4VYfml686DEhJrZesfAfp5SydJumQ0NKZQrdtvny+BWnlI5H1w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/replay/-/replay-8.50.0.tgz", + "integrity": "sha512-mhRPujzO6n+mb6ZR+wQNkSpjqIqDriR0hZEvdzHQdyXu9zVdCHUJ3sINkzpT1XwiypQVCEfxB6Oh9y/NmcQfGg==", "license": "MIT", "dependencies": { - "@sentry-internal/browser-utils": "8.47.0", - "@sentry/core": "8.47.0" + "@sentry-internal/browser-utils": "8.50.0", + "@sentry/core": "8.50.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry-internal/replay-canvas": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-8.47.0.tgz", - "integrity": "sha512-M4W9UGouEeELbGbP3QsXLDVtGiQSZoWJlKwqMWyqdQgZuLoKw0S33+60t6teLVMhuQZR0UI9VJTF5coiXysnnA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-8.50.0.tgz", + "integrity": "sha512-Hv1bBaPpe62xFPLpuaUxVBUHd/Ed9bnGndeqN4hueeEGDT9T6NyVokgm35O5xE9/op6Yodm/3NfUkEg8oE++Aw==", "license": "MIT", "dependencies": { - "@sentry-internal/replay": "8.47.0", - "@sentry/core": "8.47.0" + "@sentry-internal/replay": "8.50.0", + "@sentry/core": "8.50.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry/angular": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@sentry/angular/-/angular-8.47.0.tgz", - "integrity": "sha512-SHKyzd8OOrlGcnKItIFYp9wJXIReo1LwNDRQ8zJvUhMwdCHfZW0oZOSXTt8Ol4MfU/lWEgrFg+SyhA3Ltiz2uw==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@sentry/angular/-/angular-8.50.0.tgz", + "integrity": "sha512-b/KfxuqWV0RIvgj3uQKI4GjfNI/6YL6Bg7ejp5ME6feCZ53ZvcSpEWRuwyfhNh+mIF1yuf3BGOB+hxzQP4Z7/Q==", "license": "MIT", "dependencies": { - "@sentry/browser": "8.47.0", - "@sentry/core": "8.47.0", + "@sentry/browser": "8.50.0", + "@sentry/core": "8.50.0", "tslib": "^2.4.1" }, "engines": { @@ -6516,38 +6745,38 @@ } }, "node_modules/@sentry/browser": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-8.47.0.tgz", - "integrity": "sha512-K6BzHisykmbFy/wORtGyfsAlw7ShevLALzu3ReZZZ18dVubO1bjSNjkZQU9MJD5Jcb9oLwkq89n3N9XIBfvdRA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-8.50.0.tgz", + "integrity": "sha512-aGJSpuKiHVKkLvd1VklJSZ2oCsl4wcKUVxKIa8dhJC8KjDY0vREQCywrlWuS5KYP0xFy4k28pg6PPR3HKkUlNw==", "license": "MIT", "dependencies": { - "@sentry-internal/browser-utils": "8.47.0", - "@sentry-internal/feedback": "8.47.0", - "@sentry-internal/replay": "8.47.0", - "@sentry-internal/replay-canvas": "8.47.0", - "@sentry/core": "8.47.0" + "@sentry-internal/browser-utils": "8.50.0", + "@sentry-internal/feedback": "8.50.0", + "@sentry-internal/replay": "8.50.0", + "@sentry-internal/replay-canvas": "8.50.0", + "@sentry/core": "8.50.0" }, "engines": { "node": ">=14.18" } }, "node_modules/@sentry/core": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-8.47.0.tgz", - "integrity": "sha512-iSEJZMe3DOcqBFZQAqgA3NB2lCWBc4Gv5x/SCri/TVg96wAlss4VrUunSI2Mp0J4jJ5nJcJ2ChqHSBAU48k3FA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-8.50.0.tgz", + "integrity": "sha512-q71m8Ha9YGwqn4Gd7sWvcFTRgbHXxEfU4QeIFtwMBpwHfq2Q+9koiF8DOoOHqIEOsnlvZWRQgGggIOdHzajnVw==", "license": "MIT", "engines": { "node": ">=14.18" } }, "node_modules/@sentry/types": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-8.47.0.tgz", - "integrity": "sha512-ruiowlIBQUPDwNcO0KTudKP9T2QYF3S2TLhDdoJb+0ZGJduH4PsgGAojUSpGR+idKfrlOSlUpcdg9+WxsoOckg==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-8.50.0.tgz", + "integrity": "sha512-2zzCXYiDgCuDHkAiLvO74pNxbpE9fmMqFG5B8pQK22F5fVHChDMpfYVytkW/EEOhcAk31UM2qPhOZvjaPD1z9w==", "dev": true, "license": "MIT", "dependencies": { - "@sentry/core": "8.47.0" + "@sentry/core": "8.50.0" }, "engines": { "node": ">=14.18" @@ -6569,83 +6798,83 @@ } }, "node_modules/@sigstore/bundle": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz", - "integrity": "sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-3.0.0.tgz", + "integrity": "sha512-XDUYX56iMPAn/cdgh/DTJxz5RWmqKV4pwvUAEKEWJl+HzKdCd/24wUa9JYNMlDSCb7SUHAdtksxYX779Nne/Zg==", "dev": true, "license": "Apache-2.0", "dependencies": { "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/core": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz", - "integrity": "sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-2.0.0.tgz", + "integrity": "sha512-nYxaSb/MtlSI+JWcwTHQxyNmWeWrUXJJ/G4liLrGG7+tS4vAz6LF3xRXqLH6wPIVUoZQel2Fs4ddLx4NCpiIYg==", "dev": true, "license": "Apache-2.0", "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.2.tgz", - "integrity": "sha512-c6B0ehIWxMI8wiS/bj6rHMPqeFvngFV7cDU/MY+B16P9Z3Mp9k8L93eYZ7BYzSickzuqAQqAq0V956b3Ju6mLw==", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.3.tgz", + "integrity": "sha512-RpacQhBlwpBWd7KEJsRKcBQalbV28fvkxwTOJIqhIuDysMMaJW47V4OqW30iJB9uRpqOSxxEAQFdr8tTattReQ==", "dev": true, "license": "Apache-2.0", "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/sign": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz", - "integrity": "sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-3.0.0.tgz", + "integrity": "sha512-UjhDMQOkyDoktpXoc5YPJpJK6IooF2gayAr5LvXI4EL7O0vd58okgfRcxuaH+YTdhvb5aa1Q9f+WJ0c2sVuYIw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/bundle": "^2.3.2", - "@sigstore/core": "^1.0.0", + "@sigstore/bundle": "^3.0.0", + "@sigstore/core": "^2.0.0", "@sigstore/protobuf-specs": "^0.3.2", - "make-fetch-happen": "^13.0.1", - "proc-log": "^4.2.0", + "make-fetch-happen": "^14.0.1", + "proc-log": "^5.0.0", "promise-retry": "^2.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/tuf": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz", - "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-3.0.0.tgz", + "integrity": "sha512-9Xxy/8U5OFJu7s+OsHzI96IX/OzjF/zj0BSSaWhgJgTqtlBhQIV2xdrQI5qxLD7+CWWDepadnXAxzaZ3u9cvRw==", "dev": true, "license": "Apache-2.0", "dependencies": { "@sigstore/protobuf-specs": "^0.3.2", - "tuf-js": "^2.2.1" + "tuf-js": "^3.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/verify": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz", - "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-2.0.0.tgz", + "integrity": "sha512-Ggtq2GsJuxFNUvQzLoXqRwS4ceRfLAJnrIHUDrzAD0GgnOhwujJkKkxM/s5Bako07c3WtAs/sZo5PJq7VHjeDg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/bundle": "^2.3.2", - "@sigstore/core": "^1.1.0", + "@sigstore/bundle": "^3.0.0", + "@sigstore/core": "^2.0.0", "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sinclair/typebox": { @@ -6661,6 +6890,7 @@ "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=18" }, @@ -6722,129 +6952,56 @@ } }, "node_modules/@swimlane/ngx-graph": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@swimlane/ngx-graph/-/ngx-graph-8.4.0.tgz", - "integrity": "sha512-/A4FKyHU4ijnx8tGbTV5zBsMS+CH0/dA50Ee9oKPG8UCV3lJfUYr8+/UIwusrWC2YWXCgp/2A1VHFszCErrIaQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@swimlane/ngx-graph/-/ngx-graph-9.0.1.tgz", + "integrity": "sha512-kymJLcAicmw30tbcnEIobIz5Cv3f7RZvoe2MJVbBjVhRxEqFVs5SONILwcdQqGIrqJC9E2PUM9VFwm9Qpgq8Rg==", "license": "MIT", "dependencies": { - "d3-dispatch": "^1.0.3", - "d3-ease": "^1.0.5", - "d3-force": "^1.1.0", - "d3-scale": "^3.2.3", - "d3-selection": "^1.2.0", - "d3-shape": "^1.2.0", - "d3-timer": "^1.0.7", + "d3-dispatch": "^3.0.1", + "d3-ease": "^3.0.1", + "d3-force": "^3.0.0", + "d3-scale": "^4.0.2", + "d3-selection": "^3.0.0", + "d3-shape": "^3.2.0", + "d3-timer": "^3.0.1", "d3-transition": "^3.0.1", - "dagre": "^0.8.4", - "transformation-matrix": "^1.15.3", - "tslib": "^2.0.0", - "webcola": "^3.3.8" + "dagre": "^0.8.5", + "transformation-matrix": "^2.16.1", + "tslib": "^2.3.1", + "webcola": "^3.4.0" }, "peerDependencies": { - "@angular/animations": ">=10.0.0", - "@angular/cdk": ">=10.0.0", - "@angular/common": ">=10.0.0", - "@angular/core": ">=10.0.0", - "rxjs": ">=6.0.0" + "@angular/animations": "15.x || 16.x || 17.x || 18.x", + "@angular/cdk": "15.x || 16.x || 17.x || 18.x", + "@angular/common": "15.x || 16.x || 17.x || 18.x", + "@angular/core": "15.x || 16.x || 17.x || 18.x", + "rxjs": "7.x" } }, - "node_modules/@swimlane/ngx-graph/node_modules/d3-array": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", - "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", - "license": "BSD-3-Clause", + "node_modules/@testing-library/angular": { + "version": "17.3.5", + "resolved": "https://registry.npmjs.org/@testing-library/angular/-/angular-17.3.5.tgz", + "integrity": "sha512-B79mN7kNDY9/+0Kc6cVGnVptQ03oHVL1at1tMu44wvr7Ksk10g11lZw7BA0c7rHAJQoXgiWrXmvtJxkPA1R2uA==", + "dev": true, + "license": "MIT", "dependencies": { - "internmap": "^1.0.0" + "tslib": "^2.3.1" + }, + "peerDependencies": { + "@angular/common": ">= 17.0.0", + "@angular/core": ">= 17.0.0", + "@angular/platform-browser": ">= 17.0.0", + "@angular/router": ">= 17.0.0", + "@testing-library/dom": "^10.0.0" } }, - "node_modules/@swimlane/ngx-graph/node_modules/d3-ease": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.7.tgz", - "integrity": "sha512-lx14ZPYkhNx0s/2HX5sLFUI3mbasHjSSpwO/KaaNACweVwxUruKyWVcb293wMv1RqTPZyZ8kSZ2NogUZNcLOFQ==", - "license": "BSD-3-Clause" - }, - "node_modules/@swimlane/ngx-graph/node_modules/d3-format": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-2.0.0.tgz", - "integrity": "sha512-Ab3S6XuE/Q+flY96HXT0jOXcM4EAClYFnRGY5zsjRGNy6qCYrQsMffs7cV5Q9xejb35zxW5hf/guKw34kvIKsA==", - "license": "BSD-3-Clause" - }, - "node_modules/@swimlane/ngx-graph/node_modules/d3-path": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", - "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==", - "license": "BSD-3-Clause" - }, - "node_modules/@swimlane/ngx-graph/node_modules/d3-scale": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-3.3.0.tgz", - "integrity": "sha512-1JGp44NQCt5d1g+Yy+GeOnZP7xHo0ii8zsQp6PGzd+C1/dl0KGsp9A7Mxwp+1D1o4unbTTxVdU/ZOIEBoeZPbQ==", - "license": "BSD-3-Clause", - "dependencies": { - "d3-array": "^2.3.0", - "d3-format": "1 - 2", - "d3-interpolate": "1.2.0 - 2", - "d3-time": "^2.1.1", - "d3-time-format": "2 - 3" - } - }, - "node_modules/@swimlane/ngx-graph/node_modules/d3-shape": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", - "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", - "license": "BSD-3-Clause", - "dependencies": { - "d3-path": "1" - } - }, - "node_modules/@swimlane/ngx-graph/node_modules/d3-time": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-2.1.1.tgz", - "integrity": "sha512-/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ==", - "license": "BSD-3-Clause", - "dependencies": { - "d3-array": "2" - } - }, - "node_modules/@swimlane/ngx-graph/node_modules/d3-time-format": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-3.0.0.tgz", - "integrity": "sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag==", - "license": "BSD-3-Clause", - "dependencies": { - "d3-time": "1 - 2" - } - }, - "node_modules/@swimlane/ngx-graph/node_modules/internmap": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", - "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==", - "license": "ISC" - }, - "node_modules/@testing-library/angular": { - "version": "17.3.5", - "resolved": "https://registry.npmjs.org/@testing-library/angular/-/angular-17.3.5.tgz", - "integrity": "sha512-B79mN7kNDY9/+0Kc6cVGnVptQ03oHVL1at1tMu44wvr7Ksk10g11lZw7BA0c7rHAJQoXgiWrXmvtJxkPA1R2uA==", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^2.3.1" - }, - "peerDependencies": { - "@angular/common": ">= 17.0.0", - "@angular/core": ">= 17.0.0", - "@angular/platform-browser": ">= 17.0.0", - "@angular/router": ">= 17.0.0", - "@testing-library/dom": "^10.0.0" - } - }, - "node_modules/@testing-library/dom": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz", - "integrity": "sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@testing-library/dom": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz", + "integrity": "sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==", + "dev": true, + "license": "MIT", + "peer": true, "dependencies": { "@babel/code-frame": "^7.10.4", "@babel/runtime": "^7.12.5", @@ -6859,20 +7016,6 @@ "node": ">=18" } }, - "node_modules/@testing-library/dom/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/@testing-library/dom/node_modules/aria-query": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", @@ -6884,34 +7027,10 @@ "dequal": "^2.0.3" } }, - "node_modules/@testing-library/dom/node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/@testing-library/dom/node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/@ts-morph/common": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.23.0.tgz", - "integrity": "sha512-m7Lllj9n/S6sOkCkRftpM7L24uvmfXQFedlW/4hENcuJH1HHm9u5EgxZb9uVjQSCGrbBWBkOGgcTxNg36r6ywA==", + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.22.0.tgz", + "integrity": "sha512-HqNBuV/oIlMKdkLshXd1zKBqNQCsuPEsgQOkfFQ/eUKjRlwndXW1AjN9LVkBEIukm00gGXSRmfkl0Wv5VXLnlw==", "dev": true, "license": "MIT", "dependencies": { @@ -6976,27 +7095,17 @@ } }, "node_modules/@tufjs/models": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz", - "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-3.0.1.tgz", + "integrity": "sha512-UUYHISyhCU3ZgN8yaear3cGATHb3SMuKHsQ/nVbHXcmnBf+LzQ/cQfhNG+rfaSHgqGKNEm2cOCLVLELStUQ1JA==", "dev": true, "license": "MIT", "dependencies": { "@tufjs/canonical-json": "2.0.0", - "minimatch": "^9.0.4" + "minimatch": "^9.0.5" }, "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@tybys/wasm-util": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", - "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^2.4.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@types/aria-query": { @@ -7054,6 +7163,7 @@ "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/connect": "*", "@types/node": "*" @@ -7065,6 +7175,7 @@ "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node": "*" } @@ -7075,6 +7186,7 @@ "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node": "*" } @@ -7085,6 +7197,7 @@ "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/express-serve-static-core": "*", "@types/node": "*" @@ -7105,9 +7218,9 @@ "license": "MIT" }, "node_modules/@types/d3-shape": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.6.tgz", - "integrity": "sha512-5KKk5aKGu2I+O6SONMYSNflgiP0WfZIQvVUMan50wHsLG1G94JlxEVnCpQARfTtzytuY0p/9PXXZb3I7giofIA==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.7.tgz", + "integrity": "sha512-VLvUQ33C+3J+8p+Daf+nYSOsjB4GXp19/S/aGo60m9h1v6XaxjiT82lKVWJCfzhtuZ3yD7i/TPeC/fuKLLOSmg==", "dev": true, "license": "MIT", "dependencies": { @@ -7131,6 +7244,30 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, "node_modules/@types/estree": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", @@ -7144,6 +7281,7 @@ "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/body-parser": "*", "@types/express-serve-static-core": "^4.17.33", @@ -7152,11 +7290,12 @@ } }, "node_modules/@types/express-serve-static-core": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.2.tgz", - "integrity": "sha512-vluaspfvWEtE4vcSDlKRNer52DvOGrB2xv6diXy6UKyKW0lqZiWHGNApSyxOv+8DE5Z27IzVvE7hNkxg7EXIcg==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.5.tgz", + "integrity": "sha512-GLZPrd9ckqEBFMcVM/qRFAP0Hg3qiVEojgEFsx/N/zKXsBzbGF6z5FBDpZ0+Xhp1xr+qRZYjfGr1cWHB9oFHSA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node": "*", "@types/qs": "*", @@ -7170,6 +7309,7 @@ "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node": "*", "@types/qs": "*", @@ -7188,9 +7328,9 @@ } }, "node_modules/@types/hoist-non-react-statics": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.5.tgz", - "integrity": "sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.6.tgz", + "integrity": "sha512-lPByRJUer/iN/xa4qpyL0qmL11DqNW81iU/IG1S3uvRUq4oKagz8VCxZjiWkumgt66YT3vOdDgZ0o32sGKtCEw==", "license": "MIT", "dependencies": { "@types/react": "*", @@ -7202,7 +7342,8 @@ "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@types/http-proxy": { "version": "1.17.15", @@ -7210,6 +7351,7 @@ "integrity": "sha512-25g5atgiVNTIv0LBDTg1H74Hvayx0ajtJPLLcYE3whFv75J0pWNtOBzaXJQgDTmrX1bx5U9YC2w/n65BN1HwRQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node": "*" } @@ -7252,6 +7394,41 @@ "pretty-format": "^29.0.0" } }, + "node_modules/@types/jest/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@types/jest/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@types/jest/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/jsdom": { "version": "20.0.1", "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", @@ -7279,9 +7456,9 @@ "license": "MIT" }, "node_modules/@types/lodash": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.13.tgz", - "integrity": "sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg==", + "version": "4.17.14", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.14.tgz", + "integrity": "sha512-jsxagdikDiDBeIRaPYtArcT8my4tN1og7MtMRquFT3XNA6axxyHDRUemqDz/taRDdOUn0GnGHRCuff4q48sW9A==", "dev": true, "license": "MIT" }, @@ -7318,22 +7495,13 @@ "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", "dev": true, - "license": "MIT" - }, - "node_modules/@types/mute-stream": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/@types/mute-stream/-/mute-stream-0.0.4.tgz", - "integrity": "sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==", - "dev": true, "license": "MIT", - "dependencies": { - "@types/node": "*" - } + "peer": true }, "node_modules/@types/node": { - "version": "22.10.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.2.tgz", - "integrity": "sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==", + "version": "22.10.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.7.tgz", + "integrity": "sha512-V09KvXxFiutGp6B7XkpaDXlNadZxrzajcY50EuoLIpQ6WWYCSvf19lVIazzfIzQvhUN2HjX12spLojTnhuKlGg==", "dev": true, "license": "MIT", "dependencies": { @@ -7346,6 +7514,7 @@ "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node": "*" } @@ -7361,29 +7530,31 @@ } }, "node_modules/@types/prop-types": { - "version": "15.7.13", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", - "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", + "version": "15.7.14", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.14.tgz", + "integrity": "sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==", "license": "MIT" }, "node_modules/@types/qs": { - "version": "6.9.17", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.17.tgz", - "integrity": "sha512-rX4/bPcfmvxHDv0XjfJELTTr+iB+tn032nPILqHm5wbthUUUuVtNGGqzhya9XUxjTP8Fpr0qYgSZZKxGY++svQ==", + "version": "6.9.18", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", + "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@types/range-parser": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@types/react": { - "version": "18.3.12", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz", - "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==", + "version": "18.3.18", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.18.tgz", + "integrity": "sha512-t4yC+vtgnkYjNSKlFx1jkAhH8LgTo2N/7Qvi83kdEaUtMDiwpbLAktKDaAMlRcJ5eSxZkH74eEGt1ky31d7kfQ==", "license": "MIT", "dependencies": { "@types/prop-types": "*", @@ -7395,7 +7566,8 @@ "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.2.tgz", "integrity": "sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@types/semver": { "version": "7.5.8", @@ -7410,6 +7582,7 @@ "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/mime": "^1", "@types/node": "*" @@ -7421,6 +7594,7 @@ "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/express": "*" } @@ -7431,6 +7605,7 @@ "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/http-errors": "*", "@types/node": "*", @@ -7450,6 +7625,7 @@ "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node": "*" } @@ -7515,19 +7691,13 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/wrap-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/wrap-ansi/-/wrap-ansi-3.0.0.tgz", - "integrity": "sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/ws": { "version": "8.5.13", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.13.tgz", "integrity": "sha512-osM/gWBTPKgHV8XkTunnegTRIsvF6owmf5w+JtAfOw472dptdm0dlGv4xCt6GwQRcC2XVOvvRE/0bAoQcL2QkA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node": "*" } @@ -7550,21 +7720,21 @@ "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.18.1.tgz", - "integrity": "sha512-Ncvsq5CT3Gvh+uJG0Lwlho6suwDfUXH0HztslDf5I+F2wAFAZMRwYLEorumpKLzmO2suAXZ/td1tBg4NZIi9CQ==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.20.0.tgz", + "integrity": "sha512-naduuphVw5StFfqp4Gq4WhIBE2gN1GEmMUExpJYknZJdRnc+2gDzB8Z3+5+/Kv33hPQRDGzQO/0opHE72lZZ6A==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.18.1", - "@typescript-eslint/type-utils": "8.18.1", - "@typescript-eslint/utils": "8.18.1", - "@typescript-eslint/visitor-keys": "8.18.1", + "@typescript-eslint/scope-manager": "8.20.0", + "@typescript-eslint/type-utils": "8.20.0", + "@typescript-eslint/utils": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -7590,16 +7760,16 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.18.1.tgz", - "integrity": "sha512-rBnTWHCdbYM2lh7hjyXqxk70wvon3p2FyaniZuey5TrcGBpfhVp0OxOa6gxr9Q9YhZFKyfbEnxc24ZnVbbUkCA==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.20.0.tgz", + "integrity": "sha512-gKXG7A5HMyjDIedBi6bUrDcun8GIjnI8qOwVLiY3rx6T/sHP/19XLJOnIq/FgQvWLHja5JN/LSE7eklNBr612g==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.18.1", - "@typescript-eslint/types": "8.18.1", - "@typescript-eslint/typescript-estree": "8.18.1", - "@typescript-eslint/visitor-keys": "8.18.1", + "@typescript-eslint/scope-manager": "8.20.0", + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/typescript-estree": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0", "debug": "^4.3.4" }, "engines": { @@ -7615,14 +7785,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.18.1.tgz", - "integrity": "sha512-HxfHo2b090M5s2+/9Z3gkBhI6xBH8OJCFjH9MhQ+nnoZqxU3wNxkLT+VWXWSFWc3UF3Z+CfPAyqdCTdoXtDPCQ==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.20.0.tgz", + "integrity": "sha512-J7+VkpeGzhOt3FeG1+SzhiMj9NzGD/M6KoGn9f4dbz3YzK9hvbhVTmLj/HiTp9DazIzJ8B4XcM80LrR9Dm1rJw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.18.1", - "@typescript-eslint/visitor-keys": "8.18.1" + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -7633,16 +7803,16 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.18.1.tgz", - "integrity": "sha512-jAhTdK/Qx2NJPNOTxXpMwlOiSymtR2j283TtPqXkKBdH8OAMmhiUfP0kJjc/qSE51Xrq02Gj9NY7MwK+UxVwHQ==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.20.0.tgz", + "integrity": "sha512-bPC+j71GGvA7rVNAHAtOjbVXbLN5PkwqMvy1cwGeaxUoRQXVuKCebRoLzm+IPW/NtFFpstn1ummSIasD5t60GA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "8.18.1", - "@typescript-eslint/utils": "8.18.1", + "@typescript-eslint/typescript-estree": "8.20.0", + "@typescript-eslint/utils": "8.20.0", "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -7657,9 +7827,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.18.1.tgz", - "integrity": "sha512-7uoAUsCj66qdNQNpH2G8MyTFlgerum8ubf21s3TSM3XmKXuIn+H2Sifh/ES2nPOPiYSRJWAk0fDkW0APBWcpfw==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.20.0.tgz", + "integrity": "sha512-cqaMiY72CkP+2xZRrFt3ExRBu0WmVitN/rYPZErA80mHjHx/Svgp8yfbzkJmDoQ/whcytOPO9/IZXnOc+wigRA==", "dev": true, "license": "MIT", "engines": { @@ -7671,20 +7841,20 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.18.1.tgz", - "integrity": "sha512-z8U21WI5txzl2XYOW7i9hJhxoKKNG1kcU4RzyNvKrdZDmbjkmLBo8bgeiOJmA06kizLI76/CCBAAGlTlEeUfyg==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.20.0.tgz", + "integrity": "sha512-Y7ncuy78bJqHI35NwzWol8E0X7XkRVS4K4P4TCyzWkOJih5NDvtoRDW4Ba9YJJoB2igm9yXDdYI/+fkiiAxPzA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.18.1", - "@typescript-eslint/visitor-keys": "8.18.1", + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -7698,16 +7868,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.18.1.tgz", - "integrity": "sha512-8vikiIj2ebrC4WRdcAdDcmnu9Q/MXXwg+STf40BVfT8exDqBCUPdypvzcUPxEqRGKg9ALagZ0UWcYCtn+4W2iQ==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.20.0.tgz", + "integrity": "sha512-dq70RUw6UK9ei7vxc4KQtBRk7qkHZv447OUZ6RPQMQl71I3NZxQJX/f32Smr+iqWrB02pHKn2yAdHBb0KNrRMA==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.18.1", - "@typescript-eslint/types": "8.18.1", - "@typescript-eslint/typescript-estree": "8.18.1" + "@typescript-eslint/scope-manager": "8.20.0", + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/typescript-estree": "8.20.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -7722,13 +7892,13 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.18.1.tgz", - "integrity": "sha512-Vj0WLm5/ZsD013YeUKn+K0y8p1M0jPpxOkKdbD1wB0ns53a5piVY02zjf072TblEweAbcYiFiPoSMF3kp+VhhQ==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.20.0.tgz", + "integrity": "sha512-v/BpkeeYAsPkKCkR8BDwcno0llhzWVqPOamQrAEMdpZav2Y9OVjd9dwJyBLJWwf335B5DmlifECIkZRJCaGaHA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.18.1", + "@typescript-eslint/types": "8.20.0", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -7753,51 +7923,51 @@ } }, "node_modules/@vitejs/plugin-basic-ssl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.1.0.tgz", - "integrity": "sha512-wO4Dk/rm8u7RNhOf95ZzcEmC9rYOncYgvq4z3duaJrCgjN8BxAnDVyndanfcJZ0O6XZzHz6Q0hTimxTg8Y9g/A==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.2.0.tgz", + "integrity": "sha512-mkQnxTkcldAzIsomk1UuLfAu9n+kpQ3JbHcpCp7d2Oo6ITtji8pHS3QToOWjhPFvNQSnhlkAjmGbhv2QvwO/7Q==", "dev": true, "license": "MIT", "engines": { - "node": ">=14.6.0" + "node": ">=14.21.3" }, "peerDependencies": { - "vite": "^3.0.0 || ^4.0.0 || ^5.0.0" + "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0" } }, "node_modules/@vitest/expect": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.8.tgz", - "integrity": "sha512-8ytZ/fFHq2g4PJVAtDX57mayemKgDR6X3Oa2Foro+EygiOJHUXhCqBAAKQYYajZpFoIfvBCF1j6R6IYRSIUFuw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.0.0.tgz", + "integrity": "sha512-Qx+cHyB59mWrQywT3/dZIIpSKwIpWbYFdBX2zixMYpOGZmbaP2jbbd4i/TAKJq/jBgSfww++d6YnrlGMFb2XBg==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "2.1.8", - "@vitest/utils": "2.1.8", + "@vitest/spy": "3.0.0", + "@vitest/utils": "3.0.0", "chai": "^5.1.2", - "tinyrainbow": "^1.2.0" + "tinyrainbow": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/mocker": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.8.tgz", - "integrity": "sha512-7guJ/47I6uqfttp33mgo6ga5Gr1VnL58rcqYKyShoRK9ebu8T5Rs6HN3s1NABiBeVTdWNrwUMcHH54uXZBN4zA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.0.0.tgz", + "integrity": "sha512-8ytqYjIRzAM90O7n8A0TCbziTnouIG+UGuMHmoRJpKh4vvah4uENw5UAMMNjdKCtzgMiTrZ9XU+xzwCwcxuxGQ==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "2.1.8", + "@vitest/spy": "3.0.0", "estree-walker": "^3.0.3", - "magic-string": "^0.30.12" + "magic-string": "^0.30.17" }, "funding": { "url": "https://opencollective.com/vitest" }, "peerDependencies": { "msw": "^2.4.9", - "vite": "^5.0.0" + "vite": "^5.0.0 || ^6.0.0" }, "peerDependenciesMeta": { "msw": { @@ -7808,72 +7978,52 @@ } } }, - "node_modules/@vitest/mocker/node_modules/magic-string": { - "version": "0.30.17", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", - "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0" - } - }, "node_modules/@vitest/pretty-format": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.8.tgz", - "integrity": "sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.0.0.tgz", + "integrity": "sha512-24y+MS04ZHZbbbfAvfpi9hM2oULePbiL6Dir8r1nFMN97hxuL0gEXKWRGmlLPwzKDtaOKNjtyTx0+GiZcWCxDA==", "dev": true, "license": "MIT", "dependencies": { - "tinyrainbow": "^1.2.0" + "tinyrainbow": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/runner": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.8.tgz", - "integrity": "sha512-17ub8vQstRnRlIU5k50bG+QOMLHRhYPAna5tw8tYbj+jzjcspnwnwtPtiOlkuKC4+ixDPTuLZiqiWWQ2PSXHVg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.0.0.tgz", + "integrity": "sha512-6MCYobtatsgG3DlM+dk6njP+R+28iSUqWbJzXp/nuOy6SkAKzJ1wby3fDgimmy50TeK8g6y+E6rP12REyinYPw==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/utils": "2.1.8", - "pathe": "^1.1.2" + "@vitest/utils": "3.0.0", + "pathe": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/snapshot": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.8.tgz", - "integrity": "sha512-20T7xRFbmnkfcmgVEz+z3AU/3b0cEzZOt/zmnvZEctg64/QZbSDJEVm9fLnnlSi74KibmRsO9/Qabi+t0vCRPg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.0.0.tgz", + "integrity": "sha512-W0X6fJFJ3RbSThncSYUNSnXkMJFyXX9sOvxP1HSQRsWCLB1U3JnZc0SrLpLzcyByMUDXHsiXQ+x+xsr/G5fXNw==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "2.1.8", - "magic-string": "^0.30.12", - "pathe": "^1.1.2" + "@vitest/pretty-format": "3.0.0", + "magic-string": "^0.30.17", + "pathe": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, - "node_modules/@vitest/snapshot/node_modules/magic-string": { - "version": "0.30.17", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", - "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0" - } - }, "node_modules/@vitest/spy": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.8.tgz", - "integrity": "sha512-5swjf2q95gXeYPevtW0BLk6H8+bPlMb4Vw/9Em4hFxDcaOxS+e0LOX4yqNxoHzMR2akEB2xfpnWUzkZokmgWDg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.0.0.tgz", + "integrity": "sha512-pfK5O3lRqeCG8mbV+Lr8lLUBicFRm5TlggF7bLZpzpo111LKhMN/tZRXvyOGOgbktxAR9bTf4x8U6RtHuFBTVA==", "dev": true, "license": "MIT", "dependencies": { @@ -7884,15 +8034,15 @@ } }, "node_modules/@vitest/utils": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.8.tgz", - "integrity": "sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.0.0.tgz", + "integrity": "sha512-l300v2/4diHyv5ZiQOj6y/H6VbaTWM6i1c2lC3lUZ5nn9rv9C+WneS/wqyaGLwM37reoh/QkrrYMSMKdfnDZpw==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "2.1.8", + "@vitest/pretty-format": "3.0.0", "loupe": "^3.1.2", - "tinyrainbow": "^1.2.0" + "tinyrainbow": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" @@ -7919,6 +8069,7 @@ "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@webassemblyjs/helper-numbers": "1.13.2", "@webassemblyjs/helper-wasm-bytecode": "1.13.2" @@ -7929,21 +8080,24 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@webassemblyjs/helper-api-error": { "version": "1.13.2", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@webassemblyjs/helper-buffer": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@webassemblyjs/helper-numbers": { "version": "1.13.2", @@ -7951,6 +8105,7 @@ "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@webassemblyjs/floating-point-hex-parser": "1.13.2", "@webassemblyjs/helper-api-error": "1.13.2", @@ -7962,7 +8117,8 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@webassemblyjs/helper-wasm-section": { "version": "1.14.1", @@ -7970,6 +8126,7 @@ "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-buffer": "1.14.1", @@ -7983,6 +8140,7 @@ "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@xtuc/ieee754": "^1.2.0" } @@ -7993,6 +8151,7 @@ "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", "dev": true, "license": "Apache-2.0", + "peer": true, "dependencies": { "@xtuc/long": "4.2.2" } @@ -8002,7 +8161,8 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@webassemblyjs/wasm-edit": { "version": "1.14.1", @@ -8010,6 +8170,7 @@ "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-buffer": "1.14.1", @@ -8027,6 +8188,7 @@ "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-wasm-bytecode": "1.13.2", @@ -8041,6 +8203,7 @@ "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-buffer": "1.14.1", @@ -8054,6 +8217,7 @@ "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.14.1", "@webassemblyjs/helper-api-error": "1.13.2", @@ -8069,6 +8233,7 @@ "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.14.1", "@xtuc/long": "4.2.2" @@ -8079,14 +8244,16 @@ "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", "dev": true, - "license": "BSD-3-Clause" + "license": "BSD-3-Clause", + "peer": true }, "node_modules/@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true, - "license": "Apache-2.0" + "license": "Apache-2.0", + "peer": true }, "node_modules/@yarnpkg/lockfile": { "version": "1.1.0", @@ -8095,68 +8262,10 @@ "dev": true, "license": "BSD-2-Clause" }, - "node_modules/@yarnpkg/parsers": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.2.tgz", - "integrity": "sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "js-yaml": "^3.10.0", - "tslib": "^2.4.0" - }, - "engines": { - "node": ">=18.12.0" - } - }, - "node_modules/@yarnpkg/parsers/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/@yarnpkg/parsers/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@yarnpkg/parsers/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@zkochan/js-yaml": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz", - "integrity": "sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/abbrev": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", - "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", "dev": true, "license": "ISC", "engines": { @@ -8169,6 +8278,7 @@ "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "mime-types": "^3.0.0", "negotiator": "^1.0.0" @@ -8183,6 +8293,7 @@ "integrity": "sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -8193,6 +8304,7 @@ "integrity": "sha512-XqoSHeCGjVClAmoGFG3lVFqQFRIrTVw2OH3axRqAcfaw+gHWIfnASS92AV+Rl/mk0MupgZTRHQOjxY6YVnzK5w==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "mime-db": "^1.53.0" }, @@ -8200,16 +8312,6 @@ "node": ">= 0.6" } }, - "node_modules/accepts/node_modules/negotiator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", - "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/acorn": { "version": "8.14.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", @@ -8223,16 +8325,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "acorn": "^8" - } - }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -8262,6 +8354,7 @@ "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "loader-utils": "^2.0.0", "regex-parser": "^2.2.11" @@ -8276,6 +8369,7 @@ "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -8286,32 +8380,15 @@ } }, "node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", "dev": true, "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, "engines": { "node": ">= 14" } }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "license": "MIT", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/ajv": { "version": "8.17.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", @@ -8353,6 +8430,7 @@ "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.3" }, @@ -8366,6 +8444,7 @@ "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=6" } @@ -8395,6 +8474,7 @@ "node >= 0.8.0" ], "license": "Apache-2.0", + "peer": true, "bin": { "ansi-html": "bin/ansi-html" } @@ -8478,7 +8558,8 @@ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/array-union": { "version": "2.1.0", @@ -8514,6 +8595,16 @@ "dev": true, "license": "MIT" }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/autoprefixer": { "version": "10.4.20", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", @@ -8534,6 +8625,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "browserslist": "^4.23.3", "caniuse-lite": "^1.0.30001646", @@ -8552,18 +8644,6 @@ "postcss": "^8.1.0" } }, - "node_modules/axios": { - "version": "1.7.8", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.8.tgz", - "integrity": "sha512-Uu0wb7KNqK2t5K+YQyVCLM76prD5sRFjKHbJYCP1J7JFGEQ6nN7HWn9+04LAeiJ3ji54lgS/gZCH1oxyrf1SPw==", - "dev": true, - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, "node_modules/axobject-query": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", @@ -8607,11 +8687,12 @@ } }, "node_modules/babel-loader": { - "version": "9.1.3", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", - "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.2.1.tgz", + "integrity": "sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "find-cache-dir": "^4.0.0", "schema-utils": "^4.0.0" @@ -8680,6 +8761,7 @@ "integrity": "sha512-CPWT6BwvhrTO2d8QVorhTCQw9Y43zOu7G9HigcfxvepOU6b8o3tcWad6oVgZIsZCTt42FFv97aA7ZJsbM4+8og==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/compat-data": "^7.22.6", "@babel/helper-define-polyfill-provider": "^0.6.3", @@ -8695,6 +8777,7 @@ "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-define-polyfill-provider": "^0.6.2", "core-js-compat": "^3.38.0" @@ -8709,6 +8792,7 @@ "integrity": "sha512-LiWSbl4CRSIa5x/JAU6jZiG9eit9w6mz+yVMFwDE83LAWvt0AfGBoZ7HS/mkhrKuh2ZlzfVZYKoLjXdqw6Yt7Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/helper-define-polyfill-provider": "^0.6.3" }, @@ -8821,7 +8905,28 @@ "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true + }, + "node_modules/beasties": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/beasties/-/beasties-0.2.0.tgz", + "integrity": "sha512-Ljqskqx/tbZagIglYoJIMzH5zgssyp+in9+9sAyh15N22AornBeIDnb8EZ6Rk+6ShfMxd92uO3gfpT0NtZbpow==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "htmlparser2": "^9.1.0", + "picocolors": "^1.1.1", + "postcss": "^8.4.49", + "postcss-media-query-parser": "^0.2.3" + }, + "engines": { + "node": ">=14.0.0" + } }, "node_modules/big.js": { "version": "5.2.2", @@ -8829,6 +8934,7 @@ "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": "*" } @@ -8839,6 +8945,7 @@ "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=8" }, @@ -8879,6 +8986,7 @@ "integrity": "sha512-SNMk0OONlQ01uk8EPeiBvTW7W4ovpL5b1O3t1sjpPgfxOQ6BqQJ6XjxinDPR79Z6HdcD5zBBwr5ssiTlgdNztQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -8901,6 +9009,7 @@ "integrity": "sha512-kERHXvpSaB4aU3eANwidg79K8FlrN77m8G9V+0vOR3HYaRifrlwMEpT7ZBJqLSEIHnEgJTHcWK82wwLwwKwtag==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -8914,6 +9023,7 @@ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -8924,6 +9034,7 @@ "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" @@ -8938,6 +9049,7 @@ "integrity": "sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.3", "multicast-dns": "^7.2.5" @@ -8992,9 +9104,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", - "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", "funding": [ { "type": "opencollective", @@ -9011,9 +9123,9 @@ ], "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.1" }, "bin": { @@ -9084,6 +9196,7 @@ "integrity": "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "run-applescript": "^7.0.0" }, @@ -9100,6 +9213,7 @@ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } @@ -9115,13 +9229,13 @@ } }, "node_modules/cacache": { - "version": "18.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", - "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", "dev": true, "license": "ISC", "dependencies": { - "@npmcli/fs": "^3.1.0", + "@npmcli/fs": "^4.0.0", "fs-minipass": "^3.0.0", "glob": "^10.2.2", "lru-cache": "^10.0.1", @@ -9129,13 +9243,23 @@ "minipass-collect": "^2.0.1", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/cacache/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" } }, "node_modules/cacache/node_modules/glob": { @@ -9166,18 +9290,92 @@ "dev": true, "license": "ISC" }, + "node_modules/cacache/node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", + "dev": true, + "license": "ISC", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cacache/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", "dev": true, "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.0", "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz", + "integrity": "sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", + "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -9216,9 +9414,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001685", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001685.tgz", - "integrity": "sha512-e/kJN1EMyHQzgcMEEgoo+YTCO1NGCmIYHk5Qk8jT6AazWemS5QFKJ5ShCJlH3GZrNIdZofcNCEwZqbMjjKzmnA==", + "version": "1.0.30001692", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001692.tgz", + "integrity": "sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==", "funding": [ { "type": "opencollective", @@ -9297,41 +9495,18 @@ } }, "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", "license": "MIT", "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "readdirp": "^4.0.1" }, "engines": { - "node": ">= 8.10.0" + "node": ">= 14.16.0" }, "funding": { "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" } }, "node_modules/chownr": { @@ -9350,6 +9525,7 @@ "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=6.0" } @@ -9377,16 +9553,6 @@ "dev": true, "license": "MIT" }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/cli-cursor": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", @@ -9404,9 +9570,9 @@ } }, "node_modules/cli-spinners": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", - "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", "dev": true, "license": "MIT", "engines": { @@ -9519,6 +9685,7 @@ "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "is-plain-object": "^2.0.4", "kind-of": "^6.0.2", @@ -9534,6 +9701,7 @@ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "isobject": "^3.0.1" }, @@ -9553,9 +9721,9 @@ } }, "node_modules/code-block-writer": { - "version": "13.0.3", - "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-13.0.3.tgz", - "integrity": "sha512-Oofo0pq3IKnsFtuHqSF7TqBfr71aeyZDVJ0HpmqB7FBM2qEigL0iPONSCZSO9pE9dZTAxANe5XHG9Uy0YMv8cg==", + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-12.0.0.tgz", + "integrity": "sha512-q4dMFMlXtKR3XNBHyMHt/3pwYNA69EDk00lloMOaaUMKPUXBw6lpXtbu3MMVG6/uOihGnRDOlkyqsONEUj60+w==", "dev": true, "license": "MIT" }, @@ -9628,7 +9796,8 @@ "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", "dev": true, - "license": "ISC" + "license": "ISC", + "peer": true }, "node_modules/compare-versions": { "version": "6.1.1", @@ -9642,6 +9811,7 @@ "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "mime-db": ">= 1.43.0 < 2" }, @@ -9655,6 +9825,7 @@ "integrity": "sha512-bQJ0YRck5ak3LgtnpKkiabX5pNF7tMUh1BSy2ZBOTh0Dim0BUu6aPPwByIns6/A5Prh8PufSPerMDUklpzes2Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "bytes": "3.1.2", "compressible": "~2.0.18", @@ -9668,13 +9839,24 @@ "node": ">= 0.8.0" } }, - "node_modules/compression/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "node_modules/compression/node_modules/negotiator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", "dev": true, - "funding": [ - { + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { "type": "github", "url": "https://github.com/sponsors/feross" }, @@ -9687,7 +9869,8 @@ "url": "https://feross.org/support" } ], - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/concat-map": { "version": "0.0.1", @@ -9702,6 +9885,7 @@ "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.8" } @@ -9712,6 +9896,7 @@ "integrity": "sha512-Au9nRL8VNUut/XSzbQA38+M78dzP4D+eqg3gfJHMIHHYa3bg067xj1KxMUWj+VULbiZMowKngFFbKczUrNJ1mg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "safe-buffer": "5.2.1" }, @@ -9738,7 +9923,8 @@ "url": "https://feross.org/support" } ], - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/content-type": { "version": "1.0.5", @@ -9746,6 +9932,7 @@ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -9762,6 +9949,7 @@ "integrity": "sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=18" } @@ -9772,6 +9960,7 @@ "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=6.6.0" } @@ -9782,6 +9971,7 @@ "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "is-what": "^3.14.1" }, @@ -9795,6 +9985,7 @@ "integrity": "sha512-SNwdBeHyII+rWvee/bTnAYyO8vfVdcSTud4EIb6jcZ8inLeWucJE0DnxXQBjlQ5zlteuuvooGQy3LIyGxhvlOA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "fast-glob": "^3.3.2", "glob-parent": "^6.0.1", @@ -9815,9 +10006,9 @@ } }, "node_modules/core-js": { - "version": "3.39.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.39.0.tgz", - "integrity": "sha512-raM0ew0/jJUqkJ0E6e8UDtl+y/7ktFivgWvqw8dNSQeNWoSDLvQ1H/RN3aPXB9tBd4/FhyR4RDPGhsNIMsAn7g==", + "version": "3.40.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.40.0.tgz", + "integrity": "sha512-7vsMc/Lty6AGnn7uFpYT56QesI5D2Y/UkgKounk87OP9Z2H9Z8kj6jzcSGAxFmUtDOS0ntK6lbQz+Nsa0Jj6mQ==", "hasInstallScript": true, "license": "MIT", "funding": { @@ -9826,13 +10017,14 @@ } }, "node_modules/core-js-compat": { - "version": "3.39.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.39.0.tgz", - "integrity": "sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw==", + "version": "3.40.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.40.0.tgz", + "integrity": "sha512-0XEDpr5y5mijvw8Lbc6E5AkjrHfp7eEoPlu36SWeAbcL8fn1G1ANe8DBlo2XoNN89oVpxWwOjYIPVzR4ZvsKCQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "browserslist": "^4.24.2" + "browserslist": "^4.24.3" }, "funding": { "type": "opencollective", @@ -9851,6 +10043,7 @@ "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "env-paths": "^2.2.1", "import-fresh": "^3.3.0", @@ -9901,23 +10094,6 @@ "dev": true, "license": "MIT" }, - "node_modules/critters": { - "version": "0.0.25", - "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.25.tgz", - "integrity": "sha512-ROF/tjJyyRdM8/6W0VqoN5Ql05xAGnkf5b7f3sTEl1bI5jTQQf8O918RD/V9tEb9pRY/TKcvJekDbJtniHyPtQ==", - "deprecated": "Ownership of Critters has moved to the Nuxt team, who will be maintaining the project going forward. If you'd like to keep using Critters, please switch to the actively-maintained fork at https://github.com/danielroe/beasties", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "chalk": "^4.1.0", - "css-select": "^5.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.2", - "htmlparser2": "^8.0.2", - "postcss": "^8.4.23", - "postcss-media-query-parser": "^0.2.3" - } - }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -9954,6 +10130,7 @@ "integrity": "sha512-6WvYYn7l/XEGN8Xu2vWFt9nVzrCn39vKyTEFf/ExEyoksJjjSZV/0/35XPlMbpnr6VGhZIUg5yJrL8tGfes/FA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "icss-utils": "^5.1.0", "postcss": "^8.4.33", @@ -10031,6 +10208,7 @@ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true, "license": "MIT", + "peer": true, "bin": { "cssesc": "bin/cssesc" }, @@ -10046,13 +10224,14 @@ "license": "MIT" }, "node_modules/cssstyle": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.1.0.tgz", - "integrity": "sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.2.1.tgz", + "integrity": "sha512-9+vem03dMXG7gDmZ62uqmRiMRNtinIZ9ZyuF6BdxzfOD+FdN5hretzynkn0ReS2DO2GSw76RWHs0UmJPI2zUjw==", "dev": true, "license": "MIT", "dependencies": { - "rrweb-cssom": "^0.7.1" + "@asamuzakjp/css-color": "^2.8.2", + "rrweb-cssom": "^0.8.0" }, "engines": { "node": ">=18" @@ -10092,12 +10271,6 @@ "node": ">=12" } }, - "node_modules/d3-collection": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.7.tgz", - "integrity": "sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==", - "license": "BSD-3-Clause" - }, "node_modules/d3-color": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", @@ -10108,10 +10281,13 @@ } }, "node_modules/d3-dispatch": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz", - "integrity": "sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==", - "license": "BSD-3-Clause" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", + "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", + "license": "ISC", + "engines": { + "node": ">=12" + } }, "node_modules/d3-drag": { "version": "3.0.0", @@ -10136,15 +10312,17 @@ } }, "node_modules/d3-force": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-1.2.1.tgz", - "integrity": "sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg==", - "license": "BSD-3-Clause", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", + "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", + "license": "ISC", "dependencies": { - "d3-collection": "1", - "d3-dispatch": "1", - "d3-quadtree": "1", - "d3-timer": "1" + "d3-dispatch": "1 - 3", + "d3-quadtree": "1 - 3", + "d3-timer": "1 - 3" + }, + "engines": { + "node": ">=12" } }, "node_modules/d3-format": { @@ -10187,10 +10365,13 @@ } }, "node_modules/d3-quadtree": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.7.tgz", - "integrity": "sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA==", - "license": "BSD-3-Clause" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", + "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==", + "license": "ISC", + "engines": { + "node": ">=12" + } }, "node_modules/d3-sankey": { "version": "0.12.3", @@ -10294,10 +10475,13 @@ } }, "node_modules/d3-timer": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", - "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==", - "license": "BSD-3-Clause" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "license": "ISC", + "engines": { + "node": ">=12" + } }, "node_modules/d3-transition": { "version": "3.0.1", @@ -10420,6 +10604,7 @@ "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "bundle-name": "^4.1.0", "default-browser-id": "^5.0.0" @@ -10437,6 +10622,7 @@ "integrity": "sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=18" }, @@ -10481,6 +10667,7 @@ "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -10504,6 +10691,7 @@ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } @@ -10525,6 +10713,7 @@ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8", "npm": "1.2.8000 || >= 1.4.16" @@ -10536,6 +10725,7 @@ "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", "dev": true, "license": "Apache-2.0", + "optional": true, "engines": { "node": ">=8" } @@ -10555,7 +10745,8 @@ "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/diff": { "version": "4.0.2", @@ -10612,6 +10803,7 @@ "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@leichtgewicht/ip-codec": "^2.0.1" }, @@ -10681,9 +10873,9 @@ } }, "node_modules/domutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -10695,33 +10887,19 @@ "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" - } - }, - "node_modules/dotenv-expand": { - "version": "11.0.7", - "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", - "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", "dependencies": { - "dotenv": "^16.4.5" + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" + "node": ">= 0.4" } }, "node_modules/eastasianwidth": { @@ -10736,7 +10914,8 @@ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/ejs": { "version": "3.1.10", @@ -10755,9 +10934,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.68", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.68.tgz", - "integrity": "sha512-FgMdJlma0OzUYlbrtZ4AeXjKxKPk6KT8WOP8BjcqxWtlg8qyJQjRzPJzUtUn5GBg1oQ26hFs7HOOHJMYiJRnvQ==", + "version": "1.5.83", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.83.tgz", + "integrity": "sha512-LcUDPqSt+V0QmI47XLzZrz5OqILSMGsPFkDYus22rIbgorSvBYEFqq854ltTmUdHkY92FSdAAvsh4jWEULMdfQ==", "license": "ISC" }, "node_modules/emittery": { @@ -10780,9 +10959,9 @@ "license": "MIT" }, "node_modules/emoji-js": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/emoji-js/-/emoji-js-3.8.0.tgz", - "integrity": "sha512-A5FNHKlRPRo6RJWrrdGWnoolIBMkVXHy4qkO0V5ahekQPjfVECxvOOWADeAF/SbzRVA9Sxdj24FCoRYGt06skA==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/emoji-js/-/emoji-js-3.8.1.tgz", + "integrity": "sha512-yyXMnZLXgqQHAhEm2DKK4Nrca+jbLQfNOP2mLcNTS6XxzzbQLDFHAguPQrtJS4Udot0Pvomwmh1ckQzhrePhKw==", "license": "MIT", "dependencies": { "emoji-datasource": "15.0.1" @@ -10801,6 +10980,7 @@ "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 4" } @@ -10811,6 +10991,7 @@ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } @@ -10840,22 +11021,13 @@ "node": ">=0.10.0" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.0.tgz", + "integrity": "sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -10864,19 +11036,6 @@ "node": ">=10.13.0" } }, - "node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, "node_modules/entities": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", @@ -10926,6 +11085,7 @@ "dev": true, "license": "MIT", "optional": true, + "peer": true, "dependencies": { "prr": "~1.0.1" }, @@ -10944,14 +11104,11 @@ } }, "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "dev": true, "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, "engines": { "node": ">= 0.4" } @@ -10967,16 +11124,29 @@ } }, "node_modules/es-module-lexer": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", - "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.6.0.tgz", + "integrity": "sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==", "dev": true, "license": "MIT" }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/esbuild": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.0.tgz", - "integrity": "sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz", + "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -10987,36 +11157,37 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.23.0", - "@esbuild/android-arm": "0.23.0", - "@esbuild/android-arm64": "0.23.0", - "@esbuild/android-x64": "0.23.0", - "@esbuild/darwin-arm64": "0.23.0", - "@esbuild/darwin-x64": "0.23.0", - "@esbuild/freebsd-arm64": "0.23.0", - "@esbuild/freebsd-x64": "0.23.0", - "@esbuild/linux-arm": "0.23.0", - "@esbuild/linux-arm64": "0.23.0", - "@esbuild/linux-ia32": "0.23.0", - "@esbuild/linux-loong64": "0.23.0", - "@esbuild/linux-mips64el": "0.23.0", - "@esbuild/linux-ppc64": "0.23.0", - "@esbuild/linux-riscv64": "0.23.0", - "@esbuild/linux-s390x": "0.23.0", - "@esbuild/linux-x64": "0.23.0", - "@esbuild/netbsd-x64": "0.23.0", - "@esbuild/openbsd-arm64": "0.23.0", - "@esbuild/openbsd-x64": "0.23.0", - "@esbuild/sunos-x64": "0.23.0", - "@esbuild/win32-arm64": "0.23.0", - "@esbuild/win32-ia32": "0.23.0", - "@esbuild/win32-x64": "0.23.0" + "@esbuild/aix-ppc64": "0.24.2", + "@esbuild/android-arm": "0.24.2", + "@esbuild/android-arm64": "0.24.2", + "@esbuild/android-x64": "0.24.2", + "@esbuild/darwin-arm64": "0.24.2", + "@esbuild/darwin-x64": "0.24.2", + "@esbuild/freebsd-arm64": "0.24.2", + "@esbuild/freebsd-x64": "0.24.2", + "@esbuild/linux-arm": "0.24.2", + "@esbuild/linux-arm64": "0.24.2", + "@esbuild/linux-ia32": "0.24.2", + "@esbuild/linux-loong64": "0.24.2", + "@esbuild/linux-mips64el": "0.24.2", + "@esbuild/linux-ppc64": "0.24.2", + "@esbuild/linux-riscv64": "0.24.2", + "@esbuild/linux-s390x": "0.24.2", + "@esbuild/linux-x64": "0.24.2", + "@esbuild/netbsd-arm64": "0.24.2", + "@esbuild/netbsd-x64": "0.24.2", + "@esbuild/openbsd-arm64": "0.24.2", + "@esbuild/openbsd-x64": "0.24.2", + "@esbuild/sunos-x64": "0.24.2", + "@esbuild/win32-arm64": "0.24.2", + "@esbuild/win32-ia32": "0.24.2", + "@esbuild/win32-x64": "0.24.2" } }, "node_modules/esbuild-wasm": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.23.0.tgz", - "integrity": "sha512-6jP8UmWy6R6TUUV8bMuC3ZyZ6lZKI56x0tkxyCIqWwRRJ/DgeQKneh/Oid5EoGoPFLrGNkz47ZEtWAYuiY/u9g==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.24.2.tgz", + "integrity": "sha512-03/7Z1gD+ohDnScFztvI4XddTAbKVmMEzCvvkBpQdWKEXJ+73dTyeNrmdxP1Q0zpDMFjzUJwtK4rLjqwiHbzkw==", "dev": true, "license": "MIT", "bin": { @@ -11040,7 +11211,8 @@ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/escape-string-regexp": { "version": "4.0.0", @@ -11056,19 +11228,19 @@ } }, "node_modules/eslint": { - "version": "9.17.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.17.0.tgz", - "integrity": "sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==", + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.18.0.tgz", + "integrity": "sha512-+waTfRWQlSbpt3KWE+CjrPPYnbq9kfZIYUqapc0uBXyjTp8aYXZDsUH16m39Ryq3NjAVP4tjuF7KaukeqoCoaA==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.19.0", - "@eslint/core": "^0.9.0", + "@eslint/core": "^0.10.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.17.0", - "@eslint/plugin-kit": "^0.2.3", + "@eslint/js": "9.18.0", + "@eslint/plugin-kit": "^0.2.5", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.1", @@ -11116,13 +11288,13 @@ } }, "node_modules/eslint-config-prettier": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", - "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.0.1.tgz", + "integrity": "sha512-lZBts941cyJyeaooiKxAtzoPHTN+GbQTJFAIdQbRhA4/8whaAraEh47Whw/ZFfrjNSnlAxqfm9i0XVAEkULjCw==", "dev": true, "license": "MIT", "bin": { - "eslint-config-prettier": "bin/cli.js" + "eslint-config-prettier": "build/bin/cli.js" }, "peerDependencies": { "eslint": ">=7.0.0" @@ -11287,10 +11459,23 @@ "node": ">=8" } }, + "node_modules/eslint-plugin-deprecation/node_modules/ts-api-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", + "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, "node_modules/eslint-plugin-jest": { - "version": "28.10.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-28.10.0.tgz", - "integrity": "sha512-hyMWUxkBH99HpXT3p8hc7REbEZK3D+nk8vHXGgpB+XXsi0gO4PxMSP+pjfUzb67GnV9yawV9a53eUmcde1CCZA==", + "version": "28.11.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-28.11.0.tgz", + "integrity": "sha512-QAfipLcNCWLVocVbZW8GimKn5p5iiMcgGbRzz8z/P5q7xw+cNEpYqyzFMtIF/ZgF2HLOyy+dYBut+DoYolvqig==", "dev": true, "license": "MIT", "dependencies": { @@ -11500,9 +11685,9 @@ } }, "node_modules/eslint-plugin-prettier": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz", - "integrity": "sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.2.tgz", + "integrity": "sha512-1yI3/hf35wmlq66C8yOyrujQnel+v5l1Vop5Cl2I6ylyNTT1JbuUUnV3/41PzwTzcyDp/oF0jWE3HXvcH5AQOQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11738,6 +11923,7 @@ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -11747,7 +11933,8 @@ "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/events": { "version": "3.3.0", @@ -11755,6 +11942,7 @@ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.8.x" } @@ -11857,6 +12045,7 @@ "integrity": "sha512-ORF7g6qGnD+YtUG9yx4DFoqCShNMmUKiXuT5oWMHiOvt/4WFbHC6yCwQMTSBMno7AqntNCAzzcnnjowRkTL9eQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "accepts": "^2.0.0", "body-parser": "^2.0.1", @@ -11901,6 +12090,7 @@ "integrity": "sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -11911,6 +12101,7 @@ "integrity": "sha512-XqoSHeCGjVClAmoGFG3lVFqQFRIrTVw2OH3axRqAcfaw+gHWIfnASS92AV+Rl/mk0MupgZTRHQOjxY6YVnzK5w==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "mime-db": "^1.53.0" }, @@ -11937,7 +12128,8 @@ "url": "https://feross.org/support" } ], - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/external-editor": { "version": "3.1.0", @@ -11969,16 +12161,16 @@ "license": "Apache-2.0" }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "license": "MIT", "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" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -12017,16 +12209,26 @@ "license": "MIT" }, "node_modules/fast-uri": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", - "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.5.tgz", + "integrity": "sha512-5JnBCWpFlMo0a3ciDy/JckMzzv1U9coZrIhedq+HXxxUfDTAiS0LA8OKVao4G9BxmCVck/jtA5r3KAtRWEyD8Q==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], "license": "BSD-3-Clause" }, "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.18.0.tgz", + "integrity": "sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==", "license": "ISC", "dependencies": { "reusify": "^1.0.4" @@ -12054,32 +12256,6 @@ "bser": "2.1.1" } }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/figures/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/file-entry-cache": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", @@ -12134,6 +12310,7 @@ "integrity": "sha512-MX6Zo2adDViYh+GcxxB1dpO43eypOGUOL12rLCOTMQv/DfIbpSJUy4oQIIZhVZkH9e+bZWKMon0XHFEju16tkQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "debug": "2.6.9", "encodeurl": "~1.0.2", @@ -12153,6 +12330,7 @@ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } @@ -12163,6 +12341,7 @@ "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "common-path-prefix": "^3.0.0", "pkg-dir": "^7.0.0" @@ -12191,12 +12370,23 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/find-yarn-workspace-root": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", + "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "micromatch": "^4.0.2" + } + }, "node_modules/flat": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", "dev": true, "license": "BSD-3-Clause", + "peer": true, "bin": { "flat": "cli.js" } @@ -12223,14 +12413,14 @@ "license": "ISC" }, "node_modules/folder-hash": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/folder-hash/-/folder-hash-4.0.4.tgz", - "integrity": "sha512-zEyYH+UsHEfJJcCRSf9ai5I4CTZwZ8ObONRuEI5hcEmJY5pS0FUWKruX9mMnYJrgC7MlPFDYnGsK1R+WFYjLlQ==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/folder-hash/-/folder-hash-4.1.1.tgz", + "integrity": "sha512-1ZSlKJSbET3XpglnEXC9g+QF4QRZhqHIjpFfa4pAMfO4tu/XYPafpeHEX6zOFS2EolOIXr0lPh1eSjmdWItX2w==", "dev": true, "license": "MIT", "dependencies": { - "debug": "^4.3.3", - "minimatch": "~5.1.2" + "debug": "4.4.0", + "minimatch": "7.4.6" }, "bin": { "folder-hash": "bin/folder-hash" @@ -12240,9 +12430,9 @@ } }, "node_modules/folder-hash/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", + "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", "dev": true, "license": "ISC", "dependencies": { @@ -12250,6 +12440,9 @@ }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/follow-redirects": { @@ -12264,6 +12457,7 @@ } ], "license": "MIT", + "peer": true, "engines": { "node": ">=4.0" }, @@ -12311,6 +12505,7 @@ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -12321,6 +12516,7 @@ "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": "*" }, @@ -12348,75 +12544,44 @@ "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } }, - "node_modules/front-matter": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-4.0.2.tgz", - "integrity": "sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==", + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, "license": "MIT", "dependencies": { - "js-yaml": "^3.13.1" + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/front-matter/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "sprintf-js": "~1.0.2" + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/front-matter/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/front-matter/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true, - "license": "MIT" - }, - "node_modules/fs-minipass": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", - "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", - "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true, "license": "ISC" }, @@ -12477,17 +12642,22 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", + "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", "dev": true, "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.0", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -12506,6 +12676,20 @@ "node": ">=8.0.0" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -12617,6 +12801,7 @@ "integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@sindresorhus/merge-streams": "^2.1.0", "fast-glob": "^3.3.2", @@ -12638,6 +12823,7 @@ "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 4" } @@ -12650,14 +12836,11 @@ "license": "MIT" }, "node_modules/gopd": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.1.0.tgz", - "integrity": "sha512-FQoVQnqcdk4hVM4JN1eromaun4iuS34oStkdlLENLdpULsuQcTyXj8w7ayhuUfPwEYZ1ZOooOTT6fdA9Vmx/RA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "dev": true, "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, "engines": { "node": ">= 0.4" }, @@ -12702,7 +12885,8 @@ "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/has-flag": { "version": "4.0.0", @@ -12727,22 +12911,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-proto": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.1.0.tgz", - "integrity": "sha512-QLdzI9IIO1Jg7f9GT1gXpPpXArAn6cS31R1eEZqz08Gc+uQ8/XiqHWt17Fiw+2p6oTTIq5GXEpQkAlA88YRl/Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-symbols": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", @@ -12770,9 +12938,9 @@ } }, "node_modules/highlight.js": { - "version": "11.10.0", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.10.0.tgz", - "integrity": "sha512-SYVnVFswQER+zu1laSya563s+F8VDGt7o35d4utbamowvUNLLMovFqwCLSocpZTz3MgaSRA1IbqRWZv97dtErQ==", + "version": "11.11.1", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.11.1.tgz", + "integrity": "sha512-Xwwo44whKBVCYoliBQwaPvtd/2tYFkRQtXDWj1nackaV2JPXx3L0+Jvd8/qCJ2p+ML0/XVkJ2q+Mr+UVdpJK5w==", "license": "BSD-3-Clause", "engines": { "node": ">=12.0.0" @@ -12794,16 +12962,16 @@ "license": "MIT" }, "node_modules/hosted-git-info": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", - "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.2.tgz", + "integrity": "sha512-sYKnA7eGln5ov8T8gnYlkSOxFJvywzEx9BueN6xo/GKO8PGiI6uK6xx+DIGe45T3bdVjLAQDQW1aicT8z8JwQg==", "dev": true, "license": "ISC", "dependencies": { "lru-cache": "^10.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/hosted-git-info/node_modules/lru-cache": { @@ -12819,6 +12987,7 @@ "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "inherits": "^2.0.1", "obuf": "^1.0.0", @@ -12853,9 +13022,9 @@ "license": "MIT" }, "node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz", + "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==", "dev": true, "funding": [ "https://github.com/fb55/htmlparser2?sponsor=1", @@ -12868,8 +13037,8 @@ "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" + "domutils": "^3.1.0", + "entities": "^4.5.0" } }, "node_modules/http-cache-semantics": { @@ -12884,7 +13053,8 @@ "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/http-errors": { "version": "2.0.0", @@ -12892,6 +13062,7 @@ "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "depd": "2.0.0", "inherits": "2.0.4", @@ -12904,9 +13075,9 @@ } }, "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.9.tgz", + "integrity": "sha512-n1XsPy3rXVxlqxVioEWdC+0+M+SQw0DpJynwtOPo1X+ZlvdzTLtDBIJJlDQTnwZIFJrZSzSGmIOUdP8tu+SgLw==", "license": "MIT" }, "node_modules/http-proxy": { @@ -12915,6 +13086,7 @@ "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", @@ -12944,6 +13116,7 @@ "integrity": "sha512-usY0HG5nyDUwtqpiZdETNbmKtw3QQ1jwYFZ9wi5iHzX2BcILwQKtYDJPo7XHTsu5Z0B2Hj3W9NNnbd+AjFWjqg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/http-proxy": "^1.17.15", "debug": "^4.3.6", @@ -12957,13 +13130,13 @@ } }, "node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { @@ -13002,6 +13175,7 @@ "integrity": "sha512-Y93lCzHYgGWdrJ66yIktxiaGULYc6oGiABxhcO5AufBeOyoIdZF7bIfLaOrbM0iGIOXQQgxxRrFEnb+Y6w1n4A==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=10.18" } @@ -13025,6 +13199,7 @@ "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", "dev": true, "license": "ISC", + "peer": true, "engines": { "node": "^10 || ^12 || >= 14" }, @@ -13064,16 +13239,16 @@ } }, "node_modules/ignore-walk": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz", - "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-7.0.0.tgz", + "integrity": "sha512-T4gbf83A4NH95zvhVYZc+qWocBBGlpzUXLPGurJggw/WIOwicfXJChLDP/iBZnN5WqROSu5Bm3hhle4z8a8YGQ==", "dev": true, "license": "ISC", "dependencies": { "minimatch": "^9.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/image-size": { @@ -13083,6 +13258,7 @@ "dev": true, "license": "MIT", "optional": true, + "peer": true, "bin": { "image-size": "bin/image-size.js" }, @@ -13219,16 +13395,6 @@ "node": ">=0.8.19" } }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -13248,13 +13414,13 @@ "license": "ISC" }, "node_modules/ini": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", - "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-5.0.0.tgz", + "integrity": "sha512-+N0ngpO3e7cRUWOJAS7qw0IZIVc6XPrW4MlFBdD066F2L4k1L6ker3hLqSq7iXxU5tgS4WGkIUElWn5vogAEnw==", "dev": true, "license": "ISC", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/interactjs": { @@ -13295,6 +13461,7 @@ "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 10" } @@ -13312,6 +13479,7 @@ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -13320,9 +13488,9 @@ } }, "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, "license": "MIT", "dependencies": { @@ -13341,6 +13509,7 @@ "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", "dev": true, "license": "MIT", + "peer": true, "bin": { "is-docker": "cli.js" }, @@ -13401,6 +13570,7 @@ "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "is-docker": "^3.0.0" }, @@ -13424,13 +13594,6 @@ "node": ">=8" } }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true, - "license": "MIT" - }, "node_modules/is-mobile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-mobile/-/is-mobile-4.0.0.tgz", @@ -13443,6 +13606,7 @@ "integrity": "sha512-tUdRRAnhT+OtCZR/LxZelH/C7QtjtFrTu5tXCA8pl55eTUElUHT+GPYV8MBMBvea/j+NxQqVt3LbWMRir7Gx9g==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=16" }, @@ -13465,6 +13629,7 @@ "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=10" }, @@ -13478,6 +13643,7 @@ "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -13494,7 +13660,8 @@ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/is-stream": { "version": "2.0.1", @@ -13527,7 +13694,8 @@ "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/is-wsl": { "version": "3.1.0", @@ -13535,6 +13703,7 @@ "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "is-inside-container": "^1.0.0" }, @@ -13546,9 +13715,10 @@ } }, "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, "license": "MIT" }, "node_modules/isexe": { @@ -13570,6 +13740,7 @@ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -13799,6 +13970,41 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-circus/node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -13889,6 +14095,41 @@ } } }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-config/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-config/node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -13922,6 +14163,41 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-docblock": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", @@ -13952,6 +14228,41 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-environment-jsdom": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz", @@ -14103,10 +14414,45 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-matcher-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", - "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "node_modules/jest-leak-detector/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-leak-detector/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", "dev": true, "license": "MIT", "dependencies": { @@ -14119,6 +14465,41 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-message-util": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", @@ -14140,6 +14521,41 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-message-util/node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -14184,17 +14600,17 @@ } }, "node_modules/jest-preset-angular": { - "version": "14.4.2", - "resolved": "https://registry.npmjs.org/jest-preset-angular/-/jest-preset-angular-14.4.2.tgz", - "integrity": "sha512-BYYv0FaTDfBNh8WyA9mpOV3krfw20kurBGK8INZUnv7KZDAWZuQtCET4TwTWxSNQ9jS1OX1+a5weCm/bTDDM1A==", + "version": "14.5.0", + "resolved": "https://registry.npmjs.org/jest-preset-angular/-/jest-preset-angular-14.5.0.tgz", + "integrity": "sha512-L7eScW3IX5pZi2GRi0/q6Eo58qf76bdK93ozZxOI2gSK2fE+nnSIirkl2zvZ21AiJM5f4IawwBcqBhAPDvOs+Q==", "dev": true, "license": "MIT", "dependencies": { "bs-logger": "^0.2.6", "esbuild-wasm": ">=0.15.13", - "jest-environment-jsdom": "^29.0.0", - "jest-util": "^29.0.0", - "pretty-format": "^29.0.0", + "jest-environment-jsdom": "^29.7.0", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0", "ts-jest": "^29.0.0" }, "engines": { @@ -14208,9 +14624,50 @@ "@angular/core": ">=15.0.0 <20.0.0", "@angular/platform-browser-dynamic": ">=15.0.0 <20.0.0", "jest": "^29.0.0", + "jsdom": ">=20.0.0", "typescript": ">=4.8" + }, + "peerDependenciesMeta": { + "jsdom": { + "optional": true + } + } + }, + "node_modules/jest-preset-angular/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-preset-angular/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-preset-angular/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-regex-util": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", @@ -14396,6 +14853,41 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-util": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", @@ -14445,6 +14937,19 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/jest-validate/node_modules/camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", @@ -14458,6 +14963,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/jest-validate/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-watcher": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", @@ -14511,11 +15038,12 @@ } }, "node_modules/jiti": { - "version": "1.21.6", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", - "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", + "version": "1.21.7", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", + "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", "dev": true, "license": "MIT", + "peer": true, "bin": { "jiti": "bin/jiti.js" } @@ -14553,23 +15081,23 @@ "license": "MIT" }, "node_modules/jsdom": { - "version": "25.0.1", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-25.0.1.tgz", - "integrity": "sha512-8i7LzZj7BF8uplX+ZyOlIz86V6TAsSs+np6m1kpW9u0JWi4z/1t+FzcK1aek+ybTnAC4KhBL4uXCNT0wcUIeCw==", + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-26.0.0.tgz", + "integrity": "sha512-BZYDGVAIriBWTpIxYzrXjv3E/4u8+/pSG5bQdIYCbNCGOvsPkDQfTVLAIXAf9ETdCpduCVTkDe2NNZ8NIwUVzw==", "dev": true, "license": "MIT", "dependencies": { - "cssstyle": "^4.1.0", + "cssstyle": "^4.2.1", "data-urls": "^5.0.0", "decimal.js": "^10.4.3", - "form-data": "^4.0.0", + "form-data": "^4.0.1", "html-encoding-sniffer": "^4.0.0", "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", + "https-proxy-agent": "^7.0.6", "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", + "nwsapi": "^2.2.16", + "parse5": "^7.2.1", + "rrweb-cssom": "^0.8.0", "saxes": "^6.0.0", "symbol-tree": "^3.2.4", "tough-cookie": "^5.0.0", @@ -14577,7 +15105,7 @@ "webidl-conversions": "^7.0.0", "whatwg-encoding": "^3.1.1", "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", + "whatwg-url": "^14.1.0", "ws": "^8.18.0", "xml-name-validator": "^5.0.0" }, @@ -14585,7 +15113,7 @@ "node": ">=18" }, "peerDependencies": { - "canvas": "^2.11.2" + "canvas": "^3.0.0" }, "peerDependenciesMeta": { "canvas": { @@ -14594,15 +15122,15 @@ } }, "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "license": "MIT", "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/json-buffer": { @@ -14613,13 +15141,13 @@ "license": "MIT" }, "node_modules/json-parse-even-better-errors": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", - "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-4.0.0.tgz", + "integrity": "sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==", "dev": true, "license": "MIT", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/json-schema-traverse": { @@ -14629,6 +15157,26 @@ "dev": true, "license": "MIT" }, + "node_modules/json-stable-stringify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.2.1.tgz", + "integrity": "sha512-Lp6HbbBgosLmJbjx0pBLbgvx68FaFU1sdkmBuckmhhJ88kL13OA51CDtR2yJB50eCNMH9wRqtQNNiAqQH4YXnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "isarray": "^2.0.5", + "jsonify": "^0.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", @@ -14655,6 +15203,29 @@ "dev": true, "license": "MIT" }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", + "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", + "dev": true, + "license": "Public Domain", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", @@ -14683,14 +15254,15 @@ "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "source-map-support": "^0.5.5" } }, "node_modules/katex": { - "version": "0.16.11", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.11.tgz", - "integrity": "sha512-RQrI8rlHY92OLf3rho/Ts8i/XvjgguEjOkO1BEXcU3N8BqPpSzBNwV/G0Ukr+P/l3ivvJUE/Fa/CwbS6HesGNQ==", + "version": "0.16.20", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.20.tgz", + "integrity": "sha512-jjuLaMGD/7P8jUTpdKhA9IoqnH+yMFB3sdAFtq5QdAqeP2PjiSbnC3EaguKPNtv6dXXanHxp1ckwvF4a86LBig==", "funding": [ "https://opencollective.com/katex", "https://github.com/sponsors/katex" @@ -14719,10 +15291,21 @@ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } }, + "node_modules/klaw-sync": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz", + "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.11" + } + }, "node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -14739,17 +15322,19 @@ "integrity": "sha512-Gcnl4Bd+hRO9P9icCP/RVVT2o8SFlPXofuCxvA2SaZuH45whSvf5p8x5oih5ftLiVhEI4sp5xDY+R+b3zJBh5w==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "picocolors": "^1.0.0", "shell-quote": "^1.8.1" } }, "node_modules/less": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/less/-/less-4.2.0.tgz", - "integrity": "sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/less/-/less-4.2.1.tgz", + "integrity": "sha512-CasaJidTIhWmjcqv0Uj5vccMI7pJgfD9lMkKtlnTHAdJdYK/7l8pM9tumLyJ0zhbD4KJLo/YvTj+xznQd5NBhg==", "dev": true, "license": "Apache-2.0", + "peer": true, "dependencies": { "copy-anything": "^2.0.1", "parse-node-version": "^1.0.1", @@ -14777,6 +15362,7 @@ "integrity": "sha512-MYUxjSQSBUQmowc0l5nPieOYwMzGPUaTzB6inNW/bdPEG9zOL3eAAD1Qw5ZxSPk7we5dMojHwNODYMV1hq4EVg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 18.12.0" }, @@ -14805,6 +15391,7 @@ "dev": true, "license": "MIT", "optional": true, + "peer": true, "dependencies": { "pify": "^4.0.1", "semver": "^5.6.0" @@ -14820,6 +15407,7 @@ "dev": true, "license": "BSD-3-Clause", "optional": true, + "peer": true, "engines": { "node": ">=0.10.0" } @@ -14854,6 +15442,7 @@ "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", "dev": true, "license": "ISC", + "peer": true, "dependencies": { "webpack-sources": "^3.0.0" }, @@ -14889,14 +15478,11 @@ } }, "node_modules/lines-and-columns": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", - "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } + "license": "MIT" }, "node_modules/linkify-it": { "version": "5.0.0", @@ -14908,13 +15494,13 @@ } }, "node_modules/lint-staged": { - "version": "15.2.11", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.11.tgz", - "integrity": "sha512-Ev6ivCTYRTGs9ychvpVw35m/bcNDuBN+mnTeObCL5h+boS5WzBEC6LHI4I9F/++sZm1m+J2LEiy0gxL/R9TBqQ==", + "version": "15.4.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.4.0.tgz", + "integrity": "sha512-UdODqEZiQimd7rCzZ2vqFuELRNUda3mdv7M93jhE4SmDiqAj/w/msvwKgagH23jv2iCPw6Q5m+ltX4VlHvp2LQ==", "dev": true, "license": "MIT", "dependencies": { - "chalk": "~5.3.0", + "chalk": "~5.4.1", "commander": "~12.1.0", "debug": "~4.4.0", "execa": "~8.0.1", @@ -14935,36 +15521,10 @@ "url": "https://opencollective.com/lint-staged" } }, - "node_modules/lint-staged/node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/lint-staged/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/lint-staged/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", "dev": true, "license": "MIT", "engines": { @@ -14984,13 +15544,6 @@ "node": ">=18" } }, - "node_modules/lint-staged/node_modules/eventemitter3": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", - "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", - "dev": true, - "license": "MIT" - }, "node_modules/lint-staged/node_modules/execa": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", @@ -15051,24 +15604,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lint-staged/node_modules/listr2": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.2.5.tgz", - "integrity": "sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "cli-truncate": "^4.0.0", - "colorette": "^2.0.20", - "eventemitter3": "^5.0.1", - "log-update": "^6.1.0", - "rfdc": "^1.4.1", - "wrap-ansi": "^9.0.0" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/lint-staged/node_modules/mimic-fn": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", @@ -15127,22 +15662,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lint-staged/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, "node_modules/lint-staged/node_modules/strip-final-newline": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", @@ -15156,28 +15675,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lint-staged/node_modules/wrap-ansi": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.0.tgz", - "integrity": "sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.2.1", - "string-width": "^7.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, "node_modules/listr2": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.2.4.tgz", - "integrity": "sha512-opevsywziHd3zHCVQGAj8zu+Z3yHNkkoYhWIGnq54RrCVwLz0MozotJEDnKsIBLvkfLGN6BLOyAeRrYI0pKA4g==", + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.2.5.tgz", + "integrity": "sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ==", "dev": true, "license": "MIT", "dependencies": { @@ -15260,29 +15761,30 @@ } }, "node_modules/lmdb": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-3.0.13.tgz", - "integrity": "sha512-UGe+BbaSUQtAMZobTb4nHvFMrmvuAQKSeaqAX2meTEQjfsbpl5sxdHD8T72OnwD4GU9uwNhYXIVe4QGs8N9Zyw==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-3.2.2.tgz", + "integrity": "sha512-LriG93la4PbmPMwI7Hbv8W+0ncLK7549w4sbZSi4QGDjnnxnmNMgxUkaQTEMzH8TpwsfFvgEjpLX7V8B/I9e3g==", "dev": true, "hasInstallScript": true, "license": "MIT", + "optional": true, "dependencies": { - "msgpackr": "^1.10.2", + "msgpackr": "^1.11.2", "node-addon-api": "^6.1.0", "node-gyp-build-optional-packages": "5.2.2", - "ordered-binary": "^1.4.1", + "ordered-binary": "^1.5.3", "weak-lru-cache": "^1.2.2" }, "bin": { "download-lmdb-prebuilds": "bin/download-prebuilds.js" }, "optionalDependencies": { - "@lmdb/lmdb-darwin-arm64": "3.0.13", - "@lmdb/lmdb-darwin-x64": "3.0.13", - "@lmdb/lmdb-linux-arm": "3.0.13", - "@lmdb/lmdb-linux-arm64": "3.0.13", - "@lmdb/lmdb-linux-x64": "3.0.13", - "@lmdb/lmdb-win32-x64": "3.0.13" + "@lmdb/lmdb-darwin-arm64": "3.2.2", + "@lmdb/lmdb-darwin-x64": "3.2.2", + "@lmdb/lmdb-linux-arm": "3.2.2", + "@lmdb/lmdb-linux-arm64": "3.2.2", + "@lmdb/lmdb-linux-x64": "3.2.2", + "@lmdb/lmdb-win32-x64": "3.2.2" } }, "node_modules/loader-runner": { @@ -15291,6 +15793,7 @@ "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=6.11.5" } @@ -15301,6 +15804,7 @@ "integrity": "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 12.13.0" } @@ -15338,7 +15842,8 @@ "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/lodash.memoize": { "version": "4.1.2", @@ -15540,9 +16045,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.11", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", - "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", "dev": true, "license": "MIT", "dependencies": { @@ -15573,27 +16078,26 @@ "license": "ISC" }, "node_modules/make-fetch-happen": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", - "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", "dev": true, "license": "ISC", "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", + "@npmcli/agent": "^3.0.0", + "cacache": "^19.0.1", "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", + "minipass-fetch": "^4.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "proc-log": "^4.2.0", + "negotiator": "^1.0.0", + "proc-log": "^5.0.0", "promise-retry": "^2.0.1", - "ssri": "^10.0.0" + "ssri": "^12.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/makeerror": { @@ -15629,6 +16133,18 @@ "integrity": "sha512-CVDYqSgmErLAqInwWu8WmAR2nX6MMIBIt8LB6qg8DNldca9+aoC6ZyuY0lvBMsaTSHNFJRkcHVR1XjLw9nr9qQ==", "license": "MIT" }, + "node_modules/markdown-it-github-alerts": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/markdown-it-github-alerts/-/markdown-it-github-alerts-0.3.0.tgz", + "integrity": "sha512-qyIuDyfdrVGHhY+E/44yMyNA3ZnayaT/KKT2VgkIz1nmrgiuPkdgPUh4YBZwgJ9VKEGJvGd82Ndrc4oGftrJWg==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "markdown-it": "^14.0.0" + } + }, "node_modules/markdown-it-highlightjs": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/markdown-it-highlightjs/-/markdown-it-highlightjs-4.2.0.tgz", @@ -15644,6 +16160,16 @@ "integrity": "sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==", "license": "ISC" }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/mdurl": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", @@ -15656,16 +16182,18 @@ "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } }, "node_modules/memfs": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.14.1.tgz", - "integrity": "sha512-Fq5CMEth+2iprLJ5mNizRcWuiwRZYjNkUD0zKk224jZunE9CRacTRDK8QLALbMBlNX2y3nY6lKZbesCwDwacig==", + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.17.0.tgz", + "integrity": "sha512-4eirfZ7thblFmqFjywlTmuWVSvccHAJbn1r8qQLzmTO11qcqpohOjmY2mFce6x7x7WtskzRqApPD0hv+Oa74jg==", "dev": true, "license": "Apache-2.0", + "peer": true, "dependencies": { "@jsonjoy.com/json-pack": "^1.0.3", "@jsonjoy.com/util": "^1.3.0", @@ -15686,6 +16214,7 @@ "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=18" }, @@ -15715,6 +16244,7 @@ "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -15751,6 +16281,7 @@ "dev": true, "license": "MIT", "optional": true, + "peer": true, "bin": { "mime": "cli.js" }, @@ -15805,11 +16336,12 @@ } }, "node_modules/mini-css-extract-plugin": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.0.tgz", - "integrity": "sha512-Zs1YsZVfemekSZG+44vBsYTLQORkPMwnlv+aehcxK/NLKC+EGhDB39/YePYYqx/sTk6NnYpuqikhSn7+JIevTA==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.2.tgz", + "integrity": "sha512-GJuACcS//jtq4kCtd5ii/M0SZf7OZRH+BxdqXZHaJfb8TJiVl+NgQRPwiYt2EuqeSkNydn/7vP+bcE27C5mb9w==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "schema-utils": "^4.0.0", "tapable": "^2.2.1" @@ -15830,7 +16362,8 @@ "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", "dev": true, - "license": "ISC" + "license": "ISC", + "peer": true }, "node_modules/minimatch": { "version": "9.0.5", @@ -15882,18 +16415,18 @@ } }, "node_modules/minipass-fetch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", - "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.0.tgz", + "integrity": "sha512-2v6aXUXwLP1Epd/gc32HAMIWoczx+fZwEPRHm/VwtrJzRGwR1qGZXEYV3Zp8ZjjbwaZhMrM6uHV4KVkk+XCc2w==", "dev": true, "license": "MIT", "dependencies": { "minipass": "^7.0.3", "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" + "minizlib": "^3.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" }, "optionalDependencies": { "encoding": "^0.1.13" @@ -15999,39 +16532,19 @@ "license": "ISC" }, "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", + "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", "dev": true, "license": "MIT", "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" + "minipass": "^7.0.4", + "rimraf": "^5.0.5" }, "engines": { - "node": ">=8" + "node": ">= 18" } }, - "node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "license": "ISC" - }, "node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -16089,6 +16602,7 @@ "integrity": "sha512-F9UngXRlPyWCDEASDpTf6c9uNhGPTqnTeLVt7bN+bU1eajoR/8V9ys2BRaV5C/e5ihE6sJ9uPIKaYt6bFuO32g==", "dev": true, "license": "MIT", + "optional": true, "optionalDependencies": { "msgpackr-extract": "^3.0.2" } @@ -16122,6 +16636,7 @@ "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "dns-packet": "^5.2.2", "thunky": "^1.0.2" @@ -16131,13 +16646,13 @@ } }, "node_modules/mute-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", - "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-2.0.0.tgz", + "integrity": "sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==", "dev": true, "license": "ISC", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/n-gram": { @@ -16183,6 +16698,7 @@ "dev": true, "license": "MIT", "optional": true, + "peer": true, "dependencies": { "iconv-lite": "^0.6.3", "sax": "^1.2.4" @@ -16201,6 +16717,7 @@ "dev": true, "license": "MIT", "optional": true, + "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -16209,9 +16726,9 @@ } }, "node_modules/negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", "dev": true, "license": "MIT", "engines": { @@ -16223,7 +16740,8 @@ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/ng-mocks": { "version": "14.13.1", @@ -16242,89 +16760,38 @@ } }, "node_modules/ngx-infinite-scroll": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/ngx-infinite-scroll/-/ngx-infinite-scroll-18.0.0.tgz", - "integrity": "sha512-D183TDwpsd9Zl56UmItsl3RzHdN25srAISfg6lc3A8mEKkEgOq0s7ZzRAYcx8DHsAkMgtZqjIPEvMifD3DOB/g==", + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/ngx-infinite-scroll/-/ngx-infinite-scroll-19.0.0.tgz", + "integrity": "sha512-Ft4xNNDLXoDGi2hF6ylehjxbG8JIgfoL6qDWWcebGMcbh1CEfEsh0HGkDuFlX/cBBMenRh2HFbXlYq8BAtbvLw==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "peerDependencies": { - "@angular/common": ">=18.0.0 <19.0.0", - "@angular/core": ">=18.0.0 <19.0.0" + "@angular/common": ">=19.0.0 <20.0.0", + "@angular/core": ">=19.0.0 <20.0.0" } }, "node_modules/ngx-webstorage": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/ngx-webstorage/-/ngx-webstorage-18.0.0.tgz", - "integrity": "sha512-Fg9y0Vb89CBSjSmJPjvotZljyqSNo97TlWpR6OIsHzuMwrj7u9OgEBmqOgiRK2GGsUdVMy8SF3s3Ymier6xuew==", + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/ngx-webstorage/-/ngx-webstorage-19.0.1.tgz", + "integrity": "sha512-5Z7YowQKvmABb2d80AavOo+DSRu+bduxDpDTc7go7clJyMtIwidINa3UC3m13LgkBc8QJj9K8LkY0ugwTmYDdA==", "license": "MIT", "dependencies": { "tslib": "^2.0.0" }, "peerDependencies": { - "@angular/common": "^18.0.0", - "@angular/core": "^18.0.0" - } - }, - "node_modules/ngxtension": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/ngxtension/-/ngxtension-4.2.0.tgz", - "integrity": "sha512-cICPiNES4uKJaHASU5c1dkYYfgchIQ0TAZwcZ8NgGX9HbFzAClyS3TG8hSOHA8GIaT03eJU6CKCMSBrWyVjxZA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@angular-eslint/bundled-angular-compiler": "^18.0.1", - "@nx/devkit": "^20.0.0", - "nx": "^20.0.0", - "ts-morph": "^22.0.0", - "tslib": "^2.3.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@angular/common": ">=16.0.0", - "@angular/core": ">=16.0.0", - "@use-gesture/vanilla": "^10.0.0", - "rxjs": "^6.0.0 || ^7.0.0" - }, - "peerDependenciesMeta": { - "@use-gesture/vanilla": { - "optional": true - } - } - }, - "node_modules/nice-napi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", - "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "!win32" - ], - "dependencies": { - "node-addon-api": "^3.0.0", - "node-gyp-build": "^4.2.2" + "@angular/common": "^19.0.0", + "@angular/core": "^19.0.0" } }, - "node_modules/nice-napi/node_modules/node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true, - "license": "MIT", - "optional": true - }, "node_modules/node-addon-api": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-6.1.0.tgz", "integrity": "sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==", "dev": true, - "license": "MIT" + "license": "MIT", + "optional": true }, "node_modules/node-forge": { "version": "1.3.1", @@ -16332,14 +16799,15 @@ "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", "dev": true, "license": "(BSD-3-Clause OR GPL-2.0)", + "peer": true, "engines": { "node": ">= 6.13.0" } }, "node_modules/node-gyp": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.3.1.tgz", - "integrity": "sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.0.0.tgz", + "integrity": "sha512-zQS+9MTTeCMgY0F3cWPyJyRFAkVltQ1uXm+xXu/ES6KFgC6Czo1Seb9vQW2wNxSX2OrDTiqL0ojtkFxBQ0ypIw==", "dev": true, "license": "MIT", "dependencies": { @@ -16347,18 +16815,18 @@ "exponential-backoff": "^3.1.1", "glob": "^10.3.10", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^13.0.0", - "nopt": "^7.0.0", - "proc-log": "^4.1.0", + "make-fetch-happen": "^14.0.3", + "nopt": "^8.0.0", + "proc-log": "^5.0.0", "semver": "^7.3.5", - "tar": "^6.2.1", - "which": "^4.0.0" + "tar": "^7.4.3", + "which": "^5.0.0" }, "bin": { "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/node-gyp-build": { @@ -16379,6 +16847,7 @@ "integrity": "sha512-s+w+rBWnpTMwSFbaE0UXsRlg7hU4FjekKU4eyAih5T8nJuNZT1nNsskXpxmeqSK9UzkBl6UgRlnKc8hz8IEqOw==", "dev": true, "license": "MIT", + "optional": true, "dependencies": { "detect-libc": "^2.0.1" }, @@ -16388,6 +16857,16 @@ "node-gyp-build-optional-packages-test": "build-test.js" } }, + "node_modules/node-gyp/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, "node_modules/node-gyp/node_modules/glob": { "version": "10.4.5", "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", @@ -16419,10 +16898,44 @@ "node": ">=16" } }, + "node_modules/node-gyp/node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", + "dev": true, + "license": "ISC", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/node-gyp/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", "dev": true, "license": "ISC", "dependencies": { @@ -16432,33 +16945,36 @@ "node-which": "bin/which.js" }, "engines": { - "node": "^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "node_modules/node-gyp/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", "dev": true, - "license": "MIT" + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } }, - "node_modules/node-machine-id": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz", - "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==", + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", "dev": true, "license": "MIT" }, "node_modules/node-releases": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", - "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", "license": "MIT" }, "node_modules/nopt": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", - "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.0.0.tgz", + "integrity": "sha512-1L/fTJ4UmV/lUxT2Uf006pfZKTvAgCF+chz+0OgBHO8u2Z67pE7AaAUUj7CJy0lXqHmymUvGFt6NE9R3HER0yw==", "dev": true, "license": "ISC", "dependencies": { @@ -16468,22 +16984,22 @@ "nopt": "bin/nopt.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/normalize-package-data": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", - "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-7.0.0.tgz", + "integrity": "sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "hosted-git-info": "^7.0.0", + "hosted-git-info": "^8.0.0", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/normalize-path": { @@ -16502,109 +17018,110 @@ "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } }, "node_modules/npm-bundled": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz", - "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-4.0.0.tgz", + "integrity": "sha512-IxaQZDMsqfQ2Lz37VvyyEtKLe8FsRZuysmedy/N06TU1RyVppYKXrO4xIhR0F+7ubIBox6Q7nir6fQI3ej39iA==", "dev": true, "license": "ISC", "dependencies": { - "npm-normalize-package-bin": "^3.0.0" + "npm-normalize-package-bin": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-install-checks": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", - "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.1.tgz", + "integrity": "sha512-u6DCwbow5ynAX5BdiHQ9qvexme4U3qHW3MWe5NqH+NeBm0LbiH6zvGjNNew1fY+AZZUtVHbOPF3j7mJxbUzpXg==", "dev": true, "license": "BSD-2-Clause", "dependencies": { "semver": "^7.1.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-normalize-package-bin": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", - "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", + "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", "dev": true, "license": "ISC", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-package-arg": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.3.tgz", - "integrity": "sha512-sHGJy8sOC1YraBywpzQlIKBE4pBbGbiF95U6Auspzyem956E0+FtDtsx1ZxlOJkQCZ1AFXAY/yuvtFYrOxF+Bw==", + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.1.tgz", + "integrity": "sha512-aDxjFfPV3Liw0WOBWlyZLMBqtbgbg03rmGvHDJa2Ttv7tIz+1oB5qWec4psCDFZcZi9b5XdGkPdQiJxOPzvQRQ==", "dev": true, "license": "ISC", "dependencies": { - "hosted-git-info": "^7.0.0", - "proc-log": "^4.0.0", + "hosted-git-info": "^8.0.0", + "proc-log": "^5.0.0", "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" + "validate-npm-package-name": "^6.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-packlist": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", - "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-9.0.0.tgz", + "integrity": "sha512-8qSayfmHJQTx3nJWYbbUmflpyarbLMBc6LCAjYsiGtXxDB68HaZpb8re6zeaLGxZzDuMdhsg70jryJe+RrItVQ==", "dev": true, "license": "ISC", "dependencies": { - "ignore-walk": "^6.0.4" + "ignore-walk": "^7.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-pick-manifest": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", - "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-10.0.0.tgz", + "integrity": "sha512-r4fFa4FqYY8xaM7fHecQ9Z2nE9hgNfJR+EmoKv0+chvzWkBcORX3r0FpTByP+CbOVJDladMXnPQGVN8PBLGuTQ==", "dev": true, "license": "ISC", "dependencies": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^11.0.0", + "npm-install-checks": "^7.1.0", + "npm-normalize-package-bin": "^4.0.0", + "npm-package-arg": "^12.0.0", "semver": "^7.3.5" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-registry-fetch": { - "version": "17.1.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz", - "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==", + "version": "18.0.2", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-18.0.2.tgz", + "integrity": "sha512-LeVMZBBVy+oQb5R6FDV9OlJCcWDU+al10oKpe+nsvcHnG24Z3uM3SvJYKfGJlfGjVU8v9liejCrUR/M5HO5NEQ==", "dev": true, "license": "ISC", "dependencies": { - "@npmcli/redact": "^2.0.0", + "@npmcli/redact": "^3.0.0", "jsonparse": "^1.3.1", - "make-fetch-happen": "^13.0.0", + "make-fetch-happen": "^14.0.0", "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minizlib": "^2.1.2", - "npm-package-arg": "^11.0.0", - "proc-log": "^4.0.0" + "minipass-fetch": "^4.0.0", + "minizlib": "^3.0.1", + "npm-package-arg": "^12.0.0", + "proc-log": "^5.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-run-path": { @@ -16640,265 +17157,6 @@ "dev": true, "license": "MIT" }, - "node_modules/nx": { - "version": "20.1.4", - "resolved": "https://registry.npmjs.org/nx/-/nx-20.1.4.tgz", - "integrity": "sha512-hyvGYxTzBkPxSXAB2tuqdv9TpVde5xOdGalsIdhF7j7PI3nwPpqtc3y28YTgRgpxtOE1Y6BfDNkXMO1SW0xu2w==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "@napi-rs/wasm-runtime": "0.2.4", - "@yarnpkg/lockfile": "^1.1.0", - "@yarnpkg/parsers": "3.0.2", - "@zkochan/js-yaml": "0.0.7", - "axios": "^1.7.4", - "chalk": "^4.1.0", - "cli-cursor": "3.1.0", - "cli-spinners": "2.6.1", - "cliui": "^8.0.1", - "dotenv": "~16.4.5", - "dotenv-expand": "~11.0.6", - "enquirer": "~2.3.6", - "figures": "3.2.0", - "flat": "^5.0.2", - "front-matter": "^4.0.2", - "ignore": "^5.0.4", - "jest-diff": "^29.4.1", - "jsonc-parser": "3.2.0", - "lines-and-columns": "2.0.3", - "minimatch": "9.0.3", - "node-machine-id": "1.1.12", - "npm-run-path": "^4.0.1", - "open": "^8.4.0", - "ora": "5.3.0", - "semver": "^7.5.3", - "string-width": "^4.2.3", - "tar-stream": "~2.2.0", - "tmp": "~0.2.1", - "tsconfig-paths": "^4.1.2", - "tslib": "^2.3.0", - "yargs": "^17.6.2", - "yargs-parser": "21.1.1" - }, - "bin": { - "nx": "bin/nx.js", - "nx-cloud": "bin/nx-cloud.js" - }, - "optionalDependencies": { - "@nx/nx-darwin-arm64": "20.1.4", - "@nx/nx-darwin-x64": "20.1.4", - "@nx/nx-freebsd-x64": "20.1.4", - "@nx/nx-linux-arm-gnueabihf": "20.1.4", - "@nx/nx-linux-arm64-gnu": "20.1.4", - "@nx/nx-linux-arm64-musl": "20.1.4", - "@nx/nx-linux-x64-gnu": "20.1.4", - "@nx/nx-linux-x64-musl": "20.1.4", - "@nx/nx-win32-arm64-msvc": "20.1.4", - "@nx/nx-win32-x64-msvc": "20.1.4" - }, - "peerDependencies": { - "@swc-node/register": "^1.8.0", - "@swc/core": "^1.3.85" - }, - "peerDependenciesMeta": { - "@swc-node/register": { - "optional": true - }, - "@swc/core": { - "optional": true - } - } - }, - "node_modules/nx/node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "license": "MIT", - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nx/node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/nx/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "license": "MIT" - }, - "node_modules/nx/node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/nx/node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "license": "MIT", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nx/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/nx/node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nx/node_modules/jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true, - "license": "MIT" - }, - "node_modules/nx/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/nx/node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nx/node_modules/ora": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz", - "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", - "dev": true, - "license": "MIT", - "dependencies": { - "bl": "^4.0.3", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "log-symbols": "^4.0.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nx/node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "license": "MIT", - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nx/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/nx/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nx/node_modules/tmp": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", - "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.14" - } - }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -16914,6 +17172,7 @@ "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.4" }, @@ -16921,12 +17180,23 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/on-finished": { "version": "2.4.1", @@ -16934,6 +17204,7 @@ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "ee-first": "1.1.1" }, @@ -16947,6 +17218,7 @@ "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } @@ -16983,6 +17255,7 @@ "integrity": "sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "default-browser": "^5.2.1", "define-lazy-prop": "^3.0.0", @@ -17077,7 +17350,8 @@ "resolved": "https://registry.npmjs.org/ordered-binary/-/ordered-binary-1.5.3.tgz", "integrity": "sha512-oGFr3T+pYdTGJ+YFEILMpS3es+GiIbs9h/XQrclBXUtd44ey7XwfsMzM31f64I1SQOawDoDr/D823kNCADI8TA==", "dev": true, - "license": "MIT" + "license": "MIT", + "optional": true }, "node_modules/os-tmpdir": { "version": "1.0.2", @@ -17122,16 +17396,13 @@ } }, "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.3.tgz", + "integrity": "sha512-VkndIv2fIB99swvQoA65bm+fsmt6UNdGeIB0oxBs+WhAhdh08QA04JXpI7rbB9r08/nkbysKoya9rtDERYOYMA==", "dev": true, "license": "MIT", - "dependencies": { - "aggregate-error": "^3.0.0" - }, "engines": { - "node": ">=10" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -17143,6 +17414,7 @@ "integrity": "sha512-hEt02O4hUct5wtwg4H4KcWgDdm+l1bOaEy/hWzd8xtXB9BqxTWBBhb+2ImAtH4Cv4rPjV76xN3Zumqk3k3AhhQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/retry": "0.12.2", "is-network-error": "^1.0.0", @@ -17161,6 +17433,7 @@ "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 4" } @@ -17183,35 +17456,35 @@ "license": "BlueOak-1.0.0" }, "node_modules/pacote": { - "version": "18.0.6", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz", - "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==", + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-20.0.0.tgz", + "integrity": "sha512-pRjC5UFwZCgx9kUFDVM9YEahv4guZ1nSLqwmWiLUnDbGsjs+U5w7z6Uc8HNR1a6x8qnu5y9xtGE6D1uAuYz+0A==", "dev": true, "license": "ISC", "dependencies": { - "@npmcli/git": "^5.0.0", - "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/package-json": "^5.1.0", - "@npmcli/promise-spawn": "^7.0.0", - "@npmcli/run-script": "^8.0.0", - "cacache": "^18.0.0", + "@npmcli/git": "^6.0.0", + "@npmcli/installed-package-contents": "^3.0.0", + "@npmcli/package-json": "^6.0.0", + "@npmcli/promise-spawn": "^8.0.0", + "@npmcli/run-script": "^9.0.0", + "cacache": "^19.0.0", "fs-minipass": "^3.0.0", "minipass": "^7.0.2", - "npm-package-arg": "^11.0.0", - "npm-packlist": "^8.0.0", - "npm-pick-manifest": "^9.0.0", - "npm-registry-fetch": "^17.0.0", - "proc-log": "^4.0.0", + "npm-package-arg": "^12.0.0", + "npm-packlist": "^9.0.0", + "npm-pick-manifest": "^10.0.0", + "npm-registry-fetch": "^18.0.0", + "proc-log": "^5.0.0", "promise-retry": "^2.0.1", - "sigstore": "^2.2.0", - "ssri": "^10.0.0", + "sigstore": "^3.0.0", + "ssri": "^12.0.0", "tar": "^6.1.11" }, "bin": { "pacote": "bin/index.js" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/pako": { @@ -17221,9 +17494,9 @@ "license": "(MIT AND Zlib)" }, "node_modules/papaparse": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.4.1.tgz", - "integrity": "sha512-HipMsgJkZu8br23pW15uvo6sib6wne/4woLZPlFf3rpDyMe9ywEXUsuD7+6K9PRkJlVT51j/sCOYDKGGS3ZJrw==", + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.5.1.tgz", + "integrity": "sha512-EuEKUhyxrHVozD7g3/ztsJn6qaKse8RPfR6buNB2dMJvdtXNhcw8jccVi/LxNEY3HVrV6GO6Z4OoeCG9Iy9wpA==", "license": "MIT" }, "node_modules/parent-module": { @@ -17265,19 +17538,13 @@ "dev": true, "license": "MIT" }, - "node_modules/parse-json/node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true, - "license": "MIT" - }, "node_modules/parse-node-version": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.10" } @@ -17329,14 +17596,102 @@ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } }, - "node_modules/path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "node_modules/patch-package": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-8.0.0.tgz", + "integrity": "sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@yarnpkg/lockfile": "^1.1.0", + "chalk": "^4.1.2", + "ci-info": "^3.7.0", + "cross-spawn": "^7.0.3", + "find-yarn-workspace-root": "^2.0.0", + "fs-extra": "^9.0.0", + "json-stable-stringify": "^1.0.2", + "klaw-sync": "^6.0.0", + "minimist": "^1.2.6", + "open": "^7.4.2", + "rimraf": "^2.6.3", + "semver": "^7.5.3", + "slash": "^2.0.0", + "tmp": "^0.0.33", + "yaml": "^2.2.2" + }, + "bin": { + "patch-package": "index.js" + }, + "engines": { + "node": ">=14", + "npm": ">5" + } + }, + "node_modules/patch-package/node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/patch-package/node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/patch-package/node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/patch-package/node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", "dev": true, "license": "MIT" }, @@ -17407,6 +17762,7 @@ "integrity": "sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=16" } @@ -17417,6 +17773,7 @@ "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -17425,9 +17782,9 @@ } }, "node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.1.tgz", + "integrity": "sha512-6jpjMpOth5S9ITVu5clZ7NOgHNsv5vRQdheL9ztp2vZmM6fRbLvyua1tiBIL4lk8SAe3ARzeXEly6siXCjDHDw==", "dev": true, "license": "MIT" }, @@ -17460,15 +17817,15 @@ "license": "0BSD" }, "node_modules/pdfjs-dist": { - "version": "4.9.155", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.9.155.tgz", - "integrity": "sha512-epRZn6DQQKCOEqbmFsxkiMBm1MHaNrnr6T4VBNP0bsDvdJdmrWcZbS5cgJXW68P0d3uJTlFhF6Wms2tlSgPYig==", + "version": "4.10.38", + "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", + "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", "license": "Apache-2.0", "engines": { "node": ">=20" }, "optionalDependencies": { - "@napi-rs/canvas": "^0.1.64" + "@napi-rs/canvas": "^0.1.65" } }, "node_modules/pepjs": { @@ -17516,6 +17873,7 @@ "dev": true, "license": "MIT", "optional": true, + "peer": true, "engines": { "node": ">=6" } @@ -17531,13 +17889,13 @@ } }, "node_modules/piscina": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.6.1.tgz", - "integrity": "sha512-z30AwWGtQE+Apr+2WBZensP2lIvwoaMcOPkQlIEmSGMJNUvaYACylPYrQM6wSdUNJlnDVMSpLv7xTMJqlVshOA==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.8.0.tgz", + "integrity": "sha512-EZJb+ZxDrQf3dihsUL7p42pjNyrNIFJCrRHPMgxu/svsj+P3xS3fuEWp7k2+rfsavfl1N0G29b1HGs7J0m8rZA==", "dev": true, "license": "MIT", "optionalDependencies": { - "nice-napi": "^1.0.2" + "@napi-rs/nice": "^1.0.1" } }, "node_modules/pkg-dir": { @@ -17546,6 +17904,7 @@ "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "find-up": "^6.3.0" }, @@ -17562,6 +17921,7 @@ "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "locate-path": "^7.1.0", "path-exists": "^5.0.0" @@ -17579,6 +17939,7 @@ "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "p-locate": "^6.0.0" }, @@ -17595,6 +17956,7 @@ "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "yocto-queue": "^1.0.0" }, @@ -17611,6 +17973,7 @@ "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "p-limit": "^4.0.0" }, @@ -17627,6 +17990,7 @@ "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -17637,6 +18001,7 @@ "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12.20" }, @@ -17645,9 +18010,9 @@ } }, "node_modules/postcss": { - "version": "8.4.49", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", - "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.0.tgz", + "integrity": "sha512-27VKOqrYfPncKA2NrFOVhP5MGAfHKLYn/Q0mz9cNQyRAKYi3VNHwYU2qKKqPCqgBmeeJ0uAFB56NumXZ5ZReXg==", "dev": true, "funding": [ { @@ -17665,7 +18030,7 @@ ], "license": "MIT", "dependencies": { - "nanoid": "^3.3.7", + "nanoid": "^3.3.8", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, @@ -17679,6 +18044,7 @@ "integrity": "sha512-0IeqyAsG6tYiDRCYKQJLAmgQr47DX6N7sFSWvQxt6AcupX8DIdmykuk/o/tx0Lze3ErGHJEp5OSRxrelC6+NdQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "cosmiconfig": "^9.0.0", "jiti": "^1.20.0", @@ -17718,6 +18084,7 @@ "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", "dev": true, "license": "ISC", + "peer": true, "engines": { "node": "^10 || ^12 || >= 14" }, @@ -17726,11 +18093,12 @@ } }, "node_modules/postcss-modules-local-by-default": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.1.0.tgz", - "integrity": "sha512-rm0bdSv4jC3BDma3s9H19ZddW0aHX6EoqwDYU2IfZhRN+53QrufTRo2IdkAbRqLx4R2IYbZnbjKKxg4VN5oU9Q==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "icss-utils": "^5.0.0", "postcss-selector-parser": "^7.0.0", @@ -17749,6 +18117,7 @@ "integrity": "sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==", "dev": true, "license": "ISC", + "peer": true, "dependencies": { "postcss-selector-parser": "^7.0.0" }, @@ -17765,6 +18134,7 @@ "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", "dev": true, "license": "ISC", + "peer": true, "dependencies": { "icss-utils": "^5.0.0" }, @@ -17781,6 +18151,7 @@ "integrity": "sha512-9RbEr1Y7FFfptd/1eEdntyjMwLeghW1bHX9GWjXo19vx4ytPQhANltvVxDggzJl7mnWM+dX28kb6cyS/4iQjlQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -17835,18 +18206,19 @@ } }, "node_modules/pretty-format": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", - "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@jest/schemas": "^29.6.3", + "ansi-regex": "^5.0.1", "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" + "react-is": "^17.0.1" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, "node_modules/pretty-format/node_modules/ansi-styles": { @@ -17855,6 +18227,7 @@ "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=10" }, @@ -17862,14 +18235,22 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/pretty-format/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true, + "license": "MIT", + "peer": true + }, "node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", "dev": true, "license": "ISC", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/process-nextick-args": { @@ -17936,6 +18317,7 @@ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "forwarded": "0.2.0", "ipaddr.js": "1.9.1" @@ -17950,24 +18332,19 @@ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.10" } }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true, - "license": "MIT" - }, "node_modules/prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", "dev": true, "license": "MIT", - "optional": true + "optional": true, + "peer": true }, "node_modules/punycode": { "version": "2.3.1", @@ -18011,6 +18388,7 @@ "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, "license": "BSD-3-Clause", + "peer": true, "dependencies": { "side-channel": "^1.0.6" }, @@ -18053,6 +18431,7 @@ "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "safe-buffer": "^5.1.0" } @@ -18063,6 +18442,7 @@ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -18073,6 +18453,7 @@ "integrity": "sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", @@ -18089,6 +18470,7 @@ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -18140,10 +18522,11 @@ } }, "node_modules/react-is": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", - "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", - "license": "MIT" + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.0.0.tgz", + "integrity": "sha512-H91OHcwjZsbq3ClIDHMzBShc1rotbfACdWENsmEf0IFvZ3FgGPtdHMcsv45bQ1hAbgdfiA8SnxTKfDS+x/8m2g==", + "license": "MIT", + "peer": true }, "node_modules/react-redux": { "version": "8.1.3", @@ -18184,6 +18567,12 @@ } } }, + "node_modules/react-redux/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "license": "MIT" + }, "node_modules/react-tooltip": { "version": "4.5.1", "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.1.tgz", @@ -18234,30 +18623,23 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } + "node_modules/readable-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "license": "MIT" }, - "node_modules/readdirp/node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, + "node_modules/readdirp": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.1.tgz", + "integrity": "sha512-h80JrZu/MHUZCyHu5ciuoI0+WxsCxzxJTILn6Fs8rxSnFPh+UVHYfeIxK1nVGugMqkfC4vJcBOYbkfkwYK0+gw==", "license": "MIT", "engines": { - "node": ">=8.6" + "node": ">= 14.18.0" }, "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, "node_modules/redux": { @@ -18298,7 +18680,8 @@ "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/regenerate-unicode-properties": { "version": "10.2.0", @@ -18306,6 +18689,7 @@ "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "regenerate": "^1.4.2" }, @@ -18325,6 +18709,7 @@ "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@babel/runtime": "^7.8.4" } @@ -18334,7 +18719,8 @@ "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.0.tgz", "integrity": "sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/regexpu-core": { "version": "6.2.0", @@ -18342,6 +18728,7 @@ "integrity": "sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "regenerate": "^1.4.2", "regenerate-unicode-properties": "^10.2.0", @@ -18359,7 +18746,8 @@ "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/regjsparser": { "version": "0.12.0", @@ -18367,6 +18755,7 @@ "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==", "dev": true, "license": "BSD-2-Clause", + "peer": true, "dependencies": { "jsesc": "~3.0.2" }, @@ -18380,6 +18769,7 @@ "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "dev": true, "license": "MIT", + "peer": true, "bin": { "jsesc": "bin/jsesc" }, @@ -18413,19 +18803,22 @@ "license": "MIT" }, "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -18469,6 +18862,7 @@ "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "adjust-sourcemap-loader": "^4.0.0", "convert-source-map": "^1.7.0", @@ -18486,6 +18880,7 @@ "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -18501,6 +18896,7 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, "license": "BSD-3-Clause", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -18596,9 +18992,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz", - "integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.1.tgz", + "integrity": "sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw==", "dev": true, "license": "ISC", "dependencies": { @@ -18679,13 +19075,13 @@ } }, "node_modules/rollup": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.22.4.tgz", - "integrity": "sha512-vD8HJ5raRcWOyymsR6Z3o6+RzfEPCnVLMFJ6vRslO1jt4LO6dUo5Qnpg7y4RkZFM2DMe3WUirkI5c16onjrc6A==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.30.1.tgz", + "integrity": "sha512-mlJ4glW020fPuLi7DkM/lN97mYEZGWeqBnrljzN0gs7GLctqX3lNWxKQ7Gl712UAX+6fog/L3jh4gb7R6aVi3w==", "dev": true, "license": "MIT", "dependencies": { - "@types/estree": "1.0.5" + "@types/estree": "1.0.6" }, "bin": { "rollup": "dist/bin/rollup" @@ -18695,38 +19091,35 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.22.4", - "@rollup/rollup-android-arm64": "4.22.4", - "@rollup/rollup-darwin-arm64": "4.22.4", - "@rollup/rollup-darwin-x64": "4.22.4", - "@rollup/rollup-linux-arm-gnueabihf": "4.22.4", - "@rollup/rollup-linux-arm-musleabihf": "4.22.4", - "@rollup/rollup-linux-arm64-gnu": "4.22.4", - "@rollup/rollup-linux-arm64-musl": "4.22.4", - "@rollup/rollup-linux-powerpc64le-gnu": "4.22.4", - "@rollup/rollup-linux-riscv64-gnu": "4.22.4", - "@rollup/rollup-linux-s390x-gnu": "4.22.4", - "@rollup/rollup-linux-x64-gnu": "4.22.4", - "@rollup/rollup-linux-x64-musl": "4.22.4", - "@rollup/rollup-win32-arm64-msvc": "4.22.4", - "@rollup/rollup-win32-ia32-msvc": "4.22.4", - "@rollup/rollup-win32-x64-msvc": "4.22.4", + "@rollup/rollup-android-arm-eabi": "4.30.1", + "@rollup/rollup-android-arm64": "4.30.1", + "@rollup/rollup-darwin-arm64": "4.30.1", + "@rollup/rollup-darwin-x64": "4.30.1", + "@rollup/rollup-freebsd-arm64": "4.30.1", + "@rollup/rollup-freebsd-x64": "4.30.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.30.1", + "@rollup/rollup-linux-arm-musleabihf": "4.30.1", + "@rollup/rollup-linux-arm64-gnu": "4.30.1", + "@rollup/rollup-linux-arm64-musl": "4.30.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.30.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.30.1", + "@rollup/rollup-linux-riscv64-gnu": "4.30.1", + "@rollup/rollup-linux-s390x-gnu": "4.30.1", + "@rollup/rollup-linux-x64-gnu": "4.30.1", + "@rollup/rollup-linux-x64-musl": "4.30.1", + "@rollup/rollup-win32-arm64-msvc": "4.30.1", + "@rollup/rollup-win32-ia32-msvc": "4.30.1", + "@rollup/rollup-win32-x64-msvc": "4.30.1", "fsevents": "~2.3.2" } }, - "node_modules/rollup/node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true, - "license": "MIT" - }, "node_modules/router": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/router/-/router-2.0.0.tgz", "integrity": "sha512-dIM5zVoG8xhC6rnSN8uoAgFARwTE7BQs8YwHEvK0VCmfxQXMaOuA1uiR1IPwsW7JyK5iTt7Od/TC9StasS2NPQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "array-flatten": "3.0.0", "is-promise": "4.0.0", @@ -18741,9 +19134,9 @@ } }, "node_modules/rrweb-cssom": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.7.1.tgz", - "integrity": "sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==", "dev": true, "license": "MIT" }, @@ -18753,6 +19146,7 @@ "integrity": "sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=18" }, @@ -18806,9 +19200,9 @@ "license": "MIT" }, "node_modules/sass": { - "version": "1.83.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.83.0.tgz", - "integrity": "sha512-qsSxlayzoOjdvXMVLkzF84DJFc2HZEL/rFyGIKbbilYtAvlCxyuzUeff9LawTn4btVnLKg75Z8MMr1lxU1lfGw==", + "version": "1.83.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.83.4.tgz", + "integrity": "sha512-B1bozCeNQiOgDcLd33e2Cs2U60wZwjUUXzh900ZyQF5qUasvMdDZYbQ566LJu7cqR+sAHlAfO6RMkaID5s6qpA==", "dev": true, "license": "MIT", "dependencies": { @@ -18827,11 +19221,12 @@ } }, "node_modules/sass-loader": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-16.0.0.tgz", - "integrity": "sha512-n13Z+3rU9A177dk4888czcVFiC8CL9dii4qpXWUg3YIIgZEvi9TCFKjOQcbK0kJM7DJu9VucrZFddvNfYCPwtw==", + "version": "16.0.4", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-16.0.4.tgz", + "integrity": "sha512-LavLbgbBGUt3wCiYzhuLLu65+fWXaXLmq7YxivLhEqmiupCFZ5sKUAipK3do6V80YSU0jvSxNhEdT13IXNr3rg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "neo-async": "^2.6.2" }, @@ -18867,43 +19262,14 @@ } } }, - "node_modules/sass/node_modules/chokidar": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", - "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/sass/node_modules/readdirp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", - "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/sax": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", "dev": true, "license": "ISC", - "optional": true + "optional": true, + "peer": true }, "node_modules/saxes": { "version": "6.0.0", @@ -18928,11 +19294,12 @@ } }, "node_modules/schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", + "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/json-schema": "^7.0.9", "ajv": "^8.9.0", @@ -18940,7 +19307,7 @@ "ajv-keywords": "^5.1.0" }, "engines": { - "node": ">= 12.13.0" + "node": ">= 10.13.0" }, "funding": { "type": "opencollective", @@ -18953,6 +19320,7 @@ "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "ajv": "^8.0.0" }, @@ -18970,7 +19338,8 @@ "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/selfsigned": { "version": "2.4.1", @@ -18978,6 +19347,7 @@ "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node-forge": "^1.3.0", "node-forge": "^1" @@ -19004,6 +19374,7 @@ "integrity": "sha512-v67WcEouB5GxbTWL/4NeToqcZiAWEq90N888fczVArY8A79J0L4FD7vj5hm3eUMua5EpoQ59wa/oovY6TLvRUA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "debug": "^4.3.5", "destroy": "^1.2.0", @@ -19028,6 +19399,7 @@ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -19038,6 +19410,7 @@ "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, "license": "BSD-3-Clause", + "peer": true, "dependencies": { "randombytes": "^2.1.0" } @@ -19048,6 +19421,7 @@ "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "accepts": "~1.3.4", "batch": "0.6.1", @@ -19067,6 +19441,7 @@ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "mime-types": "~2.1.34", "negotiator": "0.6.3" @@ -19081,6 +19456,7 @@ "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -19091,6 +19467,7 @@ "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "depd": "~1.1.2", "inherits": "2.0.3", @@ -19106,7 +19483,8 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", "dev": true, - "license": "ISC" + "license": "ISC", + "peer": true }, "node_modules/serve-index/node_modules/negotiator": { "version": "0.6.3", @@ -19114,6 +19492,7 @@ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -19123,7 +19502,8 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", "dev": true, - "license": "ISC" + "license": "ISC", + "peer": true }, "node_modules/serve-index/node_modules/statuses": { "version": "1.5.0", @@ -19131,6 +19511,7 @@ "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -19141,6 +19522,7 @@ "integrity": "sha512-A3We5UfEjG8Z7VkDv6uItWw6HY2bBSBJT1KtVESn6EOoOr2jAxNhxWCLY3jDE2WcuHXByWju74ck3ZgLwL8xmA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "encodeurl": "^2.0.0", "escape-html": "^1.0.3", @@ -19191,7 +19573,8 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true, - "license": "ISC" + "license": "ISC", + "peer": true }, "node_modules/shallow-clone": { "version": "3.0.1", @@ -19199,6 +19582,7 @@ "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "kind-of": "^6.0.2" }, @@ -19241,6 +19625,7 @@ "integrity": "sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.4" }, @@ -19249,16 +19634,18 @@ } }, "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "call-bind": "^1.0.7", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -19267,10 +19654,69 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/siginfo": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", - "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/siginfo": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", "dev": true, "license": "ISC" }, @@ -19288,21 +19734,21 @@ } }, "node_modules/sigstore": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz", - "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-3.0.0.tgz", + "integrity": "sha512-PHMifhh3EN4loMcHCz6l3v/luzgT3za+9f8subGgeMNjbJjzH4Ij/YoX3Gvu+kaouJRIlVdTHHCREADYf+ZteA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/bundle": "^2.3.2", - "@sigstore/core": "^1.0.0", + "@sigstore/bundle": "^3.0.0", + "@sigstore/core": "^2.0.0", "@sigstore/protobuf-specs": "^0.3.2", - "@sigstore/sign": "^2.3.2", - "@sigstore/tuf": "^2.3.4", - "@sigstore/verify": "^1.2.1" + "@sigstore/sign": "^3.0.0", + "@sigstore/tuf": "^3.0.0", + "@sigstore/verify": "^2.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/simple-statistics": { @@ -19327,6 +19773,7 @@ "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=14.16" }, @@ -19387,6 +19834,7 @@ "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "faye-websocket": "^0.11.3", "uuid": "^8.3.2", @@ -19418,6 +19866,7 @@ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true, "license": "MIT", + "peer": true, "bin": { "uuid": "dist/bin/uuid" } @@ -19438,13 +19887,13 @@ } }, "node_modules/socks-proxy-agent": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", - "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.1.1", + "agent-base": "^7.1.2", "debug": "^4.3.4", "socks": "^2.8.3" }, @@ -19478,6 +19927,7 @@ "integrity": "sha512-k2Dur7CbSLcAH73sBcIkV5xjPV4SzqO1NJ7+XaQl8if3VODDUj3FNchNGpqgJSKbvUfJuhVdv8K2Eu8/TNl2eA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "iconv-lite": "^0.6.3", "source-map-js": "^1.0.2" @@ -19499,6 +19949,7 @@ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -19512,6 +19963,7 @@ "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -19523,6 +19975,7 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, "license": "BSD-3-Clause", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -19557,9 +20010,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.20", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz", - "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==", + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", + "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==", "dev": true, "license": "CC0-1.0" }, @@ -19569,6 +20022,7 @@ "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "debug": "^4.1.0", "handle-thing": "^2.0.0", @@ -19586,6 +20040,7 @@ "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "debug": "^4.1.0", "detect-node": "^2.0.4", @@ -19601,6 +20056,7 @@ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -19624,16 +20080,16 @@ "license": "BSD-3-Clause" }, "node_modules/ssri": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", - "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", + "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", "dev": true, "license": "ISC", "dependencies": { "minipass": "^7.0.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/stack-utils": { @@ -19672,6 +20128,7 @@ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } @@ -19972,6 +20429,7 @@ "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=6" } @@ -19994,38 +20452,6 @@ "node": ">=10" } }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar-stream/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/tar/node_modules/fs-minipass": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", @@ -20062,6 +20488,33 @@ "node": ">=8" } }, + "node_modules/tar/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/tar/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -20070,11 +20523,12 @@ "license": "ISC" }, "node_modules/terser": { - "version": "5.31.6", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.6.tgz", - "integrity": "sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==", + "version": "5.37.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.37.0.tgz", + "integrity": "sha512-B8wRRkmre4ERucLM/uXx4MOV5cbnOlVAqUst+1+iLKPI0dOgFO28f84ptoQt9HEI537PMzfYa/d+GEPKTRXmYA==", "dev": true, "license": "BSD-2-Clause", + "peer": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -20089,17 +20543,18 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", - "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "version": "5.3.11", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.11.tgz", + "integrity": "sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@jridgewell/trace-mapping": "^0.3.20", + "@jridgewell/trace-mapping": "^0.3.25", "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.26.0" + "schema-utils": "^4.3.0", + "serialize-javascript": "^6.0.2", + "terser": "^5.31.1" }, "engines": { "node": ">= 10.13.0" @@ -20123,39 +20578,13 @@ } } }, - "node_modules/terser-webpack-plugin/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "ajv": "^6.9.1" - } - }, "node_modules/terser-webpack-plugin/node_modules/jest-worker": { "version": "27.5.1", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/node": "*", "merge-stream": "^2.0.0", @@ -20165,38 +20594,13 @@ "node": ">= 10.13.0" } }, - "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/terser-webpack-plugin/node_modules/supports-color": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -20212,7 +20616,8 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/test-exclude": { "version": "6.0.0", @@ -20259,6 +20664,7 @@ "integrity": "sha512-hsqsJsFMsV+aD4s3CWKk85ep/3I9XzYV/IXaSouJMYIoDlgyi11cBhsqYe9/geRfB0YIikBQg6raRaM+nIMP9g==", "dev": true, "license": "Unlicense", + "peer": true, "engines": { "node": ">=10.18" }, @@ -20271,7 +20677,8 @@ "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/tinybench": { "version": "2.9.0", @@ -20287,9 +20694,9 @@ "license": "MIT" }, "node_modules/tinyexec": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.1.tgz", - "integrity": "sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz", + "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==", "dev": true, "license": "MIT" }, @@ -20314,9 +20721,9 @@ } }, "node_modules/tinyrainbow": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz", - "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-2.0.0.tgz", + "integrity": "sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==", "dev": true, "license": "MIT", "engines": { @@ -20334,22 +20741,22 @@ } }, "node_modules/tldts": { - "version": "6.1.65", - "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.65.tgz", - "integrity": "sha512-xU9gLTfAGsADQ2PcWee6Hg8RFAv0DnjMGVJmDnUmI8a9+nYmapMQix4afwrdaCtT+AqP4MaxEzu7cCrYmBPbzQ==", + "version": "6.1.72", + "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.72.tgz", + "integrity": "sha512-QNtgIqSUb9o2CoUjX9T5TwaIvUUJFU1+12PJkgt42DFV2yf9J6549yTF2uGloQsJ/JOC8X+gIB81ind97hRiIQ==", "dev": true, "license": "MIT", "dependencies": { - "tldts-core": "^6.1.65" + "tldts-core": "^6.1.72" }, "bin": { "tldts": "bin/cli.js" } }, "node_modules/tldts-core": { - "version": "6.1.65", - "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.65.tgz", - "integrity": "sha512-Uq5t0N0Oj4nQSbU8wFN1YYENvMthvwU13MQrMJRspYCGLSAZjAfoBOJki5IQpnBM/WFskxxC/gIOTwaedmHaSg==", + "version": "6.1.72", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.72.tgz", + "integrity": "sha512-FW3H9aCaGTJ8l8RVCR3EX8GxsxDbQXuwetwwgXA2chYdsX+NY1ytCBl61narjjehWmCw92tc1AxlcY3668CU8g==", "dev": true, "license": "MIT" }, @@ -20391,14 +20798,15 @@ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=0.6" } }, "node_modules/tough-cookie": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.0.0.tgz", - "integrity": "sha512-FRKsF7cz96xIIeMZ82ehjC3xW2E+O2+v11udrDYewUbszngYhsGa8z6YUMMzO9QJZzzyd0nGGXnML/TReX6W8Q==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.1.0.tgz", + "integrity": "sha512-rvZUv+7MoBYTiDmFPBrhL7Ujx9Sk+q9wwm22x8c8T5IJaR+Wsyc7TNxbVxo84kZoRJZZMazowFLqpankBEQrGg==", "dev": true, "license": "BSD-3-Clause", "dependencies": { @@ -20422,10 +20830,13 @@ } }, "node_modules/transformation-matrix": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/transformation-matrix/-/transformation-matrix-1.15.3.tgz", - "integrity": "sha512-ThJH58GNFKhCw3gIoOtwf3tNwuYjbyEeiGdeq4mNMYWdJctnI896KUqn6PVt7jmNVepqa1bcKQtnMB1HtjsDMA==", - "license": "MIT" + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/transformation-matrix/-/transformation-matrix-2.16.1.tgz", + "integrity": "sha512-tdtC3wxVEuzU7X/ydL131Q3JU5cPMEn37oqVLITjRDSDsnSHVFzW2JiCLfZLIQEgWzZHdSy3J6bZzvKEN24jGA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/chrvadala" + } }, "node_modules/tree-dump": { "version": "1.0.2", @@ -20433,6 +20844,7 @@ "integrity": "sha512-dpev9ABuLWdEubk+cIaI9cHwRNNDjkBBLXTwI4UCUFdQ5xXKqNXoK4FEciw/vxf+NQ7Cb7sGUyeUtORvHIdRXQ==", "dev": true, "license": "Apache-2.0", + "peer": true, "engines": { "node": ">=10.0" }, @@ -20450,6 +20862,7 @@ "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", "dev": true, "license": "MIT", + "peer": true, "bin": { "tree-kill": "cli.js" } @@ -20469,16 +20882,16 @@ } }, "node_modules/ts-api-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", - "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.0.tgz", + "integrity": "sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ==", "dev": true, "license": "MIT", "engines": { - "node": ">=16" + "node": ">=18.12" }, "peerDependencies": { - "typescript": ">=4.2.0" + "typescript": ">=4.8.4" } }, "node_modules/ts-cacheable": { @@ -20540,14 +20953,14 @@ } }, "node_modules/ts-morph": { - "version": "22.0.0", - "resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-22.0.0.tgz", - "integrity": "sha512-M9MqFGZREyeb5fTl6gNHKZLqBQA0TjA1lea+CR48R8EBTDuWrNqW6ccC5QvjNR4s6wDumD3LTCjOFSp9iwlzaw==", + "version": "21.0.1", + "resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-21.0.1.tgz", + "integrity": "sha512-dbDtVdEAncKctzrVZ+Nr7kHpHkv+0JDJb2MjjpBaj8bFeCkePU9rHfMklmhuLFnpeq/EJZk2IhStY6NzqgjOkg==", "dev": true, "license": "MIT", "dependencies": { - "@ts-morph/common": "~0.23.0", - "code-block-writer": "^13.0.1" + "@ts-morph/common": "~0.22.0", + "code-block-writer": "^12.0.0" } }, "node_modules/ts-node": { @@ -20670,18 +21083,18 @@ "license": "0BSD" }, "node_modules/tuf-js": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz", - "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-3.0.1.tgz", + "integrity": "sha512-+68OP1ZzSF84rTckf3FA95vJ1Zlx/uaXyiiKyPd1pA4rZNkpEvDAKmsu1xUSmbF/chCRYgZ6UZkDwC7PmzmAyA==", "dev": true, "license": "MIT", "dependencies": { - "@tufjs/models": "2.0.1", - "debug": "^4.3.4", - "make-fetch-happen": "^13.0.1" + "@tufjs/models": "3.0.1", + "debug": "^4.3.6", + "make-fetch-happen": "^14.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/turndown": { @@ -20735,6 +21148,7 @@ "integrity": "sha512-gd0sGezQYCbWSbkZr75mln4YBidWUN60+devscpLF5mtRDUpiaTvKpBNrdaCvel1NdR2k6vclXybU5fBd2i+nw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "content-type": "^1.0.5", "media-typer": "^1.1.0", @@ -20750,6 +21164,7 @@ "integrity": "sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } @@ -20760,6 +21175,7 @@ "integrity": "sha512-XqoSHeCGjVClAmoGFG3lVFqQFRIrTVw2OH3axRqAcfaw+gHWIfnASS92AV+Rl/mk0MupgZTRHQOjxY6YVnzK5w==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "mime-db": "^1.53.0" }, @@ -20772,12 +21188,13 @@ "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", + "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -20797,15 +21214,15 @@ } }, "node_modules/typescript-eslint": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.18.2.tgz", - "integrity": "sha512-KuXezG6jHkvC3MvizeXgupZzaG5wjhU3yE8E7e6viOvAvD9xAWYp8/vy0WULTGe9DYDWcQu7aW03YIV3mSitrQ==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.20.0.tgz", + "integrity": "sha512-Kxz2QRFsgbWj6Xcftlw3Dd154b3cEPFqQC+qMZrMypSijPd4UanKKvoKDrJ4o8AIfZFKAF+7sMaEIR8mTElozA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/eslint-plugin": "8.18.2", - "@typescript-eslint/parser": "8.18.2", - "@typescript-eslint/utils": "8.18.2" + "@typescript-eslint/eslint-plugin": "8.20.0", + "@typescript-eslint/parser": "8.20.0", + "@typescript-eslint/utils": "8.20.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -20819,243 +21236,41 @@ "typescript": ">=4.8.4 <5.8.0" } }, - "node_modules/typescript-eslint/node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.18.2.tgz", - "integrity": "sha512-adig4SzPLjeQ0Tm+jvsozSGiCliI2ajeURDGHjZ2llnA+A67HihCQ+a3amtPhUakd1GlwHxSRvzOZktbEvhPPg==", - "dev": true, + "node_modules/typescript-logic": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/typescript-logic/-/typescript-logic-0.0.0.tgz", + "integrity": "sha512-zXFars5LUkI3zP492ls0VskH3TtdeHCqu0i7/duGt60i5IGPIpAHE/DWo5FqJ6EjQ15YKXrt+AETjv60Dat34Q==", + "license": "MIT" + }, + "node_modules/typescript-tuple": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/typescript-tuple/-/typescript-tuple-2.2.1.tgz", + "integrity": "sha512-Zcr0lbt8z5ZdEzERHAMAniTiIKerFCMgd7yjq1fPnDJ43et/k9twIFQMUYff9k5oXcsQ0WpvFcgzK2ZKASoW6Q==", "license": "MIT", "dependencies": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.18.2", - "@typescript-eslint/type-utils": "8.18.2", - "@typescript-eslint/utils": "8.18.2", - "@typescript-eslint/visitor-keys": "8.18.2", - "graphemer": "^1.4.0", - "ignore": "^5.3.1", - "natural-compare": "^1.4.0", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.8.0" + "typescript-compare": "^0.0.2" } }, - "node_modules/typescript-eslint/node_modules/@typescript-eslint/parser": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.18.2.tgz", - "integrity": "sha512-y7tcq4StgxQD4mDr9+Jb26dZ+HTZ/SkfqpXSiqeUXZHxOUyjWDKsmwKhJ0/tApR08DgOhrFAoAhyB80/p3ViuA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/scope-manager": "8.18.2", - "@typescript-eslint/types": "8.18.2", - "@typescript-eslint/typescript-estree": "8.18.2", - "@typescript-eslint/visitor-keys": "8.18.2", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.8.0" - } - }, - "node_modules/typescript-eslint/node_modules/@typescript-eslint/scope-manager": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.18.2.tgz", - "integrity": "sha512-YJFSfbd0CJjy14r/EvWapYgV4R5CHzptssoag2M7y3Ra7XNta6GPAJPPP5KGB9j14viYXyrzRO5GkX7CRfo8/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.18.2", - "@typescript-eslint/visitor-keys": "8.18.2" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/typescript-eslint/node_modules/@typescript-eslint/type-utils": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.18.2.tgz", - "integrity": "sha512-AB/Wr1Lz31bzHfGm/jgbFR0VB0SML/hd2P1yxzKDM48YmP7vbyJNHRExUE/wZsQj2wUCvbWH8poNHFuxLqCTnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/typescript-estree": "8.18.2", - "@typescript-eslint/utils": "8.18.2", - "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.8.0" - } - }, - "node_modules/typescript-eslint/node_modules/@typescript-eslint/types": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.18.2.tgz", - "integrity": "sha512-Z/zblEPp8cIvmEn6+tPDIHUbRu/0z5lqZ+NvolL5SvXWT5rQy7+Nch83M0++XzO0XrWRFWECgOAyE8bsJTl1GQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/typescript-eslint/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.18.2.tgz", - "integrity": "sha512-WXAVt595HjpmlfH4crSdM/1bcsqh+1weFRWIa9XMTx/XHZ9TCKMcr725tLYqWOgzKdeDrqVHxFotrvWcEsk2Tg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.18.2", - "@typescript-eslint/visitor-keys": "8.18.2", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <5.8.0" - } - }, - "node_modules/typescript-eslint/node_modules/@typescript-eslint/utils": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.18.2.tgz", - "integrity": "sha512-Cr4A0H7DtVIPkauj4sTSXVl+VBWewE9/o40KcF3TV9aqDEOWoXF3/+oRXNby3DYzZeCATvbdksYsGZzplwnK/Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.18.2", - "@typescript-eslint/types": "8.18.2", - "@typescript-eslint/typescript-estree": "8.18.2" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.8.0" - } - }, - "node_modules/typescript-eslint/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.18.2.tgz", - "integrity": "sha512-zORcwn4C3trOWiCqFQP1x6G3xTRyZ1LYydnj51cRnJ6hxBlr/cKPckk+PKPUw/fXmvfKTcw7bwY3w9izgx5jZw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.18.2", - "eslint-visitor-keys": "^4.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/typescript-eslint/node_modules/eslint-visitor-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", - "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/typescript-eslint/node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/typescript-logic": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/typescript-logic/-/typescript-logic-0.0.0.tgz", - "integrity": "sha512-zXFars5LUkI3zP492ls0VskH3TtdeHCqu0i7/duGt60i5IGPIpAHE/DWo5FqJ6EjQ15YKXrt+AETjv60Dat34Q==", - "license": "MIT" - }, - "node_modules/typescript-tuple": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/typescript-tuple/-/typescript-tuple-2.2.1.tgz", - "integrity": "sha512-Zcr0lbt8z5ZdEzERHAMAniTiIKerFCMgd7yjq1fPnDJ43et/k9twIFQMUYff9k5oXcsQ0WpvFcgzK2ZKASoW6Q==", - "license": "MIT", - "dependencies": { - "typescript-compare": "^0.0.2" - } - }, - "node_modules/uc.micro": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", - "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", - "license": "MIT" - }, - "node_modules/undici-types": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", - "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", - "dev": true, - "license": "MIT" - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", - "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", + "node_modules/uc.micro": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", + "license": "MIT" + }, + "node_modules/undici-types": { + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", + "dev": true, + "license": "MIT" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=4" } @@ -21066,6 +21281,7 @@ "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "unicode-canonical-property-names-ecmascript": "^2.0.0", "unicode-property-aliases-ecmascript": "^2.0.0" @@ -21080,6 +21296,7 @@ "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=4" } @@ -21090,6 +21307,7 @@ "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=4" } @@ -21100,6 +21318,7 @@ "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=18" }, @@ -21108,29 +21327,29 @@ } }, "node_modules/unique-filename": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", - "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-4.0.0.tgz", + "integrity": "sha512-XSnEewXmQ+veP7xX2dS5Q4yZAvO40cBN2MWkJ7D/6sW4Dg6wYBNwM1Vrnz1FhH5AdeLIlUXRI9e28z1YZi71NQ==", "dev": true, "license": "ISC", "dependencies": { - "unique-slug": "^4.0.0" + "unique-slug": "^5.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/unique-slug": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", - "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-5.0.0.tgz", + "integrity": "sha512-9OdaqO5kwqR+1kVgHAhsp5vPNU0hnxRa26rBFNfNgM7M6pNtgzeBn3s/xbyCQL3dcjzOatcef6UUHpB/6MaETg==", "dev": true, "license": "ISC", "dependencies": { "imurmurhash": "^0.1.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/unist-util-stringify-position": { @@ -21147,20 +21366,31 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } }, "node_modules/update-browserslist-db": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", - "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz", + "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==", "funding": [ { "type": "opencollective", @@ -21178,7 +21408,7 @@ "license": "MIT", "dependencies": { "escalade": "^3.2.0", - "picocolors": "^1.1.0" + "picocolors": "^1.1.1" }, "bin": { "update-browserslist-db": "cli.js" @@ -21208,12 +21438,12 @@ } }, "node_modules/use-sync-external-store": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz", - "integrity": "sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.4.0.tgz", + "integrity": "sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==", "license": "MIT", "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "node_modules/util-deprecate": { @@ -21228,14 +21458,15 @@ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.4.0" } }, "node_modules/uuid": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", - "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.5.tgz", + "integrity": "sha512-508e6IcKLrhxKdBbcA2b4KQZlLVp2+J5UwQ6F7Drckkc5N9ZJwFa4TgWtsww9UG8fGHbm6gbV19TdM5pQ4GaIA==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" @@ -21286,13 +21517,13 @@ } }, "node_modules/validate-npm-package-name": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", - "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", + "integrity": "sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==", "dev": true, "license": "ISC", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/vary": { @@ -21301,6 +21532,7 @@ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } @@ -21311,605 +21543,187 @@ "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", "dev": true, "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", - "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vite": { - "version": "5.4.11", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", - "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "^0.21.3", - "postcss": "^8.4.43", - "rollup": "^4.20.0" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "sass-embedded": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, - "node_modules/vite-node": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.8.tgz", - "integrity": "sha512-uPAwSr57kYjAUux+8E2j0q0Fxpn8M9VoyfGiRI8Kfktz9NcYMCenwY5RnZxnF1WTu3TGiYipirIzacLL3VVGFg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cac": "^6.7.14", - "debug": "^4.3.7", - "es-module-lexer": "^1.5.4", - "pathe": "^1.1.2", - "vite": "^5.0.0" - }, - "bin": { - "vite-node": "vite-node.mjs" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/vite-tsconfig-paths": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz", - "integrity": "sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.1.1", - "globrex": "^0.1.2", - "tsconfck": "^3.0.3" - }, - "peerDependencies": { - "vite": "*" - }, - "peerDependenciesMeta": { - "vite": { - "optional": true - } - } - }, - "node_modules/vite/node_modules/@esbuild/aix-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", - "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/android-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", - "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/android-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", - "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/android-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", - "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/darwin-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", - "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/darwin-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", - "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", - "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/freebsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", - "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", - "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", - "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", - "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-loong64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", - "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-mips64el": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", - "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", - "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-riscv64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", - "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-s390x": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", - "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", - "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/netbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", - "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/openbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", - "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/sunos-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", - "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/vite/node_modules/@esbuild/win32-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", - "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", - "cpu": [ - "arm64" - ], + "node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/vite/node_modules/@esbuild/win32-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", - "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", - "cpu": [ - "ia32" - ], + "node_modules/vite": { + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.7.tgz", + "integrity": "sha512-RDt8r/7qx9940f8FcOIAH9PTViRrghKaK2K1jY3RaAURrEUbm9Du1mJ72G+jlhtG3WwodnfzY8ORQZbBavZEAQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "esbuild": "^0.24.2", + "postcss": "^8.4.49", + "rollup": "^4.23.0" + }, + "bin": { + "vite": "bin/vite.js" + }, "engines": { - "node": ">=12" + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } } }, - "node_modules/vite/node_modules/@esbuild/win32-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", - "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", - "cpu": [ - "x64" - ], + "node_modules/vite-node": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.0.0.tgz", + "integrity": "sha512-V5p05fpAzkHM3aYChsHWV1RTeLAhPejbKX6MqiWWyuIfNcDgXq5p0GnYV6Wa4OAU588XC70XCJB9chRZsOh4yg==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.4.0", + "es-module-lexer": "^1.5.4", + "pathe": "^2.0.0", + "vite": "^5.0.0 || ^6.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, "engines": { - "node": ">=12" + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" } }, - "node_modules/vite/node_modules/esbuild": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", - "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "node_modules/vite-tsconfig-paths": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz", + "integrity": "sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==", "dev": true, - "hasInstallScript": true, "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" + "dependencies": { + "debug": "^4.1.1", + "globrex": "^0.1.2", + "tsconfck": "^3.0.3" }, - "engines": { - "node": ">=12" + "peerDependencies": { + "vite": "*" }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.21.5", - "@esbuild/android-arm": "0.21.5", - "@esbuild/android-arm64": "0.21.5", - "@esbuild/android-x64": "0.21.5", - "@esbuild/darwin-arm64": "0.21.5", - "@esbuild/darwin-x64": "0.21.5", - "@esbuild/freebsd-arm64": "0.21.5", - "@esbuild/freebsd-x64": "0.21.5", - "@esbuild/linux-arm": "0.21.5", - "@esbuild/linux-arm64": "0.21.5", - "@esbuild/linux-ia32": "0.21.5", - "@esbuild/linux-loong64": "0.21.5", - "@esbuild/linux-mips64el": "0.21.5", - "@esbuild/linux-ppc64": "0.21.5", - "@esbuild/linux-riscv64": "0.21.5", - "@esbuild/linux-s390x": "0.21.5", - "@esbuild/linux-x64": "0.21.5", - "@esbuild/netbsd-x64": "0.21.5", - "@esbuild/openbsd-x64": "0.21.5", - "@esbuild/sunos-x64": "0.21.5", - "@esbuild/win32-arm64": "0.21.5", - "@esbuild/win32-ia32": "0.21.5", - "@esbuild/win32-x64": "0.21.5" + "peerDependenciesMeta": { + "vite": { + "optional": true + } } }, "node_modules/vitest": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.8.tgz", - "integrity": "sha512-1vBKTZskHw/aosXqQUlVWWlGUxSJR8YtiyZDJAFeW2kPAeX6S3Sool0mjspO+kXLuxVWlEDDowBAeqeAQefqLQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.0.0.tgz", + "integrity": "sha512-fwfPif+EV0jyms9h1Crb6rwJttH/KBzKrcUesjxHgldmc6R0FaMNLsd+Rgc17NoxzLcb/sYE2Xs9NQ/vnTBf6Q==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/expect": "2.1.8", - "@vitest/mocker": "2.1.8", - "@vitest/pretty-format": "^2.1.8", - "@vitest/runner": "2.1.8", - "@vitest/snapshot": "2.1.8", - "@vitest/spy": "2.1.8", - "@vitest/utils": "2.1.8", + "@vitest/expect": "3.0.0", + "@vitest/mocker": "3.0.0", + "@vitest/pretty-format": "^3.0.0", + "@vitest/runner": "3.0.0", + "@vitest/snapshot": "3.0.0", + "@vitest/spy": "3.0.0", + "@vitest/utils": "3.0.0", "chai": "^5.1.2", - "debug": "^4.3.7", + "debug": "^4.4.0", "expect-type": "^1.1.0", - "magic-string": "^0.30.12", - "pathe": "^1.1.2", + "magic-string": "^0.30.17", + "pathe": "^2.0.0", "std-env": "^3.8.0", "tinybench": "^2.9.0", - "tinyexec": "^0.3.1", - "tinypool": "^1.0.1", - "tinyrainbow": "^1.2.0", - "vite": "^5.0.0", - "vite-node": "2.1.8", + "tinyexec": "^0.3.2", + "tinypool": "^1.0.2", + "tinyrainbow": "^2.0.0", + "vite": "^5.0.0 || ^6.0.0", + "vite-node": "3.0.0", "why-is-node-running": "^2.3.0" }, "bin": { "vitest": "vitest.mjs" }, "engines": { - "node": "^18.0.0 || >=20.0.0" + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "funding": { "url": "https://opencollective.com/vitest" }, "peerDependencies": { "@edge-runtime/vm": "*", - "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "2.1.8", - "@vitest/ui": "2.1.8", + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "@vitest/browser": "3.0.0", + "@vitest/ui": "3.0.0", "happy-dom": "*", "jsdom": "*" }, @@ -21934,16 +21748,6 @@ } } }, - "node_modules/vitest/node_modules/magic-string": { - "version": "0.30.17", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", - "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0" - } - }, "node_modules/w3c-xmlserializer": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", @@ -21968,9 +21772,9 @@ } }, "node_modules/watchpack": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", - "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", "dev": true, "license": "MIT", "dependencies": { @@ -21987,6 +21791,7 @@ "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "minimalistic-assert": "^1.0.0" } @@ -22006,7 +21811,8 @@ "resolved": "https://registry.npmjs.org/weak-lru-cache/-/weak-lru-cache-1.2.2.tgz", "integrity": "sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw==", "dev": true, - "license": "MIT" + "license": "MIT", + "optional": true }, "node_modules/weak-napi": { "version": "2.0.2", @@ -22040,6 +21846,12 @@ "d3-timer": "^1.0.5" } }, + "node_modules/webcola/node_modules/d3-dispatch": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz", + "integrity": "sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==", + "license": "BSD-3-Clause" + }, "node_modules/webcola/node_modules/d3-drag": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.5.tgz", @@ -22056,6 +21868,12 @@ "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==", "license": "BSD-3-Clause" }, + "node_modules/webcola/node_modules/d3-selection": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-1.4.2.tgz", + "integrity": "sha512-SJ0BqYihzOjDnnlfyeHT0e30k0K1+5sR3d5fNueCNeuhZTnGw4M4o8mqJchSwgKMXCNFo+e2VTChiSJ0vYtXkg==", + "license": "BSD-3-Clause" + }, "node_modules/webcola/node_modules/d3-shape": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", @@ -22065,6 +21883,12 @@ "d3-path": "1" } }, + "node_modules/webcola/node_modules/d3-timer": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", + "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==", + "license": "BSD-3-Clause" + }, "node_modules/webidl-conversions": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", @@ -22076,19 +21900,20 @@ } }, "node_modules/webpack": { - "version": "5.94.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz", - "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==", + "version": "5.97.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.1.tgz", + "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@types/estree": "^1.0.5", - "@webassemblyjs/ast": "^1.12.1", - "@webassemblyjs/wasm-edit": "^1.12.1", - "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.7.1", - "acorn-import-attributes": "^1.9.5", - "browserslist": "^4.21.10", + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", "chrome-trace-event": "^1.0.2", "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", @@ -22128,6 +21953,7 @@ "integrity": "sha512-xOO8n6eggxnwYpy1NlzUKpvrjfJTvae5/D6WOK0S2LSo7vjmo5gCM1DbLUmFqrMTJP+W/0YZNctm7jasWvLuBA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "colorette": "^2.0.10", "memfs": "^4.6.0", @@ -22158,6 +21984,7 @@ "integrity": "sha512-90SqqYXA2SK36KcT6o1bvwvZfJFcmoamqeJY7+boioffX9g9C0wjjJRGUrQIuh43pb0ttX7+ssavmj/WN2RHtA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/bonjour": "^3.5.13", "@types/connect-history-api-fallback": "^1.5.4", @@ -22209,12 +22036,53 @@ } } }, + "node_modules/webpack-dev-server/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/webpack-dev-server/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/webpack-dev-server/node_modules/http-proxy-middleware": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.7.tgz", "integrity": "sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/http-proxy": "^1.17.8", "http-proxy": "^1.18.1", @@ -22234,12 +22102,41 @@ } } }, + "node_modules/webpack-dev-server/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/webpack-dev-server/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, "node_modules/webpack-merge": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-6.0.1.tgz", "integrity": "sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "clone-deep": "^4.0.1", "flat": "^5.0.2", @@ -22255,6 +22152,7 @@ "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=10.13.0" } @@ -22265,6 +22163,7 @@ "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "typed-assert": "^1.0.8" }, @@ -22287,6 +22186,7 @@ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -22304,6 +22204,7 @@ "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true, "license": "MIT", + "peer": true, "peerDependencies": { "ajv": "^6.9.1" } @@ -22314,6 +22215,7 @@ "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "license": "BSD-2-Clause", + "peer": true, "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -22328,6 +22230,7 @@ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, "license": "BSD-2-Clause", + "peer": true, "engines": { "node": ">=4.0" } @@ -22337,14 +22240,16 @@ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/webpack/node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/webpack/node_modules/schema-utils": { "version": "3.3.0", @@ -22352,6 +22257,7 @@ "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", @@ -22431,9 +22337,9 @@ } }, "node_modules/whatwg-url": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.0.0.tgz", - "integrity": "sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.1.0.tgz", + "integrity": "sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==", "dev": true, "license": "MIT", "dependencies": { @@ -22482,7 +22388,8 @@ "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/word-wrap": { "version": "1.2.5", @@ -22799,9 +22706,9 @@ } }, "node_modules/zone.js": { - "version": "0.14.10", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.14.10.tgz", - "integrity": "sha512-YGAhaO7J5ywOXW6InXNlLmfU194F8lVgu7bRntUF3TiG8Y3nBK0x1UJJuHUP/e8IyihkjCYqhCScpSwnlaSRkQ==", + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.15.0.tgz", + "integrity": "sha512-9oxn0IIjbCZkJ67L+LkhYWRyAy7axphb3VgE2MBDlOqnmHMPWGYMxJxBYFueFq/JGY2GMwS0rU+UCLunEmy5UA==", "license": "MIT" } } diff --git a/package.json b/package.json index 1248fce42f27..77f09e64b2d4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "artemis", - "version": "7.8.1", + "version": "7.9.0", "description": "Interactive Learning with Individual Feedback", "private": true, "license": "MIT", @@ -13,43 +13,43 @@ "node_modules" ], "dependencies": { - "@angular/animations": "18.2.13", - "@angular/cdk": "18.2.13", - "@angular/common": "18.2.13", - "@angular/compiler": "18.2.13", - "@angular/core": "18.2.13", - "@angular/forms": "18.2.13", - "@angular/localize": "18.2.13", - "@angular/material": "18.2.13", - "@angular/platform-browser": "18.2.13", - "@angular/platform-browser-dynamic": "18.2.13", - "@angular/router": "18.2.13", - "@angular/service-worker": "18.2.13", + "@angular/animations": "19.1.1", + "@angular/cdk": "19.1.0", + "@angular/common": "19.1.1", + "@angular/compiler": "19.1.1", + "@angular/core": "19.1.1", + "@angular/forms": "19.1.1", + "@angular/localize": "19.1.1", + "@angular/material": "19.1.0", + "@angular/platform-browser": "19.1.1", + "@angular/platform-browser-dynamic": "19.1.1", + "@angular/router": "19.1.1", + "@angular/service-worker": "19.1.1", "@ctrl/ngx-emoji-mart": "9.2.0", - "@danielmoncada/angular-datetime-picker": "18.1.0", + "@danielmoncada/angular-datetime-picker": "19.0.0", "@fingerprintjs/fingerprintjs": "4.5.1", - "@fortawesome/angular-fontawesome": "0.15.0", + "@fortawesome/angular-fontawesome": "1.0.0", "@fortawesome/fontawesome-svg-core": "6.7.2", "@fortawesome/free-regular-svg-icons": "6.7.2", "@fortawesome/free-solid-svg-icons": "6.7.2", "@ls1intum/apollon": "3.3.15", - "@ng-bootstrap/ng-bootstrap": "17.0.1", + "@ng-bootstrap/ng-bootstrap": "18.0.0", "@ngx-translate/core": "16.0.4", "@ngx-translate/http-loader": "16.0.1", - "@sentry/angular": "8.47.0", + "@sentry/angular": "8.50.0", "@siemens/ngx-datatable": "22.4.1", "@swimlane/ngx-charts": "21.1.2", - "@swimlane/ngx-graph": "8.4.0", + "@swimlane/ngx-graph": "9.0.1", "@vscode/codicons": "0.0.36", "@vscode/markdown-it-katex": "1.1.1", "bootstrap": "5.3.3", "compare-versions": "6.1.1", - "core-js": "3.39.0", + "core-js": "3.40.0", "crypto-js": "4.2.0", "dayjs": "1.11.13", "diff-match-patch-typescript": "1.1.0", "dompurify": "3.2.3", - "emoji-js": "3.8.0", + "emoji-js": "3.8.1", "export-to-csv": "1.4.0", "fast-json-patch": "3.1.1", "franc-min": "6.2.0", @@ -61,14 +61,15 @@ "lodash-es": "4.17.21", "markdown-it": "14.1.0", "markdown-it-class": "1.0.0", + "markdown-it-github-alerts": "0.3.0", "markdown-it-highlightjs": "4.2.0", "mobile-drag-drop": "3.0.0-rc.0", "monaco-editor": "0.52.2", - "ngx-infinite-scroll": "18.0.0", - "ngx-webstorage": "18.0.0", - "papaparse": "5.4.1", + "ngx-infinite-scroll": "19.0.0", + "ngx-webstorage": "19.0.1", + "papaparse": "5.5.1", "pdf-lib": "1.17.1", - "pdfjs-dist": "4.9.155", + "pdfjs-dist": "4.10.38", "rxjs": "7.8.1", "simple-statistics": "7.8.7", "smoothscroll-polyfill": "0.4.4", @@ -77,36 +78,50 @@ "ts-cacheable": "1.0.10", "tslib": "2.8.1", "turndown": "7.2.0", - "uuid": "11.0.3", + "uuid": "11.0.5", "webstomp-client": "1.2.6", "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz", - "zone.js": "0.14.10" + "zone.js": "0.15.0" }, "overrides": { + "@swimlane/ngx-charts": { + "@angular/animations": "^19.1.0", + "@angular/cdk": "^19.1.0", + "@angular/core": "^19.1.0", + "@angular/common": "^19.1.0", + "@angular/forms": "^19.1.0", + "@angular/platform-browser": "^19.1.0", + "@angular/platform-browser-dynamic": "^19.1.0" + }, "@swimlane/ngx-graph": { - "d3-brush": "^3.0.0", - "d3-color": "^3.1.0", - "d3-interpolate": "^3.0.1", - "d3-selection": "^3.0.0", - "d3-transition": "^3.0.1" + "@angular/animations": "^19.1.0", + "@angular/common": "^19.1.0", + "@angular/core": "^19.1.0", + "@angular/cdk": "^19.1.0" }, "@typescript-eslint/utils": { - "eslint": "^9.17.0" + "eslint": "^9.18.0" }, "braces": "3.0.3", "cookie": "1.0.2", "critters": "0.0.25", "debug": "4.4.0", "eslint-plugin-deprecation": { - "eslint": "^9.17.0" + "eslint": "^9.18.0" }, "express": "5.0.1", - "jsdom": "25.0.1", - "postcss": "8.4.49", + "jsdom": "26.0.0", + "ng-mocks": { + "@angular/common": "^19.1.0", + "@angular/core": "^19.1.0", + "@angular/forms": "^19.1.0", + "@angular/platform-browser": "^19.1.0" + }, + "postcss": "8.5.0", "rimraf": "6.0.1", "semver": "7.6.3", - "tough-cookie": "5.0.0", - "vite": "5.4.11", + "tough-cookie": "5.1.0", + "vite": "6.0.7", "webpack-dev-middleware": "7.4.2", "webpack-dev-server": "5.2.0", "word-wrap": "1.2.5", @@ -114,41 +129,41 @@ "yargs-parser": "21.1.1" }, "devDependencies": { - "@analogjs/vite-plugin-angular": "1.10.3", - "@angular-builders/jest": "18.0.0", - "@angular-devkit/build-angular": "18.2.12", - "@angular-eslint/builder": "18.4.1", - "@angular-eslint/eslint-plugin": "18.4.1", - "@angular-eslint/eslint-plugin-template": "18.4.1", - "@angular-eslint/schematics": "18.4.1", - "@angular-eslint/template-parser": "18.4.1", - "@angular/cli": "18.2.12", - "@angular/compiler-cli": "18.2.13", - "@angular/language-service": "18.2.13", - "@sentry/types": "8.47.0", + "@analogjs/vite-plugin-angular": "1.12.0", + "@angular-builders/jest": "19.0.0", + "@angular-eslint/builder": "19.0.2", + "@angular-eslint/eslint-plugin": "19.0.2", + "@angular-eslint/eslint-plugin-template": "19.0.2", + "@angular-eslint/schematics": "19.0.2", + "@angular-eslint/template-parser": "19.0.2", + "@angular/build": "19.1.1", + "@angular/cli": "19.1.1", + "@angular/compiler-cli": "19.1.1", + "@angular/language-service": "19.1.1", + "@sentry/types": "8.50.0", "@testing-library/angular": "17.3.5", "@types/crypto-js": "4.2.2", - "@types/d3-shape": "3.1.6", + "@types/d3-shape": "3.1.7", "@types/dompurify": "3.0.5", "@types/emoji-js": "3.5.2", "@types/jest": "29.5.14", "@types/lodash-es": "4.17.12", "@types/markdown-it": "14.1.2", - "@types/node": "22.10.2", + "@types/node": "22.10.7", "@types/papaparse": "5.3.15", "@types/smoothscroll-polyfill": "0.3.4", "@types/sockjs-client": "1.5.4", "@types/turndown": "5.0.5", "@types/uuid": "10.0.0", - "@typescript-eslint/eslint-plugin": "8.18.1", - "@typescript-eslint/parser": "8.18.1", - "eslint": "9.17.0", - "eslint-config-prettier": "9.1.0", + "@typescript-eslint/eslint-plugin": "8.20.0", + "@typescript-eslint/parser": "8.20.0", + "eslint": "9.18.0", + "eslint-config-prettier": "10.0.1", "eslint-plugin-deprecation": "3.0.0", - "eslint-plugin-jest": "28.10.0", + "eslint-plugin-jest": "28.11.0", "eslint-plugin-jest-extended": "2.4.0", - "eslint-plugin-prettier": "5.2.1", - "folder-hash": "4.0.4", + "eslint-plugin-prettier": "5.2.2", + "folder-hash": "4.1.1", "husky": "9.1.7", "jest": "29.7.0", "jest-canvas-mock": "2.5.2", @@ -156,18 +171,18 @@ "jest-extended": "4.0.2", "jest-fail-on-console": "3.3.1", "jest-junit": "16.0.0", - "jest-preset-angular": "14.4.2", - "lint-staged": "15.2.11", + "jest-preset-angular": "14.5.0", + "lint-staged": "15.4.0", "ng-mocks": "14.13.1", - "ngxtension": "4.2.0", + "patch-package": "8.0.0", "prettier": "3.4.2", "rimraf": "6.0.1", - "sass": "1.83.0", + "sass": "1.83.4", "ts-jest": "29.2.5", - "typescript": "5.5.4", - "typescript-eslint": "8.18.2", + "typescript": "5.7.3", + "typescript-eslint": "8.20.0", "vite-tsconfig-paths": "5.1.4", - "vitest": "2.1.8", + "vitest": "3.0.0", "weak-napi": "2.0.2" }, "engines": { @@ -180,7 +195,7 @@ "compile:ts:tests": "npm run prebuild && tsc --project tsconfig.spec.json", "lint": "eslint", "lint:fix": "eslint --fix", - "postinstall": "husky", + "postinstall": "husky && patch-package", "prebuild": "node prebuild.mjs", "prepare": "husky", "prettier:check": "prettier --check \"src/{main/webapp,test}/**/*.{json,ts,js,css,scss,html}\"", @@ -196,6 +211,6 @@ "testw8": "npm run prebuild && ng test --coverage --log-heap-usage -w=8", "update": "ncu -i --format group", "webapp:build": "npm run clean-www && npm run prebuild -- --develop && ng build --configuration development", - "webapp:prod": "npm run clean-www && npm run prebuild && ng build --configuration production" + "webapp:prod": "npm run clean-www && npm run prebuild && NG_BUILD_OPTIMIZE_CHUNKS=1 ng build --configuration production" } } diff --git a/patches/@swimlane+ngx-graph+9.0.1.patch b/patches/@swimlane+ngx-graph+9.0.1.patch new file mode 100644 index 000000000000..2843ab5eb28d --- /dev/null +++ b/patches/@swimlane+ngx-graph+9.0.1.patch @@ -0,0 +1,26 @@ +diff --git a/node_modules/@swimlane/ngx-graph/esm2022/lib/graph/graph.component.mjs b/node_modules/@swimlane/ngx-graph/esm2022/lib/graph/graph.component.mjs +index fadcfa7..6a6ab52 100644 +--- a/node_modules/@swimlane/ngx-graph/esm2022/lib/graph/graph.component.mjs ++++ b/node_modules/@swimlane/ngx-graph/esm2022/lib/graph/graph.component.mjs +@@ -197,7 +197,7 @@ export class GraphComponent { + if (layoutSettings) { + this.setLayoutSettings(this.layoutSettings); + } +- if (this.layout && this.nodes.length && this.links.length) { ++ if (this.layout && this.nodes && this.links) { + this.update(); + } + } +diff --git a/node_modules/@swimlane/ngx-graph/fesm2022/swimlane-ngx-graph.mjs b/node_modules/@swimlane/ngx-graph/fesm2022/swimlane-ngx-graph.mjs +index 0e851a7..c8dce60 100644 +--- a/node_modules/@swimlane/ngx-graph/fesm2022/swimlane-ngx-graph.mjs ++++ b/node_modules/@swimlane/ngx-graph/fesm2022/swimlane-ngx-graph.mjs +@@ -1478,7 +1478,7 @@ class GraphComponent { + if (layoutSettings) { + this.setLayoutSettings(this.layoutSettings); + } +- if (this.layout && this.nodes.length && this.links.length) { ++ if (this.layout && this.nodes && this.links) { + this.update(); + } + } diff --git a/patches/ng-mocks+14.13.1.patch b/patches/ng-mocks+14.13.1.patch new file mode 100644 index 000000000000..2a370550a707 --- /dev/null +++ b/patches/ng-mocks+14.13.1.patch @@ -0,0 +1,16 @@ +diff --git a/node_modules/ng-mocks/index.js b/node_modules/ng-mocks/index.js +index e49d71d..049e8ed 100644 +--- a/node_modules/ng-mocks/index.js ++++ b/node_modules/ng-mocks/index.js +@@ -1,2 +1,2 @@ +-!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("@angular/core"),require("@angular/core/testing"),require("@angular/forms"),require("@angular/common"),require("@angular/platform-browser"));else if("function"==typeof define&&define.amd)define(["@angular/core","@angular/core/testing","@angular/forms","@angular/common","@angular/platform-browser"],t);else{var r="object"==typeof exports?t(require("@angular/core"),require("@angular/core/testing"),require("@angular/forms"),require("@angular/common"),require("@angular/platform-browser")):t(e["@angular/core"],e["@angular/core/testing"],e["@angular/forms"],e["@angular/common"],e["@angular/platform-browser"]);for(var n in r)("object"==typeof exports?exports:e)[n]=r[n]}}(this,(function(__WEBPACK_EXTERNAL_MODULE__860__,__WEBPACK_EXTERNAL_MODULE__2603__,__WEBPACK_EXTERNAL_MODULE__7182__,__WEBPACK_EXTERNAL_MODULE__4358__,__WEBPACK_EXTERNAL_MODULE__1165__){return function(){"use strict";var __webpack_modules__={5170:function(e,t,r){var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.MockRenderFactory=t.MockRender=t.ngMocks=t.MockService=t.MockProviders=t.MockProvider=t.MockDeclarations=t.MockDeclaration=t.MockedPipe=t.MockPipes=t.MockPipe=t.MockedDirective=t.MockDirectives=t.MockDirective=t.MockedComponent=t.MockComponents=t.MockComponent=t.MockedModule=t.MockModule=t.IMockBuilderProvider=t.IMockBuilderResult=t.IMockBuilderConfigModule=t.IMockBuilderConfigDirective=t.IMockBuilderConfigComponent=t.IMockBuilderConfigAll=t.IMockBuilderConfig=t.IMockBuilderExtended=t.IMockBuilder=t.MockBuilder=t.MockReset=t.MockInstance=t.LegacyControlValueAccessor=t.MockValidator=t.MockControlValueAccessor=t.Mock=t.isNgInjectionToken=t.isNgDef=t.isMockedNgDefOf=t.isMockValidator=t.isMockOf=t.isMockNgDef=t.isMockControlValueAccessor=t.getSourceOfMock=t.getMockedNgDefOf=t.getInjection=t.getTestBedInjection=void 0,r(7592),r(4081),o(r(1763),t);var a=r(6456);Object.defineProperty(t,"getTestBedInjection",{enumerable:!0,get:function(){return a.getTestBedInjection}}),Object.defineProperty(t,"getInjection",{enumerable:!0,get:function(){return a.getInjection}});var i=r(5590);Object.defineProperty(t,"getMockedNgDefOf",{enumerable:!0,get:function(){return i.getMockedNgDefOf}});var l=r(6739);Object.defineProperty(t,"getSourceOfMock",{enumerable:!0,get:function(){return l.getSourceOfMock}});var u=r(7105);Object.defineProperty(t,"isMockControlValueAccessor",{enumerable:!0,get:function(){return u.isMockControlValueAccessor}});var f=r(6763);Object.defineProperty(t,"isMockNgDef",{enumerable:!0,get:function(){return f.isMockNgDef}});var c=r(7675);Object.defineProperty(t,"isMockOf",{enumerable:!0,get:function(){return c.isMockOf}});var d=r(2650);Object.defineProperty(t,"isMockValidator",{enumerable:!0,get:function(){return d.isMockValidator}});var s=r(732);Object.defineProperty(t,"isMockedNgDefOf",{enumerable:!0,get:function(){return s.isMockedNgDefOf}});var v=r(5974);Object.defineProperty(t,"isNgDef",{enumerable:!0,get:function(){return v.isNgDef}});var p=r(4152);Object.defineProperty(t,"isNgInjectionToken",{enumerable:!0,get:function(){return p.isNgInjectionToken}});var h=r(1946);Object.defineProperty(t,"Mock",{enumerable:!0,get:function(){return h.Mock}});var y=r(5980);Object.defineProperty(t,"MockControlValueAccessor",{enumerable:!0,get:function(){return y.MockControlValueAccessor}}),Object.defineProperty(t,"MockValidator",{enumerable:!0,get:function(){return y.MockValidator}}),Object.defineProperty(t,"LegacyControlValueAccessor",{enumerable:!0,get:function(){return y.LegacyControlValueAccessor}});var _=r(3001);Object.defineProperty(t,"MockInstance",{enumerable:!0,get:function(){return _.MockInstance}}),Object.defineProperty(t,"MockReset",{enumerable:!0,get:function(){return _.MockReset}});var g=r(3771);Object.defineProperty(t,"MockBuilder",{enumerable:!0,get:function(){return g.MockBuilder}});var b=r(2938);Object.defineProperty(t,"IMockBuilder",{enumerable:!0,get:function(){return b.IMockBuilder}}),Object.defineProperty(t,"IMockBuilderExtended",{enumerable:!0,get:function(){return b.IMockBuilderExtended}}),Object.defineProperty(t,"IMockBuilderConfig",{enumerable:!0,get:function(){return b.IMockBuilderConfig}}),Object.defineProperty(t,"IMockBuilderConfigAll",{enumerable:!0,get:function(){return b.IMockBuilderConfigAll}}),Object.defineProperty(t,"IMockBuilderConfigComponent",{enumerable:!0,get:function(){return b.IMockBuilderConfigComponent}}),Object.defineProperty(t,"IMockBuilderConfigDirective",{enumerable:!0,get:function(){return b.IMockBuilderConfigDirective}}),Object.defineProperty(t,"IMockBuilderConfigModule",{enumerable:!0,get:function(){return b.IMockBuilderConfigModule}}),Object.defineProperty(t,"IMockBuilderResult",{enumerable:!0,get:function(){return b.IMockBuilderResult}}),Object.defineProperty(t,"IMockBuilderProvider",{enumerable:!0,get:function(){return b.IMockBuilderProvider}});var m=r(3821);Object.defineProperty(t,"MockModule",{enumerable:!0,get:function(){return m.MockModule}});var M=r(3877);Object.defineProperty(t,"MockedModule",{enumerable:!0,get:function(){return M.MockedModule}});var k=r(5395);Object.defineProperty(t,"MockComponent",{enumerable:!0,get:function(){return k.MockComponent}}),Object.defineProperty(t,"MockComponents",{enumerable:!0,get:function(){return k.MockComponents}});var w=r(2350);Object.defineProperty(t,"MockedComponent",{enumerable:!0,get:function(){return w.MockedComponent}});var O=r(8339);Object.defineProperty(t,"MockDirective",{enumerable:!0,get:function(){return O.MockDirective}}),Object.defineProperty(t,"MockDirectives",{enumerable:!0,get:function(){return O.MockDirectives}});var x=r(4748);Object.defineProperty(t,"MockedDirective",{enumerable:!0,get:function(){return x.MockedDirective}});var j=r(2937);Object.defineProperty(t,"MockPipe",{enumerable:!0,get:function(){return j.MockPipe}}),Object.defineProperty(t,"MockPipes",{enumerable:!0,get:function(){return j.MockPipes}});var D=r(5861);Object.defineProperty(t,"MockedPipe",{enumerable:!0,get:function(){return D.MockedPipe}});var S=r(5269);Object.defineProperty(t,"MockDeclaration",{enumerable:!0,get:function(){return S.MockDeclaration}}),Object.defineProperty(t,"MockDeclarations",{enumerable:!0,get:function(){return S.MockDeclarations}});var P=r(7413);Object.defineProperty(t,"MockProvider",{enumerable:!0,get:function(){return P.MockProvider}}),Object.defineProperty(t,"MockProviders",{enumerable:!0,get:function(){return P.MockProviders}});var C=r(5779);Object.defineProperty(t,"MockService",{enumerable:!0,get:function(){return C.MockService}});var N=r(6189);Object.defineProperty(t,"ngMocks",{enumerable:!0,get:function(){return N.ngMocks}});var T=r(1661);Object.defineProperty(t,"MockRender",{enumerable:!0,get:function(){return T.MockRender}});var E=r(8406);Object.defineProperty(t,"MockRenderFactory",{enumerable:!0,get:function(){return E.MockRenderFactory}}),o(r(7325),t),o(r(534),t)},3295:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default={flags:["cacheModule","cacheComponent","cacheDirective","cacheProvider","correctModuleExports"],mockRenderCacheSize:25,neverMockModule:["ApplicationModule","CommonModule","BrowserModule","_ApplicationModule","_CommonModule","_BrowserModule"],neverMockProvidedFunction:["DomRendererFactory2","EventManager","Injector","RendererFactory2","Sanitizer","DomSanitizer","DomSanitizerImpl","ApplicationInitStatus","ApplicationRef","Compiler","IterableDiffers","KeyValueDiffers","_DomRendererFactory2","_EventManager","_Injector","_Sanitizer","_DomSanitizer","_DomSanitizerImpl","_ApplicationInitStatus","_ApplicationRef","_Compiler","_IterableDiffers","_KeyValueDiffers"],neverMockToken:["InjectionToken Set Injector scope.","InjectionToken EventManagerPlugins","InjectionToken HammerGestureConfig","InjectionToken AppId","InjectionToken DefaultCurrencyCode","InjectionToken LocaleId","InjectionToken SCHEDULER_TOKEN"],onMockBuilderMissingDependency:"throw",onMockInstanceRestoreNeed:"warn",onTestBedFlushNeed:"warn",dependencies:["declarations","hostDirectives","entryComponents","bootstrap","providers","viewProviders","imports","exports"]}},5551:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=function(){function e(){this.stack=[],this.push()}return e.prototype.push=function(){this.stack.push(new Map)},e.prototype.pop=function(){var e;return null!==(e=this.stack.pop())&&void 0!==e?e:new Map},e.prototype.has=function(e){for(var t=this.stack.length-1;t>=0;t-=1)if(this.stack[t].has(e))return!0;return!1},e.prototype.get=function(e){for(var t=this.stack.length-1;t>=0;t-=1)if(this.stack[t].has(e))return this.stack[t].get(e)},e.prototype.set=function(e,t){for(var r=this.stack.length-1;r>=0;r-=1)this.stack[r].set(e,t);return this},e.prototype.merge=function(e){var t,r;try{for(var i=n((0,a.mapEntries)(e)),l=i.next();!l.done;l=i.next()){var u=o(l.value,2),f=u[0],c=u[1];this.set(f,c)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}return this},e}();t.default=i},3174:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(445));t.default=function(e,t,r,n){void 0===n&&(n=!1),o.default.definePropertyDescriptor(e,t,{configurable:!0,enumerable:n,value:r,writable:!0})}},2023:function(e,t,r){var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(7182)),l=i.AbstractControl,u=i.DefaultValueAccessor,f=i.FormControl,c=i.FormControlDirective,d=i.NG_ASYNC_VALIDATORS,s=i.NG_VALIDATORS,v=i.NG_VALUE_ACCESSOR,p=i.NgControl,h=i.NgModel;t.default={AbstractControl:l,DefaultValueAccessor:u,FormControl:f,FormControlDirective:c,NG_ASYNC_VALIDATORS:d,NG_VALIDATORS:s,NG_VALUE_ACCESSOR:v,NgControl:p,NgModel:h}},6456:function(__unused_webpack_module,exports,__webpack_require__){var __extends=this&&this.__extends||(extendStatics=function(e,t){return extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},extendStatics(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}extendStatics(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),extendStatics,__values=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},__read=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},__spreadArray=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0&&(0,core_define_property_1.default)(t,"parameters",__spreadArray([],__read(r),!1)),t};exports.extendClass=extendClass},4201:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(6456),o={};t.default=function(e,t){if(void 0===t&&(t=o),t===o)return(0,n.getTestBedInjection)(e);try{return t.get(e)}catch(e){return}}},4874:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8641)),a=n(r(1585)),i=n(r(2129));t.default=function(e){return function(t){(0,o.default)(t);try{return e(t)}catch(e){(0,a.default)(t),(0,i.default)(t)}}}},8862:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4673)),a=n(r(4874));t.default=function(e){return(0,a.default)((function(e){var t=(0,o.default)(e);if(t.Component)return t.Component;if(t.Directive)return t.Directive;throw new Error("Cannot resolve declarations")}))(e)}},1381:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8862)),a=n(r(1345)),i=r(5974);t.default=function(e){return(0,i.isNgDef)(e,"c")||(0,i.isNgDef)(e,"d")?(0,o.default)(e):(0,i.isNgDef)(e,"m")?(0,a.default)(e):void 0}},1345:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4673)),a=n(r(4874));t.default=function(e){return(0,a.default)((function(e){var t=(0,o.default)(e);if(t.NgModule)return t.NgModule;throw new Error("Cannot resolve declarations")}))(e)}},8749:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4673));t.default=function(e){var t;return null!==(t=(0,o.default)(e).parameters)&&void 0!==t?t:[]}},8773:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4673)),a=n(r(4874));t.default=function(e){return(0,a.default)((function(e){var t=(0,o.default)(e);if(t.Pipe)return t.Pipe;throw new Error("Cannot resolve declarations")}))(e)}},8911:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,r,n;if(e&&("object"==typeof e||"function"==typeof e))return null!==(r=null===(t=e.ɵprov)||void 0===t?void 0:t.providedIn)&&void 0!==r?r:null===(n=e.ngInjectableDef)||void 0===n?void 0:n.providedIn}},1763:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.NG_MOCKS_ROOT_PROVIDERS=t.NG_MOCKS_INTERCEPTORS=t.NG_MOCKS_RESOLVERS=t.NG_MOCKS_GUARDS=t.NG_MOCKS_OVERRIDES=t.NG_MOCKS_TOUCHES=t.NG_MOCKS=void 0;var n=r(860);t.NG_MOCKS=new n.InjectionToken("NG_MOCKS"),t.NG_MOCKS.__ngMocksSkip=!0,t.NG_MOCKS_TOUCHES=new n.InjectionToken("NG_MOCKS_TOUCHES"),t.NG_MOCKS_TOUCHES.__ngMocksSkip=!0,t.NG_MOCKS_OVERRIDES=new n.InjectionToken("NG_MOCKS_OVERRIDES"),t.NG_MOCKS_OVERRIDES.__ngMocksSkip=!0,t.NG_MOCKS_GUARDS=new n.InjectionToken("NG_MOCKS_GUARDS"),t.NG_MOCKS_GUARDS.__ngMocksSkip=!0,t.NG_MOCKS_RESOLVERS=new n.InjectionToken("NG_MOCKS_RESOLVERS"),t.NG_MOCKS_RESOLVERS.__ngMocksSkip=!0,t.NG_MOCKS_INTERCEPTORS=new n.InjectionToken("NG_MOCKS_INTERCEPTORS"),t.NG_MOCKS_INTERCEPTORS.__ngMocksSkip=!0,t.NG_MOCKS_ROOT_PROVIDERS=new n.InjectionToken("NG_MOCKS_ROOT_PROVIDERS"),t.NG_MOCKS_ROOT_PROVIDERS.__ngMocksSkip=!0},5756:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(860),i=o(r(6439)),l=o(r(1184));t.default=function(e,t,r){var o,u;if(t)try{for(var f=n(t),c=f.next();!c.done;c=f.next()){var d=c.value,s=(0,l.default)(d),v=s.name,p=s.alias,h=s.required;r&&-1!==r.indexOf(v)||(0,a.Input)((0,i.default)({name:v,alias:p,required:h},!0))(e.prototype,v)}}catch(e){o={error:e}}finally{try{c&&!c.done&&(u=f.return)&&u.call(f)}finally{if(o)throw o.error}}}},615:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(860),i=o(r(6439)),l=o(r(1184));t.default=function(e,t){var r,o;if(t)try{for(var u=n(t),f=u.next();!f.done;f=u.next()){var c=f.value,d=(0,l.default)(c),s=d.name,v=d.alias,p=d.required;(0,a.Output)((0,i.default)({name:s,alias:v,required:p},!0))(e.prototype,s)}}catch(e){r={error:e}}finally{try{f&&!f.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}},8385:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0});var i=r(860),l={ContentChild:i.ContentChild,ContentChildren:i.ContentChildren,ViewChild:i.ViewChild,ViewChildren:i.ViewChildren},u=function(e){return 0===e.indexOf("__mock")},f=function(e){return n(n({},e),{ngMetadataName:e.ngMetadataName,read:i.ViewContainerRef})};t.default=function(e,t){var r,n;if(!t)return[];var i=a(function(e){var t,r,n=[],a=[];try{for(var i=o(Object.keys(e)),l=i.next();!l.done;l=i.next()){var c=l.value,d=e[c];n.push([c,d]),d.isViewQuery||u(c)||(a.push(c),n.push(["__ngMocksVcr_".concat(c),f(d)]))}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}return[n,a]}(t),2),c=i[0],d=i[1];try{for(var s=o(c),v=s.next();!v.done;v=s.next()){var p=a(v.value,2),h=p[0],y=p[1];y.ngMetadataName&&(0,l[y.ngMetadataName])(y.selector,y)(e.prototype,h)}}catch(e){r={error:e}}finally{try{v&&!v.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return d}},8641:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!e)throw new Error(["undefined / null has been passed into ng-mocks as a declaration / provider.","Please ensure that the current test file has correct imports:","imported files exist and imported declarations have been exported in the file."].join(" "))}},1585:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(2970)),a=n(r(9628));t.default=function(e){if((0,a.default)(e))throw new Error(["ng-mocks got ".concat((0,o.default)(e)," which has been already mocked by jest.mock()."),"It is not possible to produce correct mocks for it, because jest.mock() removes Angular decorators.","To fix this, please avoid jest.mock() on the file which exports ".concat((0,o.default)(e)," or add jest.dontMock() on it."),"The same should be done for all related dependencies."].join(" "))}},2129:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(2970));t.default=function(e){throw new Error(["".concat((0,o.default)(e)," declaration has been passed into ng-mocks without Angular decorators."),"Therefore, it cannot be properly handled.","Highly likely,","undefined"==typeof jest?"":"jest.mock() has been used on its file, or","ng-mocks is imported in production code, or got a class without Angular decoration.","Otherwise, please create an issue on github: https://github.com/help-me-mom/ng-mocks/issues/new?title=False%20positive%20ng-mocks%20not%20in%20JIT.","Thank you in advance for support."].join(" "))}},6439:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var r=e.name,n=e.alias,o=e.required;return void 0===t&&(t=!1),o?{name:r,alias:n,required:o}:n&&r!==n?t?n:"".concat(r,":").concat(n):t?"":r}},1184:function(e,t){var r=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"==typeof e){var t=r(e.split(":").map((function(e){return e.trim()})),2),n=t[0],o=t[1];return n!==o&&o?{name:n,alias:o}:{name:n}}return e}},5204:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.funcExtractDeps=void 0;var a=o(r(4673)),i=o(r(3295)),l=r(6456),u=r(9335),f=o(r(6297));t.funcExtractDeps=function(e,r,o){var c,d,s,v;void 0===o&&(o=!1);var p=(0,a.default)(e),h=(0,u.getNgType)(e);if(!h||"Injectable"===h)return r;var y=p[h];try{for(var _=n(i.default.dependencies),g=_.next();!g.done;g=_.next()){var b=g.value;if(y[b])try{for(var m=(s=void 0,n((0,l.flatten)(y[b]))),M=m.next();!M.done;M=m.next()){var k=M.value,w=(0,f.default)(k);r.has(w)||(r.add(w),o&&(0,t.funcExtractDeps)(w,r))}}catch(e){s={error:e}}finally{try{M&&!M.done&&(v=m.return)&&v.call(m)}finally{if(s)throw s.error}}}}catch(e){c={error:e}}finally{try{g&&!g.done&&(d=_.return)&&d.call(_)}finally{if(c)throw c.error}}return r}},7285:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"function"==typeof e&&e.__forward_ref__?e():e}},1102:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return"undefined"==typeof window?r.g:window}},5590:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getMockedNgDefOf=function(e,t){var r,n=null!==(r=e.mockOf)&&void 0!==r?r:e,u=(0,o.default)(a.NG_MOCKS),c=f(e,n,u);if(c&&!t)return c;if(c&&t&&(0,l.isMockedNgDefOf)(c,n,t))return c;throw new Error("There is no mock for ".concat((0,i.default)(n)))};var o=n(r(4201)),a=r(1763),i=n(r(2970)),l=r(732),u=n(r(8073)),f=function(e,t,r){if(r&&!r.has(t))throw new Error("There is no mock for ".concat((0,i.default)(t)));var n=r?r.get(t):void 0;return n===t&&(n=void 0),n||t===e?!n&&u.default.cacheDeclarations.has(t)&&(n=u.default.cacheDeclarations.get(t)):n=e,n}},2970:function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new RegExp("[^0-9a-z]+","mgi");t.default=function(e){var t;return"function"==typeof e&&e.name?t=e.name:"function"==typeof e?t="arrowFunction":"object"==typeof e&&e&&"InjectionToken"===e.ngMetadataName?t=e._desc:"object"==typeof e&&e&&"function"==typeof e.constructor&&(t=e.constructor.name),t||(t="unknown"),t.replace(r,"_")}},9335:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getNgType=void 0;var o=n(r(4673)),a=r(4152);t.getNgType=function(e){if("string"!=typeof e){if((0,a.isNgInjectionToken)(e))return"Injectable";for(var t=(0,o.default)(e).decorators,r=t.length-1;r>=0;r-=1)if("Injectable"!==t[r])return t[r];return t.length>0?"Injectable":void 0}}},6739:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.getSourceOfMock=function(e){return"function"==typeof e&&e.mockOf?e.mockOf:e}},6297:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(3659);t.default=function(e){return e&&"object"==typeof e&&e.provide?e.provide:(0,n.isNgModuleDefWithProviders)(e)?e.ngModule:e&&"object"==typeof e&&e.directive?e.directive:e}},6804:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(2970)),a=r(5974);t.default=function(e,t){if(null==e)throw new Error("null / undefined has been passed into ".concat(t,". Please check that its import is correct."));if(!("MockPipe"===t&&(0,a.isNgDef)(e,"p")||"MockDirective"===t&&(0,a.isNgDef)(e,"d")||"MockComponent"===t&&(0,a.isNgDef)(e,"c")||"MockModule"===t&&(0,a.isNgDef)(e,"m"))){var r=function(e){return(0,a.isNgDef)(e,"p")?"pipe":(0,a.isNgDef)(e,"d")?"directive":(0,a.isNgDef)(e,"c")?"component":(0,a.isNgDef)(e,"m")?"module":(0,a.isNgDef)(e,"i")?"service":(0,a.isNgDef)(e,"t")?"token":""}(e);if(r&&"MockPipe"===t)throw new Error("".concat(t," accepts pipes, whereas ").concat((0,o.default)(e)," is a ").concat(r,"."));if(r&&"MockDirective"===t)throw new Error("".concat(t," accepts directives, whereas ").concat((0,o.default)(e)," is a ").concat(r,"."));if(r&&"MockComponent"===t)throw new Error("".concat(t," accepts components, whereas ").concat((0,o.default)(e)," is a ").concat(r,"."));if(r&&"MockModule"===t)throw new Error("".concat(t," accepts modules, whereas ").concat((0,o.default)(e)," is a ").concat(r,"."))}}},9628:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!(!e||"function"!=typeof e&&"object"!=typeof e||!(e._isMockFunction&&e.mockName&&e.__annotations__))}},7105:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isMockControlValueAccessor=void 0;var o=n(r(2137));t.isMockControlValueAccessor=function(e){return!!(0,o.default)(e)&&!!e.__ngMocksConfig.isControlValueAccessor}},6763:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.isMockNgDef=function(e,t){return!!e.mockOf&&(!t||(0,n.isNgDef)(e.mockOf,t))};var n=r(5974)},7675:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isMockOf=function(e,t,r){return(0,o.default)(e)&&e.constructor===t&&(r?(0,a.isNgDef)(e.constructor,r):(0,a.isNgDef)(e.constructor))};var o=n(r(2137)),a=r(5974)},2650:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isMockValidator=void 0;var o=n(r(2137));t.isMockValidator=function(e){return!!(0,o.default)(e)&&!!e.__ngMocksConfig.isValidator}},2137:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return e&&"object"==typeof e&&!!e.__ngMocks}},732:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.isMockedNgDefOf=function(e,t,r){return"function"==typeof e&&e.mockOf===t&&(!r||(0,n.isNgDef)(e,r))};var n=r(5974)},5974:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.isNgDef=function(e,t){if("t"===t)return(0,n.isNgInjectionToken)(e);if("function"!=typeof e)return!1;var r=a(e,t),o=i(e,t),c=l(e,t),d=u(e,t),s=f(e,t);return r||o||c||d||s};var n=r(4152),o=r(7297),a=function(e,t){return(!t||"m"===t)&&(0,o.isNgType)(e,"NgModule")},i=function(e,t){return(!t||"c"===t)&&(0,o.isNgType)(e,"Component")},l=function(e,t){return(!t||"d"===t)&&(0,o.isNgType)(e,"Directive")},u=function(e,t){return(!t||"p"===t)&&(0,o.isNgType)(e,"Pipe")},f=function(e,t){return(!t||"i"===t)&&(0,o.isNgType)(e,"Injectable")}},4152:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.isNgInjectionToken=void 0,t.isNgInjectionToken=function(e){return e&&"object"==typeof e&&"InjectionToken"===e.ngMetadataName}},3659:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.isNgModuleDefWithProviders=void 0,t.isNgModuleDefWithProviders=function(e){return e&&"object"==typeof e&&"function"==typeof e.ngModule}},7297:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isNgType=void 0;var o=n(r(4673));t.isNgType=function(e,t){var r=(0,o.default)(e).decorators;if(0===r.length)return!1;var n=1;if("Injectable"===t&&-1!==r.indexOf("Injectable"))return!0;for(;"Injectable"===r[r.length-n];)n+=1;return r[r.length-n]===t}},6580:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isStandalone=function(e){var t=(0,a.getNgType)(e);return!(!t||"Injectable"===t)&&!0===(0,o.default)(e)[t].standalone};var o=n(r(4673)),a=r(9335)},6259:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(4673)),i=o(r(3295)),l=r(6456),u=o(r(6297)),f=function(e,t,r){var o,c,d,s,v,p;void 0===r&&(r=new Set);var h=(0,a.default)(e);try{for(var y=n(h.decorators),_=y.next();!_.done;_=y.next()){var g=_.value;try{for(var b=(d=void 0,n(i.default.dependencies)),m=b.next();!m.done;m=b.next()){var M=m.value;if(h[g][M])try{for(var k=(v=void 0,n((0,l.flatten)(h[g][M]))),w=k.next();!w.done;w=k.next()){var O=w.value,x=(0,u.default)(O);x&&!r.has(x)&&(r.add(x),t(x),f(x,t,r))}}catch(e){v={error:e}}finally{try{w&&!w.done&&(p=k.return)&&p.call(k)}finally{if(v)throw v.error}}}}catch(e){d={error:e}}finally{try{m&&!m.done&&(s=b.return)&&s.call(b)}finally{if(d)throw d.error}}}}catch(e){o={error:e}}finally{try{_&&!_.done&&(c=y.return)&&c.call(y)}finally{if(o)throw o.error}}};t.default=f},1433:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.MockAsyncValidatorProxy=t.MockValidatorProxy=t.MockControlValueAccessorProxy=void 0;var r=function(e,t,r,n){if(e.instance&&n&&(e.instance[n]=r),e.instance&&e.instance[t])return e.instance[t](r)},n=function(){function e(e){this.target=e}return e.prototype.registerOnChange=function(e){r(this,"registerOnChange",e,"__simulateChange")},e.prototype.registerOnTouched=function(e){r(this,"registerOnTouched",e,"__simulateTouch")},e.prototype.setDisabledState=function(e){r(this,"setDisabledState",e)},e.prototype.writeValue=function(e){r(this,"writeValue",e)},e}();t.MockControlValueAccessorProxy=n;var o=function(){function e(e){this.target=e}return e.prototype.registerOnValidatorChange=function(e){r(this,"registerOnValidatorChange",e,"__simulateValidatorChange")},e.prototype.validate=function(e){return this.instance&&this.instance.validate?this.instance.validate(e):null},e}();t.MockValidatorProxy=o;var a=function(){function e(e){this.target=e}return e.prototype.registerOnValidatorChange=function(e){r(this,"registerOnValidatorChange",e,"__simulateValidatorChange")},e.prototype.validate=function(e){if(this.instance&&this.instance.validate){var t=this.instance.validate(e);return void 0===t?Promise.resolve(null):t}return Promise.resolve(null)},e}();t.MockAsyncValidatorProxy=a},5980:function(e,t,r){var n,o=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LegacyControlValueAccessor=void 0;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.prototype.__simulateChange=function(){},t.prototype.__simulateTouch=function(){},t.prototype.__simulateValidatorChange=function(){},t}(r(1946).Mock);t.LegacyControlValueAccessor=a},1946:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0&&((o=(0,c.default)(e._providers||(null===(n=e._compiler)||void 0===n?void 0:n.providers)).touches)||(o=new Set,t.providers=t.providers||[],t.providers.push({provide:O.NG_MOCKS_TOUCHES,useValue:o})),T(t,o)),o}(Y,K,J.touches);return Z&&v.ngMocks.flushTestBed(),ee&&function(e){var t,r;try{for(var i=o((0,b.mapEntries)(e)),l=i.next();!l.done;l=i.next()){var u=a(l.value,2),c=u[0],d=a(u[1],2),s=d[0],v=d[1];f.TestBed.ngMocksOverrides.set(c,n(n({},v),{override:s})),N(c,s)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}}(ee),!te||Y._instantiated||Y._testModuleRef||function(e,t){var r,n;if(f.TestBed.ngMocksOverrides){var i=C.default.touches;C.default.touches=t;try{for(var l=o((0,b.flatten)(e.ngModule||[])),u=l.next();!u.done;u=l.next()){var c=u.value;E(c)}}catch(e){r={error:e}}finally{try{u&&!u.done&&(n=l.return)&&n.call(l)}finally{if(r)throw r.error}}!function(e){var t,r;try{for(var n=o((0,b.mapEntries)(C.default.getDefaults())),i=n.next();!i.done;i=n.next()){var l=a(i.value,2),u=l[0];"mock"===a(l[1],1)[0]&&((0,S.isNgDef)(u,"i")||(0,S.isNgDef)(u,"t"))&&(e.has(u)||f.TestBed.ngMocksOverrides.has(u)||A(u,e))}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(t)throw t.error}}}(t),C.default.touches=i}}(Y,te),e.call(t,K)}},I=function(e,t){return function(){return C.default.global.delete("builder:config"),C.default.global.delete("builder:module"),f.TestBed.ngMocksSelectors=void 0,function(e){var t,r,n;if(null===(n=e.ngMocksOverrides)||void 0===n?void 0:n.size){v.ngMocks.flushTestBed();try{for(var i=o((0,b.mapEntries)(e.ngMocksOverrides)),l=i.next();!l.done;l=i.next()){var u=a(l.value,2),f=u[0],c=u[1];N(f,c)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}}e.ngMocksOverrides=void 0}(f.TestBed),e.call(t)}},V=function(e){if(!u.ViewContainerRef.ngMocksOverridesPatched&&((0,g.default)(u.ViewContainerRef,"ngMocksOverridesPatched",!0),e.createComponent)){var t=e.createComponent,r=(0,y.default)(t,void 0,void 0,(function(e){for(var r,n=[],o=1;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var u=l(r(8073)),f={id:{},level:"root"},c=u.default.global.get("reporter-stack")||[a({},f)];u.default.global.set("reporter-stack",c);var d=null!==(n=u.default.global.get("reporter-stack-push"))&&void 0!==n?n:[];u.default.global.set("reporter-stack-push",d);var s=null!==(o=u.default.global.get("reporter-stack-pop"))&&void 0!==o?o:[];u.default.global.set("reporter-stack-pop",s),t.default={current:function(){return c[c.length-1]},stackPop:function(){var e,t,r=c.pop();if(0===c.length&&c.push("root"===(null==r?void 0:r.level)?r:a({},f)),r&&"root"!==r.level)try{for(var n=i(s),o=n.next();!o.done;o=n.next())(0,o.value)(r,c)}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}u.default.global.set("reporter-stack-id",c[c.length-1].id)},stackPush:function(){var e,t,r={};u.default.global.set("reporter-stack-id",r);var n={id:r,level:"runtime"};c.push(n);try{for(var o=i(d),a=o.next();!a.done;a=o.next())(0,a.value)(n,c)}catch(t){e={error:t}}finally{try{a&&!a.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}},subscribePop:function(e){-1===s.indexOf(e)&&s.push(e)},subscribePush:function(e){d.indexOf(e)&&d.push(e),c.length>0&&e(c[c.length-1],c)},unsubscribePop:function(e){var t=s.indexOf(e);-1!==t&&s.splice(t,1)},unsubscribePush:function(e){var t=d.indexOf(e);-1!==t&&d.splice(t,1)}}},8073:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3295)),i=o(r(1102)),l=o(r(2970)),u=function(e){return function(){return f.global.has(e)||f.global.set(e,new Map),f.global.get(e)}};(0,i.default)().ngMocksUniverse=(0,i.default)().ngMocksUniverse||{};var f=(0,i.default)().ngMocksUniverse;f.builtDeclarations=new Map,f.builtProviders=new Map,f.cacheDeclarations=new Map,f.cacheProviders=new Map,f.config=new Map,f.configInstance=new Map,f.flags=new Set(a.default.flags),f.global=new Map,f.touches=new Set,f.global.set("flags",{onMockBuilderMissingDependency:a.default.onMockBuilderMissingDependency,onMockInstanceRestoreNeed:a.default.onMockInstanceRestoreNeed,onTestBedFlushNeed:a.default.onTestBedFlushNeed}),f.getOverrides=u("overrides"),f.getDefaults=u("defaults"),f.getConfigMock=u("configMock");var c=function(e){var t;return(t=f.getDefaults().get(e))||(t="function"==typeof e?f.getDefaults().get("@".concat((0,l.default)(e))):void 0)?t:[]};f.getResolution=function(e){var t=f.config.get("ngMocksDepsResolution");return(null==t?void 0:t.has(e))?t.get(e):n(c(e),1)[0]},f.getBuildDeclaration=function(e){if(f.builtDeclarations.has(e))return f.builtDeclarations.get(e);var t=n(c(e),2),r=t[0],o=t[1];return"exclude"===r?null:r&&"keep"!==r?"replace"===r?o:void 0:e},f.hasBuildDeclaration=function(e){if(f.builtDeclarations.has(e))return void 0!==f.builtDeclarations.get(e);var t=n(c(e),1)[0];return!!t&&"mock"!==t};var d=function(e){return f.hasBuildDeclaration(e)},s=function(e){return f.getBuildDeclaration(e)};f.isExcludedDef=function(e){var t=f.getResolution(e);return(!t||"exclude"===t)&&d(e)&&null===s(e)},f.isProvidedDef=function(e){return d(e)&&null!==s(e)},f.getDefaults().set("@StoreDevtoolsModule",["exclude"]),f.indexValue=0,f.index=function(){return f.indexValue++},t.default=f},4117:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6456),a=r(1763);t.default=function(e){var t,r,i,l,u;try{for(var f=n((0,o.flatten)(e||[])),c=f.next();!c.done;c=f.next()){var d=c.value;"object"==typeof d&&(d.provide===a.NG_MOCKS&&(i=d.useValue),d.provide===a.NG_MOCKS_OVERRIDES&&(l=d.useValue),d.provide===a.NG_MOCKS_TOUCHES&&(u=d.useValue))}}catch(e){t={error:e}}finally{try{c&&!c.done&&(r=f.return)&&r.call(f)}finally{if(t)throw t.error}}return{mocks:i,overrides:l,touches:u}}},9539:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockBuilderStash=void 0;var a=o(r(3295)),i=o(r(8073)),l=function(){function e(){this.data={}}return e.prototype.backup=function(){this.data={builtDeclarations:i.default.builtDeclarations,builtProviders:i.default.builtProviders,cacheDeclarations:i.default.cacheDeclarations,cacheProviders:i.default.cacheProviders,config:i.default.config,configInstance:i.default.configInstance,flags:i.default.flags,touches:i.default.touches},i.default.builtDeclarations=new Map,i.default.builtProviders=new Map,i.default.cacheDeclarations=new Map,i.default.cacheProviders=new Map,i.default.config=new Map,i.default.configInstance=new Map,i.default.flags=new Set(a.default.flags),i.default.touches=new Set},e.prototype.restore=function(){var e,t;try{for(var r=n(Object.keys(this.data)),o=r.next();!o.done;o=r.next()){var a=o.value;i.default[a]=this.data[a]}}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=r.return)&&t.call(r)}finally{if(e)throw e.error}}},e}();t.MockBuilderStash=l},9755:function(e,t,r){var n,o=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),a=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{u(n.next(e))}catch(e){a(e)}}function l(e){try{u(n.throw(e))}catch(e){a(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,l)}u((n=n.apply(e,t||[])).next())}))},i=this&&this.__generator||function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(l){return function(u){return function(l){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==l[0]&&2!==l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockBuilderPerformance=void 0;var f=r(2603),c=r(6456),d=u(r(8073)),s=r(9620),v=u(r(2739)),p=u(r(9049)),h=u(r(7570)),y=u(r(1271)),_=u(r(5633)),g=u(r(4503)),b=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.prototype.build=function(){var t=d.default.global;if(t.has("builder:module")&&t.has("builder:config")&&this.equalsTo(t.get("builder:config")))return(0,g.default)(t.get("builder:module"));t.has("builder:module")&&t.delete(t.get("builder:module"));var r=this.cloneConfig(),n=e.prototype.build.call(this);return t.set("builder:config",r),t.set("builder:module",n),(0,g.default)(n)},t.prototype.then=function(t,r){return a(this,void 0,Promise,(function(){var n,o;return i(this,(function(a){return(n=d.default.global).has("bullet")&&n.has("builder:module")&&n.has("builder:config")&&this.equalsTo(n.get("builder:config"))?[2,n.get(n.get("builder:module")).then(t,r)]:(n.has("bullet")&&n.has("bullet:reset")&&(console.warn("ngMocks.faster has zero effect due to changes in testing module between runs"),n.delete("bullet"),f.TestBed.resetTestingModule(),n.set("bullet",!0)),o=e.prototype.then.call(this,t,r),n.set(n.get("builder:module"),o),[2,o])}))}))},t.prototype.cloneConfig=function(){var e=(0,_.default)();return(0,c.mapValues)(this.beforeCC,e.beforeCC),(0,c.mapValues)(this.excludeDef,e.excludeDef),(0,c.mapValues)(this.keepDef,e.keepDef),(0,c.mapValues)(this.mockDef,e.mockDef),(0,c.mapValues)(this.replaceDef,e.replaceDef),(0,c.mapEntries)(this.configDef,e.configDef),(0,c.mapEntries)(this.defProviders,e.defProviders),(0,c.mapEntries)(this.defValue,e.defValue),(0,c.mapEntries)(this.providerDef,e.providerDef),e},t.prototype.equalsTo=function(e){var t,r,n,o,a,i;try{for(var u=l(["beforeCC","keepDef","replaceDef","excludeDef","mockDef"]),f=u.next();!f.done;f=u.next()){var c=f.value;if(!(0,y.default)(this[c],e[c]))return!1}}catch(e){t={error:e}}finally{try{f&&!f.done&&(r=u.return)&&r.call(u)}finally{if(t)throw t.error}}try{for(var d=l(["defValue"]),s=d.next();!s.done;s=d.next())if(c=s.value,!(0,p.default)(this[c],e[c]))return!1}catch(e){n={error:e}}finally{try{s&&!s.done&&(o=d.return)&&o.call(d)}finally{if(n)throw n.error}}try{for(var _=l(["providerDef","defProviders"]),g=_.next();!g.done;g=_.next())if(c=g.value,!(0,p.default)(this[c],e[c],h.default))return!1}catch(e){a={error:e}}finally{try{g&&!g.done&&(i=_.return)&&i.call(_)}finally{if(a)throw a.error}}return(0,p.default)(this.configDef,e.configDef,v.default)},t}(s.MockBuilderPromise);t.MockBuilderPerformance=b},9620:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{u(n.next(e))}catch(e){a(e)}}function l(e){try{u(n.throw(e))}catch(e){a(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,l)}u((n=n.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(l){return function(u){return function(l){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==l[0]&&2!==l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockBuilderPromise=void 0;var f=r(2603),c=u(r(5551)),d=r(6456),s=u(r(2970)),v=r(5974),p=r(3659),h=u(r(8073)),y=r(3771),_=r(9539),g=u(r(7140)),b=u(r(1649)),m=u(r(4387)),M=u(r(1267)),k=u(r(9961)),w=u(r(7703)),O=u(r(5195)),x=u(r(1391)),j=u(r(7235)),D=u(r(8792)),S=u(r(9102)),P=function(e){return(0,p.isNgModuleDefWithProviders)(e)?{def:e.ngModule,providers:e.providers}:{def:e,providers:void 0}},C=function(e,t,r){return r?i(i([],a(Array.isArray(t)?t:[]),!1),[e],!1):e},N={},T=function(){function e(e){this.configDefault=e,this.beforeCC=new Set,this.configDef=new Map,this.defProviders=new Map,this.defValue=new Map,this.excludeDef=new Set,this.keepDef=new Set,this.mockDef=new Set,this.providerDef=new Map,this.replaceDef=new Set,this.stash=new _.MockBuilderStash,"undefined"!=typeof Symbol&&(this[Symbol.toStringTag]="Promise")}return e.prototype.beforeCompileComponents=function(e){return this.beforeCC.add(e),this},e.prototype.build=function(){this.stash.backup();var e=new c.default;h.default.config.set("mockNgDefResolver",e),h.default.flags.add("hasRootModule");try{var t=this.combineParams(),r=(0,x.default)(t,(0,j.default)(t));return(0,g.default)(r,t,e),(0,O.default)(r,t,e),(0,w.default)(r),(0,b.default)(),r.providers.push((0,M.default)(),(0,k.default)(),(0,m.default)(this.replaceDef,this.defValue),y.MockBuilder),r}finally{h.default.flags.delete("hasRootModule"),h.default.config.delete("mockNgDefResolver"),this.stash.restore()}},e.prototype.catch=function(e){return n(this,void 0,Promise,(function(){return o(this,(function(t){return[2,this.then().catch(e)]}))}))},e.prototype.exclude=function(e){return this.wipe(e),this.excludeDef.add(e),this.setConfigDef(e),this},e.prototype.finally=function(e){return n(this,void 0,Promise,(function(){return o(this,(function(t){return[2,this.then().finally(e)]}))}))},e.prototype.keep=function(e,t){var r=P(e),n=r.def,o=r.providers,l=this.keepDef.has(n)?this.defProviders.get(n):[];return this.wipe(n),this.keepDef.add(n),o&&this.defProviders.set(n,i(i([],a(l||[]),!1),a(o),!1)),this.setConfigDef(n,t),this},e.prototype.mock=function(e,t,r){void 0===t&&(t=N);var n=P(e),o=n.def,l=n.providers,u=(0,D.default)(o,t,r,N),f=u.config,c=u.mock;if((0,v.isNgDef)(c)&&(0,v.isNgDef)(e)&&!(0,v.isNgDef)(e,"t"))throw new Error(["MockBuilder.mock(".concat((0,s.default)(e),") received a class when its shape is expected."),"Please try ngMocks.defaultMock instead."].join(" "));var d=this.mockDef.has(o)?this.defProviders.get(o):[];return this.wipe(o),this.mockDef.add(o),l&&this.defProviders.set(o,i(i([],a(d||[]),!1),a(l),!1)),this.setDefValue(o,c),this.setConfigDef(o,f),this},e.prototype.provide=function(e){var t,r;try{for(var n=l((0,d.flatten)(e)),o=n.next();!o.done;o=n.next()){var a=o.value,i=(0,S.default)(a),u=i.provide,f=i.multi,c=this.providerDef.has(u)?this.providerDef.get(u):[];this.providerDef.set(u,C(a,c,f))}}catch(e){t={error:e}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(t)throw t.error}}return this},e.prototype.replace=function(e,t,r){if(!(0,v.isNgDef)(t)||!(0,v.isNgDef)(e)||(0,v.isNgDef)(t,"i")||(0,v.isNgDef)(e,"i"))throw new Error("Cannot replace the declaration, both have to be a Module, a Component, a Directive or a Pipe, for Providers use `.mock` or `.provide`");return this.wipe(e),this.replaceDef.add(e),this.defValue.set(e,t),this.setConfigDef(e,r),this},e.prototype.then=function(e,t){return n(this,void 0,Promise,(function(){var r,n=this;return o(this,(function(o){return r=new Promise((function(e){var t,r,o=f.TestBed.configureTestingModule(n.build());try{for(var a=l((0,d.mapValues)(n.beforeCC)),i=a.next();!i.done;i=a.next())(0,i.value)(o)}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}o.compileComponents().then((function(){e({testBed:o})}))})),[2,r.then(e,t)]}))}))},e.prototype.combineParams=function(){return{configDef:this.configDef,configDefault:this.configDefault,defProviders:this.defProviders,defValue:this.defValue,excludeDef:this.excludeDef,keepDef:this.keepDef,mockDef:this.mockDef,providerDef:this.providerDef,replaceDef:this.replaceDef}},e.prototype.setConfigDef=function(e,t){!t&&this.configDef.has(e)||this.configDef.set(e,null!=t?t:this.configDefault)},e.prototype.setDefValue=function(e,t){t===N?this.defValue.delete(e):this.defValue.set(e,t)},e.prototype.wipe=function(e){this.defProviders.delete(e),this.defValue.delete(e),this.excludeDef.delete(e),this.keepDef.delete(e),this.mockDef.delete(e),this.providerDef.delete(e),this.replaceDef.delete(e)},e}();t.MockBuilderPromise=T},3771:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockBuilder=s;var i=a(r(3174)),l=r(6456),u=r(6580),f=a(r(8073)),c=a(r(5020)),d=r(9755);function s(){for(var e,t,r,a,s,v,p=[],h=0;h=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6456);t.default=function(e,t,r){var a,i;if(void 0===r&&(r=function(e,t){return e===t}),!t||t.size!==e.size)return!1;try{for(var l=n((0,o.mapKeys)(e)),u=l.next();!u.done;u=l.next()){var f=u.value;if(!t.has(f))return!1;if(!r(t.get(f),e.get(f)))return!1}}catch(e){a={error:e}}finally{try{u&&!u.done&&(i=l.return)&&i.call(l)}finally{if(a)throw a.error}}return!0}},7570:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=function(e,t){for(var r,o,a=[],i=2;i=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6456);t.default=function(e,t){var r,a;if(!t||t.size!==e.size)return!1;try{for(var i=n((0,o.mapValues)(e)),l=i.next();!l.done;l=i.next()){var u=l.value;if(!t.has(u))return!1}}catch(e){r={error:e}}finally{try{l&&!l.done&&(a=i.return)&&a.call(i)}finally{if(r)throw r.error}}return!0}},2801:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(5432));t.default=function(e,t){return!(!(0,a.default)(t,e)||"object"==typeof t&&"object"==typeof e&&function(e,t){var r,o;if(Object.keys(e).length!==Object.keys(t).length)return!0;try{for(var i=n(Object.keys(e)),l=i.next();!l.done;l=i.next()){var u=l.value;if(!(0,a.default)(e[u],t[u]))return!0}}catch(e){r={error:e}}finally{try{l&&!l.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return!1}(t,e))}},5432:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(9382));t.default=function(e,t){return e===t||("boolean"!=typeof e&&"boolean"!=typeof t||e===t)&&e.$implicit===t.$implicit&&(0,o.default)(e.variables,t.variables)}},9382:function(e,t){var r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return e===t||!(e&&!t||!e&&t)&&!function(e,t){var n,o,a=Object.keys(e),i=Object.keys(t);if(a.length!==i.length)return!0;try{for(var l=r(a),u=l.next();!u.done;u=l.next()){var f=u.value;if(e[f]!==t[f])return!0}}catch(e){n={error:e}}finally{try{u&&!u.done&&(o=l.return)&&o.call(l)}finally{if(n)throw n.error}}return!1}(e,t)}},5633:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return{beforeCC:new Set,configDef:new Map,defProviders:new Map,defValue:new Map,excludeDef:new Set,keepDef:new Set,mockDef:new Set,providerDef:new Map,replaceDef:new Set}}},4503:function(e,t){var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8911)),l=o(r(6297)),u=o(r(8073)),f=o(r(3663));t.default=function(e,t,r){var o,c,d,s,v,p,h=t.providerDef,y=t.mockDef;try{for(var _=n((0,a.mapValues)(h)),g=_.next();!g.done;g=_.next()){var b=g.value;e.providers.push(b)}}catch(e){o={error:e}}finally{try{g&&!g.done&&(c=_.return)&&c.call(_)}finally{if(o)throw o.error}}try{for(var m=n((0,a.flatten)(e.providers)),M=m.next();!M.done;M=m.next()){b=M.value;var k=(0,l.default)(b);u.default.touches.add(k),k!==b&&b.deps&&(0,a.extractDependency)(b.deps,u.default.config.get("ngMocksDeps"))}}catch(e){d={error:e}}finally{try{M&&!M.done&&(s=m.return)&&s.call(m)}finally{if(d)throw d.error}}try{for(var w=n((0,a.mapValues)(y)),O=w.next();!O.done;O=w.next()){var x=O.value;u.default.touches.has(x)||"root"!==(0,i.default)(x)||(e.providers.push((0,f.default)(x,r)),u.default.touches.add(x))}}catch(e){v={error:e}}finally{try{O&&!O.done&&(p=w.return)&&p.call(w)}finally{if(v)throw v.error}}}},1649:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(2603),i=r(6456),l=o(r(6297)),u=o(r(8073));t.default=function(){var e,t,r=(0,a.getTestBed)();if(r.ngModule)try{for(var o=n((0,i.flatten)(r.ngModule)),f=o.next();!f.done;f=o.next()){var c=f.value;u.default.touches.add((0,l.default)(c))}}catch(t){e={error:t}}finally{try{f&&!f.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}}},646:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r){"function"==typeof e&&-1===r.indexOf(e)&&(r.push(e),t.push(e))}},4387:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(1381)),l=r(1763),u=o(r(8073)),f=o(r(5884)),c=o(r(4483));t.default=function(e,t){var r,o,d,s,v=new Map;try{for(var p=n((0,a.mapValues)(u.default.touches)),h=p.next();!h.done;h=p.next()){var y=h.value,_=u.default.getBuildDeclaration(y)||y;if(!(0,c.default)(e,t,y,_)){var g=(0,i.default)(_),b=(0,f.default)(g);if(b){var m={};try{for(var M=(d=void 0,n(Object.keys(b))),k=M.next();!k.done;k=M.next()){var w=k.value;m[w]=g[w]}}catch(e){d={error:e}}finally{try{k&&!k.done&&(s=M.return)&&s.call(M)}finally{if(d)throw d.error}}v.set(_,[{set:b},{set:m}])}}}}catch(e){r={error:e}}finally{try{h&&!h.done&&(o=p.return)&&o.call(p)}finally{if(r)throw r.error}}return{provide:l.NG_MOCKS_OVERRIDES,useValue:v}}},1267:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(6456),u=r(1763),f=i(r(8073));t.default=function(){var e,t,r=new Map;try{for(var i=a(o(o(o(o([],n((0,l.mapEntries)(f.default.builtProviders)),!1),n((0,l.mapEntries)(f.default.builtDeclarations)),!1),n((0,l.mapEntries)(f.default.cacheDeclarations)),!1),n((0,l.mapEntries)(f.default.cacheProviders)),!1)),c=i.next();!c.done;c=i.next()){var d=n(c.value,2),s=d[0],v=d[1];r.has(s)||r.set(s,v)}}catch(t){e={error:t}}finally{try{c&&!c.done&&(t=i.return)&&t.call(i)}finally{if(e)throw e.error}}return{provide:u.NG_MOCKS,useValue:r}}},9961:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=r(1763),l=o(r(8073));t.default=function(){var e,t,r=new Set;try{for(var o=n((0,a.mapValues)(l.default.touches)),u=o.next();!u.done;u=o.next()){var f=u.value,c=l.default.getBuildDeclaration(f);void 0===c&&(c=f),r.add(f),r.add(c)}}catch(t){e={error:t}}finally{try{u&&!u.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}return{provide:i.NG_MOCKS_TOUCHES,useValue:r}}},8608:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(7285));t.default=function(e){var t,r;if(e){var o;try{for(var i=n(e),l=i.next();!l.done;l=i.next()){var u=l.value;u&&"object"==typeof u&&u.token&&(o=u.token),o||!u||"object"==typeof u&&u.ngMetadataName||(o=u)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}return(0,a.default)(o)}}},5884:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8073)),i=o(r(224));t.default=function(e){if(e){var t=a.default.flags.has("skipMock");t||a.default.flags.add("skipMock");var r=n((0,i.default)(e),2),o=r[0],l=r[1];if(t||a.default.flags.delete("skipMock"),o)return l}}},8703:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8749)),i=r(1763),l=o(r(8073)),u=o(r(2504)),f=o(r(646)),c=o(r(8608)),d=o(r(1978)),s=o(r(7213)),v=o(r(4995));t.default=function(e){var t,r,o,p,h,y,_=new Set,g=(0,d.default)(),b=g.buckets,m=g.touched;try{for(var M=n(b),k=M.next();!k.done;k=M.next()){var w=k.value;try{for(var O=(o=void 0,n(w)),x=O.next();!x.done;x=O.next()){var j=x.value;(0,u.default)(_,e,j);try{for(var D=(h=void 0,n((0,a.default)(j))),S=D.next();!S.done;S=D.next()){var P=S.value,C=(0,c.default)(P);(0,s.default)(C),(0,v.default)(C)||((0,f.default)(C,m,w),e.has(i.NG_MOCKS_ROOT_PROVIDERS)||!l.default.config.get("ngMocksDepsSkip").has(j)?_.add(C):l.default.config.get("ngMocksDepsSkip").add(C))}}catch(e){h={error:e}}finally{try{S&&!S.done&&(y=D.return)&&y.call(D)}finally{if(h)throw h.error}}}}catch(e){o={error:e}}finally{try{x&&!x.done&&(p=O.return)&&p.call(O)}finally{if(o)throw o.error}}}}catch(e){t={error:e}}finally{try{k&&!k.done&&(r=M.return)&&r.call(M)}finally{if(t)throw t.error}}return _}},1978:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(860),u=i(r(3174)),f=r(6456),c=r(1763),d=r(5974),s=i(r(1365)),v=function(e,t){if(t){var r=t.resolveComponentFactory;t.resolveComponentFactory=(0,s.default)(r,void 0,void 0,(function(a){for(var i,l=[],u=1;u=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=r(1763),l=r(4152),u=o(r(8073)),f=o(r(3663)),c=o(r(9465)),d=o(r(8703));t.default=function(e,t,r){var o,s,v=t.keepDef,p=t.mockDef,h=v.has(i.NG_MOCKS_ROOT_PROVIDERS)?new Set:(0,d.default)(p);if(h.size>0){var y=function(t){var n=(0,f.default)(t,r);if(n)e.providers.push(n);else if((0,l.isNgInjectionToken)(t)){var o=u.default.config.has("ngMocksMulti")&&u.default.config.get("ngMocksMulti").has(t);e.providers.push((0,c.default)(t,(function(){return o?[]:void 0})))}};try{for(var _=n((0,a.mapValues)(h)),g=_.next();!g.done;g=_.next())y(g.value)}catch(e){o={error:e}}finally{try{g&&!g.done&&(s=_.return)&&s.call(_)}finally{if(o)throw o.error}}}}},2710:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073));t.default=function(e){var t,r,o=i.default.builtDeclarations,l=i.default.builtProviders,u=i.default.config.get("ngMocksDepsResolution");try{for(var f=n((0,a.mapValues)(e)),c=f.next();!c.done;c=f.next()){var d=c.value;o.set(d,null),l.set(d,null),u.set(d,"exclude")}}catch(e){t={error:e}}finally{try{c&&!c.done&&(r=f.return)&&r.call(f)}finally{if(t)throw t.error}}}},7651:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=r(5204),l=o(r(8073));t.default=function(e,t){var r,o,u=new Set,f=l.default.builtDeclarations,c=l.default.builtProviders,d=l.default.config.get("ngMocksDepsResolution");try{for(var s=n((0,a.mapValues)(e)),v=s.next();!v.done;v=s.next()){var p=v.value;f.set(p,p),c.set(p,p),d.set(p,"keep"),t.get(p).shallow&&(0,i.funcExtractDeps)(p,u)}}catch(e){r={error:e}}finally{try{v&&!v.done&&(o=s.return)&&o.call(s)}finally{if(r)throw r.error}}return u}},102:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073)),l=o(r(4161));t.default=function(e,t){var r,o,u=i.default.builtDeclarations,f=i.default.config.get("ngMocksDepsResolution");try{for(var c=n((0,a.mapValues)(e)),d=c.next();!d.done;d=c.next()){var s=d.value,v=!i.default.touches.has(s);f.set(s,"mock"),u.set(s,void 0),(0,l.default)(s,t),v&&i.default.touches.delete(s)}}catch(e){r={error:e}}finally{try{d&&!d.done&&(o=c.return)&&o.call(c)}finally{if(r)throw r.error}}}},3680:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8073));t.default=function(e,t){var r,n=null!==(r=o.default.config.get("mockNgDefResolver").get(e))&&void 0!==r?r:o.default.getBuildDeclaration(e),a=t.has(e)?t.get(e):void 0;return a?{ngModule:n,providers:a}:n}},1159:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(6456),u=r(5974),f=i(r(8073)),c=r(3821),d=i(r(224)),s=i(r(4673)),v=i(r(8150));t.default=function(e,t,r,i){var p,h,y,_,g,b,m,M,k,w=new Map;try{for(var O=a(o(o(o([],n((0,l.mapValues)(e)),!1),n((0,l.mapValues)(t)),!1),n((0,l.mapValues)(r)),!1)),x=O.next();!x.done;x=O.next()){var j=x.value,D=(0,s.default)(j),S=o(o(o([],n(null!==(g=i.get(j))&&void 0!==g?g:[]),!1),n(null!==(m=null===(b=D.Component)||void 0===b?void 0:b.providers)&&void 0!==m?m:[]),!1),n(null!==(k=null===(M=D.Directive)||void 0===M?void 0:M.providers)&&void 0!==k?k:[]),!1),P=!f.default.touches.has(j);t.has(j)||f.default.flags.add("skipMock");var C=(0,u.isNgDef)(j,"m");if(S.length>0){var N=n((0,d.default)({providers:S,skipMarkProviders:!C,skipExports:!0}),2)[1];w.set(j,N.providers)}C&&f.default.builtDeclarations.set(j,(0,c.MockModule)(j)),f.default.flags.delete("skipMock"),P&&f.default.touches.delete(j)}}catch(e){p={error:e}}finally{try{x&&!x.done&&(h=O.return)&&h.call(O)}finally{if(p)throw p.error}}try{for(var T=a((0,l.mapValues)(t)),E=T.next();!E.done;E=T.next())j=E.value,(0,v.default)(j)}catch(e){y={error:e}}finally{try{E&&!E.done&&(_=T.return)&&_.call(T)}finally{if(y)throw y.error}}return w}},1391:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073));t.default=function(e,t){var r,o,l=i.default.builtDeclarations,u=i.default.config.get("ngMocksDepsResolution");try{for(var f=n((0,a.mapValues)(e)),c=f.next();!c.done;c=f.next()){var d=c.value;l.set(d,t.get(d)),u.set(d,"replace")}}catch(e){r={error:e}}finally{try{c&&!c.done&&(o=f.return)&&o.call(f)}finally{if(r)throw r.error}}}},7235:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(6456),u=r(5204),f=i(r(8073)),c=i(r(2710)),d=i(r(7651)),s=i(r(102)),v=i(r(1159)),p=i(r(8500));t.default=function(e){var t,r,i,h,y,_,g,b,m,M,k,w,O=e.configDef,x=e.defProviders,j=e.defValue,D=e.excludeDef,S=e.keepDef,P=e.mockDef,C=e.replaceDef;f.default.flags.add("cachePipe"),f.default.config.set("ngMocksMulti",new Set),f.default.config.set("ngMocksDeps",new Set),f.default.config.set("ngMocksDepsSkip",new Set),f.default.config.set("ngMocksDepsResolution",new Map);var N=(0,d.default)(S,O);try{for(var T=o((0,l.mapValues)(N)),E=T.next();!E.done;E=T.next()){var A=E.value;f.default.touches.add(A)}}catch(e){t={error:e}}finally{try{E&&!E.done&&(r=T.return)&&r.call(T)}finally{if(t)throw t.error}}try{for(var R=o((0,l.mapValues)(S)),I=R.next();!I.done;I=R.next())A=I.value,N.add(A),(0,u.funcExtractDeps)(A,N,!0)}catch(e){i={error:e}}finally{try{I&&!I.done&&(h=R.return)&&h.call(R)}finally{if(i)throw i.error}}try{for(var V=o((0,l.mapValues)(P)),B=V.next();!B.done;B=V.next())A=B.value,N.add(A),(0,u.funcExtractDeps)(A,N,!0)}catch(e){y={error:e}}finally{try{B&&!B.done&&(_=V.return)&&_.call(V)}finally{if(y)throw y.error}}try{for(var F=o((0,l.mapValues)(C)),L=F.next();!L.done;L=F.next())A=L.value,N.add(A),(0,u.funcExtractDeps)(A,N,!0)}catch(e){g={error:e}}finally{try{L&&!L.done&&(b=F.return)&&b.call(F)}finally{if(g)throw g.error}}try{for(var K=o((0,l.mapValues)(N)),G=K.next();!G.done;G=K.next())if(A=G.value,!O.has(A)){var q=f.default.getResolution(A);"replace"===q?(C.add(A),j.set(A,f.default.getBuildDeclaration(A))):"keep"===q?S.add(A):"exclude"===q?D.add(A):("mock"===q||f.default.touches.has(A))&&P.add(A),O.set(A,f.default.touches.has(A)?{dependency:!0,__internal:!0}:{})}}catch(e){m={error:e}}finally{try{G&&!G.done&&(M=K.return)&&M.call(K)}finally{if(m)throw m.error}}try{for(var U=o((0,l.mapEntries)(O)),z=U.next();!z.done;z=U.next()){var W=a(z.value,2),H=W[0],$=W[1];f.default.config.set(H,n(n(n({},f.default.getConfigMock().get(H)),$),{defValue:j.get(H)}))}}catch(e){k={error:e}}finally{try{z&&!z.done&&(w=U.return)&&w.call(U)}finally{if(k)throw k.error}}return(0,p.default)(C,j),(0,c.default)(D),(0,s.default)(P,j),(0,v.default)(S,P,C,x)}},8792:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(5974);t.default=function(e,t,r,o){var a=e===t?o:t,i=null!=r?r:t!==o&&"object"==typeof t?t:void 0;return(0,n.isNgDef)(e,"p")&&"function"==typeof t&&t!==e&&!(0,n.isNgDef)(t,"p")?(a={transform:t},i=r):!(0,n.isNgDef)(e,"i")&&(0,n.isNgDef)(e)||(i=r),{config:i,mock:a=a===i?o:a}}},9102:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6297));t.default=function(e){var t=(0,o.default)(e);return{multi:t!==e&&e.multi,provide:t}}},70:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(4358),a=n(r(3295)),i=n(r(8911)),l=r(4152),u=n(r(8073));t.default=function(e){if(function(e){if(!e||e===o.DOCUMENT||u.default.touches.has(e))return!0;var t=function(e){var t=u.default.getResolution(e);return"keep"===t||"exclude"===t||"mock"!==t&&void 0}(e);return void 0!==t?t:"function"==typeof e&&-1!==a.default.neverMockProvidedFunction.indexOf(e.name)||!(!(0,l.isNgInjectionToken)(e)||-1===a.default.neverMockToken.indexOf(e.toString()))}(e))return!0;var t=(0,i.default)(e);return!("function"!=typeof e||t&&"platform"!==t)}},4483:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8073));t.default=function(e,t,r,n){return!!o.default.cacheDeclarations.has(n)||!(!e.has(r)||n!==t.get(r))}},4995:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8073)),a=n(r(70));t.default=function(e){return!!(0,a.default)(e)||o.default.config.get("ngMocksDepsSkip").has(e)}},8150:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(5974),a=n(r(8073)),i=r(5395),l=r(8339),u=r(2937);t.default=function(e){void 0===a.default.builtDeclarations.get(e)&&((0,o.isNgDef)(e,"c")&&a.default.builtDeclarations.set(e,(0,i.MockComponent)(e)),(0,o.isNgDef)(e,"d")&&a.default.builtDeclarations.set(e,(0,l.MockDirective)(e)),(0,o.isNgDef)(e,"p")&&a.default.builtDeclarations.set(e,(0,u.MockPipe)(e)))}},4161:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(5974),a=n(r(8073)),i=n(r(8195)),l=n(r(9465)),u=n(r(2415));t.default=function(e,t){if((0,o.isNgDef)(e,"i")&&t.has(e)){var r=a.default.config.get(e),n=t.get(e);a.default.builtProviders.set(e,(0,l.default)(e,void 0,(function(e){return function(e,t,r){return r.precise?t:(0,i.default)(e,t)}(e,n,r)})))}else(0,o.isNgDef)(e,"i")&&a.default.builtProviders.set(e,(0,u.default)(e,!0));if(!(0,o.isNgDef)(e)&&t.has(e)){var f=t.get(e);a.default.builtProviders.set(e,(0,l.default)(e,void 0,(function(){return f})))}else(0,o.isNgDef)(e)||a.default.builtProviders.set(e,(0,u.default)(e,!0))}},2938:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},5395:function(e,t,r){var n,o=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),a=this&&this.__assign||function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},l=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockComponents=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var o=r(860),a={read:o.ViewContainerRef,static:!1},i={read:o.TemplateRef,static:!1},l=function(e,t){var r="");return"").concat(r,"")},u=function(e){return!(e.isViewQuery||e.read&&e.read!==o.TemplateRef||"string"!=typeof e.selector&&!e.read)};t.default=function(e){var t,r,f=[""];if(!e)return f.join("");try{for(var c=n(Object.keys(e)),d=c.next();!d.done;d=c.next()){var s=d.value,v=e[s];if(0!==s.indexOf("__mock")&&u(v)){if("string"==typeof v.selector){var p=v.selector.replace(new RegExp("\\W","mg"),"_");e["__vcrIf_key_".concat(p)]=new o.ViewChild("ngIf_key_".concat(p),a),e["__trIf_key_".concat(p)]=new o.ViewChild("ngIf_key_".concat(p),i),e["__mockView_key_".concat(p)]=new o.ViewChild("key_".concat(p),a),e["__mockTpl_key_".concat(p)]=v,f.push(l(p,"key"))}e["__vcrIf_prop_".concat(s)]=new o.ViewChild("ngIf_prop_".concat(s),a),e["__trIf_prop_".concat(s)]=new o.ViewChild("ngIf_prop_".concat(s),i),e["__mockView_prop_".concat(s)]=new o.ViewChild("prop_".concat(s),a),f.push(l(s,"prop"))}}}catch(e){t={error:e}}finally{try{d&&!d.done&&(r=c.return)&&r.call(c)}finally{if(t)throw t.error}}return f.join("")}},8970:function(e,t){var r=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"==typeof e)return["key","__mockTpl_key_".concat(e),e,void 0];var t=r(e),n=t[0],o=t.slice(1);return["prop",n,n,o.length>0?o:void 0]}},2350:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},5269:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockDeclarations=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(1184)),l=a(r(6755)),u=a(r(1692));t.default=function(e,t){return function(r){return!!function(e,t,r){for(var n,a,i,l=(null===(n=e.injector._tNode)||void 0===n?void 0:n.attrs)||[],u=2,f=0;f0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(5465)),i=o(r(908));t.default=function(e){return function(t){var r=n((0,i.default)(t),2),o=r[0];return-1!==r[1].indexOf(e)||!!(0,a.default)(o,e)}}},12:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4201)),a=r(6739);t.default=function(e){var t=(0,a.getSourceOfMock)(e);return function(e){return!!e&&-1!==e.providerTokens.indexOf(t)&&void 0!==(0,o.default)(t,e.injector)}}},1863:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return function(t){return!!t.references[e]}}},5494:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(908)),i=o(r(4747));t.default=function(e){return function(t){var r=n((0,a.default)(t),1)[0];return(0,i.default)(r,e)}}},5465:function(e,t){var r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var n,o,a,i;try{for(var l=r(e),u=l.next();!u.done;u=l.next()){var f=u.value.match(/\[([^=\]]+)/g);if(f)try{for(var c=(a=void 0,r(f)),d=c.next();!d.done;d=c.next())if(d.value==="[".concat(t))return!0}catch(e){a={error:e}}finally{try{d&&!d.done&&(i=c.return)&&i.call(c)}finally{if(a)throw a.error}}}}catch(e){n={error:e}}finally{try{u&&!u.done&&(o=l.return)&&o.call(l)}finally{if(n)throw n.error}}return!1}},4476:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8864)),a=n(r(8060)),i=n(r(12)),l=n(r(1863)),u=n(r(5494));t.default=function(e){if(function(e){return Array.isArray(e)&&1===e.length&&"string"==typeof e[0]}(e))return(0,o.default)(e[0]);if(function(e){return Array.isArray(e)&&2===e.length&&"string"==typeof e[0]}(e))return(0,a.default)(e[0],e[1]);if(function(e){return"string"==typeof e&&0===e.indexOf("#")&&e.length>1}(e))return(0,l.default)(e.slice(1));if(function(e){return"string"==typeof e&&0!==e.indexOf("#")&&e.length>0}(e))return(0,u.default)(e);if(function(e){return"function"==typeof e}(e))return(0,i.default)(e);throw new Error("Unknown selector")}},908:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var n=new RegExp("\\[.*?\\]","g");t.default=function(e,t){var o,a,i,l;try{for(var u=r(e),f=u.next();!f.done;f=u.next()){var c=f.value.replace(n,"").split(",");try{for(var d=(i=void 0,r(c)),s=d.next();!s.done;s=d.next())if(s.value.trim()===t)return!0}catch(e){i={error:e}}finally{try{s&&!s.done&&(l=d.return)&&l.call(d)}finally{if(i)throw i.error}}}}catch(e){o={error:e}}finally{try{f&&!f.done&&(a=u.return)&&a.call(u)}finally{if(o)throw o.error}}return!1}},3942:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"#text"===e.nativeNode.nodeName}},5079:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return!(!e||!t)&&e===t}},6121:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(3942));t.default=function(e){return(0,o.default)(e)?void 0:e.injector._tNode||e.injector.elDef||void 0}},1061:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=r(860),l=a(r(4201)),u=a(r(6121)),f=function(e,t){var r=function(e,t){if(e!==t&&"#comment"===t.nativeNode.nodeName)return(0,l.default)(i.ViewContainerRef,t.injector)}(e,t);if(!r)return[];for(var n=[],o=0;o0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(590)),i=o(r(5687)),l=o(r(951)),u=o(r(4476)),f=o(r(3942)),c=o(r(6547)),d=o(r(8344));t.default=function(){for(var e=[],t=0;t0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(590)),i=o(r(5687)),l=o(r(951)),u=o(r(4811)),f=o(r(4476)),c=o(r(3942)),d=o(r(6547)),s=o(r(8344)),v={};t.default=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3942)),i=o(r(5079)),l=o(r(6121)),u=o(r(1061));t.default=function(e){var t,r,o,f,c=(0,l.default)(e);if(!c||(0,a.default)(e))return[];var d=void 0!==e.childNodes,s=[];try{for(var v=n(e.childNodes||(null===(o=e.parent)||void 0===o?void 0:o.childNodes)||[]),p=v.next();!p.done;p=v.next()){var h=p.value,y=(0,u.default)(h);(d||(0,i.default)(c,y))&&(y&&!(0,i.default)(c,y)||s.push(h))}}catch(e){t={error:e}}finally{try{p&&!p.done&&(r=v.return)&&r.call(v)}finally{if(t)throw t.error}}if("BODY"===(null===(f=e.parent)||void 0===f?void 0:f.name)){for(var _=e.parent.childNodes,g=_.length,b=0,m=_.length-1;m>=0;m-=1)if("#comment"===(h=_[m]).nativeNode.nodeName)b=m;else if(h.nativeNode===e.nativeNode){g=m+1;break}for(m=g;m=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(5079)),i=o(r(6121)),l=o(r(1061));t.default=function(e,t){var r,o,u;if(t)return t;var f=(0,l.default)(e),c=e.parent?(0,i.default)(e.parent):void 0;if(e.parent&&(0,a.default)(f,c))return e.parent;try{for(var d=n((null===(u=e.parent)||void 0===u?void 0:u.childNodes)||[]),s=d.next();!s.done;s=d.next()){var v=s.value,p=(0,i.default)(v);if((0,a.default)(f,p))return v}}catch(e){r={error:e}}finally{try{s&&!s.done&&(o=d.return)&&o.call(d)}finally{if(r)throw r.error}}}},8732:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3942)),i=o(r(7790)),l=o(r(345)),u=function(e,t,r,o){var f,c;if(void 0===o&&(o=!1),!e)return!1;if(!o&&(0,a.default)(e))return!1;if(r(e,(0,l.default)(e,t)))return!0;try{for(var d=n((0,i.default)(e)),s=d.next();!s.done;s=d.next()){var v=s.value;if(u(v,e,r,o))return!0}}catch(e){f={error:e}}finally{try{s&&!s.done&&(c=d.return)&&c.call(d)}finally{if(f)throw f.error}}return!1};t.default=u},6016:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(2023)),a=n(r(4201)),i=["Cannot find ControlValueAccessor on the element.","If it is a mock input with [formControlName],","you need either to avoid mocking ReactiveFormsModule","or to avoid accessing the control in such a way,","because this tests ReactiveFormsModule instead of own implementation."].join(" ");t.default=function(e){var t=o.default&&(0,a.default)(o.default.NgControl,e.injector),r=null==t?void 0:t.valueAccessor;if(r)return r;var n=o.default&&(0,a.default)(o.default.FormControlDirective,e.injector);if(null==n?void 0:n.form)return n.form;var l=o.default&&(0,a.default)(o.default.NgModel,e.injector);if(l)return l;throw new Error(i)}},2298:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2023)),i=r(7105),l=o(r(5006)),u=o(r(7331)),f=o(r(1991)),c=o(r(590)),d=o(r(5687)),s=o(r(4811)),v=o(r(589)),p=o(r(6016)),h=["onChange","onChangeCallback","onChangeCb","onChangeClb","onChangeFn","_onChange","_onChangeCallback","_onChangeCb","_onChangeClb","_onChangeFn","changeFn","_changeFn","onModelChange","cvaOnChange","cvaOnChangeCallback","cvaOnChangeCb","cvaOnChangeClb","cvaOnChangeFn","_cvaOnChange","_cvaOnChangeCallback","_cvaOnChangeCb","_cvaOnChangeClb","_cvaOnChangeFn"];t.default=function(e,t,r){var o,y,_=(0,c.default)((0,d.default)(),e,void 0);if(!_)throw new Error("Cannot find an element via ngMocks.change(".concat((0,s.default)(e),")"));var g=(0,p.default)(_);if(!function(e,t){return a.default&&e instanceof a.default.AbstractControl?(e.setValue(t),!0):a.default&&e instanceof a.default.NgModel?(e.update.emit(t),!0):!!(0,i.isMockControlValueAccessor)(e.instance)&&(e.instance.__simulateChange(t),!0)}(g,t)&&!function(e){return e.listeners.some((function(e){return"input"===e.name||"change"===e.name}))}(_)){try{for(var b=n(r?[r]:h),m=b.next();!m.done;m=b.next()){var M=m.value;if("function"==typeof g[M])return g.writeValue(t),void g[M](t)}}catch(e){o={error:e}}finally{try{m&&!m.done&&(y=b.return)&&y.call(b)}finally{if(o)throw o.error}}var k=(0,u.default)(g);throw new Error(["Unsupported type of ControlValueAccessor,","please ensure it has '".concat(r||"onChange","' method."),"If it is a 3rd-party library, please provide the correct name of the method in the 'methodName' parameter.","Possible Names: "+k.join(", ")+"."].join(" "))}!function(e,t){(0,f.default)(e,"focus");var r=Object.getOwnPropertyDescriptor(e.nativeElement,"value");(0,v.default)(e.nativeElement,"value",t),(0,f.default)(e,"input"),(0,f.default)(e,"change"),r&&((0,l.default)(e.nativeElement,"value",r),e.nativeElement.value=t),(0,f.default)(e,"blur")}(_,t)}},7655:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2023)),i=r(7105),l=o(r(7331)),u=o(r(1991)),f=o(r(590)),c=o(r(5687)),d=o(r(4811)),s=o(r(6016)),v=["onTouched","onTouchedCallback","onTouchedCb","onTouchedClb","onTouchedFn","_onTouched","_onTouchedCallback","_onTouchedCb","_onTouchedClb","_onTouchedFn","markAsTouched","_markAsTouched","onModelTouched","cvaOnTouch","cvaOnTouchCallback","cvaOnTouchCb","cvaOnTouchClb","cvaOnTouchFn","_cvaOnTouch","_cvaOnTouchCallback","_cvaOnTouchCb","_cvaOnTouchClb","_cvaOnTouchFn"];t.default=function(e,t){var r,o,p=(0,f.default)((0,c.default)(),e,void 0);if(!p)throw new Error("Cannot find an element via ngMocks.touch(".concat((0,d.default)(e),")"));var h=(0,s.default)(p);if(!function(e){return a.default&&e instanceof a.default.AbstractControl?(e.markAsTouched(),!0):!!(0,i.isMockControlValueAccessor)(e.instance)&&(e.instance.__simulateTouch(),!0)}(h)&&!function(e){return e.listeners.some((function(e){return"focus"===e.name||"blur"===e.name}))}(p)){try{for(var y=n(t?[t]:v),_=y.next();!_.done;_=y.next()){var g=_.value;if("function"==typeof h[g])return void h[g]()}}catch(e){r={error:e}}finally{try{_&&!_.done&&(o=y.return)&&o.call(y)}finally{if(r)throw r.error}}var b=(0,l.default)(h);throw new Error(["Unsupported type of ControlValueAccessor,","please ensure it has '".concat(t||"onTouched","' method."),"If it is a 3rd-party library, please provide the correct name of the method in the 'methodName' parameter.","Possible Names: "+b.join(", ")+"."].join(" "))}!function(e){(0,u.default)(e,"focus"),(0,u.default)(e,"blur")}(p)}},9903:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(1991));t.default=function(e,t){(0,o.default)(e,"click",t)}},6843:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});for(var l=i(r(8195)),u=["focus","blur","load","unload","change","reset","scroll"],f="function"==typeof Event?function(e,t){return new CustomEvent(e,t)}:function(e,t){var r=n({bubbles:!1,cancelable:!1},t),o=document.createEvent("CustomEvent");return o.initCustomEvent(e,r.bubbles,r.cancelable,null),o},c={alt:{altKey:!0,code:"AltLeft",key:"Alt",location:1,which:18},arrowdown:{code:"ArrowDown",key:"ArrowDown",location:0,which:40},arrowleft:{code:"ArrowLeft",key:"ArrowLeft",location:0,which:37},arrowright:{code:"ArrowRight",key:"ArrowRight",location:0,which:39},arrowup:{code:"ArrowUp",key:"ArrowUp",location:0,which:38},backspace:{code:"Backspace",key:"Backspace",location:0,which:8},control:{code:"ControlLeft",ctrlKey:!0,key:"Control",location:1,which:17},enter:{code:"Enter",key:"Enter",location:0,which:13},esc:{code:"Escape",key:"Escape",location:0,which:27},meta:{code:"MetaLeft",key:"Meta",location:1,metaKey:!0,which:91},shift:{code:"ShiftLeft",key:"Shift",location:1,shiftKey:!0,which:16},space:{code:"Space",key:" ",location:0,which:32},tab:{code:"Tab",key:"Tab",location:0,which:9}},d=1;d<=12;d+=1)c["f".concat(d)]={code:"F".concat(d),key:"F".concat(d),location:0,which:d+111};t.default=function(e,t,r){var i=e.indexOf("."),d=a(-1===i?[e]:[e.slice(0,Math.max(0,i)),e.slice(i+1)],2),s=d[0],v=d[1],p=f(s,n({bubbles:-1===u.indexOf(e),cancelable:!0},t));return function(e,t){var r,n,a,i,u={};try{for(var f=o(t?t.split("."):[]),d=f.next();!d.done;d=f.next()){var s=d.value,v=c[s];if(v||1!==s.length||(v={code:(a=s,void 0,i=a.codePointAt(0),i&&i>=97&&i<=122||i&&i>=65&&i<=90?"Key".concat(a.toUpperCase()):i&&i>=48&&i<=57?"Digit".concat(a):"Unknown"),key:s}),!v)throw new Error("Unknown event part ".concat(s));(0,l.default)(u,v)}}catch(e){r={error:e}}finally{try{d&&!d.done&&(n=f.return)&&n.call(f)}finally{if(r)throw r.error}}t&&(0,l.default)(e,u)}(p,v),r&&(0,l.default)(p,r),p}},1991:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(590)),a=n(r(771)),i=n(r(4792)),l=n(r(4993)),u=n(r(5687)),f=n(r(8195)),c=n(r(6843)),d=["focus","blur","load","unload","change","reset","scroll"];t.default=function(e,t,r){var n,s=(n=(0,l.default)(e)?e:(0,o.default)((0,u.default)(),e,void 0),(0,a.default)(n)||(0,i.default)(n)?n.nativeElement:(0,l.default)(n)?n:void 0);if(!s)throw new Error("Cannot trigger ".concat("string"==typeof t?t:t.type," event undefined element"));if(!s.disabled){var v=function(e){return"string"==typeof e?(0,c.default)(e,{bubbles:-1===d.indexOf(e),cancelable:!0}):e}(t);v.target||(0,f.default)(v,{target:s}),r&&(0,f.default)(v,r),s.dispatchEvent(v)}}},343:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(5974);t.default=function(e){return"function"==typeof e||(0,n.isNgDef)(e,"t")}},4212:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=r(6739),l=r(5974),u=o(r(8344)),f=o(r(590)),c=o(r(1771)),d=o(r(5687)),s=o(r(951)),v=o(r(4811)),p=o(r(343)),h={};t.default=function(){for(var e=[],t=0;t0}),!0);else try{b.push((0,a.getInjection)(g))}catch(e){if(!e||"object"!=typeof e||void 0===e.ngTempTokenPath)throw e}if(b.length>0)return b[0];if(_!==h)return _;throw new Error("Cannot find an instance via ngMocks.findInstance(".concat((0,v.default)(y),")"))}},147:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=r(6456),l=r(6739),u=r(5974),f=a(r(8344)),c=a(r(7316)),d=a(r(1771)),s=a(r(5687)),v=a(r(951)),p=a(r(343));t.default=function(){for(var e,t,r=[],a=0;a0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(4792)),i=o(r(5687)),l=function(e){return(0,a.default)(e)?l(e.debugElement):e&&e.injector&&e.query?e:void 0};t.default=function(e,t){var r,o,a,u,f=t;return 3===e.length?(a=l(e[0]),u=e[1],f=e[2]):1===e.length?(a=l((0,i.default)()),u=n(e,1)[0]):e[0]?(a=l(e[0]))?u=e[1]:(a=l((0,i.default)()),u=(r=n(e,2))[0],f=r[1]):u=e[1],[a,u=null!==(o=l(u))&&void 0!==o?o:u,f]}},654:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(1165),o=r(6739);t.default=function(e){return Array.isArray(e)?n.By.css(1===e.length?"[".concat(e[0],"]"):"[".concat(e[0],'="').concat(e[1],'"]')):"string"==typeof e?n.By.css(e):n.By.directive((0,o.getSourceOfMock)(e))}},7316:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(771)),i=o(r(7453)),l=o(r(654));t.default=function(){for(var e=[],t=0;t0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(771)),i=o(r(4811)),l=o(r(7453)),u=o(r(654)),f={};t.default=function(){for(var e=[],t=0;t\\s+<","mg"),"><").replace(new RegExp('"\\s+>',"mg"),'">'):"";return r?n:n.trim()}var o;return(0,i.default)(t)?e(function(e,t){return t?e.outerHTML:e.innerHTML}(t,r)):(0,l.default)(t)?u(e,(0,a.default)(t).replace(new RegExp("&","mg"),"&").replace(new RegExp('"',"mg"),""").replace(new RegExp("<","mg"),"<").replace(new RegExp(">","mg"),">").replace(new RegExp("'","mg"),"'"),r):void 0};t.default=(0,o.default)(u)},9512:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4858)),a=n(r(9280)),i=n(r(4993)),l=n(r(8209)),u=function(e,t,r){if("string"==typeof t||void 0===t){var n=(o=t)?o.replace(new RegExp("\\s+","mg")," "):"";return r?n:n.trim()}var o;return(0,i.default)(t)?e(function(e,t){var r,n=null!==(r=e.textContent)&&void 0!==r?r:"";return t?n:n.trim()}(t,r)):(0,l.default)(t)?u(e,(0,a.default)(t),r):void 0};t.default=(0,o.default)(u)},3341:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t;return"#text"===(null===(t=e.nativeNode)||void 0===t?void 0:t.nodeName)&&e.parent?e.parent:e}},7717:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4201)),a=r(5974);t.default=function(e,t,r){if(t.injector&&"NullInjector"!==t.injector.constructor.name){var n=function(e){for(var t=e;"NullInjector"===(null==t?void 0:t.injector.constructor.name);)t=t.parent;if(t)return t.injector}(t.parent),i=n?(0,o.default)(r,n):void 0,l=(0,o.default)(r,t.injector);i!==l&&((0,a.isNgDef)(r,"t")&&void 0!==l||void 0!==l&&-1===e.indexOf(l))&&e.push(l)}}},2631:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(3341)),a=n(r(1484)),i=function(e){for(var t,r=e,n=null===(t=r.nativeNode)||void 0===t?void 0:t.__ngContext__;void 0===n&&r.parent;)n=(r=r.parent).nativeNode.__ngContext__;if("number"!=typeof n)return n;var o=r.injector._lView;return Array.isArray(o)?function(e,t){if("object"==typeof e[1]&&e[20]===t)return e;for(var r=21;r1&&f[1]&&"object"==typeof f[1]&&f[1].bindingStartIndex&&(v=f[1].bindingStartIndex);for(var p=0;p=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3341)),i=o(r(1484)),l=function(e){var t,r;if(!e||"object"!=typeof e)return e;try{for(var o=n(["renderElement","renderText","instance"]),a=o.next();!a.done;a=o.next()){var i=a.value;if(e[i])return e[i]}}catch(e){t={error:e}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}return null};t.default=function(e,t,r){if(t&&t._debugContext){var n=(0,a.default)(t);(0,i.default)({el:n,nodes:t._debugContext.view.nodes,normalize:l,proto:r,result:e},!0)}}},1771:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(5974),a=n(r(7717)),i=n(r(2631)),l=n(r(2096));t.default=function(e,t,r){return(0,a.default)(e,t,r),(0,o.isNgDef)(r,"t")||"string"==typeof r||((0,l.default)(e,t,r),(0,i.default)(e,t,r)),e}},5687:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(2603);t.default=function(){var e=(0,n.getTestBed)()._activeFixtures;return e[e.length-1]}},4317:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8073));t.default=function(){var e;o.default.cacheDeclarations.clear(),null===(e=o.default.config.get("ngMocksDepsSkip"))||void 0===e||e.clear()}},4811:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(5974);t.default=function(e){return"string"==typeof e?e:"function"==typeof e?e.name:(0,n.isNgDef)(e,"t")?e._desc:Array.isArray(e)?e[0]:e?"":""}},951:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(771)),i=o(r(4792)),l=o(r(5687));t.default=function(e,t,r){var o,u,f,c,d,s,v=r;return 3===e.length?(c=(o=n(e,3))[0],d=o[1],v=o[2]):1===e.length?(c=(0,l.default)(),d=n(e,1)[0]):t(e[1])&&("string"==typeof(s=e[0])||Array.isArray(s)&&"string"==typeof s[0]||(0,i.default)(s)||(0,a.default)(s),1)?(c=(u=n(e,2))[0],d=u[1]):(c=(0,l.default)(),d=(f=n(e,2))[0],v=f[1]),[c,d,v]}},4641:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4201)),a=n(r(8862)),i=n(r(6297));t.default=function(e,t){if(e)try{var r=(0,i.default)(t);return function(e){try{return(0,a.default)(e)}catch(e){return}}((0,o.default)(r,e.injector).constructor)}catch(e){return}}},5018:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(1184)),l=a(r(590)),u=a(r(5687)),f=a(r(4641)),c=a(r(8027)),d={},s=function(e,t){var r=(0,i.default)(e),n=r.name,o=r.alias,a=void 0===o?"":o;if(!a&&n===t||a&&a===t)return n};t.default=function(e,t){for(var r=[],a=2;a=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3174));t.default=function(e,t){return function(){for(var r=[],o=0;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073));t.default=function(e,t){var r,o,l=i.default.getConfigMock();try{for(var u=n((0,a.flatten)(e)),f=u.next();!f.done;f=u.next()){var c=f.value;t?l.set(c,t):l.delete(c)}}catch(e){r={error:e}}finally{try{f&&!f.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}},8909:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073));t.default=function(e,t){var r,o,l=i.default.getOverrides();try{for(var u=n((0,a.flatten)(e)),f=u.next();!f.done;f=u.next()){var c=f.value;if(t){var d=l.has(c)?l.get(c):new Set;d.add(t),l.set(c,d)}else l.delete(c)}}catch(e){r={error:e}}finally{try{f&&!f.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}},1640:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(2603),i=o(r(3174)),l=o(r(8073)),u=l.default.global.get("faster-hooks")||{after:[],before:[]};l.default.global.set("faster-hooks",u);var f=function(e,t){return function(r){var o,f;if(a.TestBed.ngMocksFasterLock)return e.call(t,r);l.default.global.set("bullet:customized",!0);var c=e;try{for(var d=n(u.before),s=d.next();!s.done;s=d.next())c=(0,s.value)(c,t)}catch(e){o={error:e}}finally{try{s&&!s.done&&(f=d.return)&&f.call(d)}finally{if(o)throw o.error}}try{return(0,i.default)(a.TestBed,"ngMocksFasterLock",!0),c.call(t,r)}finally{(0,i.default)(a.TestBed,"ngMocksFasterLock",void 0)}}},c=function(e,t){return function(){var r,o;if(a.TestBed.ngMocksFasterLock)return e.call(t);if(l.default.global.has("bullet"))return l.default.global.has("bullet:customized")&&l.default.global.set("bullet:reset",!0),t;l.default.global.delete("bullet:customized"),l.default.global.delete("bullet:reset");var f=e;try{for(var c=n(u.after),d=c.next();!d.done;d=c.next())f=(0,d.value)(f,t)}catch(e){r={error:e}}finally{try{d&&!d.done&&(o=c.return)&&o.call(c)}finally{if(r)throw r.error}}try{return(0,i.default)(a.TestBed,"ngMocksFasterLock",!0),f.call(t)}finally{(0,i.default)(a.TestBed,"ngMocksFasterLock",void 0)}}};t.default=function(){a.TestBed.ngMocksFasterInstalled||(a.TestBed.configureTestingModule=f(a.TestBed.configureTestingModule,a.TestBed),a.TestBed.resetTestingModule=c(a.TestBed.resetTestingModule,a.TestBed),(0,i.default)(a.TestBed,"ngMocksFasterInstalled",!0));var e=(0,a.getTestBed)();return e.ngMocksFasterInstalled||(e.configureTestingModule=f(e.configureTestingModule,e),e.resetTestingModule=c(e.resetTestingModule,e),(0,i.default)(e,"ngMocksFasterInstalled",!0)),u}},7346:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(2603),a=n(r(8073)),i=n(r(1640)),l=n(r(2776)),u=function(e){var t,r=null!==(t=a.default.global.get("bullet:stack"))&&void 0!==t?t:[];r.push(e),a.default.global.set("bullet:stack",r),a.default.global.set("bullet:stack:id",e)},f=function(e){var t=a.default.global.get("bullet:stack");t.splice(t.indexOf(e),1),t.length>0?a.default.global.set("bullet:stack:id",t[t.length-1]):a.default.global.delete("bullet:stack:id"),function(e){for(var t=(0,o.getTestBed)()._activeFixtures||[],r=0,n=t.length-1;n>=0;n-=1)t[n].ngMocksStackId&&t[n].ngMocksStackId!==e?r+=1:(t[n].ngMocksStackId=void 0,t[n].destroy(),t.splice(n,1));0===r&&(0,l.default)()}(e)};t.default=function(){(0,i.default)();var e={},t={};beforeAll((function(){a.default.global.has("bullet:customized")&&o.TestBed.resetTestingModule(),a.default.global.set("bullet",!0),u(e)})),beforeEach((function(){u(t)})),afterEach((function(){f(t)})),afterAll((function(){f(e),a.default.global.delete("bullet"),a.default.global.has("bullet:reset")&&o.TestBed.resetTestingModule()}))}},2776:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(2603);t.default=function(){var e=(0,n.getTestBed)();e._instantiated=!1,e._moduleFactory=void 0,e._testModuleRef=null}},8027:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(2603),a=n(r(2970)),i=r(6739),l=n(r(345)),u=n(r(590)),f=n(r(1771)),c=n(r(5687)),d=n(r(4811)),s={};t.default=function(){for(var e=[],t=0;t0)return _[0];if(h){var _,g=(0,l.default)(h,void 0);if(g&&"#comment"===g.nativeNode.nodeName&&(_=(0,f.default)([],g,y)).length>0)return _[0]}if(p!==s)return p;throw new Error("Cannot find ".concat((0,a.default)(v)," instance via ngMocks.get"))}},4071:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6259)),a=n(r(8073)),i=n(r(4317)),l=function(e){a.default.getDefaults().set(e,["exclude"])};t.default=function(e,t){void 0===t&&(t=!1),(0,i.default)(),l(e),t&&(0,o.default)(e,l)}},5228:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6259)),a=n(r(8073)),i=n(r(4317)),l=function(e){a.default.getDefaults().set(e,["keep"])};t.default=function(e,t){void 0===t&&(t=!1),(0,i.default)(),l(e),t&&(0,o.default)(e,l)}},763:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6259)),a=n(r(8073)),i=n(r(4317)),l=function(e){a.default.getDefaults().set(e,["mock"])};t.default=function(e,t){void 0===t&&(t=!1),(0,i.default)(),l(e),t&&(0,o.default)(e,l)}},3757:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(5974),a=n(r(8073)),i=n(r(4317));t.default=function(e,t){var r=!0;if(((0,o.isNgDef)(e,"m")&&(0,o.isNgDef)(t,"m")||(0,o.isNgDef)(e,"c")&&(0,o.isNgDef)(t,"c")||(0,o.isNgDef)(e,"d")&&(0,o.isNgDef)(t,"d")||(0,o.isNgDef)(e,"p")&&(0,o.isNgDef)(t,"p"))&&(r=!1),r)throw new Error("Cannot replace the declaration, both have to be a Module, a Component, a Directive or a Pipe");(0,i.default)(),a.default.getDefaults().set(e,["replace",t])}},4102:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6259)),a=n(r(8073)),i=n(r(4317)),l=n(r(8909)),u=function(e){a.default.getDefaults().delete(e),(0,l.default)(e)};t.default=function(e,t){void 0===t&&(t=!1),(0,i.default)(),u(e),t&&(0,o.default)(e,u)}},7418:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(5551)),l=r(6456),u=a(r(1345)),f=a(r(6297)),c=r(5974),d=r(4152),s=r(3659),v=a(r(8073)),p=r(5395),h=r(8339),y=r(3821),_=r(2937),g=a(r(2415)),b=function(e,t,r){return!!t.has(e)||(t.add(e),r.has(e))},m=function(e,t,r,n,o){var a=e.get(t)||t;(0,c.isNgDef)(a,"m")?r.push(a):(0,c.isNgDef)(a,"c")||(0,c.isNgDef)(a,"d")?n.push(a):(0,c.isNgDef)(a,"p")?(n.push(a),o.push(a)):(0,d.isNgInjectionToken)(a)||o.push(a)},M=[["m","module"],["c","component"],["d","directive"],["p","pipe"]],k=function(e,t,r,n){b(t,e.skip,e.exclude)||n.push(e.keep.has(t)?t:r(t))},w=function(e,t){var r=e.skip,n=e.keep,o=e.providers,a=e.exclude,i=(0,f.default)(t);if(r.add(i),!a.has(i)){var l=n.has(i)?t:(0,g.default)(t);l&&o.push(l)}},O={component:p.MockComponent,directive:h.MockDirective,pipe:_.MockPipe},x=function(e,t,r){if(void 0===r&&(r=!0),t){var a,i=function(e,t){var r,a;if((0,s.isNgModuleDefWithProviders)(e))return"module-with-providers";try{for(var i=n(M),l=i.next();!l.done;l=i.next()){var u=o(l.value,2),f=u[0],d=u[1];if((0,c.isNgDef)(e,f))return"m"===f&&t.has(e)?"".concat(d,"-keep"):d}}catch(e){r={error:e}}finally{try{l&&!l.done&&(a=i.return)&&a.call(i)}finally{if(r)throw r.error}}return""}(t,e.keep);if("module-with-providers"!==i){var f=e.optional.get(t);f&&f!==t&&(a=f,e.keep.add(a))}a||(a=t),function(e,t,r,o){"module-with-providers"===t?function(e,t){e.skip.has(t.ngModule)||(e.skip.add(t.ngModule),e.exclude.has(t.ngModule)||e.imports.push(e.keep.has(t.ngModule)?t:(0,y.MockModule)(t)))}(e,r):"module-keep"===t||"module"===t&&o?k(e,r,y.MockModule,e.imports):"module"===t?function(e,t,r){var o,a,i,f;if(!b(t,e.skip,e.exclude)){var c=(0,u.default)(t);try{for(var d=n((0,l.flatten)([c.declarations,c.imports])),s=d.next();!s.done;s=d.next())r(e,h=s.value)}catch(e){o={error:e}}finally{try{s&&!s.done&&(a=d.return)&&a.call(d)}finally{if(o)throw o.error}}try{for(var v=n(c.providers?(0,l.flatten)(c.providers):[]),p=v.next();!p.done;p=v.next()){var h=p.value;w(e,h)}}catch(e){i={error:e}}finally{try{p&&!p.done&&(f=v.return)&&f.call(v)}finally{if(i)throw i.error}}}}(e,r,x):O[t]?k(e,r,O[t],e.declarations):w(e,r)}(e,i,a,r)}};t.default=function(e,t,r){var o,a,u,f,c,d;void 0===t&&(t=null),void 0===r&&(r=null);var s=function(e,t,r){var o=new Set((0,l.flatten)(e||[])),a=new Set((0,l.flatten)(t||[])),i=new Set((0,l.flatten)(r||[])),u=new Map;return function(e,t,r,o){var a,i;try{for(var u=n((0,l.mapKeys)(v.default.getDefaults())),f=u.next();!f.done;f=u.next()){var c=f.value,d=v.default.getBuildDeclaration(c);e.has(c)||t.has(c)||r.has(c)||(o.set(c,d),null===d?r.add(c):void 0===d?t.add(c):c===d&&e.add(c))}}catch(e){a={error:e}}finally{try{f&&!f.done&&(i=u.return)&&i.call(u)}finally{if(a)throw a.error}}}(o,a,i,u),{declarations:[],exclude:i,imports:[],keep:o,mock:a,optional:u,providers:[],skip:new Set}}(e,t,r),p=new Map;v.default.config.set("ngMocksDepsResolution",p);try{for(var h=n((0,l.mapValues)(s.keep)),y=h.next();!y.done;y=h.next()){var _=y.value;p.set(_,"keep")}}catch(e){o={error:e}}finally{try{y&&!y.done&&(a=h.return)&&a.call(h)}finally{if(o)throw o.error}}try{for(var g=n((0,l.mapValues)(s.exclude)),b=g.next();!b.done;b=g.next())_=b.value,p.set(_,"exclude")}catch(e){u={error:e}}finally{try{b&&!b.done&&(f=g.return)&&f.call(g)}finally{if(u)throw u.error}}v.default.config.set("mockNgDefResolver",new i.default);try{for(var M=n((0,l.mapValues)(s.mock)),k=M.next();!k.done;k=M.next()){var w=k.value;p.set(w,"mock"),s.optional.has(w)||x(s,w,!1)}}catch(e){c={error:e}}finally{try{k&&!k.done&&(d=M.return)&&d.call(M)}finally{if(c)throw c.error}}var O=function(e){var t,r,o=e.keep,a=e.skip,i=e.optional,l=e.exclude,u=e.imports,f=e.declarations,c=e.providers;try{for(var d=n(o),s=d.next();!s.done;s=d.next()){var v=s.value;a.has(v)||l.has(v)||i.has(v)||m(i,v,u,f,c)}}catch(e){t={error:e}}finally{try{s&&!s.done&&(r=d.return)&&r.call(d)}finally{if(t)throw t.error}}return{declarations:f,imports:u,providers:c}}(s);return v.default.config.delete("mockNgDefResolver"),v.default.config.delete("ngMocksDepsResolution"),O}},7411:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3295)),i=o(r(8073)),l=o(r(8344)),u=o(r(8458)),f=o(r(9400)),c=o(r(2298)),d=o(r(7655)),s=o(r(9903)),v=o(r(6843)),p=o(r(1991)),h=o(r(590)),y=o(r(7316)),_=o(r(4212)),g=o(r(147)),b=o(r(8062)),m=o(r(9512)),M=o(r(3539)),k=o(r(7977)),w=o(r(9311)),O=o(r(2237)),x=o(r(8909)),j=o(r(7346)),D=o(r(2776)),S=o(r(8027)),P=o(r(4071)),C=o(r(5228)),N=o(r(763)),T=o(r(3757)),E=o(r(4102)),A=o(r(7418)),R=o(r(7411)),I=o(r(5526)),V=o(r(2448)),B=o(r(8195)),F=o(r(589)),L=o(r(3048)),K=o(r(2120)),G=o(r(1368)),q=o(r(5535)),U=["onMockBuilderMissingDependency","onMockInstanceRestoreNeed","onTestBedFlushNeed"];t.default={autoSpy:M.default,change:c.default,click:s.default,config:function(e){var t,r,o=i.default.global.get("flags");try{for(var l=n(U),u=l.next();!u.done;u=l.next()){var f=u.value;null===e[f]?o[f]=a.default[f]:void 0!==e[f]&&(o[f]=e[f])}}catch(e){t={error:e}}finally{try{u&&!u.done&&(r=l.return)&&r.call(l)}finally{if(t)throw t.error}}null===e.mockRenderCacheSize?i.default.global.delete("mockRenderCacheSize"):void 0!==e.mockRenderCacheSize&&i.default.global.set("mockRenderCacheSize",e.mockRenderCacheSize)},crawl:l.default,defaultConfig:O.default,defaultMock:x.default,event:v.default,faster:j.default,find:h.default,findAll:y.default,findInstance:_.default,findInstances:g.default,findTemplateRef:G.default,findTemplateRefs:q.default,flushTestBed:D.default,formatHtml:b.default,formatText:m.default,get:S.default,globalExclude:P.default,globalKeep:C.default,globalMock:N.default,globalReplace:T.default,globalWipe:E.default,guts:A.default,hide:L.default,ignoreOnConsole:k.default,input:R.default,output:I.default,render:K.default,reset:V.default,reveal:u.default,revealAll:f.default,stub:B.default,stubMember:F.default,throwOnConsole:w.default,touch:d.default,trigger:p.default}},5526:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(7331)),u=i(r(7794)),f=i(r(5020)),c=i(r(445));t.default=function(e,t,r){var i,d;if("string"==typeof t)return c.default.mock(e,t,r);var s=e,v=t,p=["__zone_symbol__unconfigurables"];"function"==typeof t&&(s=c.default.createClone(t),v=e,p.push.apply(p,o([],n(Object.getOwnPropertyNames(s)),!1)));var h=o(o([],n((0,l.default)(v)),!1),n((0,u.default)(v)),!1);try{for(var y=a(h),_=y.next();!_.done;_=y.next()){var g=_.value,b=-1===p.indexOf(g)?(0,f.default)(v,g):void 0;b&&Object.prototype.hasOwnProperty.call(b,"value")&&void 0===b.value||c.default.definePropertyDescriptor(s,g,b)}}catch(e){i={error:e}}finally{try{_&&!_.done&&(d=y.return)&&d.call(y)}finally{if(i)throw i.error}}return s}},6189:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ngMocks=void 0;var o=n(r(492));t.ngMocks=o.default},845:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=r(860),l=a(r(2137)),u=function(e,t,r){return!!e&&t instanceof i.TemplateRef&&r(t)},f=function(e,t,r){var a,c;if(!(0,l.default)(e))throw new Error("Only instances of mock declarations are accepted");if(function(e,t,r){return!!e.__template&&!!e.__vcr&&t(e.__template)&&r(e.__vcr,e.__template)}(e,t,r))return!0;try{for(var d=n(function(e){var t,r,o=[];try{for(var a=n(e.__ngMocksConfig.queryScanKeys||[]),l=a.next();!l.done;l=a.next())for(var u=l.value,f=e[u],c=e["__ngMocksVcr_".concat(u)],d=f instanceof i.QueryList?f.toArray():[f],s=c instanceof i.QueryList?c.toArray():[c],v=0;v0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8732)),i=o(r(590)),l=o(r(5687)),u=o(r(951)),f=o(r(4811)),c=o(r(2789)),d=o(r(6703)),s=o(r(7845)),v={};t.default=function(){for(var e=[],t=0;t0)return y[0];if(h!==v)return h;throw new Error("Cannot find a TemplateRef via ngMocks.findTemplateRef(".concat((0,f.default)(p),")"))}},5535:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8732)),i=o(r(590)),l=o(r(5687)),u=o(r(951)),f=o(r(2789)),c=o(r(6703)),d=o(r(7845));t.default=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(8073)),l=a(r(589));t.default=function(e){var t,r,a=[],u=i.default.configInstance.get(e);if(null==u?void 0:u.overloads){var f=function(e,t,r){e?a.push((function(n){(0,l.default)(n,e,t,r)})):a.push(t)};try{for(var c=n(u.overloads),d=c.next();!d.done;d=c.next()){var s=o(d.value,3);f(s[0],s[1],s[2])}}catch(e){t={error:e}}finally{try{d&&!d.done&&(r=c.return)&&r.call(c)}finally{if(t)throw t.error}}}return a}},6691:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2970)),i=o(r(8073));t.default=function(e){for(var t=[];e.length>0;){var r=n(e.pop()||[],2),o=r[0];r[1]===i.default.configInstance.get(o)&&t.push("function"==typeof o?(0,a.default)(o):o)}if(t.length>0){var l=i.default.global.get("flags"),u=["MockInstance: side effects have been detected (".concat(t.join(", "),")."),"Forgot to add MockInstance.scope() or to call MockInstance.restore()?"].join(" ");if("warn"===l.onMockInstanceRestoreNeed)console.warn(u);else if("throw"===l.onMockInstanceRestoreNeed)throw new Error(u)}}},3001:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockInstance=h,t.MockReset=function(){f.default.configInstance.clear()};var i,l=a(r(6804)),u=a(r(7592)),f=a(r(8073)),c=a(r(6691));u.default.subscribePush((function(e){i=e})),u.default.subscribePop((function(e,t){var r,a;try{for(var l=o(e.mockInstance||[]),u=l.next();!u.done;u=l.next()){var c=u.value;if(f.default.configInstance.has(c)){var d=f.default.configInstance.get(c);d.overloads.pop(),f.default.configInstance.set(c,n({},d))}}}catch(e){r={error:e}}finally{try{u&&!u.done&&(a=l.return)&&a.call(l)}finally{if(r)throw r.error}}i=t[t.length-1]}));var d=function(e){var t={};return"string"==typeof e[0]?(t.key=e[0],t.value=e[1],t.accessor=e[2]):(t.value=e[0],t.value&&"object"==typeof t.value&&(t.value=t.value.init)),t},s=[],v=!1;"undefined"!=typeof beforeEach&&(beforeEach((function(){return v=!0})),beforeEach((function(){return(0,c.default)(s)})),afterEach((function(){return v=!1})));var p=function(e,t,r,o){var a,l=f.default.configInstance.has(e)?f.default.configInstance.get(e):{},u=l.overloads||[];u.push([t,r,o]),l.overloads=u,f.default.configInstance.set(e,n({},l));var c=null!==(a=i.mockInstance)&&void 0!==a?a:[];return c.push(e),i.mockInstance=c,v&&s.push([e,f.default.configInstance.get(e),i]),r};function h(e){for(var t=[],r=1;r0){var o=d(t),a=o.key,u=o.value,c=o.accessor;return p(e,a,u,c)}var v=f.default.configInstance.get(e)||{};f.default.configInstance.set(e,n(n({},v),{overloads:[]}));for(var h=s.length-1;h>=0;h-=1)s[h][0]===e&&s[h][2]===i&&s.splice(h,1)}!function(e){e.remember=function(){u.default.stackPush()},e.restore=function(){u.default.stackPop()},e.scope=function(t){void 0===t&&(t="case"),"all"!==t&&"suite"!==t||(beforeAll(e.remember),afterAll(e.restore)),"all"!==t&&"case"!==t||(beforeEach(e.remember),afterEach(e.restore))}}(h||(t.MockInstance=h={}))},9988:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(6297)),l=r(5974),u=r(3659),f=a(r(8073)),c=r(5395),d=r(8339),s=r(2937),v=a(r(445)),p=r(3821),h=[["c",c.MockComponent],["d",d.MockDirective],["p",s.MockPipe]];t.default=function(e,t){var r=function(e,t){return function(r){var a;if(e.has(r))return function(e,t,r){var n=t.get(e);return e!==n&&r(),n}(r,e,t);var c=(0,i.default)(r);if(f.default.isExcludedDef(c))return function(e,t,r){t.set(e,void 0),r()}(r,e,t);f.default.touches.add(c);var d=function(e){var t,r;if((0,l.isNgDef)(e,"m")||(0,u.isNgModuleDefWithProviders)(e))return(0,p.MockModule)(e);if(f.default.hasBuildDeclaration(e))return f.default.getBuildDeclaration(e);if(f.default.flags.has("skipMock")&&"mock"!==f.default.getResolution(e))return e;try{for(var a=n(h),i=a.next();!i.done;i=a.next()){var c=o(i.value,2),d=c[0],s=c[1];if((0,l.isNgDef)(e,d))return s(e)}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}}(r);return function(e,t){return(0,u.isNgModuleDefWithProviders)(t)&&(0,u.isNgModuleDefWithProviders)(e)}(r,d)&&e.set(r.ngModule,d.ngModule),f.default.flags.has("skipMock")&&(null===(a=f.default.config.get("ngMocksDepsSkip"))||void 0===a||a.add(d)),e.set(r,d),t(d!==r),d}}(t,e),a=function(e,t){return function(r){return v.default.resolveProvider(r,e,t)}}(t,e);return{resolve:r,resolveProvider:a}}},6860:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(6297)),l=o(r(7610));t.default=function(e){var t,r;try{for(var o=n((0,a.flatten)(null!=e?e:[])),u=o.next();!u.done;u=o.next()){var f=u.value,c=(0,i.default)(f);(0,l.default)(c)}}catch(e){t={error:e}}finally{try{u&&!u.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}}},3821:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockModule=function(e){var t;(0,v.default)(e,"MockModule");var r=w(e),n=r.ngModule,o=r.ngModuleProviders,a=M(n);try{var i=x(n,O(n,a.isRootModule));g.default.flags.has("cacheModule")&&g.default.cacheDeclarations.set(n,i),g.default.flags.has("skipMock")&&(null===(t=g.default.config.get("ngMocksDepsSkip"))||void 0===t||t.add(i));var l=j(o);return D(e,n,o,i,l)}finally{k(a)}};var i=r(860),l=a(r(3295)),u=a(r(3174)),f=r(6456),c=a(r(1345)),d=a(r(615)),s=a(r(2970)),v=a(r(6804)),p=r(6763),h=r(5974),y=r(3659),_=r(1946),g=a(r(8073)),b=a(r(5937)),m=a(r(224)),M=function(e){var t=!1,r=!0;g.default.flags.has("hasRootModule")?r=!1:g.default.flags.add("hasRootModule");var n=g.default.getResolution(e);return function(e){return"mock"===e&&g.default.flags.has("skipMock")}(n)&&(t=!0,g.default.flags.delete("skipMock")),function(e){return-1!==l.default.neverMockModule.indexOf((0,s.default)(e))&&!g.default.flags.has("skipMock")}(e)&&(t=!0,g.default.flags.add("skipMock")),r||!function(e){return"keep"===e&&!g.default.flags.has("skipMock")}(n)&&!function(e){return"replace"===e&&!g.default.flags.has("skipMock")}(n)||(t=!0,g.default.flags.add("skipMock")),{isRootModule:r,toggleSkipMockFlag:t}},k=function(e){var t=e.isRootModule,r=e.toggleSkipMockFlag;r&&g.default.flags.has("skipMock")?g.default.flags.delete("skipMock"):r&&!g.default.flags.has("skipMock")&&g.default.flags.add("skipMock"),t&&g.default.flags.delete("hasRootModule")},w=function(e){var t,r;return(0,y.isNgModuleDefWithProviders)(e)?(t=e.ngModule,e.providers&&(r=e.providers)):t=e,{ngModule:t,ngModuleProviders:r}},O=function(e,t){var r;if((0,p.isMockNgDef)(e,"m"))return e;if(g.default.flags.has("cacheModule")&&g.default.cacheDeclarations.has(e))return(0,b.default)(e);if(!t&&"mock"!==(null===(r=g.default.config.get("ngMocksDepsResolution"))||void 0===r?void 0:r.get(e))&&g.default.hasBuildDeclaration(e)){var n=g.default.getBuildDeclaration(e);if((0,h.isNgDef)(n,"m")&&n!==e)return n}},x=function(e,t){var r=o(t?[!1]:(0,m.default)((0,c.default)(e),e),3),n=r[0],a=r[1],l=r[2];if(l&&(0,u.default)(e,"__ngMocksResolutions",l),n){var s=g.default.flags.has("skipMock")?e:_.Mock,v=(0,f.extendClass)(s);return(0,i.NgModule)(a)(v),(0,d.default)(v,e),v}return t||e},j=function(e){if(e){var t=o((0,m.default)({providers:e,skipExports:!0}),2),r=t[0],n=t[1];return r?n.providers:e}},D=function(e,t,r,o,a){return o===t&&a===r?e:(0,y.isNgModuleDefWithProviders)(e)?n({ngModule:o},a?{providers:a}:{}):o}},224:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(5551)),u=r(6456),f=i(r(6297)),c=i(r(8073)),d=i(r(7610)),s=i(r(9988)),v=i(r(6860)),p=function(e,t){return(0,u.flatten)(e).map(t).filter((function(e){return!!e}))},h=function(e,t,r,o){var a=c.default.config.get(o)||{},i=(0,f.default)(e),l=t(i);if(l){var u=c.default.config.get(i);if((null==u?void 0:u.export)&&o&&!a.export&&c.default.config.set(o,n(n({},a),{export:!0})),!r||a.exportAll||(null==u?void 0:u.export))return(0,d.default)(i,o),l}},y=function(e,t){return!e||!!t.exports&&-1!==t.exports.indexOf(e)};t.default=function(e,t){var r,i,_=c.default.config.has("mockNgDefResolver");_||c.default.config.set("mockNgDefResolver",new l.default),c.default.config.get("mockNgDefResolver").push();var g=!c.default.flags.has("skipMock"),b=function(e){void 0===e&&(e=!0),g=g||e},m=(0,s.default)(b,c.default.config.get("mockNgDefResolver")),M=m.resolve,k=function(e,t,r){var i,l,u,d={},s=function(e,t){return[["declarations",e],["hostDirectives",function(t){var r=(0,f.default)(t),o=e(r);return o===r?t:t==r?o:n(n({},t),{directive:o})}],["imports",e],["entryComponents",e],["bootstrap",e],["providers",t],["viewProviders",t],["exports",e],["schemas",function(e){return e}]]}(t,r),h=c.default.flags.has("cachePipe");h||c.default.flags.add("cachePipe");try{for(var y=o(s),_=y.next();!_.done;_=y.next()){var g=a(_.value,2),b=g[0],m=g[1];(null===(u=e[b])||void 0===u?void 0:u.length)&&(d[b]=p(e[b],m))}}catch(e){i={error:e}}finally{try{_&&!_.done&&(l=y.return)&&l.call(y)}finally{if(i)throw i.error}}return e.skipMarkProviders||((0,v.default)(d.providers),(0,v.default)(d.viewProviders)),h||c.default.flags.delete("cachePipe"),d}(e,M,m.resolveProvider);e.skipExports||function(e,t,r,n,a){var i,l,f=c.default.flags.has("skipMock")||c.default.flags.has("correctModuleExports");try{for(var d=o((0,u.flatten)([r.imports||[],r.declarations||[]])),s=d.next();!s.done;s=d.next()){var v=s.value,p=h(v,e,f,a);y(p,n)||(t(),n.exports=n.exports||[],n.exports.push(p))}}catch(e){i={error:e}}finally{try{s&&!s.done&&(l=d.return)&&l.call(d)}finally{if(i)throw i.error}}}(M,b,e,k,t);try{for(var w=o(t&&k.exports?(0,u.flatten)(k.exports):[]),O=w.next();!O.done;O=w.next()){var x=O.value;(0,d.default)(x,t)}}catch(e){r={error:e}}finally{try{O&&!O.done&&(i=w.return)&&i.call(w)}finally{if(r)throw r.error}}var j=c.default.config.get("mockNgDefResolver").pop();return _||c.default.config.delete("mockNgDefResolver"),[g,k,j]}},3877:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},2937:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockPipes=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8773)),i=o(r(1184)),l=r(5974),u=function(e,t){var r=" ".concat(function(e,t){return"i"===t?"[".concat(e,"]"):"(".concat(e,")")}(e,t),'="');return(r+="i"===t?e:"__ngMocksOutput('".concat(e,"', $event)"))+'"'},f=function(e,t,r){var o,a;if(!e&&"o"===r)return"";var l="",f=null!=e?e:t;try{for(var c=n(t),d=c.next();!d.done;d=c.next()){var s=d.value,v=(0,i.default)(s),p=v.name,h=v.alias;l+=-1===f.indexOf(h||p)?"":u(h||p,r)}}catch(e){o={error:e}}finally{try{d&&!d.done&&(a=c.return)&&a.call(c)}finally{if(o)throw o.error}}return l};t.default=function(e,t){var r=t.selector,n=t.bindings,o=t.inputs,i=t.outputs,u="";return"string"==typeof e?u=e:(0,l.isNgDef)(e,"p")&&n&&-1!==n.indexOf("$implicit")?u="{{ $implicit | ".concat((0,a.default)(e).name," }}"):r&&(u+="<".concat(r),u+=f(n,o,"i"),u+=f(n,i,"o"),u+=">".concat(r,">")),u}},2091:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(3174)),u=i(r(5006)),f=i(r(445)),c=function(e,t,r){var n=function(){if("function"==typeof r[e]){if(t["__ngMocks_".concat(e,"__origin")]!==r[e]){var n=f.default.createClone(r[e],t,r);(0,l.default)(t,"__ngMocks_".concat(e),n),(0,l.default)(t,"__ngMocks_".concat(e,"__origin"),r[e])}return t["__ngMocks_".concat(e)]}return r[e]};return(0,l.default)(n,"__ngMocksProxy",!0),n},d=function(e,t,r){var n=function(n){t["__ngMocks_".concat(e)]&&(t["__ngMocks_".concat(e)]=void 0),t["__ngMocks_".concat(e,"__origin")]&&(t["__ngMocks_".concat(e,"__origin")]=void 0),r[e]=n};return(0,l.default)(n,"__ngMocksProxy",!0),n};t.default=function(e,t,r,i){var s,v;if(void 0===i&&(i=!1),t){(0,l.default)(e,"__ngMocks__source",t);var p,h=(p=e,o(o([],n(Object.getOwnPropertyNames(p)),!1),n(Object.keys(p)),!1)),y=o(o([],n(function(e){return o(o(o([],n(f.default.extractPropertiesFromPrototype(Object.getPrototypeOf(e))),!1),n(f.default.extractMethodsFromPrototype(Object.getPrototypeOf(e))),!1),n(Object.keys(e)),!1)}(t)),!1),n(r),!1);try{for(var _=a(y),g=_.next();!g.done;g=_.next()){var b=g.value;(i||-1===h.indexOf(b))&&((0,u.default)(e,b,{get:c(b,e,t),set:d(b,e,t)}),h.push(b))}}catch(e){s={error:e}}finally{try{g&&!g.done&&(v=_.return)&&v.call(_)}finally{if(s)throw s.error}}}}},6086:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var u=r(860),f=r(2603),c=l(r(3174)),d=r(6456),s=l(r(8862)),v=r(5974);t.default=function(e){var t,r,l;if(!(0,v.isNgDef)(e,"c")&&!(0,v.isNgDef)(e,"d"))return{};var p=(0,s.default)(e),h={};try{for(var y=i(Object.keys(p)),_=y.next();!_.done;_=y.next()){var g=_.value;"standalone"!==g?h[g]=p[g]:(0,c.default)(h,"__ngMocksStandalone",!!p[g])}}catch(e){t={error:e}}finally{try{_&&!_.done&&(r=y.return)&&r.call(y)}finally{if(t)throw t.error}}return h.selector&&/[\s,[\]]/.test(h.selector)&&(h.selector=""),h.selector||(h.selector=(null===(l=f.TestBed.ngMocksSelectors)||void 0===l?void 0:l.get(e))||"",h.selector||(h.selector="ng-mocks-".concat(e.name),function(e,t){var r,i=(0,d.extendClass)(e),l={provide:e,useExisting:i};t.providers=a(a([],o(t.providers||[]),!1),[l],!1);var c={};try{var s=f.TestBed.ngMocksOverrides.get(e).override;(c=n({},s.set)).providers=c.providers?a(a([],o(c.providers),!1),[l],!1):t.providers}catch(e){}var p=!0===t.__ngMocksStandalone;((0,v.isNgDef)(e,"c")?u.Component:u.Directive)(n(n(n({},t),c),p?{standalone:p}:{}))(i),f.TestBed.configureTestingModule(((r={})[p?"imports":"declarations"]=[i],r))}(e,h),f.TestBed.ngMocksSelectors&&f.TestBed.ngMocksSelectors.set(e,h.selector))),h}},8406:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockRenderFactory=function(e,t,r){void 0===r&&(r={}),(0,f.default)(e,"MockRender");var n="string"==typeof e||(0,c.isNgDef)(e,"t")?{}:(0,g.default)(e),o=(0,y.default)(e,n,t,r),a=m(o,t,e,r);return"root"!==d.default.current().level&&!1!==r.configureTestBed&&a.configureTestBed(),a};var o=r(860),a=r(2603),i=n(r(3174)),l=r(6456),u=n(r(2970)),f=n(r(6804)),c=r(5974),d=n(r(7592)),s=n(r(8073)),v=r(6189),p=n(r(5006)),h=r(5779),y=n(r(3078)),_=n(r(2091)),g=n(r(6086)),b=["Forgot to flush TestBed?","MockRender cannot be used without a reset after TestBed.get / TestBed.inject / TestBed.createComponent and another MockRender in the same test.","If you want to mock a service before rendering, consider usage of MockRenderFactory or MockInstance.","To flush TestBed, add a call of ngMocks.flushTestBed() before the call of MockRender, or pass `reset: true` to MockRender options."].join(" "),m=function(e,t,r,n){var f=function(n,d){f.configureTestBed();var y=a.TestBed.createComponent(e);return(0,_.default)(y.componentInstance,null!=n?n:{},null!=t?t:[]),(0,i.default)(y,"ngMocksStackId",s.default.global.get("bullet:stack:id")),(void 0===d||d)&&y.detectChanges(),"string"==typeof r||(0,c.isNgDef)(r,"c")||(0,c.isNgDef)(r,"d")||e.tpl&&(0,c.isNgDef)(r,"p")?function(e,t,r){e.point=e.debugElement.children[0]&&"#text"!==e.debugElement.children[0].nativeElement.nodeName&&"#comment"!==e.debugElement.children[0].nativeElement.nodeName?e.debugElement.children[0]:e.debugElement,(0,c.isNgDef)(t,"d")?(0,p.default)(e.point,"componentInstance",{get:function(){return v.ngMocks.get(e.point,t)}}):(0,c.isNgDef)(t,"p")&&(0,p.default)(e.point,"componentInstance",{get:function(){return v.ngMocks.findInstance(e.point,t)}}),function(e,t){if(e)try{t()}catch(e){}}(!r,(function(){return(0,_.default)(e.componentInstance,e.point.componentInstance,[])}))}(y,r,n):function(e,t,r){var n;try{n=(0,l.getInjection)(t)}catch(e){if((0,c.isNgDef)(t,"p"))throw new Error(["Cannot render ".concat((0,u.default)(t),"."),"Did you forget to set $implicit param, or add the pipe to providers?","https://ng-mocks.sudo.eu/guides/pipe"].join(" "));throw e}r&&v.ngMocks.stub(n,r),e.point=(0,h.MockService)(o.DebugElement,{childNodes:[],children:[],componentInstance:n,nativeElement:(0,h.MockService)(HTMLElement)}),(0,_.default)(e.componentInstance,e.point.componentInstance,[],!0)}(y,r,n),y};return f.declaration=e,f.bindings=t,f.configureTestBed=function(e,t){return function(){var r,n=(0,a.getTestBed)(),o=(null===(r=n._compiler)||void 0===r?void 0:r.declarations)||n.declarations||n._declarations;if(!o||-1===o.indexOf(e)){!function(e){var t=s.default.global.get("flags"),r=(0,a.getTestBed)();e.reset||!r._instantiated&&!r._testModuleRef?v.ngMocks.flushTestBed():"throw"!==t.onTestBedFlushNeed&&(r._instantiated||r._testModuleRef)&&("warn"===t.onTestBedFlushNeed&&console.warn(b),v.ngMocks.flushTestBed())}(t);try{var l=[];e.providers&&l.push(e.providers),l.push(e),a.TestBed.configureTestingModule({declarations:l})}catch(e){!function(e){var t=new Error(b);throw(0,i.default)(t,"parent",e),t}(e)}}}}(e,n),f}},1661:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)return!0;var n=e.codePointAt(0);if(n&&n>=65&&n<=90&&null!==t.match(/\bthis\./gm))return!0;var o=new RegExp("\\(this,\\s*".concat(e,"\\)"),"mg");return null!==t.match(o)}(r[1],t,e)}},402:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return null!==e&&"object"==typeof e&&"InjectionToken"!==e.ngMetadataName&&"object"==typeof Object.getPrototypeOf(e)}},1365:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(5006)),u=i(r(7331)),f=i(r(7794)),c=i(r(5020));t.default=function(e,t,r,i){var d,s,v=function(){for(var n=[],o=0;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3174)),i=o(r(2970)),l=o(r(445));t.default=function(e){var t,r,o,u,f=(0,i.default)(e),c={};(0,a.default)(c,"__ngMocks",!0);var d=l.default.extractMethodsFromPrototype(e);try{for(var s=n(d),v=s.next();!v.done;v=s.next()){var p=v.value;l.default.mock(c,p,f)}}catch(e){t={error:e}}finally{try{v&&!v.done&&(r=s.return)&&r.call(s)}finally{if(t)throw t.error}}var h=l.default.extractPropertiesFromPrototype(e);try{for(var y=n(h),_=y.next();!_.done;_=y.next()){var g=_.value;l.default.mock(c,g,"get",f),l.default.mock(c,g,"set",f)}}catch(e){o={error:e}}finally{try{_&&!_.done&&(u=y.return)&&u.call(y)}finally{if(o)throw o.error}}return Object.setPrototypeOf(c,e),c}},5006:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2970)),i=["sanitize","bypassSecurityTrustHtml","bypassSecurityTrustStyle","bypassSecurityTrustScript","bypassSecurityTrustUrl","bypassSecurityTrustResourceUrl"],l={DomSanitizer:i,Sanitizer:i},u=function(e){var t,r,o,i=Object.getOwnPropertyNames(e);try{for(var u=n(null!==(o=l[(0,a.default)(e)])&&void 0!==o?o:[]),f=u.next();!f.done;f=u.next()){var c=f.value;i.push(c)}}catch(e){t={error:e}}finally{try{f&&!f.done&&(r=u.return)&&r.call(u)}finally{if(t)throw t.error}}return i};t.default=function(e){for(var t,r,o=[],a=e;a&&null!==Object.getPrototypeOf(a);){try{for(var i=(t=void 0,n(u(a))),l=i.next();!l.done;l=i.next()){var f=l.value;if("constructor"!==f){var c=Object.getOwnPropertyDescriptor(a,f);c&&(c.get||c.set)||-1!==o.indexOf(f)||o.push(f)}}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}a=Object.getPrototypeOf(a)}return o}},7794:function(e,t){var r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){for(var t,n,o=[],a=e;a&&null!==Object.getPrototypeOf(a);){try{for(var i=(t=void 0,r(Object.getOwnPropertyNames(a))),l=i.next();!l.done;l=i.next()){var u=l.value;if("constructor"!==u){var f=Object.getOwnPropertyDescriptor(a,u);f&&(f.get||f.set)&&-1===o.indexOf(u)&&o.push(u)}}}catch(e){t={error:e}}finally{try{l&&!l.done&&(n=i.return)&&n.call(i)}finally{if(t)throw t.error}}a=Object.getPrototypeOf(a)}return o}},5020:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){for(var r=e;r&&null!==Object.getPrototypeOf(r);){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}},8536:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(3174)),a=function(e,t){void 0===t&&(t=!1);var r,n,i=a.customMockFunction&&!t?a.customMockFunction(e):function(e){return n&&n(e),r};return(0,o.default)(i,"__ngMocks",!0),(0,o.default)(i,"__ngMocksSet",(function(e){return n=e})),(0,o.default)(i,"__ngMocksGet",(function(e){return r=e})),i};t.default=a},445:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.registerMockFunction=function(e){(0,o.default)().ngMockshelperMockService.registerMockFunction(e)};var o=n(r(1102)),a=n(r(1365)),i=n(r(3886)),l=n(r(5006)),u=n(r(7331)),f=n(r(7794)),c=n(r(5020)),d=n(r(4235)),s=n(r(8536)),v=n(r(2004)),p=n(r(3663)),h=n(r(9465));(0,o.default)().ngMockshelperMockService=(0,o.default)().ngMockshelperMockService||{mockFunction:s.default,registerMockFunction:function(e){(0,o.default)().ngMockshelperMockService.mockFunction.customMockFunction=e},createClone:a.default,createMockFromPrototype:i.default,definePropertyDescriptor:l.default,extractMethodsFromPrototype:u.default,extractPropertiesFromPrototype:f.default,extractPropertyDescriptor:c.default,mock:d.default,replaceWithMocks:v.default,resolveProvider:p.default,useFactory:h.default},t.default=(0,o.default)().ngMockshelperMockService},4235:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0&&"get"!==e[0]&&"set"!==e[0]?r=e[0]:e.length>0&&("get"===e[0]||"set"===e[0])&&(t=e[0],r=e[1]),{accessType:t,mockName:r}}(r),u=l.accessType,f=l.mockName,c=Object.getOwnPropertyDescriptor(e,t);if(c&&c[u||"value"])return c[u||"value"];var d=function(e,t,r,n){return"".concat(null!=t?t:"function"==typeof r.prototype?r.prototype.name:(0,a.default)(r),".").concat(e).concat(null!=n?n:"")}(t,f,e,u),s=i.default.mockFunction(d,!!u),v=function(e,t,r){var o;return n(n(n(n({},"get"===r&&e&&e.set?{set:e.set}:{}),"set"===r&&e&&e.get?{get:e.get}:{}),r?{}:{writable:!0}),((o={})[r||"value"]=t,o.configurable=!0,o.enumerable=!0,o))}(c,s,u);return v.get&&v.set&&v.get.__ngMocks&&v.set.__ngMocks&&v.set.__ngMocksSet((function(e){return v.get.__ngMocksGet(e)})),Object.defineProperty(e,t,v),s}},2004:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(1763),u=r(5974),f=i(r(8073)),c=["canActivate","canActivateChild","canDeactivate","canMatch","canLoad"],d=function(e,t){return Array.isArray(e[t])?function(e){var t,r,n=[];try{for(var a=o(e),i=a.next();!i.done;i=a.next()){var c=i.value;!f.default.isProvidedDef(c)&&f.default.isExcludedDef(l.NG_MOCKS_GUARDS)||(n.push(c),(0,u.isNgDef)(c)||f.default.touches.add(c))}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}return n}(e[t]):e[t]},s=function(e,t){var r,i,v;if(f.default.cacheDeclarations.has(e))return f.default.cacheDeclarations.get(e);if("object"!=typeof e)return e;if(t.has(e))return e;var p=!1;return Array.isArray(e)?(r=a(function(e,t,r){var n,a,i=[],l=!1;e.set(t,i);try{for(var u=o(t),c=u.next();!c.done;c=u.next()){var d=c.value;f.default.isExcludedDef(d)?l=l||!0:(i.push(r(d,e)),l=l||i[i.length-1]!==d)}}catch(e){n={error:e}}finally{try{c&&!c.done&&(a=u.return)&&a.call(u)}finally{if(n)throw n.error}}return[l,i]}(t,e,s),2),p=r[0],v=r[1]):e&&(i=a(function(e,t,r){var a,i,s,v,p,h,y,_={},g=!1;e.set(t,_);try{for(var b=o(Object.keys(t)),m=b.next();!m.done;m=b.next()){var M=m.value;f.default.isExcludedDef(t[M])?g=g||!0:(_[M]=r(t[M],e),g=g||_[M]!==t[M])}}catch(e){a={error:e}}finally{try{m&&!m.done&&(i=b.return)&&i.call(b)}finally{if(a)throw a.error}}try{for(var k=o(c),w=k.next();!w.done;w=k.next()){var O=w.value,x=d(_,O);x&&_[O].length!==x.length&&(g=g||!0,_=n(n({},_),((p={})[O]=x,p)))}}catch(e){s={error:e}}finally{try{w&&!w.done&&(v=k.return)&&v.call(k)}finally{if(s)throw s.error}}if("object"==typeof _.resolve&&_.resolve){var j={},D=!1;try{for(var S=o(Object.keys(_.resolve)),P=S.next();!P.done;P=S.next()){M=P.value;var C=_.resolve[M];f.default.isProvidedDef(C)||!f.default.isExcludedDef(l.NG_MOCKS_RESOLVERS)?(j[M]=C,(0,u.isNgDef)(C)||f.default.touches.add(C)):D=D||!0}}catch(e){h={error:e}}finally{try{P&&!P.done&&(y=S.return)&&y.call(S)}finally{if(h)throw h.error}}D&&(g=g||!0,_=n(n({},_),{resolve:j}))}return[g,_]}(t,e,s),2),p=i[0],v=i[1]),p?(Object.setPrototypeOf(v,Object.getPrototypeOf(e)),v):e};t.default=function(e){var t=new Map,r=s(e,t);return t.clear(),r}},3663:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=r(6456),l=r(1763),u=a(r(7285)),f=a(r(6297)),c=r(4152),d=a(r(8073)),s=a(r(445)),v=a(r(2415)),p=function(e,t,r){var n=!1,a=!e;return t&&e&&!a&&(a=function(e,t){for(var r,n,a=[],i=2;i=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(3295)),l=a(r(6297)),u=r(4152),f=a(r(8073)),c=a(r(5006)),d=a(r(5020)),s=a(r(9465)),v=r(5779),p=i.default.neverMockProvidedFunction,h=i.default.neverMockToken,y=[[function(e){return"boolean"==typeof e},!1],[function(e){return"number"==typeof e},0],[function(e){return"string"==typeof e},""],[function(e){return null===e},null]],_=function(e,t,r){var a,i;return t===e?r?(0,s.default)(e,(function(){})):void 0:e.multi?void(null===(a=f.default.config.get("ngMocksMulti"))||void 0===a||a.add(t)):(-1!==Object.keys(e).indexOf("useValue")?i=function(e,t){return(0,s.default)(t,(function(){return e.useValue&&"object"==typeof e.useValue?(0,v.MockService)(e.useValue):function(e){var t,r;try{for(var a=n(y),i=a.next();!i.done;i=a.next()){var l=o(i.value,2),u=l[0],f=l[1];if(u(e))return f}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}}(e.useValue)}))}(e,t):-1!==Object.keys(e).indexOf("useExisting")?i=e:-1!==Object.keys(e).indexOf("useClass")?i=function(e,t){return f.default.builtProviders.has(e.useClass)&&f.default.builtProviders.get(e.useClass)===e.useClass?e:(0,s.default)(t,(function(){return(0,v.MockService)(e.useClass)}))}(e,t):-1!==Object.keys(e).indexOf("useFactory")&&(i=(0,s.default)(t,(function(){return{}}))),i)};t.default=function(e,t){void 0===t&&(t=!1);var r=(0,l.default)(e);if("mock"===f.default.getResolution(r));else{if(function(e){return"function"==typeof e&&-1!==p.indexOf(e.name)}(r))return e;if(function(e){return(0,u.isNgInjectionToken)(e)&&-1!==h.indexOf(e.toString())}(r))return}var o=f.default.flags.has("cacheProvider")?f.default.cacheProviders:void 0;return r===e&&o&&o.has(r)?o.get(r):function(e,t,r){var o;return"function"==typeof t&&(o=function(e,t){return(0,s.default)(t,(function(){var r=(0,v.MockService)(t);return t!==e&&-1!==Object.keys(e).indexOf("useClass")&&function(e,t){var r,o,a=Object.getOwnPropertyNames(e),i=(0,v.MockService)(t);try{for(var l=n(Object.getOwnPropertyNames(i)),u=l.next();!u.done;u=l.next()){var f=u.value;if(-1===a.indexOf(f)){var s=(0,d.default)(i,f);(0,c.default)(e,f,s)}}}catch(e){r={error:e}}finally{try{u&&!u.done&&(o=l.return)&&o.call(l)}finally{if(r)throw r.error}}}(r,e.useClass),r}))}(e,t)),t===e&&o&&r&&r.set(t,o),o}(e,r,o)||_(e,r,t)}},5779:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockService=function(e){for(var t=[],r=1;r0&&"string"==typeof t[0]?t[0]:t[1],o=t.length>0&&t[0]&&"object"==typeof t[0]?t[0]:void 0,a=new Map,i=v(a,e,n,o);return a.clear(),i};var i=a(r(2970)),l=a(r(8195)),u=a(r(96)),f=a(r(2956)),c=a(r(402)),d=a(r(445)),s=[[u.default,function(e,t){var r=d.default.createMockFromPrototype(t.prototype);return e.set(t,r),r}],[f.default,function(e,t,r){var n=d.default.mockFunction("func:".concat(r||(0,i.default)(t)));return e.set(t,n()),n}],[function(e){return Array.isArray(e)},function(){return[]}],[c.default,function(e,t,r,o){var a,i,l=d.default.createMockFromPrototype(t.constructor.prototype);e.set(t,l);try{for(var u=n(Object.keys(t)),f=u.next();!f.done;f=u.next()){var c=f.value,s=o(e,t[c],"".concat(r||"instance",".").concat(c));void 0!==s&&(l[c]=s)}}catch(e){a={error:e}}finally{try{f&&!f.done&&(i=u.return)&&i.call(u)}finally{if(a)throw a.error}}return Object.setPrototypeOf(l,Object.getPrototypeOf(t)),l}]],v=function(e,t,r,a){void 0===r&&(r="");var i=function(e,t,r,a){var i,l,u;try{for(var f=n(s),c=f.next();!c.done;c=f.next()){var d=o(c.value,2),v=d[0],p=d[1];if(v(t))return null!==(u=e.get(t))&&void 0!==u?u:p(e,t,r,a)}}catch(e){i={error:e}}finally{try{c&&!c.done&&(l=f.return)&&l.call(f)}finally{if(i)throw i.error}}}(e,t,r,v);return a&&(0,l.default)(i,a),i}},534:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},9715:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2023)),i=r(6456),l=o(r(7285)),u=o(r(6297)),f=r(1433),c=o(r(445)),d=o(r(7112)),s=o(r(3309)),v=function(e,t,r,n){var o=function(e,t){var r=(0,u.default)(t);return a.default.NG_VALIDATORS&&r===a.default.NG_VALIDATORS?(0,s.default)(r,(function(){return new f.MockValidatorProxy(e)})):a.default.NG_ASYNC_VALIDATORS&&r===a.default.NG_ASYNC_VALIDATORS?(0,s.default)(r,(function(){return new f.MockAsyncValidatorProxy(e)})):a.default.NG_VALUE_ACCESSOR&&r===a.default.NG_VALUE_ACCESSOR?(0,s.default)(r,(function(){return new f.MockControlValueAccessorProxy(e)})):void 0}(t,r);if(o)return o;var i=function(e,t,r){var n=(0,u.default)(r);if(n!==a.default.NgControl&&n!==a.default.FormControlDirective)return r!==n&&(0,l.default)(r.useExisting)===e?(0,d.default)(n,t):void 0}(e,t,r);return i||c.default.resolveProvider(r,n)};t.default=function(e,t,r,o){var l,f,c,d=[];try{for(var s=n((0,i.flatten)(r||[])),p=s.next();!p.done;p=s.next()){var h=p.value;(0,u.default)(h)===a.default.NG_VALUE_ACCESSOR&&(c=!1);var y=v(e,t,h,o);y&&d.push(y)}}catch(e){l={error:e}}finally{try{p&&!p.done&&(f=s.return)&&f.call(s)}finally{if(l)throw l.error}}return{providers:d,setControlValueAccessor:c}}},6847:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(5551)),u=i(r(5756)),f=i(r(615)),c=i(r(5555)),d=i(r(8385)),s=i(r(8073)),v=i(r(224)),p=i(r(445)),h=i(r(9715)),y=i(r(7112));t.default=function(e,t,r,i){var _,g,b,m,M=s.default.config.has("mockNgDefResolver");M||s.default.config.set("mockNgDefResolver",new l.default);var k=n({},i);if(void 0!==r.exportAs&&(k.exportAs=r.exportAs),void 0!==r.selector&&(k.selector=r.selector),void 0!==r.standalone&&(k.standalone=r.standalone),r.standalone&&r.imports){var w=o((0,v.default)({imports:r.imports,skipExports:!0}),2)[1].imports;(null==w?void 0:w.length)&&(k.imports=w)}if(r.hostDirectives){var O=o((0,v.default)({hostDirectives:r.hostDirectives,skipExports:!0}),2)[1].hostDirectives;(null==O?void 0:O.length)&&(k.hostDirectives=O)}var x=(0,h.default)(e,t,r.providers||[],s.default.config.get("mockNgDefResolver")),j=x.setControlValueAccessor,D=x.providers;D.push((0,y.default)(e,t)),k.providers=D;var S=(0,h.default)(e,t,r.viewProviders||[],s.default.config.get("mockNgDefResolver")).providers;S.length>0&&(k.viewProviders=S);var P=function(e,t,r){return{config:s.default.config.get(e),outputs:t.outputs,queryScanKeys:[],setControlValueAccessor:r}}(e,r,null!=j?j:-1!==p.default.extractMethodsFromPrototype(e.prototype).indexOf("writeValue"));(0,f.default)(t,e,P),r.queries&&(0,u.default)(t,r.inputs,Object.keys(r.queries)),(0,c.default)(t,r.outputs),P.queryScanKeys=(0,d.default)(t,r.queries),P.hostBindings=[];try{for(var C=a(r.hostBindings||[]),N=C.next();!N.done;N=C.next()){var T=o(N.value,1)[0];-1===P.hostBindings.indexOf(T)&&P.hostBindings.push(T)}}catch(e){_={error:e}}finally{try{N&&!N.done&&(g=C.return)&&g.call(C)}finally{if(_)throw _.error}}P.hostListeners=[];try{for(var E=a(r.hostListeners||[]),A=E.next();!A.done;A=E.next())T=o(A.value,1)[0],-1===P.hostListeners.indexOf(T)&&P.hostListeners.push(T)}catch(e){b={error:e}}finally{try{A&&!A.done&&(m=E.return)&&m.call(E)}finally{if(b)throw b.error}}return M||s.default.config.delete("mockNgDefResolver"),k}},6932:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6456),a=n(r(6804)),i=r(6763),l=n(r(8073)),u=n(r(5937));t.default=function(e,t,r,n,f,c){if((0,a.default)(e,r),(0,i.isMockNgDef)(e,t))return e;if(l.default.flags.has(n)&&l.default.cacheDeclarations.has(e))return(0,u.default)(e);var d=l.default.config.has("ngMocksDepsResolution");d||l.default.config.set("ngMocksDepsResolution",new Map);var s=(0,o.extendClass)(f);return c(e,s),l.default.flags.has(n)&&l.default.cacheDeclarations.set(e,s),d||l.default.config.delete("ngMocksDepsResolution"),s}},7610:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6739),a=n(r(8073));t.default=function(e,t){var r,n=(0,o.getSourceOfMock)(e),i=null!==(r=a.default.configInstance.get(n))&&void 0!==r?r:{__set:!0};i.exported||(i.exported=new Set),t&&i.exported.add((0,o.getSourceOfMock)(t)),i.__set&&(i.__set=void 0,a.default.configInstance.set(n,i))}},5937:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(1763),a=n(r(8073)),i=n(r(5687));t.default=function(e){var t;try{t=(0,i.default)().debugElement.injector.get(o.NG_MOCKS).get(e)}catch(e){}return t||(t=a.default.cacheDeclarations.get(e)),e.__ngMocksResolutions&&a.default.config.has("mockNgDefResolver")&&a.default.config.get("mockNgDefResolver").merge(e.__ngMocksResolutions),t}},7112:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return{provide:e,useExisting:t}}},3309:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return{multi:!0,provide:e,useFactory:t}}},4673:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=function(){function e(){this.stack=[],this.push()}return e.prototype.push=function(){this.stack.push(new Map)},e.prototype.pop=function(){var e;return null!==(e=this.stack.pop())&&void 0!==e?e:new Map},e.prototype.has=function(e){for(var t=this.stack.length-1;t>=0;t-=1)if(this.stack[t].has(e))return!0;return!1},e.prototype.get=function(e){for(var t=this.stack.length-1;t>=0;t-=1)if(this.stack[t].has(e))return this.stack[t].get(e)},e.prototype.set=function(e,t){for(var r=this.stack.length-1;r>=0;r-=1)this.stack[r].set(e,t);return this},e.prototype.merge=function(e){var t,r;try{for(var i=n((0,a.mapEntries)(e)),l=i.next();!l.done;l=i.next()){var u=o(l.value,2),f=u[0],c=u[1];this.set(f,c)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}return this},e}();t.default=i},3174:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(445));t.default=function(e,t,r,n){void 0===n&&(n=!1),o.default.definePropertyDescriptor(e,t,{configurable:!0,enumerable:n,value:r,writable:!0})}},2023:function(e,t,r){var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(7182)),l=i.AbstractControl,u=i.DefaultValueAccessor,f=i.FormControl,c=i.FormControlDirective,d=i.NG_ASYNC_VALIDATORS,s=i.NG_VALIDATORS,v=i.NG_VALUE_ACCESSOR,p=i.NgControl,h=i.NgModel;t.default={AbstractControl:l,DefaultValueAccessor:u,FormControl:f,FormControlDirective:c,NG_ASYNC_VALIDATORS:d,NG_VALIDATORS:s,NG_VALUE_ACCESSOR:v,NgControl:p,NgModel:h}},6456:function(__unused_webpack_module,exports,__webpack_require__){var __extends=this&&this.__extends||(extendStatics=function(e,t){return extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},extendStatics(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}extendStatics(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),extendStatics,__values=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},__read=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},__spreadArray=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0&&(0,core_define_property_1.default)(t,"parameters",__spreadArray([],__read(r),!1)),t};exports.extendClass=extendClass},4201:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(6456),o={};t.default=function(e,t){if(void 0===t&&(t=o),t===o)return(0,n.getTestBedInjection)(e);try{return t.get(e)}catch(e){return}}},4874:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8641)),a=n(r(1585)),i=n(r(2129));t.default=function(e){return function(t){(0,o.default)(t);try{return e(t)}catch(e){(0,a.default)(t),(0,i.default)(t)}}}},8862:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4673)),a=n(r(4874));t.default=function(e){return(0,a.default)((function(e){var t=(0,o.default)(e);if(t.Component)return t.Component;if(t.Directive)return t.Directive;throw new Error("Cannot resolve declarations")}))(e)}},1381:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8862)),a=n(r(1345)),i=r(5974);t.default=function(e){return(0,i.isNgDef)(e,"c")||(0,i.isNgDef)(e,"d")?(0,o.default)(e):(0,i.isNgDef)(e,"m")?(0,a.default)(e):void 0}},1345:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4673)),a=n(r(4874));t.default=function(e){return(0,a.default)((function(e){var t=(0,o.default)(e);if(t.NgModule)return t.NgModule;throw new Error("Cannot resolve declarations")}))(e)}},8749:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4673));t.default=function(e){var t;return null!==(t=(0,o.default)(e).parameters)&&void 0!==t?t:[]}},8773:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4673)),a=n(r(4874));t.default=function(e){return(0,a.default)((function(e){var t=(0,o.default)(e);if(t.Pipe)return t.Pipe;throw new Error("Cannot resolve declarations")}))(e)}},8911:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t,r,n;if(e&&("object"==typeof e||"function"==typeof e))return null!==(r=null===(t=e.ɵprov)||void 0===t?void 0:t.providedIn)&&void 0!==r?r:null===(n=e.ngInjectableDef)||void 0===n?void 0:n.providedIn}},1763:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.NG_MOCKS_ROOT_PROVIDERS=t.NG_MOCKS_INTERCEPTORS=t.NG_MOCKS_RESOLVERS=t.NG_MOCKS_GUARDS=t.NG_MOCKS_OVERRIDES=t.NG_MOCKS_TOUCHES=t.NG_MOCKS=void 0;var n=r(860);t.NG_MOCKS=new n.InjectionToken("NG_MOCKS"),t.NG_MOCKS.__ngMocksSkip=!0,t.NG_MOCKS_TOUCHES=new n.InjectionToken("NG_MOCKS_TOUCHES"),t.NG_MOCKS_TOUCHES.__ngMocksSkip=!0,t.NG_MOCKS_OVERRIDES=new n.InjectionToken("NG_MOCKS_OVERRIDES"),t.NG_MOCKS_OVERRIDES.__ngMocksSkip=!0,t.NG_MOCKS_GUARDS=new n.InjectionToken("NG_MOCKS_GUARDS"),t.NG_MOCKS_GUARDS.__ngMocksSkip=!0,t.NG_MOCKS_RESOLVERS=new n.InjectionToken("NG_MOCKS_RESOLVERS"),t.NG_MOCKS_RESOLVERS.__ngMocksSkip=!0,t.NG_MOCKS_INTERCEPTORS=new n.InjectionToken("NG_MOCKS_INTERCEPTORS"),t.NG_MOCKS_INTERCEPTORS.__ngMocksSkip=!0,t.NG_MOCKS_ROOT_PROVIDERS=new n.InjectionToken("NG_MOCKS_ROOT_PROVIDERS"),t.NG_MOCKS_ROOT_PROVIDERS.__ngMocksSkip=!0},5756:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(860),i=o(r(6439)),l=o(r(1184));t.default=function(e,t,r){var o,u;if(t)try{for(var f=n(t),c=f.next();!c.done;c=f.next()){var d=c.value,s=(0,l.default)(d),v=s.name,p=s.alias,h=s.required;r&&-1!==r.indexOf(v)||(0,a.Input)((0,i.default)({name:v,alias:p,required:h},!0))(e.prototype,v)}}catch(e){o={error:e}}finally{try{c&&!c.done&&(u=f.return)&&u.call(f)}finally{if(o)throw o.error}}}},615:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(860),i=o(r(6439)),l=o(r(1184));t.default=function(e,t){var r,o;if(t)try{for(var u=n(t),f=u.next();!f.done;f=u.next()){var c=f.value,d=(0,l.default)(c),s=d.name,v=d.alias,p=d.required;(0,a.Output)((0,i.default)({name:s,alias:v,required:p},!0))(e.prototype,s)}}catch(e){r={error:e}}finally{try{f&&!f.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}},8385:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0});var i=r(860),l={ContentChild:i.ContentChild,ContentChildren:i.ContentChildren,ViewChild:i.ViewChild,ViewChildren:i.ViewChildren},u=function(e){return 0===e.indexOf("__mock")},f=function(e){return n(n({},e),{ngMetadataName:e.ngMetadataName,read:i.ViewContainerRef})};t.default=function(e,t){var r,n;if(!t)return[];var i=a(function(e){var t,r,n=[],a=[];try{for(var i=o(Object.keys(e)),l=i.next();!l.done;l=i.next()){var c=l.value,d=e[c];n.push([c,d]),d.isViewQuery||u(c)||(a.push(c),n.push(["__ngMocksVcr_".concat(c),f(d)]))}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}return[n,a]}(t),2),c=i[0],d=i[1];try{for(var s=o(c),v=s.next();!v.done;v=s.next()){var p=a(v.value,2),h=p[0],y=p[1];y.ngMetadataName&&(0,l[y.ngMetadataName])(y.selector,y)(e.prototype,h)}}catch(e){r={error:e}}finally{try{v&&!v.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return d}},8641:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!e)throw new Error(["undefined / null has been passed into ng-mocks as a declaration / provider.","Please ensure that the current test file has correct imports:","imported files exist and imported declarations have been exported in the file."].join(" "))}},1585:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(2970)),a=n(r(9628));t.default=function(e){if((0,a.default)(e))throw new Error(["ng-mocks got ".concat((0,o.default)(e)," which has been already mocked by jest.mock()."),"It is not possible to produce correct mocks for it, because jest.mock() removes Angular decorators.","To fix this, please avoid jest.mock() on the file which exports ".concat((0,o.default)(e)," or add jest.dontMock() on it."),"The same should be done for all related dependencies."].join(" "))}},2129:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(2970));t.default=function(e){throw new Error(["".concat((0,o.default)(e)," declaration has been passed into ng-mocks without Angular decorators."),"Therefore, it cannot be properly handled.","Highly likely,","undefined"==typeof jest?"":"jest.mock() has been used on its file, or","ng-mocks is imported in production code, or got a class without Angular decoration.","Otherwise, please create an issue on github: https://github.com/help-me-mom/ng-mocks/issues/new?title=False%20positive%20ng-mocks%20not%20in%20JIT.","Thank you in advance for support."].join(" "))}},6439:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var r=e.name,n=e.alias,o=e.required;return void 0===t&&(t=!1),o?{name:r,alias:n,required:o}:n&&r!==n?t?n:"".concat(r,":").concat(n):t?"":r}},1184:function(e,t){var r=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"==typeof e){var t=r(e.split(":").map((function(e){return e.trim()})),2),n=t[0],o=t[1];return n!==o&&o?{name:n,alias:o}:{name:n}}return e}},5204:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.funcExtractDeps=void 0;var a=o(r(4673)),i=o(r(3295)),l=r(6456),u=r(9335),f=o(r(6297));t.funcExtractDeps=function(e,r,o){var c,d,s,v;void 0===o&&(o=!1);var p=(0,a.default)(e),h=(0,u.getNgType)(e);if(!h||"Injectable"===h)return r;var y=p[h];try{for(var _=n(i.default.dependencies),g=_.next();!g.done;g=_.next()){var b=g.value;if(y[b])try{for(var m=(s=void 0,n((0,l.flatten)(y[b]))),M=m.next();!M.done;M=m.next()){var k=M.value,w=(0,f.default)(k);r.has(w)||(r.add(w),o&&(0,t.funcExtractDeps)(w,r))}}catch(e){s={error:e}}finally{try{M&&!M.done&&(v=m.return)&&v.call(m)}finally{if(s)throw s.error}}}}catch(e){c={error:e}}finally{try{g&&!g.done&&(d=_.return)&&d.call(_)}finally{if(c)throw c.error}}return r}},7285:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"function"==typeof e&&e.__forward_ref__?e():e}},1102:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return"undefined"==typeof window?r.g:window}},5590:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getMockedNgDefOf=function(e,t){var r,n=null!==(r=e.mockOf)&&void 0!==r?r:e,u=(0,o.default)(a.NG_MOCKS),c=f(e,n,u);if(c&&!t)return c;if(c&&t&&(0,l.isMockedNgDefOf)(c,n,t))return c;throw new Error("There is no mock for ".concat((0,i.default)(n)))};var o=n(r(4201)),a=r(1763),i=n(r(2970)),l=r(732),u=n(r(8073)),f=function(e,t,r){if(r&&!r.has(t))throw new Error("There is no mock for ".concat((0,i.default)(t)));var n=r?r.get(t):void 0;return n===t&&(n=void 0),n||t===e?!n&&u.default.cacheDeclarations.has(t)&&(n=u.default.cacheDeclarations.get(t)):n=e,n}},2970:function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var r=new RegExp("[^0-9a-z]+","mgi");t.default=function(e){var t;return"function"==typeof e&&e.name?t=e.name:"function"==typeof e?t="arrowFunction":"object"==typeof e&&e&&"InjectionToken"===e.ngMetadataName?t=e._desc:"object"==typeof e&&e&&"function"==typeof e.constructor&&(t=e.constructor.name),t||(t="unknown"),t.replace(r,"_")}},9335:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getNgType=void 0;var o=n(r(4673)),a=r(4152);t.getNgType=function(e){if("string"!=typeof e){if((0,a.isNgInjectionToken)(e))return"Injectable";for(var t=(0,o.default)(e).decorators,r=t.length-1;r>=0;r-=1)if("Injectable"!==t[r])return t[r];return t.length>0?"Injectable":void 0}}},6739:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.getSourceOfMock=function(e){return"function"==typeof e&&e.mockOf?e.mockOf:e}},6297:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(3659);t.default=function(e){return e&&"object"==typeof e&&e.provide?e.provide:(0,n.isNgModuleDefWithProviders)(e)?e.ngModule:e&&"object"==typeof e&&e.directive?e.directive:e}},6804:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(2970)),a=r(5974);t.default=function(e,t){if(null==e)throw new Error("null / undefined has been passed into ".concat(t,". Please check that its import is correct."));if(!("MockPipe"===t&&(0,a.isNgDef)(e,"p")||"MockDirective"===t&&(0,a.isNgDef)(e,"d")||"MockComponent"===t&&(0,a.isNgDef)(e,"c")||"MockModule"===t&&(0,a.isNgDef)(e,"m"))){var r=function(e){return(0,a.isNgDef)(e,"p")?"pipe":(0,a.isNgDef)(e,"d")?"directive":(0,a.isNgDef)(e,"c")?"component":(0,a.isNgDef)(e,"m")?"module":(0,a.isNgDef)(e,"i")?"service":(0,a.isNgDef)(e,"t")?"token":""}(e);if(r&&"MockPipe"===t)throw new Error("".concat(t," accepts pipes, whereas ").concat((0,o.default)(e)," is a ").concat(r,"."));if(r&&"MockDirective"===t)throw new Error("".concat(t," accepts directives, whereas ").concat((0,o.default)(e)," is a ").concat(r,"."));if(r&&"MockComponent"===t)throw new Error("".concat(t," accepts components, whereas ").concat((0,o.default)(e)," is a ").concat(r,"."));if(r&&"MockModule"===t)throw new Error("".concat(t," accepts modules, whereas ").concat((0,o.default)(e)," is a ").concat(r,"."))}}},9628:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!(!e||"function"!=typeof e&&"object"!=typeof e||!(e._isMockFunction&&e.mockName&&e.__annotations__))}},7105:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isMockControlValueAccessor=void 0;var o=n(r(2137));t.isMockControlValueAccessor=function(e){return!!(0,o.default)(e)&&!!e.__ngMocksConfig.isControlValueAccessor}},6763:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.isMockNgDef=function(e,t){return!!e.mockOf&&(!t||(0,n.isNgDef)(e.mockOf,t))};var n=r(5974)},7675:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isMockOf=function(e,t,r){return(0,o.default)(e)&&e.constructor===t&&(r?(0,a.isNgDef)(e.constructor,r):(0,a.isNgDef)(e.constructor))};var o=n(r(2137)),a=r(5974)},2650:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isMockValidator=void 0;var o=n(r(2137));t.isMockValidator=function(e){return!!(0,o.default)(e)&&!!e.__ngMocksConfig.isValidator}},2137:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return e&&"object"==typeof e&&!!e.__ngMocks}},732:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.isMockedNgDefOf=function(e,t,r){return"function"==typeof e&&e.mockOf===t&&(!r||(0,n.isNgDef)(e,r))};var n=r(5974)},5974:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.isNgDef=function(e,t){if("t"===t)return(0,n.isNgInjectionToken)(e);if("function"!=typeof e)return!1;var r=a(e,t),o=i(e,t),c=l(e,t),d=u(e,t),s=f(e,t);return r||o||c||d||s};var n=r(4152),o=r(7297),a=function(e,t){return(!t||"m"===t)&&(0,o.isNgType)(e,"NgModule")},i=function(e,t){return(!t||"c"===t)&&(0,o.isNgType)(e,"Component")},l=function(e,t){return(!t||"d"===t)&&(0,o.isNgType)(e,"Directive")},u=function(e,t){return(!t||"p"===t)&&(0,o.isNgType)(e,"Pipe")},f=function(e,t){return(!t||"i"===t)&&(0,o.isNgType)(e,"Injectable")}},4152:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.isNgInjectionToken=void 0,t.isNgInjectionToken=function(e){return e&&"object"==typeof e&&"InjectionToken"===e.ngMetadataName}},3659:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.isNgModuleDefWithProviders=void 0,t.isNgModuleDefWithProviders=function(e){return e&&"object"==typeof e&&"function"==typeof e.ngModule}},7297:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isNgType=void 0;var o=n(r(4673));t.isNgType=function(e,t){var r=(0,o.default)(e).decorators;if(0===r.length)return!1;var n=1;if("Injectable"===t&&-1!==r.indexOf("Injectable"))return!0;for(;"Injectable"===r[r.length-n];)n+=1;return r[r.length-n]===t}},6580:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isStandalone=function(e){var t=(0,a.getNgType)(e);return"NgModule"!==t};var o=n(r(4673)),a=r(9335)},6259:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(4673)),i=o(r(3295)),l=r(6456),u=o(r(6297)),f=function(e,t,r){var o,c,d,s,v,p;void 0===r&&(r=new Set);var h=(0,a.default)(e);try{for(var y=n(h.decorators),_=y.next();!_.done;_=y.next()){var g=_.value;try{for(var b=(d=void 0,n(i.default.dependencies)),m=b.next();!m.done;m=b.next()){var M=m.value;if(h[g][M])try{for(var k=(v=void 0,n((0,l.flatten)(h[g][M]))),w=k.next();!w.done;w=k.next()){var O=w.value,x=(0,u.default)(O);x&&!r.has(x)&&(r.add(x),t(x),f(x,t,r))}}catch(e){v={error:e}}finally{try{w&&!w.done&&(p=k.return)&&p.call(k)}finally{if(v)throw v.error}}}}catch(e){d={error:e}}finally{try{m&&!m.done&&(s=b.return)&&s.call(b)}finally{if(d)throw d.error}}}}catch(e){o={error:e}}finally{try{_&&!_.done&&(c=y.return)&&c.call(y)}finally{if(o)throw o.error}}};t.default=f},1433:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.MockAsyncValidatorProxy=t.MockValidatorProxy=t.MockControlValueAccessorProxy=void 0;var r=function(e,t,r,n){if(e.instance&&n&&(e.instance[n]=r),e.instance&&e.instance[t])return e.instance[t](r)},n=function(){function e(e){this.target=e}return e.prototype.registerOnChange=function(e){r(this,"registerOnChange",e,"__simulateChange")},e.prototype.registerOnTouched=function(e){r(this,"registerOnTouched",e,"__simulateTouch")},e.prototype.setDisabledState=function(e){r(this,"setDisabledState",e)},e.prototype.writeValue=function(e){r(this,"writeValue",e)},e}();t.MockControlValueAccessorProxy=n;var o=function(){function e(e){this.target=e}return e.prototype.registerOnValidatorChange=function(e){r(this,"registerOnValidatorChange",e,"__simulateValidatorChange")},e.prototype.validate=function(e){return this.instance&&this.instance.validate?this.instance.validate(e):null},e}();t.MockValidatorProxy=o;var a=function(){function e(e){this.target=e}return e.prototype.registerOnValidatorChange=function(e){r(this,"registerOnValidatorChange",e,"__simulateValidatorChange")},e.prototype.validate=function(e){if(this.instance&&this.instance.validate){var t=this.instance.validate(e);return void 0===t?Promise.resolve(null):t}return Promise.resolve(null)},e}();t.MockAsyncValidatorProxy=a},5980:function(e,t,r){var n,o=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LegacyControlValueAccessor=void 0;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.prototype.__simulateChange=function(){},t.prototype.__simulateTouch=function(){},t.prototype.__simulateValidatorChange=function(){},t}(r(1946).Mock);t.LegacyControlValueAccessor=a},1946:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0&&((o=(0,c.default)(e._providers||(null===(n=e._compiler)||void 0===n?void 0:n.providers)).touches)||(o=new Set,t.providers=t.providers||[],t.providers.push({provide:O.NG_MOCKS_TOUCHES,useValue:o})),T(t,o)),o}(Y,K,J.touches);return Z&&v.ngMocks.flushTestBed(),ee&&function(e){var t,r;try{for(var i=o((0,b.mapEntries)(e)),l=i.next();!l.done;l=i.next()){var u=a(l.value,2),c=u[0],d=a(u[1],2),s=d[0],v=d[1];f.TestBed.ngMocksOverrides.set(c,n(n({},v),{override:s})),N(c,s)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}}(ee),!te||Y._instantiated||Y._testModuleRef||function(e,t){var r,n;if(f.TestBed.ngMocksOverrides){var i=C.default.touches;C.default.touches=t;try{for(var l=o((0,b.flatten)(e.ngModule||[])),u=l.next();!u.done;u=l.next()){var c=u.value;E(c)}}catch(e){r={error:e}}finally{try{u&&!u.done&&(n=l.return)&&n.call(l)}finally{if(r)throw r.error}}!function(e){var t,r;try{for(var n=o((0,b.mapEntries)(C.default.getDefaults())),i=n.next();!i.done;i=n.next()){var l=a(i.value,2),u=l[0];"mock"===a(l[1],1)[0]&&((0,S.isNgDef)(u,"i")||(0,S.isNgDef)(u,"t"))&&(e.has(u)||f.TestBed.ngMocksOverrides.has(u)||A(u,e))}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(t)throw t.error}}}(t),C.default.touches=i}}(Y,te),e.call(t,K)}},I=function(e,t){return function(){return C.default.global.delete("builder:config"),C.default.global.delete("builder:module"),f.TestBed.ngMocksSelectors=void 0,function(e){var t,r,n;if(null===(n=e.ngMocksOverrides)||void 0===n?void 0:n.size){v.ngMocks.flushTestBed();try{for(var i=o((0,b.mapEntries)(e.ngMocksOverrides)),l=i.next();!l.done;l=i.next()){var u=a(l.value,2),f=u[0],c=u[1];N(f,c)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}}e.ngMocksOverrides=void 0}(f.TestBed),e.call(t)}},V=function(e){if(!u.ViewContainerRef.ngMocksOverridesPatched&&((0,g.default)(u.ViewContainerRef,"ngMocksOverridesPatched",!0),e.createComponent)){var t=e.createComponent,r=(0,y.default)(t,void 0,void 0,(function(e){for(var r,n=[],o=1;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var u=l(r(8073)),f={id:{},level:"root"},c=u.default.global.get("reporter-stack")||[a({},f)];u.default.global.set("reporter-stack",c);var d=null!==(n=u.default.global.get("reporter-stack-push"))&&void 0!==n?n:[];u.default.global.set("reporter-stack-push",d);var s=null!==(o=u.default.global.get("reporter-stack-pop"))&&void 0!==o?o:[];u.default.global.set("reporter-stack-pop",s),t.default={current:function(){return c[c.length-1]},stackPop:function(){var e,t,r=c.pop();if(0===c.length&&c.push("root"===(null==r?void 0:r.level)?r:a({},f)),r&&"root"!==r.level)try{for(var n=i(s),o=n.next();!o.done;o=n.next())(0,o.value)(r,c)}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}u.default.global.set("reporter-stack-id",c[c.length-1].id)},stackPush:function(){var e,t,r={};u.default.global.set("reporter-stack-id",r);var n={id:r,level:"runtime"};c.push(n);try{for(var o=i(d),a=o.next();!a.done;a=o.next())(0,a.value)(n,c)}catch(t){e={error:t}}finally{try{a&&!a.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}},subscribePop:function(e){-1===s.indexOf(e)&&s.push(e)},subscribePush:function(e){d.indexOf(e)&&d.push(e),c.length>0&&e(c[c.length-1],c)},unsubscribePop:function(e){var t=s.indexOf(e);-1!==t&&s.splice(t,1)},unsubscribePush:function(e){var t=d.indexOf(e);-1!==t&&d.splice(t,1)}}},8073:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3295)),i=o(r(1102)),l=o(r(2970)),u=function(e){return function(){return f.global.has(e)||f.global.set(e,new Map),f.global.get(e)}};(0,i.default)().ngMocksUniverse=(0,i.default)().ngMocksUniverse||{};var f=(0,i.default)().ngMocksUniverse;f.builtDeclarations=new Map,f.builtProviders=new Map,f.cacheDeclarations=new Map,f.cacheProviders=new Map,f.config=new Map,f.configInstance=new Map,f.flags=new Set(a.default.flags),f.global=new Map,f.touches=new Set,f.global.set("flags",{onMockBuilderMissingDependency:a.default.onMockBuilderMissingDependency,onMockInstanceRestoreNeed:a.default.onMockInstanceRestoreNeed,onTestBedFlushNeed:a.default.onTestBedFlushNeed}),f.getOverrides=u("overrides"),f.getDefaults=u("defaults"),f.getConfigMock=u("configMock");var c=function(e){var t;return(t=f.getDefaults().get(e))||(t="function"==typeof e?f.getDefaults().get("@".concat((0,l.default)(e))):void 0)?t:[]};f.getResolution=function(e){var t=f.config.get("ngMocksDepsResolution");return(null==t?void 0:t.has(e))?t.get(e):n(c(e),1)[0]},f.getBuildDeclaration=function(e){if(f.builtDeclarations.has(e))return f.builtDeclarations.get(e);var t=n(c(e),2),r=t[0],o=t[1];return"exclude"===r?null:r&&"keep"!==r?"replace"===r?o:void 0:e},f.hasBuildDeclaration=function(e){if(f.builtDeclarations.has(e))return void 0!==f.builtDeclarations.get(e);var t=n(c(e),1)[0];return!!t&&"mock"!==t};var d=function(e){return f.hasBuildDeclaration(e)},s=function(e){return f.getBuildDeclaration(e)};f.isExcludedDef=function(e){var t=f.getResolution(e);return(!t||"exclude"===t)&&d(e)&&null===s(e)},f.isProvidedDef=function(e){return d(e)&&null!==s(e)},f.getDefaults().set("@StoreDevtoolsModule",["exclude"]),f.indexValue=0,f.index=function(){return f.indexValue++},t.default=f},4117:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6456),a=r(1763);t.default=function(e){var t,r,i,l,u;try{for(var f=n((0,o.flatten)(e||[])),c=f.next();!c.done;c=f.next()){var d=c.value;"object"==typeof d&&(d.provide===a.NG_MOCKS&&(i=d.useValue),d.provide===a.NG_MOCKS_OVERRIDES&&(l=d.useValue),d.provide===a.NG_MOCKS_TOUCHES&&(u=d.useValue))}}catch(e){t={error:e}}finally{try{c&&!c.done&&(r=f.return)&&r.call(f)}finally{if(t)throw t.error}}return{mocks:i,overrides:l,touches:u}}},9539:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockBuilderStash=void 0;var a=o(r(3295)),i=o(r(8073)),l=function(){function e(){this.data={}}return e.prototype.backup=function(){this.data={builtDeclarations:i.default.builtDeclarations,builtProviders:i.default.builtProviders,cacheDeclarations:i.default.cacheDeclarations,cacheProviders:i.default.cacheProviders,config:i.default.config,configInstance:i.default.configInstance,flags:i.default.flags,touches:i.default.touches},i.default.builtDeclarations=new Map,i.default.builtProviders=new Map,i.default.cacheDeclarations=new Map,i.default.cacheProviders=new Map,i.default.config=new Map,i.default.configInstance=new Map,i.default.flags=new Set(a.default.flags),i.default.touches=new Set},e.prototype.restore=function(){var e,t;try{for(var r=n(Object.keys(this.data)),o=r.next();!o.done;o=r.next()){var a=o.value;i.default[a]=this.data[a]}}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=r.return)&&t.call(r)}finally{if(e)throw e.error}}},e}();t.MockBuilderStash=l},9755:function(e,t,r){var n,o=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),a=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{u(n.next(e))}catch(e){a(e)}}function l(e){try{u(n.throw(e))}catch(e){a(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,l)}u((n=n.apply(e,t||[])).next())}))},i=this&&this.__generator||function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(l){return function(u){return function(l){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==l[0]&&2!==l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockBuilderPerformance=void 0;var f=r(2603),c=r(6456),d=u(r(8073)),s=r(9620),v=u(r(2739)),p=u(r(9049)),h=u(r(7570)),y=u(r(1271)),_=u(r(5633)),g=u(r(4503)),b=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.prototype.build=function(){var t=d.default.global;if(t.has("builder:module")&&t.has("builder:config")&&this.equalsTo(t.get("builder:config")))return(0,g.default)(t.get("builder:module"));t.has("builder:module")&&t.delete(t.get("builder:module"));var r=this.cloneConfig(),n=e.prototype.build.call(this);return t.set("builder:config",r),t.set("builder:module",n),(0,g.default)(n)},t.prototype.then=function(t,r){return a(this,void 0,Promise,(function(){var n,o;return i(this,(function(a){return(n=d.default.global).has("bullet")&&n.has("builder:module")&&n.has("builder:config")&&this.equalsTo(n.get("builder:config"))?[2,n.get(n.get("builder:module")).then(t,r)]:(n.has("bullet")&&n.has("bullet:reset")&&(console.warn("ngMocks.faster has zero effect due to changes in testing module between runs"),n.delete("bullet"),f.TestBed.resetTestingModule(),n.set("bullet",!0)),o=e.prototype.then.call(this,t,r),n.set(n.get("builder:module"),o),[2,o])}))}))},t.prototype.cloneConfig=function(){var e=(0,_.default)();return(0,c.mapValues)(this.beforeCC,e.beforeCC),(0,c.mapValues)(this.excludeDef,e.excludeDef),(0,c.mapValues)(this.keepDef,e.keepDef),(0,c.mapValues)(this.mockDef,e.mockDef),(0,c.mapValues)(this.replaceDef,e.replaceDef),(0,c.mapEntries)(this.configDef,e.configDef),(0,c.mapEntries)(this.defProviders,e.defProviders),(0,c.mapEntries)(this.defValue,e.defValue),(0,c.mapEntries)(this.providerDef,e.providerDef),e},t.prototype.equalsTo=function(e){var t,r,n,o,a,i;try{for(var u=l(["beforeCC","keepDef","replaceDef","excludeDef","mockDef"]),f=u.next();!f.done;f=u.next()){var c=f.value;if(!(0,y.default)(this[c],e[c]))return!1}}catch(e){t={error:e}}finally{try{f&&!f.done&&(r=u.return)&&r.call(u)}finally{if(t)throw t.error}}try{for(var d=l(["defValue"]),s=d.next();!s.done;s=d.next())if(c=s.value,!(0,p.default)(this[c],e[c]))return!1}catch(e){n={error:e}}finally{try{s&&!s.done&&(o=d.return)&&o.call(d)}finally{if(n)throw n.error}}try{for(var _=l(["providerDef","defProviders"]),g=_.next();!g.done;g=_.next())if(c=g.value,!(0,p.default)(this[c],e[c],h.default))return!1}catch(e){a={error:e}}finally{try{g&&!g.done&&(i=_.return)&&i.call(_)}finally{if(a)throw a.error}}return(0,p.default)(this.configDef,e.configDef,v.default)},t}(s.MockBuilderPromise);t.MockBuilderPerformance=b},9620:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{u(n.next(e))}catch(e){a(e)}}function l(e){try{u(n.throw(e))}catch(e){a(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,l)}u((n=n.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var r,n,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(l){return function(u){return function(l){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==l[0]&&2!==l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockBuilderPromise=void 0;var f=r(2603),c=u(r(5551)),d=r(6456),s=u(r(2970)),v=r(5974),p=r(3659),h=u(r(8073)),y=r(3771),_=r(9539),g=u(r(7140)),b=u(r(1649)),m=u(r(4387)),M=u(r(1267)),k=u(r(9961)),w=u(r(7703)),O=u(r(5195)),x=u(r(1391)),j=u(r(7235)),D=u(r(8792)),S=u(r(9102)),P=function(e){return(0,p.isNgModuleDefWithProviders)(e)?{def:e.ngModule,providers:e.providers}:{def:e,providers:void 0}},C=function(e,t,r){return r?i(i([],a(Array.isArray(t)?t:[]),!1),[e],!1):e},N={},T=function(){function e(e){this.configDefault=e,this.beforeCC=new Set,this.configDef=new Map,this.defProviders=new Map,this.defValue=new Map,this.excludeDef=new Set,this.keepDef=new Set,this.mockDef=new Set,this.providerDef=new Map,this.replaceDef=new Set,this.stash=new _.MockBuilderStash,"undefined"!=typeof Symbol&&(this[Symbol.toStringTag]="Promise")}return e.prototype.beforeCompileComponents=function(e){return this.beforeCC.add(e),this},e.prototype.build=function(){this.stash.backup();var e=new c.default;h.default.config.set("mockNgDefResolver",e),h.default.flags.add("hasRootModule");try{var t=this.combineParams(),r=(0,x.default)(t,(0,j.default)(t));return(0,g.default)(r,t,e),(0,O.default)(r,t,e),(0,w.default)(r),(0,b.default)(),r.providers.push((0,M.default)(),(0,k.default)(),(0,m.default)(this.replaceDef,this.defValue),y.MockBuilder),r}finally{h.default.flags.delete("hasRootModule"),h.default.config.delete("mockNgDefResolver"),this.stash.restore()}},e.prototype.catch=function(e){return n(this,void 0,Promise,(function(){return o(this,(function(t){return[2,this.then().catch(e)]}))}))},e.prototype.exclude=function(e){return this.wipe(e),this.excludeDef.add(e),this.setConfigDef(e),this},e.prototype.finally=function(e){return n(this,void 0,Promise,(function(){return o(this,(function(t){return[2,this.then().finally(e)]}))}))},e.prototype.keep=function(e,t){var r=P(e),n=r.def,o=r.providers,l=this.keepDef.has(n)?this.defProviders.get(n):[];return this.wipe(n),this.keepDef.add(n),o&&this.defProviders.set(n,i(i([],a(l||[]),!1),a(o),!1)),this.setConfigDef(n,t),this},e.prototype.mock=function(e,t,r){void 0===t&&(t=N);var n=P(e),o=n.def,l=n.providers,u=(0,D.default)(o,t,r,N),f=u.config,c=u.mock;if((0,v.isNgDef)(c)&&(0,v.isNgDef)(e)&&!(0,v.isNgDef)(e,"t"))throw new Error(["MockBuilder.mock(".concat((0,s.default)(e),") received a class when its shape is expected."),"Please try ngMocks.defaultMock instead."].join(" "));var d=this.mockDef.has(o)?this.defProviders.get(o):[];return this.wipe(o),this.mockDef.add(o),l&&this.defProviders.set(o,i(i([],a(d||[]),!1),a(l),!1)),this.setDefValue(o,c),this.setConfigDef(o,f),this},e.prototype.provide=function(e){var t,r;try{for(var n=l((0,d.flatten)(e)),o=n.next();!o.done;o=n.next()){var a=o.value,i=(0,S.default)(a),u=i.provide,f=i.multi,c=this.providerDef.has(u)?this.providerDef.get(u):[];this.providerDef.set(u,C(a,c,f))}}catch(e){t={error:e}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(t)throw t.error}}return this},e.prototype.replace=function(e,t,r){if(!(0,v.isNgDef)(t)||!(0,v.isNgDef)(e)||(0,v.isNgDef)(t,"i")||(0,v.isNgDef)(e,"i"))throw new Error("Cannot replace the declaration, both have to be a Module, a Component, a Directive or a Pipe, for Providers use `.mock` or `.provide`");return this.wipe(e),this.replaceDef.add(e),this.defValue.set(e,t),this.setConfigDef(e,r),this},e.prototype.then=function(e,t){return n(this,void 0,Promise,(function(){var r,n=this;return o(this,(function(o){return r=new Promise((function(e){var t,r,o=f.TestBed.configureTestingModule(n.build());try{for(var a=l((0,d.mapValues)(n.beforeCC)),i=a.next();!i.done;i=a.next())(0,i.value)(o)}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}o.compileComponents().then((function(){e({testBed:o})}))})),[2,r.then(e,t)]}))}))},e.prototype.combineParams=function(){return{configDef:this.configDef,configDefault:this.configDefault,defProviders:this.defProviders,defValue:this.defValue,excludeDef:this.excludeDef,keepDef:this.keepDef,mockDef:this.mockDef,providerDef:this.providerDef,replaceDef:this.replaceDef}},e.prototype.setConfigDef=function(e,t){!t&&this.configDef.has(e)||this.configDef.set(e,null!=t?t:this.configDefault)},e.prototype.setDefValue=function(e,t){t===N?this.defValue.delete(e):this.defValue.set(e,t)},e.prototype.wipe=function(e){this.defProviders.delete(e),this.defValue.delete(e),this.excludeDef.delete(e),this.keepDef.delete(e),this.mockDef.delete(e),this.providerDef.delete(e),this.replaceDef.delete(e)},e}();t.MockBuilderPromise=T},3771:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockBuilder=s;var i=a(r(3174)),l=r(6456),u=r(6580),f=a(r(8073)),c=a(r(5020)),d=r(9755);function s(){for(var e,t,r,a,s,v,p=[],h=0;h=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6456);t.default=function(e,t,r){var a,i;if(void 0===r&&(r=function(e,t){return e===t}),!t||t.size!==e.size)return!1;try{for(var l=n((0,o.mapKeys)(e)),u=l.next();!u.done;u=l.next()){var f=u.value;if(!t.has(f))return!1;if(!r(t.get(f),e.get(f)))return!1}}catch(e){a={error:e}}finally{try{u&&!u.done&&(i=l.return)&&i.call(l)}finally{if(a)throw a.error}}return!0}},7570:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=function(e,t){for(var r,o,a=[],i=2;i=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6456);t.default=function(e,t){var r,a;if(!t||t.size!==e.size)return!1;try{for(var i=n((0,o.mapValues)(e)),l=i.next();!l.done;l=i.next()){var u=l.value;if(!t.has(u))return!1}}catch(e){r={error:e}}finally{try{l&&!l.done&&(a=i.return)&&a.call(i)}finally{if(r)throw r.error}}return!0}},2801:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(5432));t.default=function(e,t){return!(!(0,a.default)(t,e)||"object"==typeof t&&"object"==typeof e&&function(e,t){var r,o;if(Object.keys(e).length!==Object.keys(t).length)return!0;try{for(var i=n(Object.keys(e)),l=i.next();!l.done;l=i.next()){var u=l.value;if(!(0,a.default)(e[u],t[u]))return!0}}catch(e){r={error:e}}finally{try{l&&!l.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return!1}(t,e))}},5432:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(9382));t.default=function(e,t){return e===t||("boolean"!=typeof e&&"boolean"!=typeof t||e===t)&&e.$implicit===t.$implicit&&(0,o.default)(e.variables,t.variables)}},9382:function(e,t){var r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return e===t||!(e&&!t||!e&&t)&&!function(e,t){var n,o,a=Object.keys(e),i=Object.keys(t);if(a.length!==i.length)return!0;try{for(var l=r(a),u=l.next();!u.done;u=l.next()){var f=u.value;if(e[f]!==t[f])return!0}}catch(e){n={error:e}}finally{try{u&&!u.done&&(o=l.return)&&o.call(l)}finally{if(n)throw n.error}}return!1}(e,t)}},5633:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return{beforeCC:new Set,configDef:new Map,defProviders:new Map,defValue:new Map,excludeDef:new Set,keepDef:new Set,mockDef:new Set,providerDef:new Map,replaceDef:new Set}}},4503:function(e,t){var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8911)),l=o(r(6297)),u=o(r(8073)),f=o(r(3663));t.default=function(e,t,r){var o,c,d,s,v,p,h=t.providerDef,y=t.mockDef;try{for(var _=n((0,a.mapValues)(h)),g=_.next();!g.done;g=_.next()){var b=g.value;e.providers.push(b)}}catch(e){o={error:e}}finally{try{g&&!g.done&&(c=_.return)&&c.call(_)}finally{if(o)throw o.error}}try{for(var m=n((0,a.flatten)(e.providers)),M=m.next();!M.done;M=m.next()){b=M.value;var k=(0,l.default)(b);u.default.touches.add(k),k!==b&&b.deps&&(0,a.extractDependency)(b.deps,u.default.config.get("ngMocksDeps"))}}catch(e){d={error:e}}finally{try{M&&!M.done&&(s=m.return)&&s.call(m)}finally{if(d)throw d.error}}try{for(var w=n((0,a.mapValues)(y)),O=w.next();!O.done;O=w.next()){var x=O.value;u.default.touches.has(x)||"root"!==(0,i.default)(x)||(e.providers.push((0,f.default)(x,r)),u.default.touches.add(x))}}catch(e){v={error:e}}finally{try{O&&!O.done&&(p=w.return)&&p.call(w)}finally{if(v)throw v.error}}}},1649:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(2603),i=r(6456),l=o(r(6297)),u=o(r(8073));t.default=function(){var e,t,r=(0,a.getTestBed)();if(r.ngModule)try{for(var o=n((0,i.flatten)(r.ngModule)),f=o.next();!f.done;f=o.next()){var c=f.value;u.default.touches.add((0,l.default)(c))}}catch(t){e={error:t}}finally{try{f&&!f.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}}},646:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r){"function"==typeof e&&-1===r.indexOf(e)&&(r.push(e),t.push(e))}},4387:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(1381)),l=r(1763),u=o(r(8073)),f=o(r(5884)),c=o(r(4483));t.default=function(e,t){var r,o,d,s,v=new Map;try{for(var p=n((0,a.mapValues)(u.default.touches)),h=p.next();!h.done;h=p.next()){var y=h.value,_=u.default.getBuildDeclaration(y)||y;if(!(0,c.default)(e,t,y,_)){var g=(0,i.default)(_),b=(0,f.default)(g);if(b){var m={};try{for(var M=(d=void 0,n(Object.keys(b))),k=M.next();!k.done;k=M.next()){var w=k.value;m[w]=g[w]}}catch(e){d={error:e}}finally{try{k&&!k.done&&(s=M.return)&&s.call(M)}finally{if(d)throw d.error}}v.set(_,[{set:b},{set:m}])}}}}catch(e){r={error:e}}finally{try{h&&!h.done&&(o=p.return)&&o.call(p)}finally{if(r)throw r.error}}return{provide:l.NG_MOCKS_OVERRIDES,useValue:v}}},1267:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(6456),u=r(1763),f=i(r(8073));t.default=function(){var e,t,r=new Map;try{for(var i=a(o(o(o(o([],n((0,l.mapEntries)(f.default.builtProviders)),!1),n((0,l.mapEntries)(f.default.builtDeclarations)),!1),n((0,l.mapEntries)(f.default.cacheDeclarations)),!1),n((0,l.mapEntries)(f.default.cacheProviders)),!1)),c=i.next();!c.done;c=i.next()){var d=n(c.value,2),s=d[0],v=d[1];r.has(s)||r.set(s,v)}}catch(t){e={error:t}}finally{try{c&&!c.done&&(t=i.return)&&t.call(i)}finally{if(e)throw e.error}}return{provide:u.NG_MOCKS,useValue:r}}},9961:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=r(1763),l=o(r(8073));t.default=function(){var e,t,r=new Set;try{for(var o=n((0,a.mapValues)(l.default.touches)),u=o.next();!u.done;u=o.next()){var f=u.value,c=l.default.getBuildDeclaration(f);void 0===c&&(c=f),r.add(f),r.add(c)}}catch(t){e={error:t}}finally{try{u&&!u.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}return{provide:i.NG_MOCKS_TOUCHES,useValue:r}}},8608:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(7285));t.default=function(e){var t,r;if(e){var o;try{for(var i=n(e),l=i.next();!l.done;l=i.next()){var u=l.value;u&&"object"==typeof u&&u.token&&(o=u.token),o||!u||"object"==typeof u&&u.ngMetadataName||(o=u)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}return(0,a.default)(o)}}},5884:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8073)),i=o(r(224));t.default=function(e){if(e){var t=a.default.flags.has("skipMock");t||a.default.flags.add("skipMock");var r=n((0,i.default)(e),2),o=r[0],l=r[1];if(t||a.default.flags.delete("skipMock"),o)return l}}},8703:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8749)),i=r(1763),l=o(r(8073)),u=o(r(2504)),f=o(r(646)),c=o(r(8608)),d=o(r(1978)),s=o(r(7213)),v=o(r(4995));t.default=function(e){var t,r,o,p,h,y,_=new Set,g=(0,d.default)(),b=g.buckets,m=g.touched;try{for(var M=n(b),k=M.next();!k.done;k=M.next()){var w=k.value;try{for(var O=(o=void 0,n(w)),x=O.next();!x.done;x=O.next()){var j=x.value;(0,u.default)(_,e,j);try{for(var D=(h=void 0,n((0,a.default)(j))),S=D.next();!S.done;S=D.next()){var P=S.value,C=(0,c.default)(P);(0,s.default)(C),(0,v.default)(C)||((0,f.default)(C,m,w),e.has(i.NG_MOCKS_ROOT_PROVIDERS)||!l.default.config.get("ngMocksDepsSkip").has(j)?_.add(C):l.default.config.get("ngMocksDepsSkip").add(C))}}catch(e){h={error:e}}finally{try{S&&!S.done&&(y=D.return)&&y.call(D)}finally{if(h)throw h.error}}}}catch(e){o={error:e}}finally{try{x&&!x.done&&(p=O.return)&&p.call(O)}finally{if(o)throw o.error}}}}catch(e){t={error:e}}finally{try{k&&!k.done&&(r=M.return)&&r.call(M)}finally{if(t)throw t.error}}return _}},1978:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(860),u=i(r(3174)),f=r(6456),c=r(1763),d=r(5974),s=i(r(1365)),v=function(e,t){if(t){var r=t.resolveComponentFactory;t.resolveComponentFactory=(0,s.default)(r,void 0,void 0,(function(a){for(var i,l=[],u=1;u=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=r(1763),l=r(4152),u=o(r(8073)),f=o(r(3663)),c=o(r(9465)),d=o(r(8703));t.default=function(e,t,r){var o,s,v=t.keepDef,p=t.mockDef,h=v.has(i.NG_MOCKS_ROOT_PROVIDERS)?new Set:(0,d.default)(p);if(h.size>0){var y=function(t){var n=(0,f.default)(t,r);if(n)e.providers.push(n);else if((0,l.isNgInjectionToken)(t)){var o=u.default.config.has("ngMocksMulti")&&u.default.config.get("ngMocksMulti").has(t);e.providers.push((0,c.default)(t,(function(){return o?[]:void 0})))}};try{for(var _=n((0,a.mapValues)(h)),g=_.next();!g.done;g=_.next())y(g.value)}catch(e){o={error:e}}finally{try{g&&!g.done&&(s=_.return)&&s.call(_)}finally{if(o)throw o.error}}}}},2710:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073));t.default=function(e){var t,r,o=i.default.builtDeclarations,l=i.default.builtProviders,u=i.default.config.get("ngMocksDepsResolution");try{for(var f=n((0,a.mapValues)(e)),c=f.next();!c.done;c=f.next()){var d=c.value;o.set(d,null),l.set(d,null),u.set(d,"exclude")}}catch(e){t={error:e}}finally{try{c&&!c.done&&(r=f.return)&&r.call(f)}finally{if(t)throw t.error}}}},7651:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=r(5204),l=o(r(8073));t.default=function(e,t){var r,o,u=new Set,f=l.default.builtDeclarations,c=l.default.builtProviders,d=l.default.config.get("ngMocksDepsResolution");try{for(var s=n((0,a.mapValues)(e)),v=s.next();!v.done;v=s.next()){var p=v.value;f.set(p,p),c.set(p,p),d.set(p,"keep"),t.get(p).shallow&&(0,i.funcExtractDeps)(p,u)}}catch(e){r={error:e}}finally{try{v&&!v.done&&(o=s.return)&&o.call(s)}finally{if(r)throw r.error}}return u}},102:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073)),l=o(r(4161));t.default=function(e,t){var r,o,u=i.default.builtDeclarations,f=i.default.config.get("ngMocksDepsResolution");try{for(var c=n((0,a.mapValues)(e)),d=c.next();!d.done;d=c.next()){var s=d.value,v=!i.default.touches.has(s);f.set(s,"mock"),u.set(s,void 0),(0,l.default)(s,t),v&&i.default.touches.delete(s)}}catch(e){r={error:e}}finally{try{d&&!d.done&&(o=c.return)&&o.call(c)}finally{if(r)throw r.error}}}},3680:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8073));t.default=function(e,t){var r,n=null!==(r=o.default.config.get("mockNgDefResolver").get(e))&&void 0!==r?r:o.default.getBuildDeclaration(e),a=t.has(e)?t.get(e):void 0;return a?{ngModule:n,providers:a}:n}},1159:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(6456),u=r(5974),f=i(r(8073)),c=r(3821),d=i(r(224)),s=i(r(4673)),v=i(r(8150));t.default=function(e,t,r,i){var p,h,y,_,g,b,m,M,k,w=new Map;try{for(var O=a(o(o(o([],n((0,l.mapValues)(e)),!1),n((0,l.mapValues)(t)),!1),n((0,l.mapValues)(r)),!1)),x=O.next();!x.done;x=O.next()){var j=x.value,D=(0,s.default)(j),S=o(o(o([],n(null!==(g=i.get(j))&&void 0!==g?g:[]),!1),n(null!==(m=null===(b=D.Component)||void 0===b?void 0:b.providers)&&void 0!==m?m:[]),!1),n(null!==(k=null===(M=D.Directive)||void 0===M?void 0:M.providers)&&void 0!==k?k:[]),!1),P=!f.default.touches.has(j);t.has(j)||f.default.flags.add("skipMock");var C=(0,u.isNgDef)(j,"m");if(S.length>0){var N=n((0,d.default)({providers:S,skipMarkProviders:!C,skipExports:!0}),2)[1];w.set(j,N.providers)}C&&f.default.builtDeclarations.set(j,(0,c.MockModule)(j)),f.default.flags.delete("skipMock"),P&&f.default.touches.delete(j)}}catch(e){p={error:e}}finally{try{x&&!x.done&&(h=O.return)&&h.call(O)}finally{if(p)throw p.error}}try{for(var T=a((0,l.mapValues)(t)),E=T.next();!E.done;E=T.next())j=E.value,(0,v.default)(j)}catch(e){y={error:e}}finally{try{E&&!E.done&&(_=T.return)&&_.call(T)}finally{if(y)throw y.error}}return w}},1391:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073));t.default=function(e,t){var r,o,l=i.default.builtDeclarations,u=i.default.config.get("ngMocksDepsResolution");try{for(var f=n((0,a.mapValues)(e)),c=f.next();!c.done;c=f.next()){var d=c.value;l.set(d,t.get(d)),u.set(d,"replace")}}catch(e){r={error:e}}finally{try{c&&!c.done&&(o=f.return)&&o.call(f)}finally{if(r)throw r.error}}}},7235:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(6456),u=r(5204),f=i(r(8073)),c=i(r(2710)),d=i(r(7651)),s=i(r(102)),v=i(r(1159)),p=i(r(8500));t.default=function(e){var t,r,i,h,y,_,g,b,m,M,k,w,O=e.configDef,x=e.defProviders,j=e.defValue,D=e.excludeDef,S=e.keepDef,P=e.mockDef,C=e.replaceDef;f.default.flags.add("cachePipe"),f.default.config.set("ngMocksMulti",new Set),f.default.config.set("ngMocksDeps",new Set),f.default.config.set("ngMocksDepsSkip",new Set),f.default.config.set("ngMocksDepsResolution",new Map);var N=(0,d.default)(S,O);try{for(var T=o((0,l.mapValues)(N)),E=T.next();!E.done;E=T.next()){var A=E.value;f.default.touches.add(A)}}catch(e){t={error:e}}finally{try{E&&!E.done&&(r=T.return)&&r.call(T)}finally{if(t)throw t.error}}try{for(var R=o((0,l.mapValues)(S)),I=R.next();!I.done;I=R.next())A=I.value,N.add(A),(0,u.funcExtractDeps)(A,N,!0)}catch(e){i={error:e}}finally{try{I&&!I.done&&(h=R.return)&&h.call(R)}finally{if(i)throw i.error}}try{for(var V=o((0,l.mapValues)(P)),B=V.next();!B.done;B=V.next())A=B.value,N.add(A),(0,u.funcExtractDeps)(A,N,!0)}catch(e){y={error:e}}finally{try{B&&!B.done&&(_=V.return)&&_.call(V)}finally{if(y)throw y.error}}try{for(var F=o((0,l.mapValues)(C)),L=F.next();!L.done;L=F.next())A=L.value,N.add(A),(0,u.funcExtractDeps)(A,N,!0)}catch(e){g={error:e}}finally{try{L&&!L.done&&(b=F.return)&&b.call(F)}finally{if(g)throw g.error}}try{for(var K=o((0,l.mapValues)(N)),G=K.next();!G.done;G=K.next())if(A=G.value,!O.has(A)){var q=f.default.getResolution(A);"replace"===q?(C.add(A),j.set(A,f.default.getBuildDeclaration(A))):"keep"===q?S.add(A):"exclude"===q?D.add(A):("mock"===q||f.default.touches.has(A))&&P.add(A),O.set(A,f.default.touches.has(A)?{dependency:!0,__internal:!0}:{})}}catch(e){m={error:e}}finally{try{G&&!G.done&&(M=K.return)&&M.call(K)}finally{if(m)throw m.error}}try{for(var U=o((0,l.mapEntries)(O)),z=U.next();!z.done;z=U.next()){var W=a(z.value,2),H=W[0],$=W[1];f.default.config.set(H,n(n(n({},f.default.getConfigMock().get(H)),$),{defValue:j.get(H)}))}}catch(e){k={error:e}}finally{try{z&&!z.done&&(w=U.return)&&w.call(U)}finally{if(k)throw k.error}}return(0,p.default)(C,j),(0,c.default)(D),(0,s.default)(P,j),(0,v.default)(S,P,C,x)}},8792:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(5974);t.default=function(e,t,r,o){var a=e===t?o:t,i=null!=r?r:t!==o&&"object"==typeof t?t:void 0;return(0,n.isNgDef)(e,"p")&&"function"==typeof t&&t!==e&&!(0,n.isNgDef)(t,"p")?(a={transform:t},i=r):!(0,n.isNgDef)(e,"i")&&(0,n.isNgDef)(e)||(i=r),{config:i,mock:a=a===i?o:a}}},9102:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6297));t.default=function(e){var t=(0,o.default)(e);return{multi:t!==e&&e.multi,provide:t}}},70:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(4358),a=n(r(3295)),i=n(r(8911)),l=r(4152),u=n(r(8073));t.default=function(e){if(function(e){if(!e||e===o.DOCUMENT||u.default.touches.has(e))return!0;var t=function(e){var t=u.default.getResolution(e);return"keep"===t||"exclude"===t||"mock"!==t&&void 0}(e);return void 0!==t?t:"function"==typeof e&&-1!==a.default.neverMockProvidedFunction.indexOf(e.name)||!(!(0,l.isNgInjectionToken)(e)||-1===a.default.neverMockToken.indexOf(e.toString()))}(e))return!0;var t=(0,i.default)(e);return!("function"!=typeof e||t&&"platform"!==t)}},4483:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8073));t.default=function(e,t,r,n){return!!o.default.cacheDeclarations.has(n)||!(!e.has(r)||n!==t.get(r))}},4995:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8073)),a=n(r(70));t.default=function(e){return!!(0,a.default)(e)||o.default.config.get("ngMocksDepsSkip").has(e)}},8150:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(5974),a=n(r(8073)),i=r(5395),l=r(8339),u=r(2937);t.default=function(e){void 0===a.default.builtDeclarations.get(e)&&((0,o.isNgDef)(e,"c")&&a.default.builtDeclarations.set(e,(0,i.MockComponent)(e)),(0,o.isNgDef)(e,"d")&&a.default.builtDeclarations.set(e,(0,l.MockDirective)(e)),(0,o.isNgDef)(e,"p")&&a.default.builtDeclarations.set(e,(0,u.MockPipe)(e)))}},4161:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(5974),a=n(r(8073)),i=n(r(8195)),l=n(r(9465)),u=n(r(2415));t.default=function(e,t){if((0,o.isNgDef)(e,"i")&&t.has(e)){var r=a.default.config.get(e),n=t.get(e);a.default.builtProviders.set(e,(0,l.default)(e,void 0,(function(e){return function(e,t,r){return r.precise?t:(0,i.default)(e,t)}(e,n,r)})))}else(0,o.isNgDef)(e,"i")&&a.default.builtProviders.set(e,(0,u.default)(e,!0));if(!(0,o.isNgDef)(e)&&t.has(e)){var f=t.get(e);a.default.builtProviders.set(e,(0,l.default)(e,void 0,(function(){return f})))}else(0,o.isNgDef)(e)||a.default.builtProviders.set(e,(0,u.default)(e,!0))}},2938:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},5395:function(e,t,r){var n,o=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),a=this&&this.__assign||function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},l=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockComponents=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var o=r(860),a={read:o.ViewContainerRef,static:!1},i={read:o.TemplateRef,static:!1},l=function(e,t){var r="");return"").concat(r,"")},u=function(e){return!(e.isViewQuery||e.read&&e.read!==o.TemplateRef||"string"!=typeof e.selector&&!e.read)};t.default=function(e){var t,r,f=[""];if(!e)return f.join("");try{for(var c=n(Object.keys(e)),d=c.next();!d.done;d=c.next()){var s=d.value,v=e[s];if(0!==s.indexOf("__mock")&&u(v)){if("string"==typeof v.selector){var p=v.selector.replace(new RegExp("\\W","mg"),"_");e["__vcrIf_key_".concat(p)]=new o.ViewChild("ngIf_key_".concat(p),a),e["__trIf_key_".concat(p)]=new o.ViewChild("ngIf_key_".concat(p),i),e["__mockView_key_".concat(p)]=new o.ViewChild("key_".concat(p),a),e["__mockTpl_key_".concat(p)]=v,f.push(l(p,"key"))}e["__vcrIf_prop_".concat(s)]=new o.ViewChild("ngIf_prop_".concat(s),a),e["__trIf_prop_".concat(s)]=new o.ViewChild("ngIf_prop_".concat(s),i),e["__mockView_prop_".concat(s)]=new o.ViewChild("prop_".concat(s),a),f.push(l(s,"prop"))}}}catch(e){t={error:e}}finally{try{d&&!d.done&&(r=c.return)&&r.call(c)}finally{if(t)throw t.error}}return f.join("")}},8970:function(e,t){var r=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("string"==typeof e)return["key","__mockTpl_key_".concat(e),e,void 0];var t=r(e),n=t[0],o=t.slice(1);return["prop",n,n,o.length>0?o:void 0]}},2350:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},5269:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockDeclarations=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(1184)),l=a(r(6755)),u=a(r(1692));t.default=function(e,t){return function(r){return!!function(e,t,r){for(var n,a,i,l=(null===(n=e.injector._tNode)||void 0===n?void 0:n.attrs)||[],u=2,f=0;f0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(5465)),i=o(r(908));t.default=function(e){return function(t){var r=n((0,i.default)(t),2),o=r[0];return-1!==r[1].indexOf(e)||!!(0,a.default)(o,e)}}},12:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4201)),a=r(6739);t.default=function(e){var t=(0,a.getSourceOfMock)(e);return function(e){return!!e&&-1!==e.providerTokens.indexOf(t)&&void 0!==(0,o.default)(t,e.injector)}}},1863:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return function(t){return!!t.references[e]}}},5494:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(908)),i=o(r(4747));t.default=function(e){return function(t){var r=n((0,a.default)(t),1)[0];return(0,i.default)(r,e)}}},5465:function(e,t){var r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var n,o,a,i;try{for(var l=r(e),u=l.next();!u.done;u=l.next()){var f=u.value.match(/\[([^=\]]+)/g);if(f)try{for(var c=(a=void 0,r(f)),d=c.next();!d.done;d=c.next())if(d.value==="[".concat(t))return!0}catch(e){a={error:e}}finally{try{d&&!d.done&&(i=c.return)&&i.call(c)}finally{if(a)throw a.error}}}}catch(e){n={error:e}}finally{try{u&&!u.done&&(o=l.return)&&o.call(l)}finally{if(n)throw n.error}}return!1}},4476:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8864)),a=n(r(8060)),i=n(r(12)),l=n(r(1863)),u=n(r(5494));t.default=function(e){if(function(e){return Array.isArray(e)&&1===e.length&&"string"==typeof e[0]}(e))return(0,o.default)(e[0]);if(function(e){return Array.isArray(e)&&2===e.length&&"string"==typeof e[0]}(e))return(0,a.default)(e[0],e[1]);if(function(e){return"string"==typeof e&&0===e.indexOf("#")&&e.length>1}(e))return(0,l.default)(e.slice(1));if(function(e){return"string"==typeof e&&0!==e.indexOf("#")&&e.length>0}(e))return(0,u.default)(e);if(function(e){return"function"==typeof e}(e))return(0,i.default)(e);throw new Error("Unknown selector")}},908:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0});var n=new RegExp("\\[.*?\\]","g");t.default=function(e,t){var o,a,i,l;try{for(var u=r(e),f=u.next();!f.done;f=u.next()){var c=f.value.replace(n,"").split(",");try{for(var d=(i=void 0,r(c)),s=d.next();!s.done;s=d.next())if(s.value.trim()===t)return!0}catch(e){i={error:e}}finally{try{s&&!s.done&&(l=d.return)&&l.call(d)}finally{if(i)throw i.error}}}}catch(e){o={error:e}}finally{try{f&&!f.done&&(a=u.return)&&a.call(u)}finally{if(o)throw o.error}}return!1}},3942:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"#text"===e.nativeNode.nodeName}},5079:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return!(!e||!t)&&e===t}},6121:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(3942));t.default=function(e){return(0,o.default)(e)?void 0:e.injector._tNode||e.injector.elDef||void 0}},1061:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=r(860),l=a(r(4201)),u=a(r(6121)),f=function(e,t){var r=function(e,t){if(e!==t&&"#comment"===t.nativeNode.nodeName)return(0,l.default)(i.ViewContainerRef,t.injector)}(e,t);if(!r)return[];for(var n=[],o=0;o0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(590)),i=o(r(5687)),l=o(r(951)),u=o(r(4476)),f=o(r(3942)),c=o(r(6547)),d=o(r(8344));t.default=function(){for(var e=[],t=0;t0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(590)),i=o(r(5687)),l=o(r(951)),u=o(r(4811)),f=o(r(4476)),c=o(r(3942)),d=o(r(6547)),s=o(r(8344)),v={};t.default=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3942)),i=o(r(5079)),l=o(r(6121)),u=o(r(1061));t.default=function(e){var t,r,o,f,c=(0,l.default)(e);if(!c||(0,a.default)(e))return[];var d=void 0!==e.childNodes,s=[];try{for(var v=n(e.childNodes||(null===(o=e.parent)||void 0===o?void 0:o.childNodes)||[]),p=v.next();!p.done;p=v.next()){var h=p.value,y=(0,u.default)(h);(d||(0,i.default)(c,y))&&(y&&!(0,i.default)(c,y)||s.push(h))}}catch(e){t={error:e}}finally{try{p&&!p.done&&(r=v.return)&&r.call(v)}finally{if(t)throw t.error}}if("BODY"===(null===(f=e.parent)||void 0===f?void 0:f.name)){for(var _=e.parent.childNodes,g=_.length,b=0,m=_.length-1;m>=0;m-=1)if("#comment"===(h=_[m]).nativeNode.nodeName)b=m;else if(h.nativeNode===e.nativeNode){g=m+1;break}for(m=g;m=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(5079)),i=o(r(6121)),l=o(r(1061));t.default=function(e,t){var r,o,u;if(t)return t;var f=(0,l.default)(e),c=e.parent?(0,i.default)(e.parent):void 0;if(e.parent&&(0,a.default)(f,c))return e.parent;try{for(var d=n((null===(u=e.parent)||void 0===u?void 0:u.childNodes)||[]),s=d.next();!s.done;s=d.next()){var v=s.value,p=(0,i.default)(v);if((0,a.default)(f,p))return v}}catch(e){r={error:e}}finally{try{s&&!s.done&&(o=d.return)&&o.call(d)}finally{if(r)throw r.error}}}},8732:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3942)),i=o(r(7790)),l=o(r(345)),u=function(e,t,r,o){var f,c;if(void 0===o&&(o=!1),!e)return!1;if(!o&&(0,a.default)(e))return!1;if(r(e,(0,l.default)(e,t)))return!0;try{for(var d=n((0,i.default)(e)),s=d.next();!s.done;s=d.next()){var v=s.value;if(u(v,e,r,o))return!0}}catch(e){f={error:e}}finally{try{s&&!s.done&&(c=d.return)&&c.call(d)}finally{if(f)throw f.error}}return!1};t.default=u},6016:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(2023)),a=n(r(4201)),i=["Cannot find ControlValueAccessor on the element.","If it is a mock input with [formControlName],","you need either to avoid mocking ReactiveFormsModule","or to avoid accessing the control in such a way,","because this tests ReactiveFormsModule instead of own implementation."].join(" ");t.default=function(e){var t=o.default&&(0,a.default)(o.default.NgControl,e.injector),r=null==t?void 0:t.valueAccessor;if(r)return r;var n=o.default&&(0,a.default)(o.default.FormControlDirective,e.injector);if(null==n?void 0:n.form)return n.form;var l=o.default&&(0,a.default)(o.default.NgModel,e.injector);if(l)return l;throw new Error(i)}},2298:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2023)),i=r(7105),l=o(r(5006)),u=o(r(7331)),f=o(r(1991)),c=o(r(590)),d=o(r(5687)),s=o(r(4811)),v=o(r(589)),p=o(r(6016)),h=["onChange","onChangeCallback","onChangeCb","onChangeClb","onChangeFn","_onChange","_onChangeCallback","_onChangeCb","_onChangeClb","_onChangeFn","changeFn","_changeFn","onModelChange","cvaOnChange","cvaOnChangeCallback","cvaOnChangeCb","cvaOnChangeClb","cvaOnChangeFn","_cvaOnChange","_cvaOnChangeCallback","_cvaOnChangeCb","_cvaOnChangeClb","_cvaOnChangeFn"];t.default=function(e,t,r){var o,y,_=(0,c.default)((0,d.default)(),e,void 0);if(!_)throw new Error("Cannot find an element via ngMocks.change(".concat((0,s.default)(e),")"));var g=(0,p.default)(_);if(!function(e,t){return a.default&&e instanceof a.default.AbstractControl?(e.setValue(t),!0):a.default&&e instanceof a.default.NgModel?(e.update.emit(t),!0):!!(0,i.isMockControlValueAccessor)(e.instance)&&(e.instance.__simulateChange(t),!0)}(g,t)&&!function(e){return e.listeners.some((function(e){return"input"===e.name||"change"===e.name}))}(_)){try{for(var b=n(r?[r]:h),m=b.next();!m.done;m=b.next()){var M=m.value;if("function"==typeof g[M])return g.writeValue(t),void g[M](t)}}catch(e){o={error:e}}finally{try{m&&!m.done&&(y=b.return)&&y.call(b)}finally{if(o)throw o.error}}var k=(0,u.default)(g);throw new Error(["Unsupported type of ControlValueAccessor,","please ensure it has '".concat(r||"onChange","' method."),"If it is a 3rd-party library, please provide the correct name of the method in the 'methodName' parameter.","Possible Names: "+k.join(", ")+"."].join(" "))}!function(e,t){(0,f.default)(e,"focus");var r=Object.getOwnPropertyDescriptor(e.nativeElement,"value");(0,v.default)(e.nativeElement,"value",t),(0,f.default)(e,"input"),(0,f.default)(e,"change"),r&&((0,l.default)(e.nativeElement,"value",r),e.nativeElement.value=t),(0,f.default)(e,"blur")}(_,t)}},7655:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2023)),i=r(7105),l=o(r(7331)),u=o(r(1991)),f=o(r(590)),c=o(r(5687)),d=o(r(4811)),s=o(r(6016)),v=["onTouched","onTouchedCallback","onTouchedCb","onTouchedClb","onTouchedFn","_onTouched","_onTouchedCallback","_onTouchedCb","_onTouchedClb","_onTouchedFn","markAsTouched","_markAsTouched","onModelTouched","cvaOnTouch","cvaOnTouchCallback","cvaOnTouchCb","cvaOnTouchClb","cvaOnTouchFn","_cvaOnTouch","_cvaOnTouchCallback","_cvaOnTouchCb","_cvaOnTouchClb","_cvaOnTouchFn"];t.default=function(e,t){var r,o,p=(0,f.default)((0,c.default)(),e,void 0);if(!p)throw new Error("Cannot find an element via ngMocks.touch(".concat((0,d.default)(e),")"));var h=(0,s.default)(p);if(!function(e){return a.default&&e instanceof a.default.AbstractControl?(e.markAsTouched(),!0):!!(0,i.isMockControlValueAccessor)(e.instance)&&(e.instance.__simulateTouch(),!0)}(h)&&!function(e){return e.listeners.some((function(e){return"focus"===e.name||"blur"===e.name}))}(p)){try{for(var y=n(t?[t]:v),_=y.next();!_.done;_=y.next()){var g=_.value;if("function"==typeof h[g])return void h[g]()}}catch(e){r={error:e}}finally{try{_&&!_.done&&(o=y.return)&&o.call(y)}finally{if(r)throw r.error}}var b=(0,l.default)(h);throw new Error(["Unsupported type of ControlValueAccessor,","please ensure it has '".concat(t||"onTouched","' method."),"If it is a 3rd-party library, please provide the correct name of the method in the 'methodName' parameter.","Possible Names: "+b.join(", ")+"."].join(" "))}!function(e){(0,u.default)(e,"focus"),(0,u.default)(e,"blur")}(p)}},9903:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(1991));t.default=function(e,t){(0,o.default)(e,"click",t)}},6843:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});for(var l=i(r(8195)),u=["focus","blur","load","unload","change","reset","scroll"],f="function"==typeof Event?function(e,t){return new CustomEvent(e,t)}:function(e,t){var r=n({bubbles:!1,cancelable:!1},t),o=document.createEvent("CustomEvent");return o.initCustomEvent(e,r.bubbles,r.cancelable,null),o},c={alt:{altKey:!0,code:"AltLeft",key:"Alt",location:1,which:18},arrowdown:{code:"ArrowDown",key:"ArrowDown",location:0,which:40},arrowleft:{code:"ArrowLeft",key:"ArrowLeft",location:0,which:37},arrowright:{code:"ArrowRight",key:"ArrowRight",location:0,which:39},arrowup:{code:"ArrowUp",key:"ArrowUp",location:0,which:38},backspace:{code:"Backspace",key:"Backspace",location:0,which:8},control:{code:"ControlLeft",ctrlKey:!0,key:"Control",location:1,which:17},enter:{code:"Enter",key:"Enter",location:0,which:13},esc:{code:"Escape",key:"Escape",location:0,which:27},meta:{code:"MetaLeft",key:"Meta",location:1,metaKey:!0,which:91},shift:{code:"ShiftLeft",key:"Shift",location:1,shiftKey:!0,which:16},space:{code:"Space",key:" ",location:0,which:32},tab:{code:"Tab",key:"Tab",location:0,which:9}},d=1;d<=12;d+=1)c["f".concat(d)]={code:"F".concat(d),key:"F".concat(d),location:0,which:d+111};t.default=function(e,t,r){var i=e.indexOf("."),d=a(-1===i?[e]:[e.slice(0,Math.max(0,i)),e.slice(i+1)],2),s=d[0],v=d[1],p=f(s,n({bubbles:-1===u.indexOf(e),cancelable:!0},t));return function(e,t){var r,n,a,i,u={};try{for(var f=o(t?t.split("."):[]),d=f.next();!d.done;d=f.next()){var s=d.value,v=c[s];if(v||1!==s.length||(v={code:(a=s,void 0,i=a.codePointAt(0),i&&i>=97&&i<=122||i&&i>=65&&i<=90?"Key".concat(a.toUpperCase()):i&&i>=48&&i<=57?"Digit".concat(a):"Unknown"),key:s}),!v)throw new Error("Unknown event part ".concat(s));(0,l.default)(u,v)}}catch(e){r={error:e}}finally{try{d&&!d.done&&(n=f.return)&&n.call(f)}finally{if(r)throw r.error}}t&&(0,l.default)(e,u)}(p,v),r&&(0,l.default)(p,r),p}},1991:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(590)),a=n(r(771)),i=n(r(4792)),l=n(r(4993)),u=n(r(5687)),f=n(r(8195)),c=n(r(6843)),d=["focus","blur","load","unload","change","reset","scroll"];t.default=function(e,t,r){var n,s=(n=(0,l.default)(e)?e:(0,o.default)((0,u.default)(),e,void 0),(0,a.default)(n)||(0,i.default)(n)?n.nativeElement:(0,l.default)(n)?n:void 0);if(!s)throw new Error("Cannot trigger ".concat("string"==typeof t?t:t.type," event undefined element"));if(!s.disabled){var v=function(e){return"string"==typeof e?(0,c.default)(e,{bubbles:-1===d.indexOf(e),cancelable:!0}):e}(t);v.target||(0,f.default)(v,{target:s}),r&&(0,f.default)(v,r),s.dispatchEvent(v)}}},343:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(5974);t.default=function(e){return"function"==typeof e||(0,n.isNgDef)(e,"t")}},4212:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=r(6739),l=r(5974),u=o(r(8344)),f=o(r(590)),c=o(r(1771)),d=o(r(5687)),s=o(r(951)),v=o(r(4811)),p=o(r(343)),h={};t.default=function(){for(var e=[],t=0;t0}),!0);else try{b.push((0,a.getInjection)(g))}catch(e){if(!e||"object"!=typeof e||void 0===e.ngTempTokenPath)throw e}if(b.length>0)return b[0];if(_!==h)return _;throw new Error("Cannot find an instance via ngMocks.findInstance(".concat((0,v.default)(y),")"))}},147:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=r(6456),l=r(6739),u=r(5974),f=a(r(8344)),c=a(r(7316)),d=a(r(1771)),s=a(r(5687)),v=a(r(951)),p=a(r(343));t.default=function(){for(var e,t,r=[],a=0;a0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(4792)),i=o(r(5687)),l=function(e){return(0,a.default)(e)?l(e.debugElement):e&&e.injector&&e.query?e:void 0};t.default=function(e,t){var r,o,a,u,f=t;return 3===e.length?(a=l(e[0]),u=e[1],f=e[2]):1===e.length?(a=l((0,i.default)()),u=n(e,1)[0]):e[0]?(a=l(e[0]))?u=e[1]:(a=l((0,i.default)()),u=(r=n(e,2))[0],f=r[1]):u=e[1],[a,u=null!==(o=l(u))&&void 0!==o?o:u,f]}},654:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(1165),o=r(6739);t.default=function(e){return Array.isArray(e)?n.By.css(1===e.length?"[".concat(e[0],"]"):"[".concat(e[0],'="').concat(e[1],'"]')):"string"==typeof e?n.By.css(e):n.By.directive((0,o.getSourceOfMock)(e))}},7316:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(771)),i=o(r(7453)),l=o(r(654));t.default=function(){for(var e=[],t=0;t0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(771)),i=o(r(4811)),l=o(r(7453)),u=o(r(654)),f={};t.default=function(){for(var e=[],t=0;t\\s+<","mg"),"><").replace(new RegExp('"\\s+>',"mg"),'">'):"";return r?n:n.trim()}var o;return(0,i.default)(t)?e(function(e,t){return t?e.outerHTML:e.innerHTML}(t,r)):(0,l.default)(t)?u(e,(0,a.default)(t).replace(new RegExp("&","mg"),"&").replace(new RegExp('"',"mg"),""").replace(new RegExp("<","mg"),"<").replace(new RegExp(">","mg"),">").replace(new RegExp("'","mg"),"'"),r):void 0};t.default=(0,o.default)(u)},9512:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4858)),a=n(r(9280)),i=n(r(4993)),l=n(r(8209)),u=function(e,t,r){if("string"==typeof t||void 0===t){var n=(o=t)?o.replace(new RegExp("\\s+","mg")," "):"";return r?n:n.trim()}var o;return(0,i.default)(t)?e(function(e,t){var r,n=null!==(r=e.textContent)&&void 0!==r?r:"";return t?n:n.trim()}(t,r)):(0,l.default)(t)?u(e,(0,a.default)(t),r):void 0};t.default=(0,o.default)(u)},3341:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t;return"#text"===(null===(t=e.nativeNode)||void 0===t?void 0:t.nodeName)&&e.parent?e.parent:e}},7717:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4201)),a=r(5974);t.default=function(e,t,r){if(t.injector&&"NullInjector"!==t.injector.constructor.name){var n=function(e){for(var t=e;"NullInjector"===(null==t?void 0:t.injector.constructor.name);)t=t.parent;if(t)return t.injector}(t.parent),i=n?(0,o.default)(r,n):void 0,l=(0,o.default)(r,t.injector);i!==l&&((0,a.isNgDef)(r,"t")&&void 0!==l||void 0!==l&&-1===e.indexOf(l))&&e.push(l)}}},2631:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(3341)),a=n(r(1484)),i=function(e){for(var t,r=e,n=null===(t=r.nativeNode)||void 0===t?void 0:t.__ngContext__;void 0===n&&r.parent;)n=(r=r.parent).nativeNode.__ngContext__;if("number"!=typeof n)return n;var o=r.injector._lView;return Array.isArray(o)?function(e,t){if("object"==typeof e[1]&&e[20]===t)return e;for(var r=21;r1&&f[1]&&"object"==typeof f[1]&&f[1].bindingStartIndex&&(v=f[1].bindingStartIndex);for(var p=0;p=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3341)),i=o(r(1484)),l=function(e){var t,r;if(!e||"object"!=typeof e)return e;try{for(var o=n(["renderElement","renderText","instance"]),a=o.next();!a.done;a=o.next()){var i=a.value;if(e[i])return e[i]}}catch(e){t={error:e}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}return null};t.default=function(e,t,r){if(t&&t._debugContext){var n=(0,a.default)(t);(0,i.default)({el:n,nodes:t._debugContext.view.nodes,normalize:l,proto:r,result:e},!0)}}},1771:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(5974),a=n(r(7717)),i=n(r(2631)),l=n(r(2096));t.default=function(e,t,r){return(0,a.default)(e,t,r),(0,o.isNgDef)(r,"t")||"string"==typeof r||((0,l.default)(e,t,r),(0,i.default)(e,t,r)),e}},5687:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(2603);t.default=function(){var e=(0,n.getTestBed)()._activeFixtures;return e[e.length-1]}},4317:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(8073));t.default=function(){var e;o.default.cacheDeclarations.clear(),null===(e=o.default.config.get("ngMocksDepsSkip"))||void 0===e||e.clear()}},4811:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(5974);t.default=function(e){return"string"==typeof e?e:"function"==typeof e?e.name:(0,n.isNgDef)(e,"t")?e._desc:Array.isArray(e)?e[0]:e?"":""}},951:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(771)),i=o(r(4792)),l=o(r(5687));t.default=function(e,t,r){var o,u,f,c,d,s,v=r;return 3===e.length?(c=(o=n(e,3))[0],d=o[1],v=o[2]):1===e.length?(c=(0,l.default)(),d=n(e,1)[0]):t(e[1])&&("string"==typeof(s=e[0])||Array.isArray(s)&&"string"==typeof s[0]||(0,i.default)(s)||(0,a.default)(s),1)?(c=(u=n(e,2))[0],d=u[1]):(c=(0,l.default)(),d=(f=n(e,2))[0],v=f[1]),[c,d,v]}},4641:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(4201)),a=n(r(8862)),i=n(r(6297));t.default=function(e,t){if(e)try{var r=(0,i.default)(t);return function(e){try{return(0,a.default)(e)}catch(e){return}}((0,o.default)(r,e.injector).constructor)}catch(e){return}}},5018:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(1184)),l=a(r(590)),u=a(r(5687)),f=a(r(4641)),c=a(r(8027)),d={},s=function(e,t){var r=(0,i.default)(e),n=r.name,o=r.alias,a=void 0===o?"":o;if(!a&&n===t||a&&a===t)return n};t.default=function(e,t){for(var r=[],a=2;a=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3174));t.default=function(e,t){return function(){for(var r=[],o=0;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073));t.default=function(e,t){var r,o,l=i.default.getConfigMock();try{for(var u=n((0,a.flatten)(e)),f=u.next();!f.done;f=u.next()){var c=f.value;t?l.set(c,t):l.delete(c)}}catch(e){r={error:e}}finally{try{f&&!f.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}},8909:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(8073));t.default=function(e,t){var r,o,l=i.default.getOverrides();try{for(var u=n((0,a.flatten)(e)),f=u.next();!f.done;f=u.next()){var c=f.value;if(t){var d=l.has(c)?l.get(c):new Set;d.add(t),l.set(c,d)}else l.delete(c)}}catch(e){r={error:e}}finally{try{f&&!f.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}},1640:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(2603),i=o(r(3174)),l=o(r(8073)),u=l.default.global.get("faster-hooks")||{after:[],before:[]};l.default.global.set("faster-hooks",u);var f=function(e,t){return function(r){var o,f;if(a.TestBed.ngMocksFasterLock)return e.call(t,r);l.default.global.set("bullet:customized",!0);var c=e;try{for(var d=n(u.before),s=d.next();!s.done;s=d.next())c=(0,s.value)(c,t)}catch(e){o={error:e}}finally{try{s&&!s.done&&(f=d.return)&&f.call(d)}finally{if(o)throw o.error}}try{return(0,i.default)(a.TestBed,"ngMocksFasterLock",!0),c.call(t,r)}finally{(0,i.default)(a.TestBed,"ngMocksFasterLock",void 0)}}},c=function(e,t){return function(){var r,o;if(a.TestBed.ngMocksFasterLock)return e.call(t);if(l.default.global.has("bullet"))return l.default.global.has("bullet:customized")&&l.default.global.set("bullet:reset",!0),t;l.default.global.delete("bullet:customized"),l.default.global.delete("bullet:reset");var f=e;try{for(var c=n(u.after),d=c.next();!d.done;d=c.next())f=(0,d.value)(f,t)}catch(e){r={error:e}}finally{try{d&&!d.done&&(o=c.return)&&o.call(c)}finally{if(r)throw r.error}}try{return(0,i.default)(a.TestBed,"ngMocksFasterLock",!0),f.call(t)}finally{(0,i.default)(a.TestBed,"ngMocksFasterLock",void 0)}}};t.default=function(){a.TestBed.ngMocksFasterInstalled||(a.TestBed.configureTestingModule=f(a.TestBed.configureTestingModule,a.TestBed),a.TestBed.resetTestingModule=c(a.TestBed.resetTestingModule,a.TestBed),(0,i.default)(a.TestBed,"ngMocksFasterInstalled",!0));var e=(0,a.getTestBed)();return e.ngMocksFasterInstalled||(e.configureTestingModule=f(e.configureTestingModule,e),e.resetTestingModule=c(e.resetTestingModule,e),(0,i.default)(e,"ngMocksFasterInstalled",!0)),u}},7346:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(2603),a=n(r(8073)),i=n(r(1640)),l=n(r(2776)),u=function(e){var t,r=null!==(t=a.default.global.get("bullet:stack"))&&void 0!==t?t:[];r.push(e),a.default.global.set("bullet:stack",r),a.default.global.set("bullet:stack:id",e)},f=function(e){var t=a.default.global.get("bullet:stack");t.splice(t.indexOf(e),1),t.length>0?a.default.global.set("bullet:stack:id",t[t.length-1]):a.default.global.delete("bullet:stack:id"),function(e){for(var t=(0,o.getTestBed)()._activeFixtures||[],r=0,n=t.length-1;n>=0;n-=1)t[n].ngMocksStackId&&t[n].ngMocksStackId!==e?r+=1:(t[n].ngMocksStackId=void 0,t[n].destroy(),t.splice(n,1));0===r&&(0,l.default)()}(e)};t.default=function(){(0,i.default)();var e={},t={};beforeAll((function(){a.default.global.has("bullet:customized")&&o.TestBed.resetTestingModule(),a.default.global.set("bullet",!0),u(e)})),beforeEach((function(){u(t)})),afterEach((function(){f(t)})),afterAll((function(){f(e),a.default.global.delete("bullet"),a.default.global.has("bullet:reset")&&o.TestBed.resetTestingModule()}))}},2776:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(2603);t.default=function(){var e=(0,n.getTestBed)();e._instantiated=!1,e._moduleFactory=void 0,e._testModuleRef=null}},8027:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(2603),a=n(r(2970)),i=r(6739),l=n(r(345)),u=n(r(590)),f=n(r(1771)),c=n(r(5687)),d=n(r(4811)),s={};t.default=function(){for(var e=[],t=0;t0)return _[0];if(h){var _,g=(0,l.default)(h,void 0);if(g&&"#comment"===g.nativeNode.nodeName&&(_=(0,f.default)([],g,y)).length>0)return _[0]}if(p!==s)return p;throw new Error("Cannot find ".concat((0,a.default)(v)," instance via ngMocks.get"))}},4071:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6259)),a=n(r(8073)),i=n(r(4317)),l=function(e){a.default.getDefaults().set(e,["exclude"])};t.default=function(e,t){void 0===t&&(t=!1),(0,i.default)(),l(e),t&&(0,o.default)(e,l)}},5228:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6259)),a=n(r(8073)),i=n(r(4317)),l=function(e){a.default.getDefaults().set(e,["keep"])};t.default=function(e,t){void 0===t&&(t=!1),(0,i.default)(),l(e),t&&(0,o.default)(e,l)}},763:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6259)),a=n(r(8073)),i=n(r(4317)),l=function(e){a.default.getDefaults().set(e,["mock"])};t.default=function(e,t){void 0===t&&(t=!1),(0,i.default)(),l(e),t&&(0,o.default)(e,l)}},3757:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(5974),a=n(r(8073)),i=n(r(4317));t.default=function(e,t){var r=!0;if(((0,o.isNgDef)(e,"m")&&(0,o.isNgDef)(t,"m")||(0,o.isNgDef)(e,"c")&&(0,o.isNgDef)(t,"c")||(0,o.isNgDef)(e,"d")&&(0,o.isNgDef)(t,"d")||(0,o.isNgDef)(e,"p")&&(0,o.isNgDef)(t,"p"))&&(r=!1),r)throw new Error("Cannot replace the declaration, both have to be a Module, a Component, a Directive or a Pipe");(0,i.default)(),a.default.getDefaults().set(e,["replace",t])}},4102:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(6259)),a=n(r(8073)),i=n(r(4317)),l=n(r(8909)),u=function(e){a.default.getDefaults().delete(e),(0,l.default)(e)};t.default=function(e,t){void 0===t&&(t=!1),(0,i.default)(),u(e),t&&(0,o.default)(e,u)}},7418:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(5551)),l=r(6456),u=a(r(1345)),f=a(r(6297)),c=r(5974),d=r(4152),s=r(3659),v=a(r(8073)),p=r(5395),h=r(8339),y=r(3821),_=r(2937),g=a(r(2415)),b=function(e,t,r){return!!t.has(e)||(t.add(e),r.has(e))},m=function(e,t,r,n,o){var a=e.get(t)||t;(0,c.isNgDef)(a,"m")?r.push(a):(0,c.isNgDef)(a,"c")||(0,c.isNgDef)(a,"d")?n.push(a):(0,c.isNgDef)(a,"p")?(n.push(a),o.push(a)):(0,d.isNgInjectionToken)(a)||o.push(a)},M=[["m","module"],["c","component"],["d","directive"],["p","pipe"]],k=function(e,t,r,n){b(t,e.skip,e.exclude)||n.push(e.keep.has(t)?t:r(t))},w=function(e,t){var r=e.skip,n=e.keep,o=e.providers,a=e.exclude,i=(0,f.default)(t);if(r.add(i),!a.has(i)){var l=n.has(i)?t:(0,g.default)(t);l&&o.push(l)}},O={component:p.MockComponent,directive:h.MockDirective,pipe:_.MockPipe},x=function(e,t,r){if(void 0===r&&(r=!0),t){var a,i=function(e,t){var r,a;if((0,s.isNgModuleDefWithProviders)(e))return"module-with-providers";try{for(var i=n(M),l=i.next();!l.done;l=i.next()){var u=o(l.value,2),f=u[0],d=u[1];if((0,c.isNgDef)(e,f))return"m"===f&&t.has(e)?"".concat(d,"-keep"):d}}catch(e){r={error:e}}finally{try{l&&!l.done&&(a=i.return)&&a.call(i)}finally{if(r)throw r.error}}return""}(t,e.keep);if("module-with-providers"!==i){var f=e.optional.get(t);f&&f!==t&&(a=f,e.keep.add(a))}a||(a=t),function(e,t,r,o){"module-with-providers"===t?function(e,t){e.skip.has(t.ngModule)||(e.skip.add(t.ngModule),e.exclude.has(t.ngModule)||e.imports.push(e.keep.has(t.ngModule)?t:(0,y.MockModule)(t)))}(e,r):"module-keep"===t||"module"===t&&o?k(e,r,y.MockModule,e.imports):"module"===t?function(e,t,r){var o,a,i,f;if(!b(t,e.skip,e.exclude)){var c=(0,u.default)(t);try{for(var d=n((0,l.flatten)([c.declarations,c.imports])),s=d.next();!s.done;s=d.next())r(e,h=s.value)}catch(e){o={error:e}}finally{try{s&&!s.done&&(a=d.return)&&a.call(d)}finally{if(o)throw o.error}}try{for(var v=n(c.providers?(0,l.flatten)(c.providers):[]),p=v.next();!p.done;p=v.next()){var h=p.value;w(e,h)}}catch(e){i={error:e}}finally{try{p&&!p.done&&(f=v.return)&&f.call(v)}finally{if(i)throw i.error}}}}(e,r,x):O[t]?k(e,r,O[t],e.declarations):w(e,r)}(e,i,a,r)}};t.default=function(e,t,r){var o,a,u,f,c,d;void 0===t&&(t=null),void 0===r&&(r=null);var s=function(e,t,r){var o=new Set((0,l.flatten)(e||[])),a=new Set((0,l.flatten)(t||[])),i=new Set((0,l.flatten)(r||[])),u=new Map;return function(e,t,r,o){var a,i;try{for(var u=n((0,l.mapKeys)(v.default.getDefaults())),f=u.next();!f.done;f=u.next()){var c=f.value,d=v.default.getBuildDeclaration(c);e.has(c)||t.has(c)||r.has(c)||(o.set(c,d),null===d?r.add(c):void 0===d?t.add(c):c===d&&e.add(c))}}catch(e){a={error:e}}finally{try{f&&!f.done&&(i=u.return)&&i.call(u)}finally{if(a)throw a.error}}}(o,a,i,u),{declarations:[],exclude:i,imports:[],keep:o,mock:a,optional:u,providers:[],skip:new Set}}(e,t,r),p=new Map;v.default.config.set("ngMocksDepsResolution",p);try{for(var h=n((0,l.mapValues)(s.keep)),y=h.next();!y.done;y=h.next()){var _=y.value;p.set(_,"keep")}}catch(e){o={error:e}}finally{try{y&&!y.done&&(a=h.return)&&a.call(h)}finally{if(o)throw o.error}}try{for(var g=n((0,l.mapValues)(s.exclude)),b=g.next();!b.done;b=g.next())_=b.value,p.set(_,"exclude")}catch(e){u={error:e}}finally{try{b&&!b.done&&(f=g.return)&&f.call(g)}finally{if(u)throw u.error}}v.default.config.set("mockNgDefResolver",new i.default);try{for(var M=n((0,l.mapValues)(s.mock)),k=M.next();!k.done;k=M.next()){var w=k.value;p.set(w,"mock"),s.optional.has(w)||x(s,w,!1)}}catch(e){c={error:e}}finally{try{k&&!k.done&&(d=M.return)&&d.call(M)}finally{if(c)throw c.error}}var O=function(e){var t,r,o=e.keep,a=e.skip,i=e.optional,l=e.exclude,u=e.imports,f=e.declarations,c=e.providers;try{for(var d=n(o),s=d.next();!s.done;s=d.next()){var v=s.value;a.has(v)||l.has(v)||i.has(v)||m(i,v,u,f,c)}}catch(e){t={error:e}}finally{try{s&&!s.done&&(r=d.return)&&r.call(d)}finally{if(t)throw t.error}}return{declarations:f,imports:u,providers:c}}(s);return v.default.config.delete("mockNgDefResolver"),v.default.config.delete("ngMocksDepsResolution"),O}},7411:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3295)),i=o(r(8073)),l=o(r(8344)),u=o(r(8458)),f=o(r(9400)),c=o(r(2298)),d=o(r(7655)),s=o(r(9903)),v=o(r(6843)),p=o(r(1991)),h=o(r(590)),y=o(r(7316)),_=o(r(4212)),g=o(r(147)),b=o(r(8062)),m=o(r(9512)),M=o(r(3539)),k=o(r(7977)),w=o(r(9311)),O=o(r(2237)),x=o(r(8909)),j=o(r(7346)),D=o(r(2776)),S=o(r(8027)),P=o(r(4071)),C=o(r(5228)),N=o(r(763)),T=o(r(3757)),E=o(r(4102)),A=o(r(7418)),R=o(r(7411)),I=o(r(5526)),V=o(r(2448)),B=o(r(8195)),F=o(r(589)),L=o(r(3048)),K=o(r(2120)),G=o(r(1368)),q=o(r(5535)),U=["onMockBuilderMissingDependency","onMockInstanceRestoreNeed","onTestBedFlushNeed"];t.default={autoSpy:M.default,change:c.default,click:s.default,config:function(e){var t,r,o=i.default.global.get("flags");try{for(var l=n(U),u=l.next();!u.done;u=l.next()){var f=u.value;null===e[f]?o[f]=a.default[f]:void 0!==e[f]&&(o[f]=e[f])}}catch(e){t={error:e}}finally{try{u&&!u.done&&(r=l.return)&&r.call(l)}finally{if(t)throw t.error}}null===e.mockRenderCacheSize?i.default.global.delete("mockRenderCacheSize"):void 0!==e.mockRenderCacheSize&&i.default.global.set("mockRenderCacheSize",e.mockRenderCacheSize)},crawl:l.default,defaultConfig:O.default,defaultMock:x.default,event:v.default,faster:j.default,find:h.default,findAll:y.default,findInstance:_.default,findInstances:g.default,findTemplateRef:G.default,findTemplateRefs:q.default,flushTestBed:D.default,formatHtml:b.default,formatText:m.default,get:S.default,globalExclude:P.default,globalKeep:C.default,globalMock:N.default,globalReplace:T.default,globalWipe:E.default,guts:A.default,hide:L.default,ignoreOnConsole:k.default,input:R.default,output:I.default,render:K.default,reset:V.default,reveal:u.default,revealAll:f.default,stub:B.default,stubMember:F.default,throwOnConsole:w.default,touch:d.default,trigger:p.default}},5526:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(7331)),u=i(r(7794)),f=i(r(5020)),c=i(r(445));t.default=function(e,t,r){var i,d;if("string"==typeof t)return c.default.mock(e,t,r);var s=e,v=t,p=["__zone_symbol__unconfigurables"];"function"==typeof t&&(s=c.default.createClone(t),v=e,p.push.apply(p,o([],n(Object.getOwnPropertyNames(s)),!1)));var h=o(o([],n((0,l.default)(v)),!1),n((0,u.default)(v)),!1);try{for(var y=a(h),_=y.next();!_.done;_=y.next()){var g=_.value,b=-1===p.indexOf(g)?(0,f.default)(v,g):void 0;b&&Object.prototype.hasOwnProperty.call(b,"value")&&void 0===b.value||c.default.definePropertyDescriptor(s,g,b)}}catch(e){i={error:e}}finally{try{_&&!_.done&&(d=y.return)&&d.call(y)}finally{if(i)throw i.error}}return s}},6189:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ngMocks=void 0;var o=n(r(492));t.ngMocks=o.default},845:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=r(860),l=a(r(2137)),u=function(e,t,r){return!!e&&t instanceof i.TemplateRef&&r(t)},f=function(e,t,r){var a,c;if(!(0,l.default)(e))throw new Error("Only instances of mock declarations are accepted");if(function(e,t,r){return!!e.__template&&!!e.__vcr&&t(e.__template)&&r(e.__vcr,e.__template)}(e,t,r))return!0;try{for(var d=n(function(e){var t,r,o=[];try{for(var a=n(e.__ngMocksConfig.queryScanKeys||[]),l=a.next();!l.done;l=a.next())for(var u=l.value,f=e[u],c=e["__ngMocksVcr_".concat(u)],d=f instanceof i.QueryList?f.toArray():[f],s=c instanceof i.QueryList?c.toArray():[c],v=0;v0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8732)),i=o(r(590)),l=o(r(5687)),u=o(r(951)),f=o(r(4811)),c=o(r(2789)),d=o(r(6703)),s=o(r(7845)),v={};t.default=function(){for(var e=[],t=0;t0)return y[0];if(h!==v)return h;throw new Error("Cannot find a TemplateRef via ngMocks.findTemplateRef(".concat((0,f.default)(p),")"))}},5535:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8732)),i=o(r(590)),l=o(r(5687)),u=o(r(951)),f=o(r(2789)),c=o(r(6703)),d=o(r(7845));t.default=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(8073)),l=a(r(589));t.default=function(e){var t,r,a=[],u=i.default.configInstance.get(e);if(null==u?void 0:u.overloads){var f=function(e,t,r){e?a.push((function(n){(0,l.default)(n,e,t,r)})):a.push(t)};try{for(var c=n(u.overloads),d=c.next();!d.done;d=c.next()){var s=o(d.value,3);f(s[0],s[1],s[2])}}catch(e){t={error:e}}finally{try{d&&!d.done&&(r=c.return)&&r.call(c)}finally{if(t)throw t.error}}}return a}},6691:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2970)),i=o(r(8073));t.default=function(e){for(var t=[];e.length>0;){var r=n(e.pop()||[],2),o=r[0];r[1]===i.default.configInstance.get(o)&&t.push("function"==typeof o?(0,a.default)(o):o)}if(t.length>0){var l=i.default.global.get("flags"),u=["MockInstance: side effects have been detected (".concat(t.join(", "),")."),"Forgot to add MockInstance.scope() or to call MockInstance.restore()?"].join(" ");if("warn"===l.onMockInstanceRestoreNeed)console.warn(u);else if("throw"===l.onMockInstanceRestoreNeed)throw new Error(u)}}},3001:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockInstance=h,t.MockReset=function(){f.default.configInstance.clear()};var i,l=a(r(6804)),u=a(r(7592)),f=a(r(8073)),c=a(r(6691));u.default.subscribePush((function(e){i=e})),u.default.subscribePop((function(e,t){var r,a;try{for(var l=o(e.mockInstance||[]),u=l.next();!u.done;u=l.next()){var c=u.value;if(f.default.configInstance.has(c)){var d=f.default.configInstance.get(c);d.overloads.pop(),f.default.configInstance.set(c,n({},d))}}}catch(e){r={error:e}}finally{try{u&&!u.done&&(a=l.return)&&a.call(l)}finally{if(r)throw r.error}}i=t[t.length-1]}));var d=function(e){var t={};return"string"==typeof e[0]?(t.key=e[0],t.value=e[1],t.accessor=e[2]):(t.value=e[0],t.value&&"object"==typeof t.value&&(t.value=t.value.init)),t},s=[],v=!1;"undefined"!=typeof beforeEach&&(beforeEach((function(){return v=!0})),beforeEach((function(){return(0,c.default)(s)})),afterEach((function(){return v=!1})));var p=function(e,t,r,o){var a,l=f.default.configInstance.has(e)?f.default.configInstance.get(e):{},u=l.overloads||[];u.push([t,r,o]),l.overloads=u,f.default.configInstance.set(e,n({},l));var c=null!==(a=i.mockInstance)&&void 0!==a?a:[];return c.push(e),i.mockInstance=c,v&&s.push([e,f.default.configInstance.get(e),i]),r};function h(e){for(var t=[],r=1;r0){var o=d(t),a=o.key,u=o.value,c=o.accessor;return p(e,a,u,c)}var v=f.default.configInstance.get(e)||{};f.default.configInstance.set(e,n(n({},v),{overloads:[]}));for(var h=s.length-1;h>=0;h-=1)s[h][0]===e&&s[h][2]===i&&s.splice(h,1)}!function(e){e.remember=function(){u.default.stackPush()},e.restore=function(){u.default.stackPop()},e.scope=function(t){void 0===t&&(t="case"),"all"!==t&&"suite"!==t||(beforeAll(e.remember),afterAll(e.restore)),"all"!==t&&"case"!==t||(beforeEach(e.remember),afterEach(e.restore))}}(h||(t.MockInstance=h={}))},9988:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(6297)),l=r(5974),u=r(3659),f=a(r(8073)),c=r(5395),d=r(8339),s=r(2937),v=a(r(445)),p=r(3821),h=[["c",c.MockComponent],["d",d.MockDirective],["p",s.MockPipe]];t.default=function(e,t){var r=function(e,t){return function(r){var a;if(e.has(r))return function(e,t,r){var n=t.get(e);return e!==n&&r(),n}(r,e,t);var c=(0,i.default)(r);if(f.default.isExcludedDef(c))return function(e,t,r){t.set(e,void 0),r()}(r,e,t);f.default.touches.add(c);var d=function(e){var t,r;if((0,l.isNgDef)(e,"m")||(0,u.isNgModuleDefWithProviders)(e))return(0,p.MockModule)(e);if(f.default.hasBuildDeclaration(e))return f.default.getBuildDeclaration(e);if(f.default.flags.has("skipMock")&&"mock"!==f.default.getResolution(e))return e;try{for(var a=n(h),i=a.next();!i.done;i=a.next()){var c=o(i.value,2),d=c[0],s=c[1];if((0,l.isNgDef)(e,d))return s(e)}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}}(r);return function(e,t){return(0,u.isNgModuleDefWithProviders)(t)&&(0,u.isNgModuleDefWithProviders)(e)}(r,d)&&e.set(r.ngModule,d.ngModule),f.default.flags.has("skipMock")&&(null===(a=f.default.config.get("ngMocksDepsSkip"))||void 0===a||a.add(d)),e.set(r,d),t(d!==r),d}}(t,e),a=function(e,t){return function(r){return v.default.resolveProvider(r,e,t)}}(t,e);return{resolve:r,resolveProvider:a}}},6860:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=r(6456),i=o(r(6297)),l=o(r(7610));t.default=function(e){var t,r;try{for(var o=n((0,a.flatten)(null!=e?e:[])),u=o.next();!u.done;u=o.next()){var f=u.value,c=(0,i.default)(f);(0,l.default)(c)}}catch(e){t={error:e}}finally{try{u&&!u.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}}},3821:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockModule=function(e){var t;(0,v.default)(e,"MockModule");var r=w(e),n=r.ngModule,o=r.ngModuleProviders,a=M(n);try{var i=x(n,O(n,a.isRootModule));g.default.flags.has("cacheModule")&&g.default.cacheDeclarations.set(n,i),g.default.flags.has("skipMock")&&(null===(t=g.default.config.get("ngMocksDepsSkip"))||void 0===t||t.add(i));var l=j(o);return D(e,n,o,i,l)}finally{k(a)}};var i=r(860),l=a(r(3295)),u=a(r(3174)),f=r(6456),c=a(r(1345)),d=a(r(615)),s=a(r(2970)),v=a(r(6804)),p=r(6763),h=r(5974),y=r(3659),_=r(1946),g=a(r(8073)),b=a(r(5937)),m=a(r(224)),M=function(e){var t=!1,r=!0;g.default.flags.has("hasRootModule")?r=!1:g.default.flags.add("hasRootModule");var n=g.default.getResolution(e);return function(e){return"mock"===e&&g.default.flags.has("skipMock")}(n)&&(t=!0,g.default.flags.delete("skipMock")),function(e){return-1!==l.default.neverMockModule.indexOf((0,s.default)(e))&&!g.default.flags.has("skipMock")}(e)&&(t=!0,g.default.flags.add("skipMock")),r||!function(e){return"keep"===e&&!g.default.flags.has("skipMock")}(n)&&!function(e){return"replace"===e&&!g.default.flags.has("skipMock")}(n)||(t=!0,g.default.flags.add("skipMock")),{isRootModule:r,toggleSkipMockFlag:t}},k=function(e){var t=e.isRootModule,r=e.toggleSkipMockFlag;r&&g.default.flags.has("skipMock")?g.default.flags.delete("skipMock"):r&&!g.default.flags.has("skipMock")&&g.default.flags.add("skipMock"),t&&g.default.flags.delete("hasRootModule")},w=function(e){var t,r;return(0,y.isNgModuleDefWithProviders)(e)?(t=e.ngModule,e.providers&&(r=e.providers)):t=e,{ngModule:t,ngModuleProviders:r}},O=function(e,t){var r;if((0,p.isMockNgDef)(e,"m"))return e;if(g.default.flags.has("cacheModule")&&g.default.cacheDeclarations.has(e))return(0,b.default)(e);if(!t&&"mock"!==(null===(r=g.default.config.get("ngMocksDepsResolution"))||void 0===r?void 0:r.get(e))&&g.default.hasBuildDeclaration(e)){var n=g.default.getBuildDeclaration(e);if((0,h.isNgDef)(n,"m")&&n!==e)return n}},x=function(e,t){var r=o(t?[!1]:(0,m.default)((0,c.default)(e),e),3),n=r[0],a=r[1],l=r[2];if(l&&(0,u.default)(e,"__ngMocksResolutions",l),n){var s=g.default.flags.has("skipMock")?e:_.Mock,v=(0,f.extendClass)(s);return(0,i.NgModule)(a)(v),(0,d.default)(v,e),v}return t||e},j=function(e){if(e){var t=o((0,m.default)({providers:e,skipExports:!0}),2),r=t[0],n=t[1];return r?n.providers:e}},D=function(e,t,r,o,a){return o===t&&a===r?e:(0,y.isNgModuleDefWithProviders)(e)?n({ngModule:o},a?{providers:a}:{}):o}},224:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(5551)),u=r(6456),f=i(r(6297)),c=i(r(8073)),d=i(r(7610)),s=i(r(9988)),v=i(r(6860)),p=function(e,t){return(0,u.flatten)(e).map(t).filter((function(e){return!!e}))},h=function(e,t,r,o){var a=c.default.config.get(o)||{},i=(0,f.default)(e),l=t(i);if(l){var u=c.default.config.get(i);if((null==u?void 0:u.export)&&o&&!a.export&&c.default.config.set(o,n(n({},a),{export:!0})),!r||a.exportAll||(null==u?void 0:u.export))return(0,d.default)(i,o),l}},y=function(e,t){return!e||!!t.exports&&-1!==t.exports.indexOf(e)};t.default=function(e,t){var r,i,_=c.default.config.has("mockNgDefResolver");_||c.default.config.set("mockNgDefResolver",new l.default),c.default.config.get("mockNgDefResolver").push();var g=!c.default.flags.has("skipMock"),b=function(e){void 0===e&&(e=!0),g=g||e},m=(0,s.default)(b,c.default.config.get("mockNgDefResolver")),M=m.resolve,k=function(e,t,r){var i,l,u,d={},s=function(e,t){return[["declarations",e],["hostDirectives",function(t){var r=(0,f.default)(t),o=e(r);return o===r?t:t==r?o:n(n({},t),{directive:o})}],["imports",e],["entryComponents",e],["bootstrap",e],["providers",t],["viewProviders",t],["exports",e],["schemas",function(e){return e}]]}(t,r),h=c.default.flags.has("cachePipe");h||c.default.flags.add("cachePipe");try{for(var y=o(s),_=y.next();!_.done;_=y.next()){var g=a(_.value,2),b=g[0],m=g[1];(null===(u=e[b])||void 0===u?void 0:u.length)&&(d[b]=p(e[b],m))}}catch(e){i={error:e}}finally{try{_&&!_.done&&(l=y.return)&&l.call(y)}finally{if(i)throw i.error}}return e.skipMarkProviders||((0,v.default)(d.providers),(0,v.default)(d.viewProviders)),h||c.default.flags.delete("cachePipe"),d}(e,M,m.resolveProvider);e.skipExports||function(e,t,r,n,a){var i,l,f=c.default.flags.has("skipMock")||c.default.flags.has("correctModuleExports");try{for(var d=o((0,u.flatten)([r.imports||[],r.declarations||[]])),s=d.next();!s.done;s=d.next()){var v=s.value,p=h(v,e,f,a);y(p,n)||(t(),n.exports=n.exports||[],n.exports.push(p))}}catch(e){i={error:e}}finally{try{s&&!s.done&&(l=d.return)&&l.call(d)}finally{if(i)throw i.error}}}(M,b,e,k,t);try{for(var w=o(t&&k.exports?(0,u.flatten)(k.exports):[]),O=w.next();!O.done;O=w.next()){var x=O.value;(0,d.default)(x,t)}}catch(e){r={error:e}}finally{try{O&&!O.done&&(i=w.return)&&i.call(w)}finally{if(r)throw r.error}}var j=c.default.config.get("mockNgDefResolver").pop();return _||c.default.config.delete("mockNgDefResolver"),[g,k,j]}},3877:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},2937:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockPipes=function(){for(var e=[],t=0;t=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(8773)),i=o(r(1184)),l=r(5974),u=function(e,t){var r=" ".concat(function(e,t){return"i"===t?"[".concat(e,"]"):"(".concat(e,")")}(e,t),'="');return(r+="i"===t?e:"__ngMocksOutput('".concat(e,"', $event)"))+'"'},f=function(e,t,r){var o,a;if(!e&&"o"===r)return"";var l="",f=null!=e?e:t;try{for(var c=n(t),d=c.next();!d.done;d=c.next()){var s=d.value,v=(0,i.default)(s),p=v.name,h=v.alias;l+=-1===f.indexOf(h||p)?"":u(h||p,r)}}catch(e){o={error:e}}finally{try{d&&!d.done&&(a=c.return)&&a.call(c)}finally{if(o)throw o.error}}return l};t.default=function(e,t){var r=t.selector,n=t.bindings,o=t.inputs,i=t.outputs,u="";return"string"==typeof e?u=e:(0,l.isNgDef)(e,"p")&&n&&-1!==n.indexOf("$implicit")?u="{{ $implicit | ".concat((0,a.default)(e).name," }}"):r&&(u+="<".concat(r),u+=f(n,o,"i"),u+=f(n,i,"o"),u+=">".concat(r,">")),u}},2091:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(3174)),u=i(r(5006)),f=i(r(445)),c=function(e,t,r){var n=function(){if("function"==typeof r[e]){if(t["__ngMocks_".concat(e,"__origin")]!==r[e]){var n=f.default.createClone(r[e],t,r);(0,l.default)(t,"__ngMocks_".concat(e),n),(0,l.default)(t,"__ngMocks_".concat(e,"__origin"),r[e])}return t["__ngMocks_".concat(e)]}return r[e]};return(0,l.default)(n,"__ngMocksProxy",!0),n},d=function(e,t,r){var n=function(n){t["__ngMocks_".concat(e)]&&(t["__ngMocks_".concat(e)]=void 0),t["__ngMocks_".concat(e,"__origin")]&&(t["__ngMocks_".concat(e,"__origin")]=void 0),r[e]=n};return(0,l.default)(n,"__ngMocksProxy",!0),n};t.default=function(e,t,r,i){var s,v;if(void 0===i&&(i=!1),t){(0,l.default)(e,"__ngMocks__source",t);var p,h=(p=e,o(o([],n(Object.getOwnPropertyNames(p)),!1),n(Object.keys(p)),!1)),y=o(o([],n(function(e){return o(o(o([],n(f.default.extractPropertiesFromPrototype(Object.getPrototypeOf(e))),!1),n(f.default.extractMethodsFromPrototype(Object.getPrototypeOf(e))),!1),n(Object.keys(e)),!1)}(t)),!1),n(r),!1);try{for(var _=a(y),g=_.next();!g.done;g=_.next()){var b=g.value;(i||-1===h.indexOf(b))&&((0,u.default)(e,b,{get:c(b,e,t),set:d(b,e,t)}),h.push(b))}}catch(e){s={error:e}}finally{try{g&&!g.done&&(v=_.return)&&v.call(_)}finally{if(s)throw s.error}}}}},6086:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var u=r(860),f=r(2603),c=l(r(3174)),d=r(6456),s=l(r(8862)),v=r(5974);t.default=function(e){var t,r,l;if(!(0,v.isNgDef)(e,"c")&&!(0,v.isNgDef)(e,"d"))return{};var p=(0,s.default)(e),h={};try{for(var y=i(Object.keys(p)),_=y.next();!_.done;_=y.next()){var g=_.value;"standalone"!==g?h[g]=p[g]:(0,c.default)(h,"__ngMocksStandalone",!!p[g])}}catch(e){t={error:e}}finally{try{_&&!_.done&&(r=y.return)&&r.call(y)}finally{if(t)throw t.error}}return h.selector&&/[\s,[\]]/.test(h.selector)&&(h.selector=""),h.selector||(h.selector=(null===(l=f.TestBed.ngMocksSelectors)||void 0===l?void 0:l.get(e))||"",h.selector||(h.selector="ng-mocks-".concat(e.name),function(e,t){var r,i=(0,d.extendClass)(e),l={provide:e,useExisting:i};t.providers=a(a([],o(t.providers||[]),!1),[l],!1);var c={};try{var s=f.TestBed.ngMocksOverrides.get(e).override;(c=n({},s.set)).providers=c.providers?a(a([],o(c.providers),!1),[l],!1):t.providers}catch(e){}var p=!0===t.__ngMocksStandalone;((0,v.isNgDef)(e,"c")?u.Component:u.Directive)(n(n(n({},t),c),p?{standalone:p}:{}))(i),f.TestBed.configureTestingModule(((r={})[p?"imports":"declarations"]=[i],r))}(e,h),f.TestBed.ngMocksSelectors&&f.TestBed.ngMocksSelectors.set(e,h.selector))),h}},8406:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockRenderFactory=function(e,t,r){void 0===r&&(r={}),(0,f.default)(e,"MockRender");var n="string"==typeof e||(0,c.isNgDef)(e,"t")?{}:(0,g.default)(e),o=(0,y.default)(e,n,t,r),a=m(o,t,e,r);return"root"!==d.default.current().level&&!1!==r.configureTestBed&&a.configureTestBed(),a};var o=r(860),a=r(2603),i=n(r(3174)),l=r(6456),u=n(r(2970)),f=n(r(6804)),c=r(5974),d=n(r(7592)),s=n(r(8073)),v=r(6189),p=n(r(5006)),h=r(5779),y=n(r(3078)),_=n(r(2091)),g=n(r(6086)),b=["Forgot to flush TestBed?","MockRender cannot be used without a reset after TestBed.get / TestBed.inject / TestBed.createComponent and another MockRender in the same test.","If you want to mock a service before rendering, consider usage of MockRenderFactory or MockInstance.","To flush TestBed, add a call of ngMocks.flushTestBed() before the call of MockRender, or pass `reset: true` to MockRender options."].join(" "),m=function(e,t,r,n){var f=function(n,d){f.configureTestBed();var y=a.TestBed.createComponent(e);return(0,_.default)(y.componentInstance,null!=n?n:{},null!=t?t:[]),(0,i.default)(y,"ngMocksStackId",s.default.global.get("bullet:stack:id")),(void 0===d||d)&&y.detectChanges(),"string"==typeof r||(0,c.isNgDef)(r,"c")||(0,c.isNgDef)(r,"d")||e.tpl&&(0,c.isNgDef)(r,"p")?function(e,t,r){e.point=e.debugElement.children[0]&&"#text"!==e.debugElement.children[0].nativeElement.nodeName&&"#comment"!==e.debugElement.children[0].nativeElement.nodeName?e.debugElement.children[0]:e.debugElement,(0,c.isNgDef)(t,"d")?(0,p.default)(e.point,"componentInstance",{get:function(){return v.ngMocks.get(e.point,t)}}):(0,c.isNgDef)(t,"p")&&(0,p.default)(e.point,"componentInstance",{get:function(){return v.ngMocks.findInstance(e.point,t)}}),function(e,t){if(e)try{t()}catch(e){}}(!r,(function(){return(0,_.default)(e.componentInstance,e.point.componentInstance,[])}))}(y,r,n):function(e,t,r){var n;try{n=(0,l.getInjection)(t)}catch(e){if((0,c.isNgDef)(t,"p"))throw new Error(["Cannot render ".concat((0,u.default)(t),"."),"Did you forget to set $implicit param, or add the pipe to providers?","https://ng-mocks.sudo.eu/guides/pipe"].join(" "));throw e}r&&v.ngMocks.stub(n,r),e.point=(0,h.MockService)(o.DebugElement,{childNodes:[],children:[],componentInstance:n,nativeElement:(0,h.MockService)(HTMLElement)}),(0,_.default)(e.componentInstance,e.point.componentInstance,[],!0)}(y,r,n),y};return f.declaration=e,f.bindings=t,f.configureTestBed=function(e,t){return function(){var r,n=(0,a.getTestBed)(),o=(null===(r=n._compiler)||void 0===r?void 0:r.declarations)||n.declarations||n._declarations;if(!o||-1===o.indexOf(e)){!function(e){var t=s.default.global.get("flags"),r=(0,a.getTestBed)();e.reset||!r._instantiated&&!r._testModuleRef?v.ngMocks.flushTestBed():"throw"!==t.onTestBedFlushNeed&&(r._instantiated||r._testModuleRef)&&("warn"===t.onTestBedFlushNeed&&console.warn(b),v.ngMocks.flushTestBed())}(t);try{var l=[];e.providers&&l.push(e.providers),l.push(e),a.TestBed.configureTestingModule({declarations:l})}catch(e){!function(e){var t=new Error(b);throw(0,i.default)(t,"parent",e),t}(e)}}}}(e,n),f}},1661:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)return!0;var n=e.codePointAt(0);if(n&&n>=65&&n<=90&&null!==t.match(/\bthis\./gm))return!0;var o=new RegExp("\\(this,\\s*".concat(e,"\\)"),"mg");return null!==t.match(o)}(r[1],t,e)}},402:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return null!==e&&"object"==typeof e&&"InjectionToken"!==e.ngMetadataName&&"object"==typeof Object.getPrototypeOf(e)}},1365:function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},o=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(5006)),u=i(r(7331)),f=i(r(7794)),c=i(r(5020));t.default=function(e,t,r,i){var d,s,v=function(){for(var n=[],o=0;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(3174)),i=o(r(2970)),l=o(r(445));t.default=function(e){var t,r,o,u,f=(0,i.default)(e),c={};(0,a.default)(c,"__ngMocks",!0);var d=l.default.extractMethodsFromPrototype(e);try{for(var s=n(d),v=s.next();!v.done;v=s.next()){var p=v.value;l.default.mock(c,p,f)}}catch(e){t={error:e}}finally{try{v&&!v.done&&(r=s.return)&&r.call(s)}finally{if(t)throw t.error}}var h=l.default.extractPropertiesFromPrototype(e);try{for(var y=n(h),_=y.next();!_.done;_=y.next()){var g=_.value;l.default.mock(c,g,"get",f),l.default.mock(c,g,"set",f)}}catch(e){o={error:e}}finally{try{_&&!_.done&&(u=y.return)&&u.call(y)}finally{if(o)throw o.error}}return Object.setPrototypeOf(c,e),c}},5006:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2970)),i=["sanitize","bypassSecurityTrustHtml","bypassSecurityTrustStyle","bypassSecurityTrustScript","bypassSecurityTrustUrl","bypassSecurityTrustResourceUrl"],l={DomSanitizer:i,Sanitizer:i},u=function(e){var t,r,o,i=Object.getOwnPropertyNames(e);try{for(var u=n(null!==(o=l[(0,a.default)(e)])&&void 0!==o?o:[]),f=u.next();!f.done;f=u.next()){var c=f.value;i.push(c)}}catch(e){t={error:e}}finally{try{f&&!f.done&&(r=u.return)&&r.call(u)}finally{if(t)throw t.error}}return i};t.default=function(e){for(var t,r,o=[],a=e;a&&null!==Object.getPrototypeOf(a);){try{for(var i=(t=void 0,n(u(a))),l=i.next();!l.done;l=i.next()){var f=l.value;if("constructor"!==f){var c=Object.getOwnPropertyDescriptor(a,f);c&&(c.get||c.set)||-1!==o.indexOf(f)||o.push(f)}}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}a=Object.getPrototypeOf(a)}return o}},7794:function(e,t){var r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){for(var t,n,o=[],a=e;a&&null!==Object.getPrototypeOf(a);){try{for(var i=(t=void 0,r(Object.getOwnPropertyNames(a))),l=i.next();!l.done;l=i.next()){var u=l.value;if("constructor"!==u){var f=Object.getOwnPropertyDescriptor(a,u);f&&(f.get||f.set)&&-1===o.indexOf(u)&&o.push(u)}}}catch(e){t={error:e}}finally{try{l&&!l.done&&(n=i.return)&&n.call(i)}finally{if(t)throw t.error}}a=Object.getPrototypeOf(a)}return o}},5020:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){for(var r=e;r&&null!==Object.getPrototypeOf(r);){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}},8536:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=n(r(3174)),a=function(e,t){void 0===t&&(t=!1);var r,n,i=a.customMockFunction&&!t?a.customMockFunction(e):function(e){return n&&n(e),r};return(0,o.default)(i,"__ngMocks",!0),(0,o.default)(i,"__ngMocksSet",(function(e){return n=e})),(0,o.default)(i,"__ngMocksGet",(function(e){return r=e})),i};t.default=a},445:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.registerMockFunction=function(e){(0,o.default)().ngMockshelperMockService.registerMockFunction(e)};var o=n(r(1102)),a=n(r(1365)),i=n(r(3886)),l=n(r(5006)),u=n(r(7331)),f=n(r(7794)),c=n(r(5020)),d=n(r(4235)),s=n(r(8536)),v=n(r(2004)),p=n(r(3663)),h=n(r(9465));(0,o.default)().ngMockshelperMockService=(0,o.default)().ngMockshelperMockService||{mockFunction:s.default,registerMockFunction:function(e){(0,o.default)().ngMockshelperMockService.mockFunction.customMockFunction=e},createClone:a.default,createMockFromPrototype:i.default,definePropertyDescriptor:l.default,extractMethodsFromPrototype:u.default,extractPropertiesFromPrototype:f.default,extractPropertyDescriptor:c.default,mock:d.default,replaceWithMocks:v.default,resolveProvider:p.default,useFactory:h.default},t.default=(0,o.default)().ngMockshelperMockService},4235:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0&&"get"!==e[0]&&"set"!==e[0]?r=e[0]:e.length>0&&("get"===e[0]||"set"===e[0])&&(t=e[0],r=e[1]),{accessType:t,mockName:r}}(r),u=l.accessType,f=l.mockName,c=Object.getOwnPropertyDescriptor(e,t);if(c&&c[u||"value"])return c[u||"value"];var d=function(e,t,r,n){return"".concat(null!=t?t:"function"==typeof r.prototype?r.prototype.name:(0,a.default)(r),".").concat(e).concat(null!=n?n:"")}(t,f,e,u),s=i.default.mockFunction(d,!!u),v=function(e,t,r){var o;return n(n(n(n({},"get"===r&&e&&e.set?{set:e.set}:{}),"set"===r&&e&&e.get?{get:e.get}:{}),r?{}:{writable:!0}),((o={})[r||"value"]=t,o.configurable=!0,o.enumerable=!0,o))}(c,s,u);return v.get&&v.set&&v.get.__ngMocks&&v.set.__ngMocks&&v.set.__ngMocksSet((function(e){return v.get.__ngMocksGet(e)})),Object.defineProperty(e,t,v),s}},2004:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=r(1763),u=r(5974),f=i(r(8073)),c=["canActivate","canActivateChild","canDeactivate","canMatch","canLoad"],d=function(e,t){return Array.isArray(e[t])?function(e){var t,r,n=[];try{for(var a=o(e),i=a.next();!i.done;i=a.next()){var c=i.value;!f.default.isProvidedDef(c)&&f.default.isExcludedDef(l.NG_MOCKS_GUARDS)||(n.push(c),(0,u.isNgDef)(c)||f.default.touches.add(c))}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}return n}(e[t]):e[t]},s=function(e,t){var r,i,v;if(f.default.cacheDeclarations.has(e))return f.default.cacheDeclarations.get(e);if("object"!=typeof e)return e;if(t.has(e))return e;var p=!1;return Array.isArray(e)?(r=a(function(e,t,r){var n,a,i=[],l=!1;e.set(t,i);try{for(var u=o(t),c=u.next();!c.done;c=u.next()){var d=c.value;f.default.isExcludedDef(d)?l=l||!0:(i.push(r(d,e)),l=l||i[i.length-1]!==d)}}catch(e){n={error:e}}finally{try{c&&!c.done&&(a=u.return)&&a.call(u)}finally{if(n)throw n.error}}return[l,i]}(t,e,s),2),p=r[0],v=r[1]):e&&(i=a(function(e,t,r){var a,i,s,v,p,h,y,_={},g=!1;e.set(t,_);try{for(var b=o(Object.keys(t)),m=b.next();!m.done;m=b.next()){var M=m.value;f.default.isExcludedDef(t[M])?g=g||!0:(_[M]=r(t[M],e),g=g||_[M]!==t[M])}}catch(e){a={error:e}}finally{try{m&&!m.done&&(i=b.return)&&i.call(b)}finally{if(a)throw a.error}}try{for(var k=o(c),w=k.next();!w.done;w=k.next()){var O=w.value,x=d(_,O);x&&_[O].length!==x.length&&(g=g||!0,_=n(n({},_),((p={})[O]=x,p)))}}catch(e){s={error:e}}finally{try{w&&!w.done&&(v=k.return)&&v.call(k)}finally{if(s)throw s.error}}if("object"==typeof _.resolve&&_.resolve){var j={},D=!1;try{for(var S=o(Object.keys(_.resolve)),P=S.next();!P.done;P=S.next()){M=P.value;var C=_.resolve[M];f.default.isProvidedDef(C)||!f.default.isExcludedDef(l.NG_MOCKS_RESOLVERS)?(j[M]=C,(0,u.isNgDef)(C)||f.default.touches.add(C)):D=D||!0}}catch(e){h={error:e}}finally{try{P&&!P.done&&(y=S.return)&&y.call(S)}finally{if(h)throw h.error}}D&&(g=g||!0,_=n(n({},_),{resolve:j}))}return[g,_]}(t,e,s),2),p=i[0],v=i[1]),p?(Object.setPrototypeOf(v,Object.getPrototypeOf(e)),v):e};t.default=function(e){var t=new Map,r=s(e,t);return t.clear(),r}},3663:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=r(6456),l=r(1763),u=a(r(7285)),f=a(r(6297)),c=r(4152),d=a(r(8073)),s=a(r(445)),v=a(r(2415)),p=function(e,t,r){var n=!1,a=!e;return t&&e&&!a&&(a=function(e,t){for(var r,n,a=[],i=2;i=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(3295)),l=a(r(6297)),u=r(4152),f=a(r(8073)),c=a(r(5006)),d=a(r(5020)),s=a(r(9465)),v=r(5779),p=i.default.neverMockProvidedFunction,h=i.default.neverMockToken,y=[[function(e){return"boolean"==typeof e},!1],[function(e){return"number"==typeof e},0],[function(e){return"string"==typeof e},""],[function(e){return null===e},null]],_=function(e,t,r){var a,i;return t===e?r?(0,s.default)(e,(function(){})):void 0:e.multi?void(null===(a=f.default.config.get("ngMocksMulti"))||void 0===a||a.add(t)):(-1!==Object.keys(e).indexOf("useValue")?i=function(e,t){return(0,s.default)(t,(function(){return e.useValue&&"object"==typeof e.useValue?(0,v.MockService)(e.useValue):function(e){var t,r;try{for(var a=n(y),i=a.next();!i.done;i=a.next()){var l=o(i.value,2),u=l[0],f=l[1];if(u(e))return f}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}}(e.useValue)}))}(e,t):-1!==Object.keys(e).indexOf("useExisting")?i=e:-1!==Object.keys(e).indexOf("useClass")?i=function(e,t){return f.default.builtProviders.has(e.useClass)&&f.default.builtProviders.get(e.useClass)===e.useClass?e:(0,s.default)(t,(function(){return(0,v.MockService)(e.useClass)}))}(e,t):-1!==Object.keys(e).indexOf("useFactory")&&(i=(0,s.default)(t,(function(){return{}}))),i)};t.default=function(e,t){void 0===t&&(t=!1);var r=(0,l.default)(e);if("mock"===f.default.getResolution(r));else{if(function(e){return"function"==typeof e&&-1!==p.indexOf(e.name)}(r))return e;if(function(e){return(0,u.isNgInjectionToken)(e)&&-1!==h.indexOf(e.toString())}(r))return}var o=f.default.flags.has("cacheProvider")?f.default.cacheProviders:void 0;return r===e&&o&&o.has(r)?o.get(r):function(e,t,r){var o;return"function"==typeof t&&(o=function(e,t){return(0,s.default)(t,(function(){var r=(0,v.MockService)(t);return t!==e&&-1!==Object.keys(e).indexOf("useClass")&&function(e,t){var r,o,a=Object.getOwnPropertyNames(e),i=(0,v.MockService)(t);try{for(var l=n(Object.getOwnPropertyNames(i)),u=l.next();!u.done;u=l.next()){var f=u.value;if(-1===a.indexOf(f)){var s=(0,d.default)(i,f);(0,c.default)(e,f,s)}}}catch(e){r={error:e}}finally{try{u&&!u.done&&(o=l.return)&&o.call(l)}finally{if(r)throw r.error}}}(r,e.useClass),r}))}(e,t)),t===e&&o&&r&&r.set(t,o),o}(e,r,o)||_(e,r,t)}},5779:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MockService=function(e){for(var t=[],r=1;r0&&"string"==typeof t[0]?t[0]:t[1],o=t.length>0&&t[0]&&"object"==typeof t[0]?t[0]:void 0,a=new Map,i=v(a,e,n,o);return a.clear(),i};var i=a(r(2970)),l=a(r(8195)),u=a(r(96)),f=a(r(2956)),c=a(r(402)),d=a(r(445)),s=[[u.default,function(e,t){var r=d.default.createMockFromPrototype(t.prototype);return e.set(t,r),r}],[f.default,function(e,t,r){var n=d.default.mockFunction("func:".concat(r||(0,i.default)(t)));return e.set(t,n()),n}],[function(e){return Array.isArray(e)},function(){return[]}],[c.default,function(e,t,r,o){var a,i,l=d.default.createMockFromPrototype(t.constructor.prototype);e.set(t,l);try{for(var u=n(Object.keys(t)),f=u.next();!f.done;f=u.next()){var c=f.value,s=o(e,t[c],"".concat(r||"instance",".").concat(c));void 0!==s&&(l[c]=s)}}catch(e){a={error:e}}finally{try{f&&!f.done&&(i=u.return)&&i.call(u)}finally{if(a)throw a.error}}return Object.setPrototypeOf(l,Object.getPrototypeOf(t)),l}]],v=function(e,t,r,a){void 0===r&&(r="");var i=function(e,t,r,a){var i,l,u;try{for(var f=n(s),c=f.next();!c.done;c=f.next()){var d=o(c.value,2),v=d[0],p=d[1];if(v(t))return null!==(u=e.get(t))&&void 0!==u?u:p(e,t,r,a)}}catch(e){i={error:e}}finally{try{c&&!c.done&&(l=f.return)&&l.call(f)}finally{if(i)throw i.error}}}(e,t,r,v);return a&&(0,l.default)(i,a),i}},534:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},9715:function(e,t,r){var n=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=o(r(2023)),i=r(6456),l=o(r(7285)),u=o(r(6297)),f=r(1433),c=o(r(445)),d=o(r(7112)),s=o(r(3309)),v=function(e,t,r,n){var o=function(e,t){var r=(0,u.default)(t);return a.default.NG_VALIDATORS&&r===a.default.NG_VALIDATORS?(0,s.default)(r,(function(){return new f.MockValidatorProxy(e)})):a.default.NG_ASYNC_VALIDATORS&&r===a.default.NG_ASYNC_VALIDATORS?(0,s.default)(r,(function(){return new f.MockAsyncValidatorProxy(e)})):a.default.NG_VALUE_ACCESSOR&&r===a.default.NG_VALUE_ACCESSOR?(0,s.default)(r,(function(){return new f.MockControlValueAccessorProxy(e)})):void 0}(t,r);if(o)return o;var i=function(e,t,r){var n=(0,u.default)(r);if(n!==a.default.NgControl&&n!==a.default.FormControlDirective)return r!==n&&(0,l.default)(r.useExisting)===e?(0,d.default)(n,t):void 0}(e,t,r);return i||c.default.resolveProvider(r,n)};t.default=function(e,t,r,o){var l,f,c,d=[];try{for(var s=n((0,i.flatten)(r||[])),p=s.next();!p.done;p=s.next()){var h=p.value;(0,u.default)(h)===a.default.NG_VALUE_ACCESSOR&&(c=!1);var y=v(e,t,h,o);y&&d.push(y)}}catch(e){l={error:e}}finally{try{p&&!p.done&&(f=s.return)&&f.call(s)}finally{if(l)throw l.error}}return{providers:d,setControlValueAccessor:c}}},6847:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},a=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=i(r(5551)),u=i(r(5756)),f=i(r(615)),c=i(r(5555)),d=i(r(8385)),s=i(r(8073)),v=i(r(224)),p=i(r(445)),h=i(r(9715)),y=i(r(7112));t.default=function(e,t,r,i){var _,g,b,m,M=s.default.config.has("mockNgDefResolver");M||s.default.config.set("mockNgDefResolver",new l.default);var k=n({},i);if(void 0!==r.exportAs&&(k.exportAs=r.exportAs),void 0!==r.selector&&(k.selector=r.selector),void 0!==r.standalone&&(k.standalone=r.standalone),r.standalone&&r.imports){var w=o((0,v.default)({imports:r.imports,skipExports:!0}),2)[1].imports;(null==w?void 0:w.length)&&(k.imports=w)}if(r.hostDirectives){var O=o((0,v.default)({hostDirectives:r.hostDirectives,skipExports:!0}),2)[1].hostDirectives;(null==O?void 0:O.length)&&(k.hostDirectives=O)}var x=(0,h.default)(e,t,r.providers||[],s.default.config.get("mockNgDefResolver")),j=x.setControlValueAccessor,D=x.providers;D.push((0,y.default)(e,t)),k.providers=D;var S=(0,h.default)(e,t,r.viewProviders||[],s.default.config.get("mockNgDefResolver")).providers;S.length>0&&(k.viewProviders=S);var P=function(e,t,r){return{config:s.default.config.get(e),outputs:t.outputs,queryScanKeys:[],setControlValueAccessor:r}}(e,r,null!=j?j:-1!==p.default.extractMethodsFromPrototype(e.prototype).indexOf("writeValue"));(0,f.default)(t,e,P),r.queries&&(0,u.default)(t,r.inputs,Object.keys(r.queries)),(0,c.default)(t,r.outputs),P.queryScanKeys=(0,d.default)(t,r.queries),P.hostBindings=[];try{for(var C=a(r.hostBindings||[]),N=C.next();!N.done;N=C.next()){var T=o(N.value,1)[0];-1===P.hostBindings.indexOf(T)&&P.hostBindings.push(T)}}catch(e){_={error:e}}finally{try{N&&!N.done&&(g=C.return)&&g.call(C)}finally{if(_)throw _.error}}P.hostListeners=[];try{for(var E=a(r.hostListeners||[]),A=E.next();!A.done;A=E.next())T=o(A.value,1)[0],-1===P.hostListeners.indexOf(T)&&P.hostListeners.push(T)}catch(e){b={error:e}}finally{try{A&&!A.done&&(m=E.return)&&m.call(E)}finally{if(b)throw b.error}}return M||s.default.config.delete("mockNgDefResolver"),k}},6932:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6456),a=n(r(6804)),i=r(6763),l=n(r(8073)),u=n(r(5937));t.default=function(e,t,r,n,f,c){if((0,a.default)(e,r),(0,i.isMockNgDef)(e,t))return e;if(l.default.flags.has(n)&&l.default.cacheDeclarations.has(e))return(0,u.default)(e);var d=l.default.config.has("ngMocksDepsResolution");d||l.default.config.set("ngMocksDepsResolution",new Map);var s=(0,o.extendClass)(f);return c(e,s),l.default.flags.has(n)&&l.default.cacheDeclarations.set(e,s),d||l.default.config.delete("ngMocksDepsResolution"),s}},7610:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(6739),a=n(r(8073));t.default=function(e,t){var r,n=(0,o.getSourceOfMock)(e),i=null!==(r=a.default.configInstance.get(n))&&void 0!==r?r:{__set:!0};i.exported||(i.exported=new Set),t&&i.exported.add((0,o.getSourceOfMock)(t)),i.__set&&(i.__set=void 0,a.default.configInstance.set(n,i))}},5937:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(1763),a=n(r(8073)),i=n(r(5687));t.default=function(e){var t;try{t=(0,i.default)().debugElement.injector.get(o.NG_MOCKS).get(e)}catch(e){}return t||(t=a.default.cacheDeclarations.get(e)),e.__ngMocksResolutions&&a.default.config.has("mockNgDefResolver")&&a.default.config.get("mockNgDefResolver").merge(e.__ngMocksResolutions),t}},7112:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return{provide:e,useExisting:t}}},3309:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return{multi:!0,provide:e,useFactory:t}}},4673:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o{t.d(o,{A:()=>r});const r={flags:["cacheModule","cacheComponent","cacheDirective","cacheProvider","correctModuleExports"],mockRenderCacheSize:25,neverMockModule:["ApplicationModule","CommonModule","BrowserModule","_ApplicationModule","_CommonModule","_BrowserModule"],neverMockProvidedFunction:["DomRendererFactory2","EventManager","Injector","RendererFactory2","Sanitizer","DomSanitizer","DomSanitizerImpl","ApplicationInitStatus","ApplicationRef","Compiler","IterableDiffers","KeyValueDiffers","_DomRendererFactory2","_EventManager","_Injector","_Sanitizer","_DomSanitizer","_DomSanitizerImpl","_ApplicationInitStatus","_ApplicationRef","_Compiler","_IterableDiffers","_KeyValueDiffers"],neverMockToken:["InjectionToken Set Injector scope.","InjectionToken EventManagerPlugins","InjectionToken HammerGestureConfig","InjectionToken AppId","InjectionToken DefaultCurrencyCode","InjectionToken LocaleId","InjectionToken SCHEDULER_TOKEN"],onMockBuilderMissingDependency:"throw",onMockInstanceRestoreNeed:"warn",onTestBedFlushNeed:"warn",dependencies:["declarations","hostDirectives","entryComponents","bootstrap","providers","viewProviders","imports","exports"]}},174:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(932);const n=(e,o,t,n=!1)=>{r.A.definePropertyDescriptor(e,o,{configurable:!0,enumerable:n,value:t,writable:!0})}},456:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.d(__webpack_exports__,{Ah:()=>getInjection,Bq:()=>flatten,He:()=>extendClass,LG:()=>mapValues,Nn:()=>mapEntries,by:()=>extractDependency,d4:()=>mapKeys,d5:()=>getTestBedInjection});var _angular_core_testing__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(957),_core_define_property__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(174),_core_reflect_parameters_resolve__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(749),_func_get_global__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(102),_func_get_name__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(970),_ng_mocks_universe__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(73);const getTestBedInjection=e=>{try{return getInjection(e)}catch(e){return}},getInjection=e=>{const o=(0,_angular_core_testing__WEBPACK_IMPORTED_MODULE_0__.getTestBed)();return o.inject?o.inject(e):o.get(e)},flatten=(e,o=[])=>{if(Array.isArray(e))for(const t of e)flatten(t,o);else if(null!==e&&"object"==typeof e&&Array.isArray(e.ɵproviders))for(const t of e.ɵproviders)flatten(t,o);else o.push(e);return o},mapKeys=e=>{const o=[];return e.forEach(((e,t)=>o.push(t))),o},mapValues=(e,o)=>{const t=[];return o?e.forEach((e=>{o.add(e)})):e.forEach((e=>{t.push(e)})),t},mapEntries=(e,o)=>{const t=[];return o?e.forEach(((e,t)=>o.set(t,e))):e.forEach(((e,o)=>t.push([o,e]))),t},extractDependencyArray=(e,o)=>{for(const t of e){const e=t&&"object"==typeof t?t.ngMetadataName:void 0;"Optional"!==e&&"SkipSelf"!==e&&"Self"!==e&&o.add(t)}},extractDependency=(e,o)=>{if(o)for(const t of e)Array.isArray(t)?extractDependencyArray(t,o):o.add(t)},extendClassicClass=base=>{let child;const index=_ng_mocks_universe__WEBPACK_IMPORTED_MODULE_3__.A.index(),glb=(0,_func_get_global__WEBPACK_IMPORTED_MODULE_4__.A)();glb.ngMocksParent=base;try{eval(`\n var glb = typeof window === 'undefined' ? global : window;\n class MockMiddleware${index} extends glb.ngMocksParent {};\n glb.ngMocksResult = MockMiddleware${index};\n `),child=glb.ngMocksResult}catch(e){class o extends glb.ngMocksParent{}child=o}finally{glb.ngMocksResult=void 0,glb.ngMocksParent=void 0}return(0,_core_define_property__WEBPACK_IMPORTED_MODULE_1__.A)(child.prototype,`__ngMocks_index_${index}`,void 0,!1),child},extendClass=e=>{const o=extendClassicClass(e);(0,_core_define_property__WEBPACK_IMPORTED_MODULE_1__.A)(o,"name",`MockMiddleware${(0,_func_get_name__WEBPACK_IMPORTED_MODULE_5__.A)(e)}`,!0);const t=(0,_core_reflect_parameters_resolve__WEBPACK_IMPORTED_MODULE_2__.A)(e);return t.length>0&&(0,_core_define_property__WEBPACK_IMPORTED_MODULE_1__.A)(o,"parameters",[...t]),o}},749:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(673);const n=e=>{var o;return null!==(o=(0,r.A)(e).parameters)&&void 0!==o?o:[]}},763:(e,o,t)=>{t.d(o,{C3:()=>i,Em:()=>s,So:()=>c,ZG:()=>_,en:()=>n,gG:()=>l,rO:()=>a});var r=t(614);const n=new r.InjectionToken("NG_MOCKS");n.__ngMocksSkip=!0;const s=new r.InjectionToken("NG_MOCKS_TOUCHES");s.__ngMocksSkip=!0;const c=new r.InjectionToken("NG_MOCKS_OVERRIDES");c.__ngMocksSkip=!0;const _=new r.InjectionToken("NG_MOCKS_GUARDS");_.__ngMocksSkip=!0;const i=new r.InjectionToken("NG_MOCKS_RESOLVERS");i.__ngMocksSkip=!0;const a=new r.InjectionToken("NG_MOCKS_INTERCEPTORS");a.__ngMocksSkip=!0;const l=new r.InjectionToken("NG_MOCKS_ROOT_PROVIDERS");l.__ngMocksSkip=!0},439:(e,o,t)=>{function r({name:e,alias:o,required:t},r=!1){return t?{name:e,alias:o,required:t}:o&&e!==o?r?o:`${e}:${o}`:r?"":e}t.d(o,{A:()=>r})},184:(e,o,t)=>{function r(e){if("string"==typeof e){const[o,t]=e.split(":").map((e=>e.trim()));return o!==t&&t?{name:o,alias:t}:{name:o}}return e}t.d(o,{A:()=>r})},285:(e,o,t)=>{t.d(o,{A:()=>r});const r=e=>"function"==typeof e&&e.__forward_ref__?e():e},102:(e,o,t)=>{t.d(o,{A:()=>r});const r=()=>"undefined"==typeof window?t.g:window},970:(e,o,t)=>{t.d(o,{A:()=>n});const r=new RegExp("[^0-9a-z]+","mgi"),n=e=>{let o;return"function"==typeof e&&e.name?o=e.name:"function"==typeof e?o="arrowFunction":"object"==typeof e&&e&&"InjectionToken"===e.ngMetadataName?o=e._desc:"object"==typeof e&&e&&"function"==typeof e.constructor&&(o=e.constructor.name),o||(o="unknown"),o.replace(r,"_")}},297:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(659);const n=e=>e&&"object"==typeof e&&e.provide?e.provide:(0,r.h)(e)?e.ngModule:e&&"object"==typeof e&&e.directive?e.directive:e},218:(e,o,t)=>{t.d(o,{p:()=>p});var r=t(152),n=t(673);const s=(e,o)=>{const{decorators:t}=(0,n.A)(e);if(0===t.length)return!1;let r=1;if("Injectable"===o&&-1!==t.indexOf("Injectable"))return!0;for(;"Injectable"===t[t.length-r];)r+=1;return t[t.length-r]===o},c=(e,o)=>(!o||"m"===o)&&s(e,"NgModule"),_=(e,o)=>(!o||"c"===o)&&s(e,"Component"),i=(e,o)=>(!o||"d"===o)&&s(e,"Directive"),a=(e,o)=>(!o||"p"===o)&&s(e,"Pipe"),l=(e,o)=>(!o||"i"===o)&&s(e,"Injectable");function p(e,o){if("t"===o)return(0,r.S)(e);if("function"!=typeof e)return!1;const t=c(e,o),n=_(e,o),s=i(e,o),p=a(e,o),u=l(e,o);return t||n||s||p||u}},152:(e,o,t)=>{t.d(o,{S:()=>r});const r=e=>e&&"object"==typeof e&&"InjectionToken"===e.ngMetadataName},659:(e,o,t)=>{t.d(o,{h:()=>r});const r=e=>e&&"object"==typeof e&&"function"==typeof e.ngModule},73:(e,o,t)=>{t.d(o,{A:()=>p});var r=t(295),n=t(102),s=t(970);const c=e=>()=>(_.global.has(e)||_.global.set(e,new Map),_.global.get(e));(0,n.A)().ngMocksUniverse=(0,n.A)().ngMocksUniverse||{};const _=(0,n.A)().ngMocksUniverse;_.builtDeclarations=new Map,_.builtProviders=new Map,_.cacheDeclarations=new Map,_.cacheProviders=new Map,_.config=new Map,_.configInstance=new Map,_.flags=new Set(r.A.flags),_.global=new Map,_.touches=new Set,_.global.set("flags",{onMockBuilderMissingDependency:r.A.onMockBuilderMissingDependency,onMockInstanceRestoreNeed:r.A.onMockInstanceRestoreNeed,onTestBedFlushNeed:r.A.onTestBedFlushNeed}),_.getOverrides=c("overrides"),_.getDefaults=c("defaults"),_.getConfigMock=c("configMock");const i=e=>{{const o=_.getDefaults().get(e);if(o)return o}{const o="function"==typeof e?_.getDefaults().get(`@${(0,s.A)(e)}`):void 0;if(o)return o}return[]};_.getResolution=e=>{const o=_.config.get("ngMocksDepsResolution");if(null==o?void 0:o.has(e))return o.get(e);const[t]=i(e);return t},_.getBuildDeclaration=e=>{if(_.builtDeclarations.has(e))return _.builtDeclarations.get(e);const[o,t]=i(e);return"exclude"===o?null:o&&"keep"!==o?"replace"===o?t:void 0:e},_.hasBuildDeclaration=e=>{if(_.builtDeclarations.has(e))return void 0!==_.builtDeclarations.get(e);const[o]=i(e);return!!o&&"mock"!==o};const a=e=>_.hasBuildDeclaration(e),l=e=>_.getBuildDeclaration(e);_.isExcludedDef=e=>{const o=_.getResolution(e);return(!o||"exclude"===o)&&a(e)&&null===l(e)},_.isProvidedDef=e=>a(e)&&null!==l(e),_.getDefaults().set("@StoreDevtoolsModule",["exclude"]),_.indexValue=0,_.index=()=>_.indexValue++;const p=_},589:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(20);const n=(e,o,t,n)=>{var s;const c=null!==(s=(0,r.A)(e,o))&&void 0!==s?s:{};if(!n&&c.set&&c.set.__ngMocksProxy)return c.set(t),t;const _={configurable:!0,enumerable:!0};return"get"===n&&c.set?_.set=c.set:"set"===n&&c.get&&(_.get=c.get),n?_[n]=t:(_.writable=!0,_.value=t),Object.defineProperty(e,o,_),t}},195:(e,o,t)=>{t.d(o,{A:()=>_});var r=t(331),n=t(794),s=t(20),c=t(932);const _=(e,o,t)=>{if("string"==typeof o)return c.A.mock(e,o,t);let _=e,i=o;const a=["__zone_symbol__unconfigurables"];"function"==typeof o&&(_=c.A.createClone(o),i=e,a.push(...Object.getOwnPropertyNames(_)));const l=[...(0,r.A)(i),...(0,n.A)(i)];for(const e of l){const o=-1===a.indexOf(e)?(0,s.A)(i,e):void 0;o&&Object.prototype.hasOwnProperty.call(o,"value")&&void 0===o.value||c.A.definePropertyDescriptor(_,e,o)}return _}},760:(e,o,t)=>{t.d(o,{A:()=>s});var r=t(73),n=t(589);const s=e=>{const o=[],t=r.A.configInstance.get(e);if(null==t?void 0:t.overloads)for(const[e,r,s]of t.overloads)e?o.push((o=>{(0,n.A)(o,e,r,s)})):o.push(r);return o}},365:(e,o,t)=>{t.d(o,{A:()=>_});var r=t(6),n=t(331),s=t(794),c=t(20);const _=(e,o,t,_)=>{const i=function(...r){return(_||e).apply(o===this?t:this,r)};for(const o of[...(0,n.A)(e),...(0,s.A)(e)]){const t=(0,c.A)(e,o);(0,r.A)(i,o,t)}return i}},6:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(20);const n=(e,o,t)=>{if(!t||!e)return!1;if(Object.defineProperty){const n=(0,r.A)(e,o);if(!1===(null==n?void 0:n.configurable))return!1;Object.defineProperty(e,o,Object.assign(Object.assign(Object.assign({},t),{configurable:!0}),void 0===t.get&&void 0===t.set||!1===t.writable?{writable:!0}:{}))}else e[o]=t.value;return!0}},331:(e,o,t)=>{t.d(o,{A:()=>_});var r=t(970);const n=["sanitize","bypassSecurityTrustHtml","bypassSecurityTrustStyle","bypassSecurityTrustScript","bypassSecurityTrustUrl","bypassSecurityTrustResourceUrl"],s={DomSanitizer:n,Sanitizer:n},c=e=>{var o;const t=Object.getOwnPropertyNames(e);for(const n of null!==(o=s[(0,r.A)(e)])&&void 0!==o?o:[])t.push(n);return t},_=e=>{const o=[];let t=e;for(;t&&null!==Object.getPrototypeOf(t);){for(const e of c(t)){if("constructor"===e)continue;const r=Object.getOwnPropertyDescriptor(t,e);r&&(r.get||r.set)||-1!==o.indexOf(e)||o.push(e)}t=Object.getPrototypeOf(t)}return o}},794:(e,o,t)=>{t.d(o,{A:()=>r});const r=e=>{const o=[];let t=e;for(;t&&null!==Object.getPrototypeOf(t);){for(const e of Object.getOwnPropertyNames(t)){if("constructor"===e)continue;const r=Object.getOwnPropertyDescriptor(t,e);r&&(r.get||r.set)&&-1===o.indexOf(e)&&o.push(e)}t=Object.getPrototypeOf(t)}return o}},20:(e,o,t)=>{t.d(o,{A:()=>r});const r=(e,o)=>{let t=e;for(;t&&null!==Object.getPrototypeOf(t);){const e=Object.getOwnPropertyDescriptor(t,o);if(e)return e;t=Object.getPrototypeOf(t)}}},932:(e,o,t)=>{t.d(o,{A:()=>A,O:()=>M});var r=t(102),n=t(365),s=t(174),c=t(970),_=t(6),i=t(331),a=t(794),l=t(20);const p=(e,o=!1)=>{const t=p.customMockFunction&&!o?p.customMockFunction(e):e=>(n&&n(e),r);let r,n;return(0,s.A)(t,"__ngMocks",!0),(0,s.A)(t,"__ngMocksSet",(e=>n=e)),(0,s.A)(t,"__ngMocksGet",(e=>r=e)),t},u=p;var d=t(763),f=t(218),g=t(73);const k=["canActivate","canActivateChild","canDeactivate","canMatch","canLoad"],m=(e,o)=>Array.isArray(e[o])?(e=>{const o=[];for(const t of e)!g.A.isProvidedDef(t)&&g.A.isExcludedDef(d.ZG)||(o.push(t),(0,f.p)(t)||g.A.touches.add(t));return o})(e[o]):e[o],h=(e,o)=>{if(g.A.cacheDeclarations.has(e))return g.A.cacheDeclarations.get(e);if("object"!=typeof e)return e;if(o.has(e))return e;let t,r=!1;return Array.isArray(e)?[r,t]=((e,o,t)=>{const r=[];let n=!1;e.set(o,r);for(const s of o)g.A.isExcludedDef(s)?n=n||!0:(r.push(t(s,e)),n=n||r[r.length-1]!==s);return[n,r]})(o,e,h):e&&([r,t]=((e,o,t)=>{let r={},n=!1;e.set(o,r);for(const s of Object.keys(o))g.A.isExcludedDef(o[s])?n=n||!0:(r[s]=t(o[s],e),n=n||r[s]!==o[s]);for(const e of k){const o=m(r,e);o&&r[e].length!==o.length&&(n=n||!0,r=Object.assign(Object.assign({},r),{[e]:o}))}if("object"==typeof r.resolve&&r.resolve){const e={};let o=!1;for(const t of Object.keys(r.resolve)){const n=r.resolve[t];g.A.isProvidedDef(n)||!g.A.isExcludedDef(d.C3)?(e[t]=n,(0,f.p)(n)||g.A.touches.add(n)):o=o||!0}o&&(n=n||!0,r=Object.assign(Object.assign({},r),{resolve:e}))}return[n,r]})(o,e,h)),r?(Object.setPrototypeOf(t,Object.getPrototypeOf(e)),t):e};var v=t(663),b=t(465);(0,r.A)().ngMockshelperMockService=(0,r.A)().ngMockshelperMockService||{mockFunction:u,registerMockFunction:e=>{(0,r.A)().ngMockshelperMockService.mockFunction.customMockFunction=e},createClone:n.A,createMockFromPrototype:e=>{const o=(0,c.A)(e),t={};(0,s.A)(t,"__ngMocks",!0);const r=A.extractMethodsFromPrototype(e);for(const e of r)A.mock(t,e,o);const n=A.extractPropertiesFromPrototype(e);for(const e of n)A.mock(t,e,"get",o),A.mock(t,e,"set",o);return Object.setPrototypeOf(t,e),t},definePropertyDescriptor:_.A,extractMethodsFromPrototype:i.A,extractPropertiesFromPrototype:a.A,extractPropertyDescriptor:l.A,mock:(e,o,...t)=>{const{accessType:r,mockName:n}=(e=>{let o,t;return e.length>0&&"get"!==e[0]&&"set"!==e[0]?t=e[0]:e.length>0&&("get"===e[0]||"set"===e[0])&&(o=e[0],t=e[1]),{accessType:o,mockName:t}})(t),s=Object.getOwnPropertyDescriptor(e,o);if(s&&s[r||"value"])return s[r||"value"];const _=((e,o,t,r)=>`${null!=o?o:"function"==typeof t.prototype?t.prototype.name:(0,c.A)(t)}.${e}${null!=r?r:""}`)(o,n,e,r),i=A.mockFunction(_,!!r),a=((e,o,t)=>Object.assign(Object.assign(Object.assign(Object.assign({},"get"===t&&e&&e.set?{set:e.set}:{}),"set"===t&&e&&e.get?{get:e.get}:{}),t?{}:{writable:!0}),{[t||"value"]:o,configurable:!0,enumerable:!0}))(s,i,r);return a.get&&a.set&&a.get.__ngMocks&&a.set.__ngMocks&&a.set.__ngMocksSet((e=>a.get.__ngMocksGet(e))),Object.defineProperty(e,o,a),i},replaceWithMocks:e=>{const o=new Map,t=h(e,o);return o.clear(),t},resolveProvider:v.A,useFactory:b.A};const A=(0,r.A)().ngMockshelperMockService;function M(e){(0,r.A)().ngMockshelperMockService.registerMockFunction(e)}},663:(e,o,t)=>{t.d(o,{A:()=>u});var r=t(456),n=t(763),s=t(285),c=t(297),_=t(152),i=t(73),a=t(932),l=t(415);const p=(e,o,t)=>{let r=!1,n=!e;return o&&e&&!n&&(n=((e,o,...t)=>{for(const r of t)if(e[r]!==o[r])return!0;return!1})(o,e,"provide","useValue","useClass","useExisting","useFactory","deps")),(o===t&&e!==o||o!==t&&n)&&(r=!0),!r},u=(e,o,t)=>{const{provide:u,multi:d,change:f}=((e,o)=>{const t=(0,c.A)(e);return{change:()=>{o&&o()},multi:e!==t&&!!e.multi,provide:t}})(e,t);if(((e,o)=>null===i.A.builtProviders.get(o)||(o!==e&&e.deps&&(0,r.by)(e.deps,i.A.config.get("ngMocksDeps")),((e,o)=>{if(((e,o)=>i.A.builtProviders.has(n.rO)&&null===i.A.builtProviders.get(n.rO)&&(0,_.S)(o)&&"InjectionToken HTTP_INTERCEPTORS"===o.toString()&&o!==e)(e,o)){if(e.useFactory||e.useValue)return!0;const o=(0,s.A)(e.useExisting)||e.useClass;if(!i.A.builtProviders.has(o)||null===i.A.builtProviders.get(o))return!0}return!1})(e,o)))(e,u))return f();if(((e,o)=>{var t;return!(!e||"object"!=typeof e||!e.useExisting||!e.useExisting.mockOf&&(i.A.getResolution(o)&&!(null===(t=i.A.config.get(o))||void 0===t?void 0:t.__internal)||"keep"!==i.A.getResolution((0,s.A)(e.useExisting))))})(e,u))return i.A.touches.add(u),e;if(o.has(u))return((e,o)=>{let t=o;const r=i.A.builtProviders.get(e);return r&&(t=r),"function"==typeof t&&(t={provide:e,useClass:t}),t})(u,o.get(u));const g=((e,o,t)=>{var r;let n=((e,o)=>{if(i.A.builtProviders.has(o)){const t=i.A.builtProviders.get(o);return t===o?e:t}})(e,o);return!n&&i.A.flags.has("skipMock")&&"mock"!==i.A.getResolution(o)&&(null===(r=i.A.config.get("ngMocksDepsSkip"))||void 0===r||r.add(o),n=e),n||(n=(0,l.A)(e)),n=((e,o,t)=>{if(o!==e&&t&&t.useValue){const e=a.A.replaceWithMocks(t.useValue);return e===t.useValue?t:Object.assign(Object.assign({},t),{useValue:e})}return t})(e,o,n),p(n,e,o)||t(),n&&i.A.touches.add(o),n})(e,u,f);return d&&"object"==typeof g?Object.assign(Object.assign({},g),{multi:d}):g}},465:(e,o,t)=>{t.d(o,{A:()=>p});var r=t(614),n=t(456),s=t(152),c=t(73),_=t(195),i=t(760),a=t(839);const l=e=>(0,s.S)(e)||"string"==typeof e,p=(e,o,t)=>({deps:[r.Injector],provide:e,useFactory:r=>{const s=o?o():(0,a.K)(e),p=c.A.getOverrides().get(e),u=p?(0,n.LG)(p):[];return t&&u.push(t),u.push(...(0,i.A)(e)),((e,o,t,r,n)=>{let s=o;for(const o of t){const t=o(s,r);l(e)?s=t:o!==n?t&&(s=(0,_.A)(s,t)):s=t}return s})(e,s,u,r,t)}})},415:(e,o,t)=>{t.d(o,{A:()=>g});var r=t(295),n=t(297),s=t(152),c=t(73),_=t(6),i=t(20),a=t(465),l=t(839);const{neverMockProvidedFunction:p,neverMockToken:u}=r.A,d=[[e=>"boolean"==typeof e,!1],[e=>"number"==typeof e,0],[e=>"string"==typeof e,""],[e=>null===e,null]],f=(e,o,t)=>{var r;if(o===e)return t?(0,a.A)(e,(()=>{})):void 0;if(e.multi)return void(null===(r=c.A.config.get("ngMocksMulti"))||void 0===r||r.add(o));let n;return-1!==Object.keys(e).indexOf("useValue")?n=((e,o)=>(0,a.A)(o,(()=>e.useValue&&"object"==typeof e.useValue?(0,l.K)(e.useValue):(e=>{for(const[o,t]of d)if(o(e))return t})(e.useValue))))(e,o):-1!==Object.keys(e).indexOf("useExisting")?n=e:-1!==Object.keys(e).indexOf("useClass")?n=((e,o)=>c.A.builtProviders.has(e.useClass)&&c.A.builtProviders.get(e.useClass)===e.useClass?e:(0,a.A)(o,(()=>(0,l.K)(e.useClass))))(e,o):-1!==Object.keys(e).indexOf("useFactory")&&(n=(0,a.A)(o,(()=>({})))),n},g=(e,o=!1)=>{const t=(0,n.A)(e);if("mock"===c.A.getResolution(t));else{if((e=>"function"==typeof e&&-1!==p.indexOf(e.name))(t))return e;if((e=>(0,s.S)(e)&&-1!==u.indexOf(e.toString()))(t))return}const r=c.A.flags.has("cacheProvider")?c.A.cacheProviders:void 0;return t===e&&r&&r.has(t)?r.get(t):((e,o,t)=>{let r;return"function"==typeof o&&(r=((e,o)=>(0,a.A)(o,(()=>{const t=(0,l.K)(o);return o!==e&&-1!==Object.keys(e).indexOf("useClass")&&((e,o)=>{const t=Object.getOwnPropertyNames(e),r=(0,l.K)(o);for(const o of Object.getOwnPropertyNames(r)){if(-1!==t.indexOf(o))continue;const n=(0,i.A)(r,o);(0,_.A)(e,o,n)}})(t,e.useClass),t})))(e,o)),o===e&&r&&t&&t.set(o,r),r})(e,t,r)||f(e,t,o)}},839:(e,o,t)=>{t.d(o,{K:()=>a});var r=t(970),n=t(195);const s=e=>{if("function"!=typeof e)return!1;if(!e.prototype)return!0;if((e=>!!(e.ɵprov||e.__annotations__||e.__parameters__||e.parameters))(e))return!1;const o=e.toString();if(null!==o.match(/^class\b/))return!1;const t=o.match(/^function\s+([^\s(]+)\(/);return null===t||!((e,o,t)=>{if(null!==e.match(/^class/))return!0;if(Object.keys(t.prototype).length>0)return!0;const r=e.codePointAt(0);if(r&&r>=65&&r<=90&&null!==o.match(/\bthis\./gm))return!0;const n=new RegExp(`\\(this,\\s*${e}\\)`,"mg");return null!==o.match(n)})(t[1],o,e)};var c=t(932);const _=[[e=>"function"==typeof e&&!s(e),(e,o)=>{const t=c.A.createMockFromPrototype(o.prototype);return e.set(o,t),t}],[s,(e,o,t)=>{const n=c.A.mockFunction(`func:${t||(0,r.A)(o)}`);return e.set(o,n()),n}],[e=>Array.isArray(e),()=>[]],[e=>null!==e&&"object"==typeof e&&"InjectionToken"!==e.ngMetadataName&&"object"==typeof Object.getPrototypeOf(e),(e,o,t,r)=>{const n=c.A.createMockFromPrototype(o.constructor.prototype);e.set(o,n);for(const s of Object.keys(o)){const c=r(e,o[s],`${t||"instance"}.${s}`);void 0!==c&&(n[s]=c)}return Object.setPrototypeOf(n,Object.getPrototypeOf(o)),n}]],i=(e,o,t="",r)=>{const s=((e,o,t,r)=>{var n;for(const[s,c]of _)if(s(o))return null!==(n=e.get(o))&&void 0!==n?n:c(e,o,t,r)})(e,o,t,i);return r&&(0,n.A)(s,r),s};function a(e,...o){const t=o.length>0&&"string"==typeof o[0]?o[0]:o[1],r=o.length>0&&o[0]&&"object"==typeof o[0]?o[0]:void 0,n=new Map,s=i(n,e,t,r);return n.clear(),s}},673:(e,o,t)=>{t.d(o,{A:()=>x});var r=t(614),n=t(174),s=t(439),c=t(184);const _=(e,o)=>{const t=e.indexOf(o);-1!==t&&e.splice(t,1),"Injectable"!==o&&"Pipe"!==o&&"Directive"!==o&&"Component"!==o&&"NgModule"!==o||e.push(o)},i=e=>{const o=[];for(const t of Object.keys(e))o.push(t);return o},a=e=>(o,t,r,n)=>{var _;const{alias:i,required:a}=(0,c.A)({name:t,alias:null!==(_=r.alias)&&void 0!==_?_:r.bindingPropertyName,required:r.required}),l=(0,s.A)({name:t,alias:i,required:a});let p=!0;for(const o of n[e]){if(o===l){p=!1;break}const{name:e,alias:r,required:n}=(0,c.A)(o);if(e===t&&r===i&&n===a){p=!1;break}}p&&n[e].unshift(l)},l=a("inputs"),p=a("outputs"),u=e=>(o,t,r,n)=>{n.queries[t]||(n.queries[t]=Object.assign(Object.assign({isViewQuery:e,ngMetadataName:o,selector:r.selector},void 0===r.read?{}:{read:r.read}),void 0===r.static?{}:{static:r.static}))},d=u(!1),f=u(!0),g=e=>(o,t,r,n)=>{n.queries[t]||(n.queries[t]=Object.assign(Object.assign(Object.assign({isViewQuery:e,ngMetadataName:o,selector:r.selector},void 0===r.descendants?{}:{descendants:r.descendants}),void 0===r.emitDistinctChangesOnly?{}:{emitDistinctChangesOnly:r.emitDistinctChangesOnly}),void 0===r.read?{}:{read:r.read}))},k={ContentChild:d,ContentChildren:g(!1),HostBinding:(e,o,t,r)=>{const n=`[${t.hostPropertyName||o}]`;r.host[n]||(r.host[n]=o),r.hostBindings.push([o,t.hostPropertyName||o,...t.args?[t.args]:[]])},HostListener:(e,o,t,r)=>{const n=`(${t.eventName||o})`;r.host[n]||(r.host[n]=`${o}($event)`),r.hostListeners.push([o,t.eventName||o,...t.args?[t.args]:[]])},Input:l,Output:p,ViewChild:f,ViewChildren:g(!0)},m=e=>{const o=a(e);return(e,t,r,n)=>{var s;const{alias:c,required:_}=void 0===(null===(s=r.args)||void 0===s?void 0:s[0])?{}:"string"==typeof r.args[0]?{alias:r.args[0]}:r.args[0];o(e,t,{alias:c,required:_,bindingPropertyName:c},n)}},h=m("inputs"),v=m("outputs"),b=e=>(o,t,r,n)=>{n.queries[t]||(n.queries[t]=Object.assign({isViewQuery:e,ngMetadataName:o,selector:r.args[0]},r.args[1]))},A=b(!1),M=b(!0),y={ContentChild:A,ContentChildren:A,HostBinding:(e,o,t,r)=>{var n;const s=`[${(null===(n=t.args)||void 0===n?void 0:n[0])||o}]`;r.host[s]||(r.host[s]=o),r.hostBindings.push([o,...t.args||[]])},HostListener:(e,o,t,r)=>{var n;const s=`(${(null===(n=t.args)||void 0===n?void 0:n[0])||o})`;r.host[s]||(r.host[s]=`${o}($event)`),r.hostListeners.push([o,...t.args||[]])},Input:h,Output:v,ViewChild:M,ViewChildren:M},w=(e,o)=>{if(e){e.inputs=e.inputs||[];for(const t of o.inputs)-1===e.inputs.indexOf(t)&&e.inputs.push(t);e.outputs=e.outputs||[];for(const t of o.outputs)-1===e.outputs.indexOf(t)&&e.outputs.push(t);e.queries=Object.assign(Object.assign({},e.queries||[]),o.queries),e.hostBindings=o.hostBindings,e.hostListeners=o.hostListeners}},O=new r["ɵReflectionCapabilities"],C=e=>{if("function"!=typeof e&&"object"!=typeof e)return{};if(Object.prototype.hasOwnProperty.call(e,"__ngMocksParsed"))return e.__ngMocksDeclarations;const o=Object.getPrototypeOf(e),t=o?C(o):{},r=(e=>({host:e.host?Object.assign({},e.host):{},hostBindings:e.hostBindings?[...e.hostBindings]:[],hostListeners:e.hostListeners?[...e.hostListeners]:[],attributes:e.attributes?[...e.attributes]:[],inputs:e.inputs?[...e.inputs]:[],outputs:e.outputs?[...e.outputs]:[],propDecorators:e.propDecorators?Object.assign({},e.propDecorators):{},queries:e.queries?Object.assign({},e.queries):{},decorators:e.decorators?[...e.decorators]:[]}))(t);return(0,n.A)(e,"__ngMocksParsed",!0),((e,o)=>{if(Object.prototype.hasOwnProperty.call(e,"__parameters__")&&e.__parameters__)for(const t of e.__parameters__)for(const e of t||[])"Attribute"===e.ngMetadataName&&-1===o.attributes.indexOf(e.attributeName)&&o.attributes.push(e.attributeName)})(e,r),((e,o)=>{if(Object.prototype.hasOwnProperty.call(e,"__annotations__")&&e.__annotations__)for(const t of e.__annotations__){const e=null==t?void 0:t.ngMetadataName;e&&(o[e]=Object.assign(Object.assign({},t),{attributes:o.attributes}),_(o.decorators,e))}})(e,r),((e,o)=>{var t,r;if(Object.prototype.hasOwnProperty.call(e,"decorators")&&e.decorators)for(const n of e.decorators){const e=null===(r=null===(t=null==n?void 0:n.type)||void 0===t?void 0:t.prototype)||void 0===r?void 0:r.ngMetadataName;e&&(o[e]=n.args?Object.assign({},n.args[0]):{},_(o.decorators,e))}})(e,r),((e,o)=>{var t,r,n;if(Object.prototype.hasOwnProperty.call(e,"propDecorators")&&e.propDecorators)for(const s of i(e.propDecorators)){o.propDecorators[s]=[...o.propDecorators[s]||[],...e.propDecorators[s]];for(const c of e.propDecorators[s]){const e=null===(r=null===(t=null==c?void 0:c.type)||void 0===t?void 0:t.prototype)||void 0===r?void 0:r.ngMetadataName;e&&(null===(n=y[e])||void 0===n||n.call(y,e,s,c,o))}}})(e,r),((e,o)=>{var t;if(Object.prototype.hasOwnProperty.call(e,"__prop__metadata__")&&e.__prop__metadata__)for(const r of i(e.__prop__metadata__)){const n=e.__prop__metadata__[r];for(const e of n){const n=null==e?void 0:e.ngMetadataName;n&&(null===(t=k[n])||void 0===t||t.call(k,n,r,e,o))}}})(e,r),w(r.Directive,r),w(r.Component,r),(0,n.A)(e,"__ngMocksDeclarations",Object.assign(Object.assign(Object.assign({},t),r),{parameters:O.parameters(e)})),e.__ngMocksDeclarations},x=C},614:(e,o,t)=>{e.exports=(e=>{var o={};return t.d(o,e),o})({ChangeDetectorRef:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ChangeDetectorRef,Component:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Component,ComponentFactoryResolver:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ComponentFactoryResolver,ContentChild:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ContentChild,ContentChildren:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ContentChildren,DebugElement:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.DebugElement,Directive:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Directive,ElementRef:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ElementRef,EventEmitter:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.EventEmitter,InjectionToken:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.InjectionToken,Injector:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Injector,Input:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Input,NgModule:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.NgModule,Optional:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Optional,Output:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Output,Pipe:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Pipe,QueryList:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.QueryList,Self:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Self,TemplateRef:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.TemplateRef,ViewChild:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ViewChild,ViewChildren:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ViewChildren,ViewContainerRef:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ViewContainerRef,ɵReflectionCapabilities:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__["ɵReflectionCapabilities"]})},957:(e,o,t)=>{e.exports=(e=>{var o={};return t.d(o,e),o})({TestBed:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_testing_89899de6__.TestBed,getTestBed:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_testing_89899de6__.getTestBed})}},__webpack_module_cache__={};function __webpack_require__(e){var o=__webpack_module_cache__[e];if(void 0!==o)return o.exports;var t=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](t,t.exports,__webpack_require__),t.exports}__webpack_require__.d=(e,o)=>{for(var t in o)__webpack_require__.o(o,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:o[t]})},__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.o=(e,o)=>Object.prototype.hasOwnProperty.call(e,o),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.d(__webpack_exports__,{rX:()=>types_namespaceObject.IMockBuilder,HA:()=>types_namespaceObject.IMockBuilderConfig,Wn:()=>types_namespaceObject.IMockBuilderConfigAll,Me:()=>types_namespaceObject.IMockBuilderConfigComponent,I7:()=>types_namespaceObject.IMockBuilderConfigDirective,tv:()=>types_namespaceObject.IMockBuilderConfigModule,OG:()=>types_namespaceObject.IMockBuilderExtended,sF:()=>types_namespaceObject.IMockBuilderProvider,me:()=>types_namespaceObject.IMockBuilderResult,bk:()=>LegacyControlValueAccessor,JT:()=>Mock,_V:()=>MockBuilder,Am:()=>MockComponent,$u:()=>MockComponents,D2:()=>mock_control_value_accessor_namespaceObject.MockControlValueAccessor,dw:()=>MockDeclaration,uV:()=>MockDeclarations,Cc:()=>MockDirective,nr:()=>MockDirectives,Wm:()=>MockInstance,BN:()=>MockModule,ZJ:()=>MockPipe,yI:()=>MockPipes,Qo:()=>MockProvider,dD:()=>MockProviders,Ty:()=>MockRender,P0:()=>MockRenderFactory,mB:()=>MockReset,KH:()=>mock_service.K,b6:()=>mock_control_value_accessor_namespaceObject.MockValidator,Je:()=>mock_component_types_namespaceObject.MockedComponent,T4:()=>mock_directive_types_namespaceObject.MockedDirective,qZ:()=>mock_module_types_namespaceObject.MockedModule,cm:()=>mock_pipe_types_namespaceObject.MockedPipe,en:()=>core_tokens.en,ZG:()=>core_tokens.ZG,rO:()=>core_tokens.rO,So:()=>core_tokens.So,C3:()=>core_tokens.C3,gG:()=>core_tokens.gG,Em:()=>core_tokens.Em,Ah:()=>core_helpers.Ah,xz:()=>getMockedNgDefOf,VK:()=>getSourceOfMock,d5:()=>core_helpers.d5,IA:()=>isMockControlValueAccessor,Bt:()=>isMockNgDef,AW:()=>isMockOf,lt:()=>isMockValidator,Fk:()=>isMockedNgDefOf,pA:()=>func_is_ng_def.p,SM:()=>func_is_ng_injection_token.S,H5:()=>ngMocks});var mock_control_value_accessor_namespaceObject={};__webpack_require__.r(mock_control_value_accessor_namespaceObject),__webpack_require__.d(mock_control_value_accessor_namespaceObject,{b:()=>LegacyControlValueAccessor});var types_namespaceObject={};__webpack_require__.r(types_namespaceObject);var mock_module_types_namespaceObject={};__webpack_require__.r(mock_module_types_namespaceObject);var mock_component_types_namespaceObject={};__webpack_require__.r(mock_component_types_namespaceObject);var mock_directive_types_namespaceObject={};__webpack_require__.r(mock_directive_types_namespaceObject);var mock_pipe_types_namespaceObject={};__webpack_require__.r(mock_pipe_types_namespaceObject);var ng_mocks_universe=__webpack_require__(73),_a,_b;const stackRoot={id:{},level:"root"},stack=ng_mocks_universe.A.global.get("reporter-stack")||[Object.assign({},stackRoot)];ng_mocks_universe.A.global.set("reporter-stack",stack);const current=()=>stack[stack.length-1],listenersPush=null!==(_a=ng_mocks_universe.A.global.get("reporter-stack-push"))&&void 0!==_a?_a:[];ng_mocks_universe.A.global.set("reporter-stack-push",listenersPush);const listenersPop=null!==(_b=ng_mocks_universe.A.global.get("reporter-stack-pop"))&&void 0!==_b?_b:[];ng_mocks_universe.A.global.set("reporter-stack-pop",listenersPop);const stackPush=()=>{const e={};ng_mocks_universe.A.global.set("reporter-stack-id",e);const o={id:e,level:"runtime"};stack.push(o);for(const e of listenersPush)e(o,stack)},stackPop=()=>{const e=stack.pop();if(0===stack.length&&stack.push("root"===(null==e?void 0:e.level)?e:Object.assign({},stackRoot)),e&&"root"!==e.level)for(const o of listenersPop)o(e,stack);ng_mocks_universe.A.global.set("reporter-stack-id",stack[stack.length-1].id)},subscribePush=e=>{listenersPush.indexOf(e)&&listenersPush.push(e),stack.length>0&&e(stack[stack.length-1],stack)},subscribePop=e=>{-1===listenersPop.indexOf(e)&&listenersPop.push(e)},unsubscribePush=e=>{const o=listenersPush.indexOf(e);-1!==o&&listenersPush.splice(o,1)},unsubscribePop=e=>{const o=listenersPop.indexOf(e);-1!==o&&listenersPop.splice(o,1)},ng_mocks_stack={current,stackPop,stackPush,subscribePop,subscribePush,unsubscribePop,unsubscribePush};var core_=__webpack_require__(614),testing_=__webpack_require__(957),core_helpers=__webpack_require__(456),core_tokens=__webpack_require__(763);const func_extract_tokens=e=>{let o,t,r;for(const n of(0,core_helpers.Bq)(e||[]))"object"==typeof n&&(n.provide===core_tokens.en&&(o=n.useValue),n.provide===core_tokens.So&&(t=n.useValue),n.provide===core_tokens.Em&&(r=n.useValue));return{mocks:o,overrides:t,touches:r}};var core_define_property=__webpack_require__(174),collect_declarations=__webpack_require__(673),func_is_ng_injection_token=__webpack_require__(152);const getNgType=e=>{if("string"==typeof e)return;if((0,func_is_ng_injection_token.S)(e))return"Injectable";const{decorators:o}=(0,collect_declarations.A)(e);for(let e=o.length-1;e>=0;e-=1)if("Injectable"!==o[e])return o[e];return o.length>0?"Injectable":void 0};function isStandalone(e){const o=getNgType(e);return!(!o||"Injectable"===o)&&!0===(0,collect_declarations.A)(e)[o].standalone}var helper_extract_property_descriptor=__webpack_require__(20);const core_def_stack=class{constructor(){this.stack=[],this.push()}push(){this.stack.push(new Map)}pop(){var e;return null!==(e=this.stack.pop())&&void 0!==e?e:new Map}has(e){for(let o=this.stack.length-1;o>=0;o-=1)if(this.stack[o].has(e))return!0;return!1}get(e){for(let o=this.stack.length-1;o>=0;o-=1)if(this.stack[o].has(e))return this.stack[o].get(e)}set(e,o){for(let t=this.stack.length-1;t>=0;t-=1)this.stack[t].set(e,o);return this}merge(e){for(const[o,t]of(0,core_helpers.Nn)(e))this.set(o,t);return this}};var func_get_name=__webpack_require__(970),func_is_ng_def=__webpack_require__(218),func_is_ng_module_def_with_providers=__webpack_require__(659),core_config=__webpack_require__(295);class MockBuilderStash{constructor(){this.data={}}backup(){this.data={builtDeclarations:ng_mocks_universe.A.builtDeclarations,builtProviders:ng_mocks_universe.A.builtProviders,cacheDeclarations:ng_mocks_universe.A.cacheDeclarations,cacheProviders:ng_mocks_universe.A.cacheProviders,config:ng_mocks_universe.A.config,configInstance:ng_mocks_universe.A.configInstance,flags:ng_mocks_universe.A.flags,touches:ng_mocks_universe.A.touches},ng_mocks_universe.A.builtDeclarations=new Map,ng_mocks_universe.A.builtProviders=new Map,ng_mocks_universe.A.cacheDeclarations=new Map,ng_mocks_universe.A.cacheProviders=new Map,ng_mocks_universe.A.config=new Map,ng_mocks_universe.A.configInstance=new Map,ng_mocks_universe.A.flags=new Set(core_config.A.flags),ng_mocks_universe.A.touches=new Set}restore(){for(const e of Object.keys(this.data))ng_mocks_universe.A[e]=this.data[e]}}const core_reflect_provided_in=e=>{var o,t,r;if(e&&("object"==typeof e||"function"==typeof e))return null!==(t=null===(o=e.ɵprov)||void 0===o?void 0:o.providedIn)&&void 0!==t?t:null===(r=e.ngInjectableDef)||void 0===r?void 0:r.providedIn};var func_get_type=__webpack_require__(297),helper_resolve_provider=__webpack_require__(663);const add_requested_providers=(e,{providerDef:o,mockDef:t},r)=>{for(const t of(0,core_helpers.LG)(o))e.providers.push(t);for(const o of(0,core_helpers.Bq)(e.providers)){const e=(0,func_get_type.A)(o);ng_mocks_universe.A.touches.add(e),e!==o&&o.deps&&(0,core_helpers.by)(o.deps,ng_mocks_universe.A.config.get("ngMocksDeps"))}for(const o of(0,core_helpers.LG)(t))ng_mocks_universe.A.touches.has(o)||"root"!==core_reflect_provided_in(o)||(e.providers.push((0,helper_resolve_provider.A)(o,r)),ng_mocks_universe.A.touches.add(o))},apply_platform_modules=()=>{const e=(0,testing_.getTestBed)();if(e.ngModule)for(const o of(0,core_helpers.Bq)(e.ngModule))ng_mocks_universe.A.touches.add((0,func_get_type.A)(o))},error_empty_def=e=>{if(!e)throw new Error(["undefined / null has been passed into ng-mocks as a declaration / provider.","Please ensure that the current test file has correct imports:","imported files exist and imported declarations have been exported in the file."].join(" "))},func_is_jest_mock=e=>!(!e||"function"!=typeof e&&"object"!=typeof e||!(e._isMockFunction&&e.mockName&&e.__annotations__)),error_jest_mock=e=>{if(func_is_jest_mock(e))throw new Error([`ng-mocks got ${(0,func_get_name.A)(e)} which has been already mocked by jest.mock().`,"It is not possible to produce correct mocks for it, because jest.mock() removes Angular decorators.",`To fix this, please avoid jest.mock() on the file which exports ${(0,func_get_name.A)(e)} or add jest.dontMock() on it.`,"The same should be done for all related dependencies."].join(" "))},error_missing_decorators=e=>{throw new Error([`${(0,func_get_name.A)(e)} declaration has been passed into ng-mocks without Angular decorators.`,"Therefore, it cannot be properly handled.","Highly likely,","undefined"==typeof jest?"":"jest.mock() has been used on its file, or","ng-mocks is imported in production code, or got a class without Angular decoration.","Otherwise, please create an issue on github: https://github.com/help-me-mom/ng-mocks/issues/new?title=False%20positive%20ng-mocks%20not%20in%20JIT.","Thank you in advance for support."].join(" "))},core_reflect_body_catch=e=>o=>{error_empty_def(o);try{return e(o)}catch(e){error_jest_mock(o),error_missing_decorators(o)}},core_reflect_directive_resolve=e=>core_reflect_body_catch((e=>{const o=(0,collect_declarations.A)(e);if(o.Component)return o.Component;if(o.Directive)return o.Directive;throw new Error("Cannot resolve declarations")}))(e),core_reflect_module_resolve=e=>core_reflect_body_catch((e=>{const o=(0,collect_declarations.A)(e);if(o.NgModule)return o.NgModule;throw new Error("Cannot resolve declarations")}))(e),core_reflect_meta=e=>(0,func_is_ng_def.p)(e,"c")||(0,func_is_ng_def.p)(e,"d")?core_reflect_directive_resolve(e):(0,func_is_ng_def.p)(e,"m")?core_reflect_module_resolve(e):void 0;function getSourceOfMock(e){return"function"==typeof e&&e.mockOf?e.mockOf:e}const mark_exported=(e,o)=>{var t;const r=getSourceOfMock(e),n=null!==(t=ng_mocks_universe.A.configInstance.get(r))&&void 0!==t?t:{__set:!0};n.exported||(n.exported=new Set),o&&n.exported.add(getSourceOfMock(o)),n.__set&&(n.__set=void 0,ng_mocks_universe.A.configInstance.set(r,n))};var x=e=>{var o={};return __webpack_require__.d(o,e),o},y=e=>()=>e;const forms_namespaceObject=x({AbstractControl:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.AbstractControl,DefaultValueAccessor:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.DefaultValueAccessor,FormControl:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.FormControl,FormControlDirective:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.FormControlDirective,NG_ASYNC_VALIDATORS:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NG_ASYNC_VALIDATORS,NG_VALIDATORS:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NG_VALIDATORS,NG_VALUE_ACCESSOR:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NG_VALUE_ACCESSOR,NgControl:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NgControl,NgModel:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NgModel}),AbstractControl=forms_namespaceObject.AbstractControl,DefaultValueAccessor=forms_namespaceObject.DefaultValueAccessor,FormControl=forms_namespaceObject.FormControl,FormControlDirective=forms_namespaceObject.FormControlDirective,NG_ASYNC_VALIDATORS=forms_namespaceObject.NG_ASYNC_VALIDATORS,NG_VALIDATORS=forms_namespaceObject.NG_VALIDATORS,NG_VALUE_ACCESSOR=forms_namespaceObject.NG_VALUE_ACCESSOR,NgControl=forms_namespaceObject.NgControl,NgModel=forms_namespaceObject.NgModel,core_form={AbstractControl,DefaultValueAccessor,FormControl,FormControlDirective,NG_ASYNC_VALIDATORS,NG_VALIDATORS,NG_VALUE_ACCESSOR,NgControl,NgModel},func_is_mock=e=>e&&"object"==typeof e&&!!e.__ngMocks;var mock_helper_stub=__webpack_require__(195),mock_instance_apply=__webpack_require__(760),helper_mock_service=__webpack_require__(932),func_directive_io_parse=__webpack_require__(184);const applyProxy=(e,o,t,r)=>{if(e.instance&&r&&(e.instance[r]=t),e.instance&&e.instance[o])return e.instance[o](t)};class MockControlValueAccessorProxy{constructor(e){this.target=e}registerOnChange(e){applyProxy(this,"registerOnChange",e,"__simulateChange")}registerOnTouched(e){applyProxy(this,"registerOnTouched",e,"__simulateTouch")}setDisabledState(e){applyProxy(this,"setDisabledState",e)}writeValue(e){applyProxy(this,"writeValue",e)}}class MockValidatorProxy{constructor(e){this.target=e}registerOnValidatorChange(e){applyProxy(this,"registerOnValidatorChange",e,"__simulateValidatorChange")}validate(e){return this.instance&&this.instance.validate?this.instance.validate(e):null}}class MockAsyncValidatorProxy{constructor(e){this.target=e}registerOnValidatorChange(e){applyProxy(this,"registerOnValidatorChange",e,"__simulateValidatorChange")}validate(e){if(this.instance&&this.instance.validate){const o=this.instance.validate(e);return void 0===o?Promise.resolve(null):o}return Promise.resolve(null)}}const setValueAccessor=(e,o)=>{if(o&&!o.valueAccessor&&e.__ngMocksConfig.setControlValueAccessor)try{o.valueAccessor=new MockControlValueAccessorProxy(e.__ngMocksCtor)}catch(e){}},installValueAccessor=(e,o)=>{e.valueAccessor.instance||e.valueAccessor.target!==o.__ngMocksCtor||(e.valueAccessor.instance=o,helper_mock_service.A.mock(o,"registerOnChange"),helper_mock_service.A.mock(o,"registerOnTouched"),helper_mock_service.A.mock(o,"setDisabledState"),helper_mock_service.A.mock(o,"writeValue"),o.__ngMocksConfig.isControlValueAccessor=!0)},installValidator=(e,o)=>{for(const t of e)t.instance||t.target!==o.__ngMocksCtor||(t.instance=o,helper_mock_service.A.mock(o,"registerOnValidatorChange"),helper_mock_service.A.mock(o,"validate"),o.__ngMocksConfig.isValidator=!0)},applyNgValueAccessor=(e,o)=>{setValueAccessor(e,o);try{o&&(installValueAccessor(o,e),installValidator(o._rawValidators,e),installValidator(o._rawAsyncValidators,e))}catch(e){}},applyOutputs=e=>{const o=[];for(const t of e.__ngMocksConfig.outputs||[])o.push((0,func_directive_io_parse.A)(t).name);for(const t of o)e[t]||Object.getOwnPropertyDescriptor(e,t)||(e[t]=new core_.EventEmitter)},applyPrototype=(e,o)=>{for(const t of[...helper_mock_service.A.extractMethodsFromPrototype(o),...helper_mock_service.A.extractPropertiesFromPrototype(o)]){const r=helper_mock_service.A.extractPropertyDescriptor(o,t);helper_mock_service.A.definePropertyDescriptor(e,t,r)}},applyMethods=(e,o)=>{for(const t of helper_mock_service.A.extractMethodsFromPrototype(o))e[t]||Object.getOwnPropertyDescriptor(e,t)||helper_mock_service.A.mock(e,t)},applyProps=(e,o)=>{for(const t of helper_mock_service.A.extractPropertiesFromPrototype(o))e[t]||Object.getOwnPropertyDescriptor(e,t)||(helper_mock_service.A.mock(e,t,"get"),helper_mock_service.A.mock(e,t,"set"))},applyOverrides=(e,o,t)=>{const r=ng_mocks_universe.A.getOverrides().get(o),n=r?(0,core_helpers.LG)(r):[];e.__ngMocksConfig.init&&n.push(e.__ngMocksConfig.init),n.push(...(0,mock_instance_apply.A)(o));for(const o of n){const r=o(e,t);r&&(0,mock_helper_stub.A)(e,r)}};class Mock{constructor(e=null,o=null){const t=this.constructor.mockOf;(0,core_define_property.A)(this,"__ngMocks",!0),(0,core_define_property.A)(this,"__ngMocksInjector",e),(0,core_define_property.A)(this,"__ngMocksCtor",this.constructor);for(const e of this.__ngMocksConfig.queryScanKeys||[])(0,core_define_property.A)(this,`__ngMocksVcr_${e}`,void 0);for(const e of this.__ngMocksConfig.hostBindings||[])helper_mock_service.A.mock(this,e,"get"),helper_mock_service.A.mock(this,e,"set");for(const e of this.__ngMocksConfig.hostListeners||[])helper_mock_service.A.mock(this,e);func_is_mock(this)&&(applyNgValueAccessor(this,o),applyOutputs(this),applyPrototype(this,Object.getPrototypeOf(this)),applyMethods(this,t.prototype),applyProps(this,t.prototype)),Object.setPrototypeOf(this,t.prototype),applyOverrides(this,t,null!=e?e:void 0)}}(0,core_define_property.A)(Mock,"parameters",[[core_.Injector,new core_.Optional],[core_form.NgControl||(()=>{}),new core_.Optional,new core_.Self]]);class LegacyControlValueAccessor extends Mock{__simulateChange(){}__simulateTouch(){}__simulateValidatorChange(){}}var func_directive_io_build=__webpack_require__(439);const decorate_inputs=(e,o,t)=>{if(o)for(const r of o){const{name:o,alias:n,required:s}=(0,func_directive_io_parse.A)(r);t&&-1!==t.indexOf(o)||(0,core_.Input)((0,func_directive_io_build.A)({name:o,alias:n,required:s},!0))(e.prototype,o)}},decorate_mock=(e,o,t={})=>{(0,core_define_property.A)(e,"mockOf",o),(0,core_define_property.A)(e,"nameConstructor",(0,func_get_name.A)(e)),(0,core_define_property.A)(e,"name",`MockOf${(0,func_get_name.A)(o)}`,!0);const r=ng_mocks_universe.A.getConfigMock().has(o)?Object.assign(Object.assign({},t),{config:Object.assign(Object.assign({},ng_mocks_universe.A.getConfigMock().get(o)),t.config)}):t;(0,core_define_property.A)(e.prototype,"__ngMocksConfig",r)},decorate_outputs=(e,o)=>{if(o)for(const t of o){const{name:o,alias:r,required:n}=(0,func_directive_io_parse.A)(t);(0,core_.Output)((0,func_directive_io_build.A)({name:o,alias:r,required:n},!0))(e.prototype,o)}},map={ContentChild:core_.ContentChild,ContentChildren:core_.ContentChildren,ViewChild:core_.ViewChild,ViewChildren:core_.ViewChildren},isInternalKey=e=>0===e.indexOf("__mock"),cloneVcrQuery=e=>Object.assign(Object.assign({},e),{ngMetadataName:e.ngMetadataName,read:core_.ViewContainerRef}),generateFinalQueries=e=>{const o=[],t=[];for(const r of Object.keys(e)){const n=e[r];o.push([r,n]),n.isViewQuery||isInternalKey(r)||(t.push(r),o.push([`__ngMocksVcr_${r}`,cloneVcrQuery(n)]))}return[o,t]},decorate_queries=(e,o)=>{if(!o)return[];const[t,r]=generateFinalQueries(o);for(const[o,r]of t)r.ngMetadataName&&(0,map[r.ngMetadataName])(r.selector,r)(e.prototype,o);return r};var func_extract_forward_ref=__webpack_require__(285);const to_existing_provider=(e,o)=>({provide:e,useExisting:o}),to_factory_provider=(e,o)=>({multi:!0,provide:e,useFactory:o}),processTokens=(e,o)=>{const t=(0,func_get_type.A)(o);return core_form.NG_VALIDATORS&&t===core_form.NG_VALIDATORS?to_factory_provider(t,(()=>new MockValidatorProxy(e))):core_form.NG_ASYNC_VALIDATORS&&t===core_form.NG_ASYNC_VALIDATORS?to_factory_provider(t,(()=>new MockAsyncValidatorProxy(e))):core_form.NG_VALUE_ACCESSOR&&t===core_form.NG_VALUE_ACCESSOR?to_factory_provider(t,(()=>new MockControlValueAccessorProxy(e))):void 0},processOwnUseExisting=(e,o,t)=>{const r=(0,func_get_type.A)(t);if(r!==core_form.NgControl&&r!==core_form.FormControlDirective)return t!==r&&(0,func_extract_forward_ref.A)(t.useExisting)===e?to_existing_provider(r,o):void 0},processProvider=(e,o,t,r)=>{const n=processTokens(o,t);if(n)return n;return processOwnUseExisting(e,o,t)||helper_mock_service.A.resolveProvider(t,r)},clone_providers=(e,o,t,r)=>{const n=[];let s;for(const c of(0,core_helpers.Bq)(t||[])){(0,func_get_type.A)(c)===core_form.NG_VALUE_ACCESSOR&&(s=!1);const t=processProvider(e,o,c,r);t&&n.push(t)}return{providers:n,setControlValueAccessor:s}},buildConfig=(e,o,t)=>({config:ng_mocks_universe.A.config.get(e),outputs:o.outputs,queryScanKeys:[],setControlValueAccessor:t}),decorate_declaration=(e,o,t,r)=>{const n=ng_mocks_universe.A.config.has("mockNgDefResolver");n||ng_mocks_universe.A.config.set("mockNgDefResolver",new core_def_stack);const s=Object.assign({},r);if(void 0!==t.exportAs&&(s.exportAs=t.exportAs),void 0!==t.selector&&(s.selector=t.selector),void 0!==t.standalone&&(s.standalone=t.standalone),t.standalone&&t.imports){const[,{imports:e}]=mock_ng_def({imports:t.imports,skipExports:!0});(null==e?void 0:e.length)&&(s.imports=e)}if(t.hostDirectives){const[,{hostDirectives:e}]=mock_ng_def({hostDirectives:t.hostDirectives,skipExports:!0});(null==e?void 0:e.length)&&(s.hostDirectives=e)}const{setControlValueAccessor:c,providers:_}=clone_providers(e,o,t.providers||[],ng_mocks_universe.A.config.get("mockNgDefResolver"));_.push(to_existing_provider(e,o)),s.providers=_;const{providers:i}=clone_providers(e,o,t.viewProviders||[],ng_mocks_universe.A.config.get("mockNgDefResolver"));i.length>0&&(s.viewProviders=i);const a=buildConfig(e,t,null!=c?c:-1!==helper_mock_service.A.extractMethodsFromPrototype(e.prototype).indexOf("writeValue"));decorate_mock(o,e,a),t.queries&&decorate_inputs(o,t.inputs,Object.keys(t.queries)),decorate_outputs(o,t.outputs),a.queryScanKeys=decorate_queries(o,t.queries),a.hostBindings=[];for(const[e]of t.hostBindings||[])-1===a.hostBindings.indexOf(e)&&a.hostBindings.push(e);a.hostListeners=[];for(const[e]of t.hostListeners||[])-1===a.hostListeners.indexOf(e)&&a.hostListeners.push(e);return n||ng_mocks_universe.A.config.delete("mockNgDefResolver"),s},getType=e=>(0,func_is_ng_def.p)(e,"p")?"pipe":(0,func_is_ng_def.p)(e,"d")?"directive":(0,func_is_ng_def.p)(e,"c")?"component":(0,func_is_ng_def.p)(e,"m")?"module":(0,func_is_ng_def.p)(e,"i")?"service":(0,func_is_ng_def.p)(e,"t")?"token":"",func_import_exists=(e,o)=>{if(null==e)throw new Error(`null / undefined has been passed into ${o}. Please check that its import is correct.`);if("MockPipe"===o&&(0,func_is_ng_def.p)(e,"p"))return;if("MockDirective"===o&&(0,func_is_ng_def.p)(e,"d"))return;if("MockComponent"===o&&(0,func_is_ng_def.p)(e,"c"))return;if("MockModule"===o&&(0,func_is_ng_def.p)(e,"m"))return;const t=getType(e);if(t&&"MockPipe"===o)throw new Error(`${o} accepts pipes, whereas ${(0,func_get_name.A)(e)} is a ${t}.`);if(t&&"MockDirective"===o)throw new Error(`${o} accepts directives, whereas ${(0,func_get_name.A)(e)} is a ${t}.`);if(t&&"MockComponent"===o)throw new Error(`${o} accepts components, whereas ${(0,func_get_name.A)(e)} is a ${t}.`);if(t&&"MockModule"===o)throw new Error(`${o} accepts modules, whereas ${(0,func_get_name.A)(e)} is a ${t}.`)};function isMockNgDef(e,o){return!!e.mockOf&&(!o||(0,func_is_ng_def.p)(e.mockOf,o))}const func_get_last_fixture=()=>{const e=(0,testing_.getTestBed)()._activeFixtures;return e[e.length-1]},return_cached_mock=e=>{let o;try{o=func_get_last_fixture().debugElement.injector.get(core_tokens.en).get(e)}catch(e){}return o||(o=ng_mocks_universe.A.cacheDeclarations.get(e)),e.__ngMocksResolutions&&ng_mocks_universe.A.config.has("mockNgDefResolver")&&ng_mocks_universe.A.config.get("mockNgDefResolver").merge(e.__ngMocksResolutions),o},get_mock=(e,o,t,r,n,s)=>{if(func_import_exists(e,t),isMockNgDef(e,o))return e;if(ng_mocks_universe.A.flags.has(r)&&ng_mocks_universe.A.cacheDeclarations.has(e))return return_cached_mock(e);const c=ng_mocks_universe.A.config.has("ngMocksDepsResolution");c||ng_mocks_universe.A.config.set("ngMocksDepsResolution",new Map);const _=(0,core_helpers.He)(n);return s(e,_),ng_mocks_universe.A.flags.has(r)&&ng_mocks_universe.A.cacheDeclarations.set(e,_),c||ng_mocks_universe.A.config.delete("ngMocksDepsResolution"),_},vcrArgs={read:core_.ViewContainerRef,static:!1},trArgs={read:core_.TemplateRef,static:!1},viewChildTemplate=(e,o)=>``,isTemplateRefQuery=e=>!(e.isViewQuery||e.read&&e.read!==core_.TemplateRef||"string"!=typeof e.selector&&!e.read),generate_template=e=>{const o=[""];if(!e)return o.join("");for(const t of Object.keys(e)){const r=e[t];if(0!==t.indexOf("__mock")&&isTemplateRefQuery(r)){if("string"==typeof r.selector){const t=r.selector.replace(new RegExp("\\W","mg"),"_");e[`__vcrIf_key_${t}`]=new core_.ViewChild(`ngIf_key_${t}`,vcrArgs),e[`__trIf_key_${t}`]=new core_.ViewChild(`ngIf_key_${t}`,trArgs),e[`__mockView_key_${t}`]=new core_.ViewChild(`key_${t}`,vcrArgs),e[`__mockTpl_key_${t}`]=r,o.push(viewChildTemplate(t,"key"))}e[`__vcrIf_prop_${t}`]=new core_.ViewChild(`ngIf_prop_${t}`,vcrArgs),e[`__trIf_prop_${t}`]=new core_.ViewChild(`ngIf_prop_${t}`,trArgs),e[`__mockView_prop_${t}`]=new core_.ViewChild(`prop_${t}`,vcrArgs),o.push(viewChildTemplate(t,"prop"))}}return o.join("")},get_key=e=>{if("string"==typeof e)return["key",`__mockTpl_key_${e}`,e,void 0];const[o,...t]=e;return["prop",o,o,t.length>0?t:void 0]},mixRenderPrepareVcr=(e,o,t,r)=>{const n=e[`__vcrIf_${o}_${t}`],s=e[`__trIf_${o}_${t}`];return n&&s&&!e[`ngMocksRender_${o}_${t}`]&&(e[`ngMocksRender_${o}_${t}`]=n.createEmbeddedView(s,{}),r.detectChanges()),e[`__mockView_${o}_${t}`]},mixRenderReorderViews=(e,o,t)=>{for(const e of o.splice(t+1))e.destroy();let r=0;for(const t of o)t&&(e.move(t,r),r+=1)},mixRenderApplyContext=(e,o)=>{for(const o of Object.keys(e.context))e.context[o]=void 0;for(const t of Object.keys(o))e.context[t]=o[t];e.markForCheck()},mixRenderHandleViews=(e,o,t,r,n,s)=>{let c=-1;for(const o of t)if(c+=1,r[c]=r[c]||void 0,(!n||-1!==n.indexOf(c))&&o){if(!(o instanceof core_.TemplateRef))throw new Error("Cannot find TemplateRef");r[c]||(r[c]=e.createEmbeddedView(o,{})),mixRenderApplyContext(r[c],s)}return o.detectChanges(),c},mixRender=(e,o)=>{(0,core_define_property.A)(e,"__render",((t,r,n)=>{const[s,c,_,i]=get_key(t),a=mixRenderPrepareVcr(e,s,_,o);if(!a)return;const l=e[c],p=l instanceof core_.QueryList?l.toArray():[l],u=e[`ngMocksRender_${s}_${_}_views`]||[],d=mixRenderHandleViews(a,o,p,u,i,Object.assign(Object.assign({},n),{$implicit:r}));mixRenderReorderViews(a,u,d),e[`ngMocksRender_${s}_${_}_views`]=u,o.detectChanges()}))},mixHideHandler=(e,o,t,r)=>{const n=e[`ngMocksRender_${o}_${t}_views`];let s=-1;for(const e of n)s+=1,r&&-1===r.indexOf(s)||!e||(e.destroy(),n[s]=void 0)},mixHide=(e,o)=>{(0,core_define_property.A)(e,"__hide",(t=>{const[r,,n,s]=get_key(t);e[`ngMocksRender_${r}_${n}`]&&(mixHideHandler(e,r,n,s),s||(e[`ngMocksRender_${r}_${n}`].destroy(),e[`ngMocksRender_${r}_${n}`]=void 0),o.detectChanges())}))};class ComponentMockBase extends LegacyControlValueAccessor{constructor(e,o,t){super(e,o),func_is_mock(this)&&(mixRender(this,t),mixHide(this,t))}ngAfterViewInit(){const e=this.__ngMocksConfig.config;if(!this.__rendered&&e&&e.render){for(const o of Object.keys(e.render)){const{$implicit:t,variables:r}=!0===e.render[o]?{$implicit:void 0,variables:{}}:e.render[o];this.__render(o,t,r)}this.__rendered=!0}}}(0,core_define_property.A)(ComponentMockBase,"parameters",[[core_.Injector],[core_form.NgControl||(()=>{}),new core_.Optional,new core_.Self],[core_.ChangeDetectorRef]]);const decorateClass=(e,o)=>{const t=core_reflect_directive_resolve(e);(0,core_.Component)(decorate_declaration(e,o,t,{template:generate_template(t.queries)}))(o)};function MockComponents(...e){return e.map(MockComponent)}function MockComponent(e){return get_mock(e,"c","MockComponent","cacheComponent",ComponentMockBase,decorateClass)}class DirectiveMockBase extends LegacyControlValueAccessor{constructor(e,o,t,r,n=null,s=null){super(e,o),this.__ngMocksInstall(r,t,n,s)}ngOnInit(){const e=this.__ngMocksConfig.config;if(null==e?void 0:e.render){const{$implicit:o,variables:t}=!0===e.render?{$implicit:void 0,variables:{}}:e.render;this.__render(o,t)}}__ngMocksInstall(e,o,t,r){(0,core_define_property.A)(this,"__element",t),(0,core_define_property.A)(this,"__template",r),(0,core_define_property.A)(this,"__viewContainer",e),(0,core_define_property.A)(this,"__vcr",e),(0,core_define_property.A)(this,"__cdr",o),(0,core_define_property.A)(this,"__isStructural",r&&e),(0,core_define_property.A)(this,"__render",((t,n)=>{e&&r&&(e.clear(),e.createEmbeddedView(r,Object.assign(Object.assign({},n),{$implicit:t})),o.detectChanges())}))}}(0,core_define_property.A)(DirectiveMockBase,"parameters",[[core_.Injector],[core_form.NgControl||(()=>{}),new core_.Optional,new core_.Self],[core_.ChangeDetectorRef],[core_.ViewContainerRef],[core_.ElementRef,new core_.Optional,new core_.Self],[core_.TemplateRef,new core_.Optional,new core_.Self]]);const mock_directive_decorateClass=(e,o)=>{const t=core_reflect_directive_resolve(e),r=decorate_declaration(e,o,t,{});(0,core_.Directive)(r)(o)};function MockDirectives(...e){return e.map(MockDirective)}function MockDirective(e){return get_mock(e,"d","MockDirective","cacheDirective",DirectiveMockBase,mock_directive_decorateClass)}const core_reflect_pipe_resolve=e=>core_reflect_body_catch((e=>{const o=(0,collect_declarations.A)(e);if(o.Pipe)return o.Pipe;throw new Error("Cannot resolve declarations")}))(e);function MockPipes(...e){return e.map((e=>MockPipe(e,void 0)))}const getMockClass=(e,o)=>{var t;const r=ng_mocks_universe.A.config.get(e),n=null!=o?o:null===(t=null==r?void 0:r.defValue)||void 0===t?void 0:t.transform,s=(0,core_helpers.He)(Mock);return(0,core_.Pipe)(core_reflect_pipe_resolve(e))(s),decorate_mock(s,e,{init:e=>{n&&(e.transform=n),e.transform||helper_mock_service.A.mock(e,"transform",`${(0,func_get_name.A)(e)}.transform`)},transform:n}),s};function MockPipe(e,o){if(func_import_exists(e,"MockPipe"),isMockNgDef(e,"p"))return e;if(ng_mocks_universe.A.flags.has("cachePipe")&&ng_mocks_universe.A.cacheDeclarations.has(e))return return_cached_mock(e);const t=getMockClass(e,o);return ng_mocks_universe.A.flags.has("cachePipe")&&ng_mocks_universe.A.cacheDeclarations.set(e,t),t}const flagMock=e=>"mock"===e&&ng_mocks_universe.A.flags.has("skipMock"),flagKeep=e=>"keep"===e&&!ng_mocks_universe.A.flags.has("skipMock"),flagReplace=e=>"replace"===e&&!ng_mocks_universe.A.flags.has("skipMock"),flagNever=e=>-1!==core_config.A.neverMockModule.indexOf((0,func_get_name.A)(e))&&!ng_mocks_universe.A.flags.has("skipMock"),preProcessFlags=e=>{let o=!1,t=!0;ng_mocks_universe.A.flags.has("hasRootModule")?t=!1:ng_mocks_universe.A.flags.add("hasRootModule");const r=ng_mocks_universe.A.getResolution(e);return flagMock(r)&&(o=!0,ng_mocks_universe.A.flags.delete("skipMock")),flagNever(e)&&(o=!0,ng_mocks_universe.A.flags.add("skipMock")),t||!flagKeep(r)&&!flagReplace(r)||(o=!0,ng_mocks_universe.A.flags.add("skipMock")),{isRootModule:t,toggleSkipMockFlag:o}},postProcessFlags=({isRootModule:e,toggleSkipMockFlag:o})=>{o&&ng_mocks_universe.A.flags.has("skipMock")?ng_mocks_universe.A.flags.delete("skipMock"):o&&!ng_mocks_universe.A.flags.has("skipMock")&&ng_mocks_universe.A.flags.add("skipMock"),e&&ng_mocks_universe.A.flags.delete("hasRootModule")},extractModuleAndProviders=e=>{let o,t;return(0,func_is_ng_module_def_with_providers.h)(e)?(o=e.ngModule,e.providers&&(t=e.providers)):o=e,{ngModule:o,ngModuleProviders:t}},getExistingMockModule=(e,o)=>{var t;if(isMockNgDef(e,"m"))return e;if(ng_mocks_universe.A.flags.has("cacheModule")&&ng_mocks_universe.A.cacheDeclarations.has(e))return return_cached_mock(e);if(!o&&"mock"!==(null===(t=ng_mocks_universe.A.config.get("ngMocksDepsResolution"))||void 0===t?void 0:t.get(e))&&ng_mocks_universe.A.hasBuildDeclaration(e)){const o=ng_mocks_universe.A.getBuildDeclaration(e);if((0,func_is_ng_def.p)(o,"m")&&o!==e)return o}},detectMockModule=(e,o)=>{const[t,r,n]=o?[!1]:mock_ng_def(core_reflect_module_resolve(e),e);if(n&&(0,core_define_property.A)(e,"__ngMocksResolutions",n),t){const o=ng_mocks_universe.A.flags.has("skipMock")?e:Mock,t=(0,core_helpers.He)(o);return(0,core_.NgModule)(r)(t),decorate_mock(t,e),t}return o||e},getMockProviders=e=>{if(e){const[o,t]=mock_ng_def({providers:e,skipExports:!0});return o?t.providers:e}},generateReturn=(e,o,t,r,n)=>r===o&&n===t?e:(0,func_is_ng_module_def_with_providers.h)(e)?Object.assign({ngModule:r},n?{providers:n}:{}):r;function MockModule(e){var o;func_import_exists(e,"MockModule");const{ngModule:t,ngModuleProviders:r}=extractModuleAndProviders(e),n=preProcessFlags(t);try{const s=detectMockModule(t,getExistingMockModule(t,n.isRootModule));ng_mocks_universe.A.flags.has("cacheModule")&&ng_mocks_universe.A.cacheDeclarations.set(t,s),ng_mocks_universe.A.flags.has("skipMock")&&(null===(o=ng_mocks_universe.A.config.get("ngMocksDepsSkip"))||void 0===o||o.add(s));const c=getMockProviders(r);return generateReturn(e,t,r,s,c)}finally{postProcessFlags(n)}}const processDefMap=[["c",MockComponent],["d",MockDirective],["p",MockPipe]],processDef=e=>{if((0,func_is_ng_def.p)(e,"m")||(0,func_is_ng_module_def_with_providers.h)(e))return MockModule(e);if(ng_mocks_universe.A.hasBuildDeclaration(e))return ng_mocks_universe.A.getBuildDeclaration(e);if(ng_mocks_universe.A.flags.has("skipMock")&&"mock"!==ng_mocks_universe.A.getResolution(e))return e;for(const[o,t]of processDefMap)if((0,func_is_ng_def.p)(e,o))return t(e)},createResolveProvider=(e,o)=>t=>helper_mock_service.A.resolveProvider(t,e,o),createResolveWithProviders=(e,o)=>(0,func_is_ng_module_def_with_providers.h)(o)&&(0,func_is_ng_module_def_with_providers.h)(e),createResolveExisting=(e,o,t)=>{const r=o.get(e);return e!==r&&t(),r},createResolveExcluded=(e,o,t)=>{o.set(e,void 0),t()},createResolve=(e,o)=>t=>{var r;if(e.has(t))return createResolveExisting(t,e,o);const n=(0,func_get_type.A)(t);if(ng_mocks_universe.A.isExcludedDef(n))return createResolveExcluded(t,e,o);ng_mocks_universe.A.touches.add(n);const s=processDef(t);return createResolveWithProviders(t,s)&&e.set(t.ngModule,s.ngModule),ng_mocks_universe.A.flags.has("skipMock")&&(null===(r=ng_mocks_universe.A.config.get("ngMocksDepsSkip"))||void 0===r||r.add(s)),e.set(t,s),o(s!==t),s},create_resolvers=(e,o)=>({resolve:createResolve(o,e),resolveProvider:createResolveProvider(o,e)}),mark_providers=e=>{for(const o of(0,core_helpers.Bq)(null!=e?e:[])){const e=(0,func_get_type.A)(o);mark_exported(e)}},flatToExisting=(e,o)=>(0,core_helpers.Bq)(e).map(o).filter((e=>!!e)),configureProcessMetaKeys=(e,o)=>[["declarations",e],["hostDirectives",o=>{const t=(0,func_get_type.A)(o),r=e(t);return r===t?o:o==t?r:Object.assign(Object.assign({},o),{directive:r})}],["imports",e],["entryComponents",e],["bootstrap",e],["providers",o],["viewProviders",o],["exports",e],["schemas",e=>e]],processMeta=(e,o,t)=>{var r;const n={},s=configureProcessMetaKeys(o,t),c=ng_mocks_universe.A.flags.has("cachePipe");c||ng_mocks_universe.A.flags.add("cachePipe");for(const[o,t]of s)(null===(r=e[o])||void 0===r?void 0:r.length)&&(n[o]=flatToExisting(e[o],t));return e.skipMarkProviders||(mark_providers(n.providers),mark_providers(n.viewProviders)),c||ng_mocks_universe.A.flags.delete("cachePipe"),n},resolveDefForExport=(e,o,t,r)=>{const n=ng_mocks_universe.A.config.get(r)||{},s=(0,func_get_type.A)(e),c=o(s);if(!c)return;const _=ng_mocks_universe.A.config.get(s);return(null==_?void 0:_.export)&&r&&!n.export&&ng_mocks_universe.A.config.set(r,Object.assign(Object.assign({},n),{export:!0})),!t||n.exportAll||(null==_?void 0:_.export)?(mark_exported(s,r),c):void 0},skipAddExports=(e,o)=>!e||!!o.exports&&-1!==o.exports.indexOf(e),addExports=(e,o,t,r,n)=>{const s=ng_mocks_universe.A.flags.has("skipMock")||ng_mocks_universe.A.flags.has("correctModuleExports");for(const c of(0,core_helpers.Bq)([t.imports||[],t.declarations||[]])){const t=resolveDefForExport(c,e,s,n);skipAddExports(t,r)||(o(),r.exports=r.exports||[],r.exports.push(t))}},mock_ng_def=(e,o)=>{const t=ng_mocks_universe.A.config.has("mockNgDefResolver");t||ng_mocks_universe.A.config.set("mockNgDefResolver",new core_def_stack),ng_mocks_universe.A.config.get("mockNgDefResolver").push();let r=!ng_mocks_universe.A.flags.has("skipMock");const n=(e=!0)=>{r=r||e},{resolve:s,resolveProvider:c}=create_resolvers(n,ng_mocks_universe.A.config.get("mockNgDefResolver")),_=processMeta(e,s,c);e.skipExports||addExports(s,n,e,_,o);for(const e of o&&_.exports?(0,core_helpers.Bq)(_.exports):[])mark_exported(e,o);const i=ng_mocks_universe.A.config.get("mockNgDefResolver").pop();return t||ng_mocks_universe.A.config.delete("mockNgDefResolver"),[r,_,i]},get_override_def=e=>{if(!e)return;const o=ng_mocks_universe.A.flags.has("skipMock");o||ng_mocks_universe.A.flags.add("skipMock");const[t,r]=mock_ng_def(e);return o||ng_mocks_universe.A.flags.delete("skipMock"),t?r:void 0},skip_override=(e,o,t,r)=>!!ng_mocks_universe.A.cacheDeclarations.has(r)||!(!e.has(t)||r!==o.get(t)),create_ng_mocks_overrides_token=(e,o)=>{const t=new Map;for(const r of(0,core_helpers.LG)(ng_mocks_universe.A.touches)){const n=r,s=ng_mocks_universe.A.getBuildDeclaration(n)||n;if(skip_override(e,o,n,s))continue;const c=core_reflect_meta(s),_=get_override_def(c);if(!_)continue;const i={};for(const e of Object.keys(_))i[e]=c[e];t.set(s,[{set:_},{set:i}])}return{provide:core_tokens.So,useValue:t}},create_ng_mocks_token=()=>{const e=new Map;for(const[o,t]of[...(0,core_helpers.Nn)(ng_mocks_universe.A.builtProviders),...(0,core_helpers.Nn)(ng_mocks_universe.A.builtDeclarations),...(0,core_helpers.Nn)(ng_mocks_universe.A.cacheDeclarations),...(0,core_helpers.Nn)(ng_mocks_universe.A.cacheProviders)])e.has(o)||e.set(o,t);return{provide:core_tokens.en,useValue:e}},create_ng_mocks_touches_token=()=>{const e=new Set;for(const o of(0,core_helpers.LG)(ng_mocks_universe.A.touches)){const t=o;let r=ng_mocks_universe.A.getBuildDeclaration(t);void 0===r&&(r=t),e.add(t),e.add(r)}return{provide:core_tokens.Em,useValue:e}};var helper_create_clone=__webpack_require__(365);class EntryComponentsModule{constructor(e,o){if(!o)return;const t=o.resolveComponentFactory;o.resolveComponentFactory=(0,helper_create_clone.A)(t,void 0,void 0,((r,...n)=>{var s;return t.apply(o,[null!==(s=e.get(r))&&void 0!==s?s:r,...n])}))}}(0,core_define_property.A)(EntryComponentsModule,"parameters",[[core_tokens.en],[core_.ComponentFactoryResolver,new core_.Optional]]);class IvyModule{}(0,core_.NgModule)()(IvyModule);const handle_entry_components=e=>{const o=[];for(const t of e.declarations)(0,func_is_ng_def.p)(t,"c")&&o.push(t);const t=(0,core_helpers.He)(EntryComponentsModule);(0,core_.NgModule)({entryComponents:IvyModule.ɵmod?[]:o})(t),e.imports.push(t)};var helper_use_factory=__webpack_require__(465),core_reflect_parameters_resolve=__webpack_require__(749),common_x=e=>{var o={};return __webpack_require__.d(o,e),o},common_y=e=>()=>e;const common_namespaceObject=common_x({DOCUMENT:()=>__WEBPACK_EXTERNAL_MODULE__angular_common_d12e0fe1__.DOCUMENT}),skipResolution=e=>{const o=ng_mocks_universe.A.getResolution(e);return"keep"===o||"exclude"===o||"mock"!==o&&void 0},skipSystem=e=>{if(!e||e===common_namespaceObject.DOCUMENT||ng_mocks_universe.A.touches.has(e))return!0;const o=skipResolution(e);return void 0!==o?o:"function"==typeof e&&-1!==core_config.A.neverMockProvidedFunction.indexOf(e.name)||!(!(0,func_is_ng_injection_token.S)(e)||-1===core_config.A.neverMockToken.indexOf(e.toString()))},skip_dep=e=>{if(skipSystem(e))return!0;const o=core_reflect_provided_in(e);return!("function"!=typeof e||o&&"platform"!==o)},add_def_to_root_provider_parameters=(e,o,t)=>{skip_dep(t)||!o.has(core_tokens.gG)&&ng_mocks_universe.A.config.get("ngMocksDepsSkip").has(t)||e.add(t)},check_root_provider_dependency=(e,o,t)=>{"function"==typeof e&&-1===t.indexOf(e)&&(t.push(e),o.push(e))},extract_dep=e=>{if(!e)return;let o;for(const t of e)t&&"object"==typeof t&&t.token&&(o=t.token),o||!t||"object"==typeof t&&t.ngMetadataName||(o=t);return(0,func_extract_forward_ref.A)(o)},get_root_providers_data=()=>{const e=[(0,core_helpers.LG)(ng_mocks_universe.A.config.get("ngMocksDepsSkip")),(0,core_helpers.LG)(ng_mocks_universe.A.config.get("ngMocksDeps")),(0,core_helpers.LG)(ng_mocks_universe.A.touches)];return{buckets:e,touched:[].concat(...e)}},handle_provided_in_dependency=e=>{if(ng_mocks_universe.A.touches.has(e))return;const o=core_reflect_provided_in(e);o&&ng_mocks_universe.A.config.get("ngMocksDepsSkip").has(o)&&ng_mocks_universe.A.config.get("ngMocksDepsSkip").add(e)},skip_root_provider_dependency=e=>!!skip_dep(e)||ng_mocks_universe.A.config.get("ngMocksDepsSkip").has(e),get_root_provider_parameters=e=>{const o=new Set,{buckets:t,touched:r}=get_root_providers_data();for(const n of t)for(const t of n){add_def_to_root_provider_parameters(o,e,t);for(const s of(0,core_reflect_parameters_resolve.A)(t)){const c=extract_dep(s);handle_provided_in_dependency(c),skip_root_provider_dependency(c)||(check_root_provider_dependency(c,r,n),e.has(core_tokens.gG)||!ng_mocks_universe.A.config.get("ngMocksDepsSkip").has(t)?o.add(c):ng_mocks_universe.A.config.get("ngMocksDepsSkip").add(c))}}return o},handle_root_providers=(e,{keepDef:o,mockDef:t},r)=>{const n=o.has(core_tokens.gG)?new Set:get_root_provider_parameters(t);if(n.size>0)for(const o of(0,core_helpers.LG)(n)){const t=(0,helper_resolve_provider.A)(o,r);if(t)e.providers.push(t);else if((0,func_is_ng_injection_token.S)(o)){const t=ng_mocks_universe.A.config.has("ngMocksMulti")&&ng_mocks_universe.A.config.get("ngMocksMulti").has(o);e.providers.push((0,helper_use_factory.A)(o,(()=>t?[]:void 0)))}}},init_module=(e,o)=>{var t;const r=null!==(t=ng_mocks_universe.A.config.get("mockNgDefResolver").get(e))&&void 0!==t?t:ng_mocks_universe.A.getBuildDeclaration(e),n=o.has(e)?o.get(e):void 0;return n?{ngModule:r,providers:n}:r},skipDef=e=>ng_mocks_universe.A.touches.has(e)||(0,func_is_ng_def.p)(e)||(0,func_is_ng_injection_token.S)(e)||"string"==typeof e,handleDef=({imports:e,declarations:o,providers:t},r,n)=>{skipDef(r)||error_jest_mock(r);let s=!1;if((0,func_is_ng_def.p)(r,"m")){const o=init_module(r,n);if(e.push(o),s=!0,"object"==typeof o&&o.providers)for(const e of(0,core_helpers.Bq)(o.providers))ng_mocks_universe.A.touches.add((0,func_get_type.A)(e))}if(((0,func_is_ng_def.p)(r,"c")||(0,func_is_ng_def.p)(r,"d")||(0,func_is_ng_def.p)(r,"p"))&&((isStandalone(r)?e:o).push(ng_mocks_universe.A.getBuildDeclaration(r)),s=!0),(0,func_is_ng_def.p)(r,"i")||!(0,func_is_ng_def.p)(r)){const e=ng_mocks_universe.A.builtProviders.get(r);e&&"string"!=typeof e&&!1===(0,func_is_ng_def.p)(e,"t")&&(t.push(e),s=!0)}s&&(mark_exported(r),ng_mocks_universe.A.touches.add(r))},isExportedOnRoot=(e,o,t)=>{const r=o.get(e),n=t.get(e)||{};if((0,func_is_ng_def.p)(e,"m")&&n.onRoot)return e;if(!(null==r?void 0:r.exported))return e;for(const e of(0,core_helpers.LG)(r.exported)){const r=isExportedOnRoot(e,o,t);if(r)return r}},moveModulesUp=(e,o)=>{const t=(0,func_is_ng_def.p)(e,"m"),r=(0,func_is_ng_def.p)(o,"m");return t&&r?0:t?-1:r?1:0},init_ng_modules=({configDefault:e,keepDef:o,mockDef:t,replaceDef:r},n)=>{const s={imports:[],declarations:[],providers:[]},c=[],_=[],i=[...(0,core_helpers.LG)(t),...(0,core_helpers.LG)(o),...(0,core_helpers.LG)(r)];i.sort(moveModulesUp);for(const o of i){const t=(0,func_is_ng_def.p)(o,"m")&&n.has(o)?o:isExportedOnRoot(o,ng_mocks_universe.A.configInstance,ng_mocks_universe.A.config);if(!t||-1!==c.indexOf(t))continue;const r=ng_mocks_universe.A.config.get(t)||{__set:!0};c.push(t),r.onRoot=r.onRoot||!r.dependency,r.__set&&(r.__set=void 0,ng_mocks_universe.A.config.set(t,r)),(0,func_is_ng_def.p)(t,"m")&&r.onRoot?handleDef(s,t,n):r.dependency||!r.export||!(0,func_is_ng_def.p)(t,"i")&&(0,func_is_ng_def.p)(t)?!r.dependency&&r.export?handleDef(s,t,n):ng_mocks_universe.A.touches.has(t)||r.dependency?!r.dependency||!e.dependency||"root"===core_reflect_provided_in(t)||"object"==typeof t&&t.__ngMocksSkip||_.push(t):handleDef(s,t,n):(handleDef(s,t,n),mark_providers([t]))}const a=ng_mocks_universe.A.global.get("flags");for(const e of _){if(ng_mocks_universe.A.touches.has(e))continue;const o=[`MockBuilder has found a missing dependency: ${(0,func_get_name.A)(e)}.`,"It means no module provides it.",'Please, use the "export" flag if you want to add it explicitly.',"https://ng-mocks.sudo.eu/api/MockBuilder#export-flag"].join(" ");if("warn"===a.onMockBuilderMissingDependency)console.warn(o);else if("throw"===a.onMockBuilderMissingDependency)throw new Error(o)}return s},funcExtractDeps=(e,o,t=!1)=>{const r=(0,collect_declarations.A)(e),n=getNgType(e);if(!n||"Injectable"===n)return o;const s=r[n];for(const e of core_config.A.dependencies)if(s[e])for(const r of(0,core_helpers.Bq)(s[e])){const e=(0,func_get_type.A)(r);o.has(e)||(o.add(e),t&&funcExtractDeps(e,o))}return o},init_exclude_def=e=>{const o=ng_mocks_universe.A.builtDeclarations,t=ng_mocks_universe.A.builtProviders,r=ng_mocks_universe.A.config.get("ngMocksDepsResolution");for(const n of(0,core_helpers.LG)(e))o.set(n,null),t.set(n,null),r.set(n,"exclude")},init_keep_def=(e,o)=>{const t=new Set,r=ng_mocks_universe.A.builtDeclarations,n=ng_mocks_universe.A.builtProviders,s=ng_mocks_universe.A.config.get("ngMocksDepsResolution");for(const c of(0,core_helpers.LG)(e))r.set(c,c),n.set(c,c),s.set(c,"keep"),o.get(c).shallow&&funcExtractDeps(c,t);return t};var mock_provider=__webpack_require__(415);const createInstance=(e,o,t)=>t.precise?o:(0,mock_helper_stub.A)(e,o),try_mock_provider=(e,o)=>{if((0,func_is_ng_def.p)(e,"i")&&o.has(e)){const t=ng_mocks_universe.A.config.get(e),r=o.get(e);ng_mocks_universe.A.builtProviders.set(e,(0,helper_use_factory.A)(e,void 0,(e=>createInstance(e,r,t))))}else(0,func_is_ng_def.p)(e,"i")&&ng_mocks_universe.A.builtProviders.set(e,(0,mock_provider.A)(e,!0));if(!(0,func_is_ng_def.p)(e)&&o.has(e)){const t=o.get(e);ng_mocks_universe.A.builtProviders.set(e,(0,helper_use_factory.A)(e,void 0,(()=>t)))}else(0,func_is_ng_def.p)(e)||ng_mocks_universe.A.builtProviders.set(e,(0,mock_provider.A)(e,!0))},init_mock_declarations=(e,o)=>{const t=ng_mocks_universe.A.builtDeclarations,r=ng_mocks_universe.A.config.get("ngMocksDepsResolution");for(const n of(0,core_helpers.LG)(e)){const e=!ng_mocks_universe.A.touches.has(n);r.set(n,"mock"),t.set(n,void 0),try_mock_provider(n,o),e&&ng_mocks_universe.A.touches.delete(n)}},try_mock_declaration=e=>{void 0===ng_mocks_universe.A.builtDeclarations.get(e)&&((0,func_is_ng_def.p)(e,"c")&&ng_mocks_universe.A.builtDeclarations.set(e,MockComponent(e)),(0,func_is_ng_def.p)(e,"d")&&ng_mocks_universe.A.builtDeclarations.set(e,MockDirective(e)),(0,func_is_ng_def.p)(e,"p")&&ng_mocks_universe.A.builtDeclarations.set(e,MockPipe(e)))},init_modules=(e,o,t,r)=>{var n,s,c,_,i;const a=new Map;for(const l of[...(0,core_helpers.LG)(e),...(0,core_helpers.LG)(o),...(0,core_helpers.LG)(t)]){const e=(0,collect_declarations.A)(l),t=[...null!==(n=r.get(l))&&void 0!==n?n:[],...null!==(c=null===(s=e.Component)||void 0===s?void 0:s.providers)&&void 0!==c?c:[],...null!==(i=null===(_=e.Directive)||void 0===_?void 0:_.providers)&&void 0!==i?i:[]],p=!ng_mocks_universe.A.touches.has(l);o.has(l)||ng_mocks_universe.A.flags.add("skipMock");const u=(0,func_is_ng_def.p)(l,"m");if(t.length>0){const[,e]=mock_ng_def({providers:t,skipMarkProviders:!u,skipExports:!0});a.set(l,e.providers)}u&&ng_mocks_universe.A.builtDeclarations.set(l,MockModule(l)),ng_mocks_universe.A.flags.delete("skipMock"),p&&ng_mocks_universe.A.touches.delete(l)}for(const e of(0,core_helpers.LG)(o))try_mock_declaration(e);return a},init_replace_def=(e,o)=>{const t=ng_mocks_universe.A.builtDeclarations,r=ng_mocks_universe.A.config.get("ngMocksDepsResolution");for(const n of(0,core_helpers.LG)(e))t.set(n,o.get(n)),r.set(n,"replace")},init_universe=({configDef:e,defProviders:o,defValue:t,excludeDef:r,keepDef:n,mockDef:s,replaceDef:c})=>{ng_mocks_universe.A.flags.add("cachePipe"),ng_mocks_universe.A.config.set("ngMocksMulti",new Set),ng_mocks_universe.A.config.set("ngMocksDeps",new Set),ng_mocks_universe.A.config.set("ngMocksDepsSkip",new Set),ng_mocks_universe.A.config.set("ngMocksDepsResolution",new Map);const _=init_keep_def(n,e);for(const e of(0,core_helpers.LG)(_))ng_mocks_universe.A.touches.add(e);for(const e of(0,core_helpers.LG)(n))_.add(e),funcExtractDeps(e,_,!0);for(const e of(0,core_helpers.LG)(s))_.add(e),funcExtractDeps(e,_,!0);for(const e of(0,core_helpers.LG)(c))_.add(e),funcExtractDeps(e,_,!0);for(const o of(0,core_helpers.LG)(_)){if(e.has(o))continue;const _=ng_mocks_universe.A.getResolution(o);"replace"===_?(c.add(o),t.set(o,ng_mocks_universe.A.getBuildDeclaration(o))):"keep"===_?n.add(o):"exclude"===_?r.add(o):("mock"===_||ng_mocks_universe.A.touches.has(o))&&s.add(o),e.set(o,ng_mocks_universe.A.touches.has(o)?{dependency:!0,__internal:!0}:{})}for(const[o,r]of(0,core_helpers.Nn)(e))ng_mocks_universe.A.config.set(o,Object.assign(Object.assign(Object.assign({},ng_mocks_universe.A.getConfigMock().get(o)),r),{defValue:t.get(o)}));return init_replace_def(c,t),init_exclude_def(r),init_mock_declarations(s,t),init_modules(n,s,c,o)},parse_mock_arguments=(e,o,t,r)=>{let n=e===o?r:o,s=null!=t?t:o!==r&&"object"==typeof o?o:void 0;return(0,func_is_ng_def.p)(e,"p")&&"function"==typeof o&&o!==e&&!(0,func_is_ng_def.p)(o,"p")?(n={transform:o},s=t):!(0,func_is_ng_def.p)(e,"i")&&(0,func_is_ng_def.p)(e)||(s=t),n=n===s?r:n,{config:s,mock:n}},parse_provider=e=>{const o=(0,func_get_type.A)(e);return{multi:o!==e&&e.multi,provide:o}};var __awaiter=function(e,o,t,r){return new(t||(t=Promise))((function(n,s){function c(e){try{i(r.next(e))}catch(e){s(e)}}function _(e){try{i(r.throw(e))}catch(e){s(e)}}function i(e){var o;e.done?n(e.value):(o=e.value,o instanceof t?o:new t((function(e){e(o)}))).then(c,_)}i((r=r.apply(e,o||[])).next())}))};const normaliseModule=e=>(0,func_is_ng_module_def_with_providers.h)(e)?{def:e.ngModule,providers:e.providers}:{def:e,providers:void 0},generateProviderValue=(e,o,t)=>t?[...Array.isArray(o)?o:[],e]:e,defaultMock={};class MockBuilderPromise{constructor(e){this.configDefault=e,this.beforeCC=new Set,this.configDef=new Map,this.defProviders=new Map,this.defValue=new Map,this.excludeDef=new Set,this.keepDef=new Set,this.mockDef=new Set,this.providerDef=new Map,this.replaceDef=new Set,this.stash=new MockBuilderStash,"undefined"!=typeof Symbol&&(this[Symbol.toStringTag]="Promise")}beforeCompileComponents(e){return this.beforeCC.add(e),this}build(){this.stash.backup();const e=new core_def_stack;ng_mocks_universe.A.config.set("mockNgDefResolver",e),ng_mocks_universe.A.flags.add("hasRootModule");try{const o=this.combineParams(),t=init_ng_modules(o,init_universe(o));return add_requested_providers(t,o,e),handle_root_providers(t,o,e),handle_entry_components(t),apply_platform_modules(),t.providers.push(create_ng_mocks_token(),create_ng_mocks_touches_token(),create_ng_mocks_overrides_token(this.replaceDef,this.defValue),MockBuilder),t}finally{ng_mocks_universe.A.flags.delete("hasRootModule"),ng_mocks_universe.A.config.delete("mockNgDefResolver"),this.stash.restore()}}catch(e){return __awaiter(this,void 0,void 0,(function*(){return this.then().catch(e)}))}exclude(e){return this.wipe(e),this.excludeDef.add(e),this.setConfigDef(e),this}finally(e){return __awaiter(this,void 0,void 0,(function*(){return this.then().finally(e)}))}keep(e,o){const{def:t,providers:r}=normaliseModule(e),n=this.keepDef.has(t)?this.defProviders.get(t):[];return this.wipe(t),this.keepDef.add(t),r&&this.defProviders.set(t,[...n||[],...r]),this.setConfigDef(t,o),this}mock(e,o=defaultMock,t){const{def:r,providers:n}=normaliseModule(e),{config:s,mock:c}=parse_mock_arguments(r,o,t,defaultMock);if((0,func_is_ng_def.p)(c)&&(0,func_is_ng_def.p)(e)&&!(0,func_is_ng_def.p)(e,"t"))throw new Error([`MockBuilder.mock(${(0,func_get_name.A)(e)}) received a class when its shape is expected.`,"Please try ngMocks.defaultMock instead."].join(" "));const _=this.mockDef.has(r)?this.defProviders.get(r):[];return this.wipe(r),this.mockDef.add(r),n&&this.defProviders.set(r,[..._||[],...n]),this.setDefValue(r,c),this.setConfigDef(r,s),this}provide(e){for(const o of(0,core_helpers.Bq)(e)){const{provide:e,multi:t}=parse_provider(o),r=this.providerDef.has(e)?this.providerDef.get(e):[];this.providerDef.set(e,generateProviderValue(o,r,t))}return this}replace(e,o,t){if(!(0,func_is_ng_def.p)(o)||!(0,func_is_ng_def.p)(e)||(0,func_is_ng_def.p)(o,"i")||(0,func_is_ng_def.p)(e,"i"))throw new Error("Cannot replace the declaration, both have to be a Module, a Component, a Directive or a Pipe, for Providers use `.mock` or `.provide`");return this.wipe(e),this.replaceDef.add(e),this.defValue.set(e,o),this.setConfigDef(e,t),this}then(e,o){return __awaiter(this,void 0,void 0,(function*(){const t=new Promise((e=>{const o=testing_.TestBed.configureTestingModule(this.build());for(const e of(0,core_helpers.LG)(this.beforeCC))e(o);o.compileComponents().then((()=>{e({testBed:o})}))}));return t.then(e,o)}))}combineParams(){return{configDef:this.configDef,configDefault:this.configDefault,defProviders:this.defProviders,defValue:this.defValue,excludeDef:this.excludeDef,keepDef:this.keepDef,mockDef:this.mockDef,providerDef:this.providerDef,replaceDef:this.replaceDef}}setConfigDef(e,o){!o&&this.configDef.has(e)||this.configDef.set(e,null!=o?o:this.configDefault)}setDefValue(e,o){o===defaultMock?this.defValue.delete(e):this.defValue.set(e,o)}wipe(e){this.defProviders.delete(e),this.defValue.delete(e),this.excludeDef.delete(e),this.keepDef.delete(e),this.mockDef.delete(e),this.providerDef.delete(e),this.replaceDef.delete(e)}}const objectsDiffer=(e,o)=>{const t=Object.keys(e),r=Object.keys(o);if(t.length!==r.length)return!0;for(const r of t)if(e[r]!==o[r])return!0;return!1},equal_variables=(e,o)=>e===o||!(e&&!o||!e&&o)&&!objectsDiffer(e,o),equal_render_defs=(e,o)=>e===o||("boolean"!=typeof e&&"boolean"!=typeof o||e===o)&&e.$implicit===o.$implicit&&equal_variables(e.variables,o.variables),equal_render_configs_objectsDiffer=(e,o)=>{if(Object.keys(e).length!==Object.keys(o).length)return!0;for(const t of Object.keys(e))if(!equal_render_defs(e[t],o[t]))return!0;return!1},equal_render_configs=(e,o)=>!(!equal_render_defs(o,e)||"object"==typeof o&&"object"==typeof e&&equal_render_configs_objectsDiffer(o,e)),are_equal_config_params=(e,o)=>o===e||o.dependency===e.dependency&&o.export===e.export&&o.exportAll===e.exportAll&&!!equal_render_configs(e.render,o.render),are_equal_maps=(e,o,t=((e,o)=>e===o))=>{if(!o||o.size!==e.size)return!1;for(const r of(0,core_helpers.d4)(e)){if(!o.has(r))return!1;if(!t(o.get(r),e.get(r)))return!1}return!0},areEqualProviderDefs=(e,o,...t)=>{for(const r of t)if(o&&e&&o[r]&&e[r]&&o[r]===e[r])return!0;return o===e},are_equal_providers=(e,o)=>{if(Array.isArray(e)!==Array.isArray(o))return!1;const[t,r]=[(0,core_helpers.Bq)(e),(0,core_helpers.Bq)(o)];if(t.length!==r.length)return!1;for(let e=0;e{if(!o||o.size!==e.size)return!1;for(const t of(0,core_helpers.LG)(e))if(!o.has(t))return!1;return!0},get_empty_config=()=>({beforeCC:new Set,configDef:new Map,defProviders:new Map,defValue:new Map,excludeDef:new Set,keepDef:new Set,mockDef:new Set,providerDef:new Map,replaceDef:new Set}),required_metadata=e=>Object.assign(Object.assign({},e),{declarations:[...e.declarations||[]],imports:[...e.imports||[]],providers:[...e.providers||[]]});var mock_builder_performance_awaiter=function(e,o,t,r){return new(t||(t=Promise))((function(n,s){function c(e){try{i(r.next(e))}catch(e){s(e)}}function _(e){try{i(r.throw(e))}catch(e){s(e)}}function i(e){var o;e.done?n(e.value):(o=e.value,o instanceof t?o:new t((function(e){e(o)}))).then(c,_)}i((r=r.apply(e,o||[])).next())}))};class MockBuilderPerformance extends MockBuilderPromise{build(){const e=ng_mocks_universe.A.global;if(e.has("builder:module")&&e.has("builder:config")&&this.equalsTo(e.get("builder:config")))return required_metadata(e.get("builder:module"));e.has("builder:module")&&e.delete(e.get("builder:module"));const o=this.cloneConfig(),t=super.build();return e.set("builder:config",o),e.set("builder:module",t),required_metadata(t)}then(e,o){const t=Object.create(null,{then:{get:()=>super.then}});return mock_builder_performance_awaiter(this,void 0,void 0,(function*(){const r=ng_mocks_universe.A.global;if(r.has("bullet")&&r.has("builder:module")&&r.has("builder:config")&&this.equalsTo(r.get("builder:config")))return r.get(r.get("builder:module")).then(e,o);r.has("bullet")&&r.has("bullet:reset")&&(console.warn("ngMocks.faster has zero effect due to changes in testing module between runs"),r.delete("bullet"),testing_.TestBed.resetTestingModule(),r.set("bullet",!0));const n=t.then.call(this,e,o);return r.set(r.get("builder:module"),n),n}))}cloneConfig(){const e=get_empty_config();return(0,core_helpers.LG)(this.beforeCC,e.beforeCC),(0,core_helpers.LG)(this.excludeDef,e.excludeDef),(0,core_helpers.LG)(this.keepDef,e.keepDef),(0,core_helpers.LG)(this.mockDef,e.mockDef),(0,core_helpers.LG)(this.replaceDef,e.replaceDef),(0,core_helpers.Nn)(this.configDef,e.configDef),(0,core_helpers.Nn)(this.defProviders,e.defProviders),(0,core_helpers.Nn)(this.defValue,e.defValue),(0,core_helpers.Nn)(this.providerDef,e.providerDef),e}equalsTo(e){for(const o of["beforeCC","keepDef","replaceDef","excludeDef","mockDef"])if(!are_equal_sets(this[o],e[o]))return!1;for(const o of["defValue"])if(!are_equal_maps(this[o],e[o]))return!1;for(const o of["providerDef","defProviders"])if(!are_equal_maps(this[o],e[o],are_equal_providers))return!1;return are_equal_maps(this.configDef,e.configDef,are_equal_config_params)}}function MockBuilder(...e){const[o,t]=e,r=new MockBuilderPerformance(e.length<2?{export:!0}:{dependency:!0}),n=ng_mocks_universe.A.config.get("MockBuilderExtensions");for(const e of n?(0,core_helpers.d4)(n):[]){if((0,helper_extract_property_descriptor.A)(r,e))throw new Error(`MockBuilder.${e} is a base method and cannot be customized, please use a different name.`);(0,core_define_property.A)(r,e,((...o)=>(n.get(e)(r,o),r)))}if(o)for(const e of(0,core_helpers.Bq)(o))r.keep(e,{export:!0,shallow:isStandalone(e)});if(t)for(const e of(0,core_helpers.Bq)(t))r.mock(e,e,{export:!0,exportAll:!0});return r}function mockBuilderExtend(e,o){var t;const r=null!==(t=ng_mocks_universe.A.config.get("MockBuilderExtensions"))&&void 0!==t?t:new Map;o?(r.set(e,o),ng_mocks_universe.A.config.set("MockBuilderExtensions",r)):r.delete(e)}!function(e){e.extend=function(e,o){mockBuilderExtend(e,o)}}(MockBuilder||(MockBuilder={}));const is_debug_node=e=>!!(null==e?void 0:e.nativeElement)||!!(null==e?void 0:e.nativeNode),func_parse_find_args_name=e=>"string"==typeof e?e:"function"==typeof e?e.name:(0,func_is_ng_def.p)(e,"t")?e._desc:Array.isArray(e)?e[0]:e?"":"",is_fixture=e=>!!e&&"object"==typeof e&&void 0!==e.debugElement,findDebugElement=e=>is_fixture(e)?findDebugElement(e.debugElement):e&&e.injector&&e.query?e:void 0,func_parse_find_args=(e,o)=>{var t;let r,n,s=o;return 3===e.length?(r=findDebugElement(e[0]),n=e[1],s=e[2]):1===e.length?(r=findDebugElement(func_get_last_fixture()),[n]=e):e[0]?(r=findDebugElement(e[0]),r?n=e[1]:(r=findDebugElement(func_get_last_fixture()),[n,s]=e)):n=e[1],n=null!==(t=findDebugElement(n))&&void 0!==t?t:n,[r,n,s]};var platform_browser_x=e=>{var o={};return __webpack_require__.d(o,e),o},platform_browser_y=e=>()=>e;const platform_browser_namespaceObject=platform_browser_x({By:()=>__WEBPACK_EXTERNAL_MODULE__angular_platform_browser_bc6fa964__.By}),func_parse_find_term=e=>Array.isArray(e)?platform_browser_namespaceObject.By.css(1===e.length?`[${e[0]}]`:`[${e[0]}="${e[1]}"]`):"string"==typeof e?platform_browser_namespaceObject.By.css(e):platform_browser_namespaceObject.By.directive(getSourceOfMock(e)),defaultNotFoundValue={},mock_helper_find=(...e)=>{const[o,t,r]=func_parse_find_args(e,defaultNotFoundValue),n=is_debug_node(t)?t:null==o?void 0:o.query(func_parse_find_term(t));if(n)return n;if(r!==defaultNotFoundValue)return r;throw new Error(`Cannot find an element via ngMocks.find(${func_parse_find_args_name(t)})`)},detect_text_node=e=>"#text"===e.nativeNode.nodeName,el_def_compare=(e,o)=>!(!e||!o)&&e===o,el_def_get_node=e=>detect_text_node(e)?void 0:e.injector._tNode||e.injector.elDef||void 0,defaultInjector={},core_injector=(e,o=defaultInjector)=>{if(o===defaultInjector)return(0,core_helpers.d5)(e);try{return o.get(e)}catch(e){return}},getVcr=(e,o)=>{if(e!==o&&"#comment"===o.nativeNode.nodeName)return core_injector(core_.ViewContainerRef,o.injector)},getScanViewRefRootNodes=(e,o)=>{const t=getVcr(e,o);if(!t)return[];const r=[];for(let e=0;e{var o;let t,r;for(const n of(null===(o=e.parent)||void 0===o?void 0:o.childNodes)||[])for(const[o,s]of getScanViewRefRootNodes(e,n))s===e.nativeNode&&(void 0===r||o{var o,t,r,n;return(null===(o=e.injector._tNode)||void 0===o?void 0:o.parent)||(null===(t=e.injector.elDef)||void 0===t?void 0:t.parent)||scanViewRef(e)||(null===(r=e.parent)||void 0===r?void 0:r.injector._tNode)||(null===(n=e.parent)||void 0===n?void 0:n.injector.elDef)||void 0},nested_check_children=e=>{var o,t;const r=el_def_get_node(e);if(!r||detect_text_node(e))return[];const n=void 0!==e.childNodes,s=[];for(const t of e.childNodes||(null===(o=e.parent)||void 0===o?void 0:o.childNodes)||[]){const e=el_def_get_parent(t);(n||el_def_compare(r,e))&&(e&&!el_def_compare(r,e)||s.push(t))}if("BODY"===(null===(t=e.parent)||void 0===t?void 0:t.name)){const o=e.parent.childNodes;let t=o.length,r=0;for(let n=o.length-1;n>=0;n-=1){const s=o[n];if("#comment"===s.nativeNode.nodeName)r=n;else if(s.nativeNode===e.nativeNode){t=n+1;break}}for(let e=t;e{var t;if(o)return o;const r=el_def_get_parent(e),n=e.parent?el_def_get_node(e.parent):void 0;if(e.parent&&el_def_compare(r,n))return e.parent;for(const o of(null===(t=e.parent)||void 0===t?void 0:t.childNodes)||[]){const e=el_def_get_node(o);if(el_def_compare(r,e))return o}},nested_check_parent=detectParent,nestedCheck=(e,o,t,r=!1)=>{if(!e)return!1;if(!r&&detect_text_node(e))return!1;if(t(e,nested_check_parent(e,o)))return!0;for(const o of nested_check_children(e))if(nestedCheck(o,e,t,r))return!0;return!1},nested_check=nestedCheck,mock_helper_crawl=(e,o,t=!1)=>{const r=mock_helper_find(func_get_last_fixture(),e,void 0);nested_check(r,void 0,o,t)},isSelector=e=>("string"==typeof e||Array.isArray(e)&&"string"==typeof e[0]||is_fixture(e)||is_debug_node(e),!0),mock_helper_func_parse_find_args=(e,o,t)=>{let r,n,s=t;return 3===e.length?[r,n,s]=e:1===e.length?(r=func_get_last_fixture(),[n]=e):o(e[1])&&isSelector(e[0])?[r,n]=e:(r=func_get_last_fixture(),[n,s]=e),[r,n,s]},detect_attribute_in_selectors=(e,o)=>{for(const t of e){const e=t.match(/\[([^=\]]+)/g);if(e)for(const t of e)if(t===`[${o}`)return!0}return!1},getMeta=e=>{try{return core_reflect_directive_resolve(e)}catch(e){return}},func_parse_provider_tokens_directives=(e,o)=>{if(e)try{const t=(0,func_get_type.A)(o),r=core_injector(t,e.injector);return getMeta(r.constructor)}catch(e){return}},func_get_public_provider_keys=e=>e.injector.elDef?Object.keys(e.injector.elDef.element.publicProviders):[],func_parse_inputs_and_requires_attributes=(e,o)=>{const t=e.injector.elDef.element.publicProviders[o],r=t.provider.value;if(!r)return[[],[],0];const n=func_parse_provider_tokens_directives(e,r),s=t.bindings.map((e=>e.nonMinifiedName||e.name));return[(null==n?void 0:n.inputs)||[],s,t.nodeIndex]},collectSelectors=e=>{const o=[];for(const t of e.providerTokens){const r=func_parse_provider_tokens_directives(e,t);(null==r?void 0:r.selector)&&-1===o.indexOf(r.selector)&&o.push(r.selector)}return o},collectAttributesClassic=e=>{const o=[];for(const t of func_get_public_provider_keys(e)){const[r,n]=func_parse_inputs_and_requires_attributes(e,t);for(const e of r){const{name:t,alias:r}=(0,func_directive_io_parse.A)(e),s=r||t;-1!==n.indexOf(t)&&-1===o.indexOf(s)&&o.push(s)}}return o},collectAttributesIvy=e=>{var o,t;const r=[],n=(null===(o=e.injector._tNode)||void 0===o?void 0:o.attrs)||[];let s=2;for(let o=0;o[collectSelectors(e),[...collectAttributesClassic(e),...collectAttributesIvy(e)]],crawl_by_attribute=e=>o=>{const[t,r]=detect_selectors_from_node(o);return-1!==r.indexOf(e)||!!detect_attribute_in_selectors(t,e)},detectInClassic=(e,o,t)=>{for(const r of func_get_public_provider_keys(e)){const[n,s,c]=func_parse_inputs_and_requires_attributes(e,r);for(const r of n){const{name:n,alias:_}=(0,func_directive_io_parse.A)(r);if(o===(_||n)&&-1!==s.indexOf(n)&&t===e.injector.view.nodes[c].instance[n])return!0}}return!1},detectInIvy=(e,o,t)=>{var r,n,s;const c=(null===(r=e.injector._tNode)||void 0===r?void 0:r.attrs)||[];let _=2;for(let r=0;rt=>!!detectInIvy(t,e,o)||detectInClassic(t,e,o),crawl_by_declaration=e=>{const o=getSourceOfMock(e);return e=>!!e&&-1!==e.providerTokens.indexOf(o)&&void 0!==core_injector(o,e.injector)},crawl_by_id=e=>o=>!!o.references[e],regExp=new RegExp("\\[.*?\\]","g"),detect_tag_name_in_selectors=(e,o)=>{for(const t of e){const e=t.replace(regExp,"").split(",");for(const t of e)if(t.trim()===o)return!0}return!1},crawl_by_tag_name=e=>o=>{const[t]=detect_selectors_from_node(o);return detect_tag_name_in_selectors(t,e)},isCrawlByAttribute=e=>Array.isArray(e)&&1===e.length&&"string"==typeof e[0],isCrawlByAttributeValue=e=>Array.isArray(e)&&2===e.length&&"string"==typeof e[0],isCrawlById=e=>"string"==typeof e&&0===e.indexOf("#")&&e.length>1,isCrawlByTagName=e=>"string"==typeof e&&0!==e.indexOf("#")&&e.length>0,isCrawlByDeclaration=e=>"function"==typeof e,detect_crawler=e=>{if(isCrawlByAttribute(e))return crawl_by_attribute(e[0]);if(isCrawlByAttributeValue(e))return crawl_by_attribute_value(e[0],e[1]);if(isCrawlById(e))return crawl_by_id(e.slice(1));if(isCrawlByTagName(e))return crawl_by_tag_name(e);if(isCrawlByDeclaration(e))return crawl_by_declaration(e);throw new Error("Unknown selector")},func_is_valid_reveal_selector=e=>"string"==typeof e||!(!Array.isArray(e)||"string"!=typeof e[0])||"function"==typeof e,mock_helper_reveal_defaultNotFoundValue={},mock_helper_reveal=(...e)=>{const[o,t,r]=mock_helper_func_parse_find_args(e,func_is_valid_reveal_selector,mock_helper_reveal_defaultNotFoundValue),n=mock_helper_find(func_get_last_fixture(),o,void 0),s=detect_crawler(t);let c;if(mock_helper_crawl(n,(e=>!(e===n||detect_text_node(e)||!s(e)||(c=e,0)))),c)return c;if(r!==mock_helper_reveal_defaultNotFoundValue)return r;throw new Error(`Cannot find a DebugElement via ngMocks.reveal(${func_parse_find_args_name(t)})`)},mock_helper_reveal_all=(...e)=>{const[o,t]=mock_helper_func_parse_find_args(e,func_is_valid_reveal_selector),r=mock_helper_find(func_get_last_fixture(),o,void 0),n=detect_crawler(t),s=[];return mock_helper_crawl(r,(e=>{e!==r&&!detect_text_node(e)&&n(e)&&s.push(e)})),s},isMockControlValueAccessor=e=>!!func_is_mock(e)&&!!e.__ngMocksConfig.isControlValueAccessor;var helper_define_property_descriptor=__webpack_require__(6),helper_extract_methods_from_prototype=__webpack_require__(331);const is_html_element=e=>!!e&&"object"==typeof e&&void 0!==e.innerHTML,preventBubble=["focus","blur","load","unload","change","reset","scroll"],customEvent=(e,o)=>{const t=Object.assign({bubbles:!1,cancelable:!1},o),r=document.createEvent("CustomEvent");return r.initCustomEvent(e,t.bubbles,t.cancelable,null),r},eventCtor="function"==typeof Event?(e,o)=>new CustomEvent(e,o):customEvent,keyMap={alt:{altKey:!0,code:"AltLeft",key:"Alt",location:1,which:18},arrowdown:{code:"ArrowDown",key:"ArrowDown",location:0,which:40},arrowleft:{code:"ArrowLeft",key:"ArrowLeft",location:0,which:37},arrowright:{code:"ArrowRight",key:"ArrowRight",location:0,which:39},arrowup:{code:"ArrowUp",key:"ArrowUp",location:0,which:38},backspace:{code:"Backspace",key:"Backspace",location:0,which:8},control:{code:"ControlLeft",ctrlKey:!0,key:"Control",location:1,which:17},enter:{code:"Enter",key:"Enter",location:0,which:13},esc:{code:"Escape",key:"Escape",location:0,which:27},meta:{code:"MetaLeft",key:"Meta",location:1,metaKey:!0,which:91},shift:{code:"ShiftLeft",key:"Shift",location:1,shiftKey:!0,which:16},space:{code:"Space",key:" ",location:0,which:32},tab:{code:"Tab",key:"Tab",location:0,which:9}};for(let e=1;e<=12;e+=1)keyMap[`f${e}`]={code:`F${e}`,key:`F${e}`,location:0,which:e+111};const getCode=e=>{const o=e.codePointAt(0);return o&&o>=97&&o<=122||o&&o>=65&&o<=90?`Key${e.toUpperCase()}`:o&&o>=48&&o<=57?`Digit${e}`:"Unknown"},applyPayload=(e,o)=>{const t={};for(const e of o?o.split("."):[]){let o=keyMap[e];if(o||1!==e.length||(o={code:getCode(e),key:e}),!o)throw new Error(`Unknown event part ${e}`);(0,mock_helper_stub.A)(t,o)}o&&(0,mock_helper_stub.A)(e,t)},mock_helper_event=(e,o,t)=>{const r=e.indexOf("."),[n,s]=-1===r?[e]:[e.slice(0,Math.max(0,r)),e.slice(r+1)],c=eventCtor(n,Object.assign({bubbles:-1===preventBubble.indexOf(e),cancelable:!0},o));return applyPayload(c,s),t&&(0,mock_helper_stub.A)(c,t),c},mock_helper_trigger_preventBubble=["focus","blur","load","unload","change","reset","scroll"],toEventObj=e=>"string"==typeof e?mock_helper_event(e,{bubbles:-1===mock_helper_trigger_preventBubble.indexOf(e),cancelable:!0}):e,getNativeElement=e=>is_debug_node(e)||is_fixture(e)?e.nativeElement:is_html_element(e)?e:void 0,mock_helper_trigger=(e,o,t)=>{const r=is_html_element(e)?e:mock_helper_find(func_get_last_fixture(),e,void 0),n=getNativeElement(r);if(!n)throw new Error(`Cannot trigger ${"string"==typeof o?o:o.type} event undefined element`);if(n.disabled)return;const s=toEventObj(o);s.target||(0,mock_helper_stub.A)(s,{target:n}),t&&(0,mock_helper_stub.A)(s,t),n.dispatchEvent(s)};var mock_helper_stub_member=__webpack_require__(589);const message=["Cannot find ControlValueAccessor on the element.","If it is a mock input with [formControlName],","you need either to avoid mocking ReactiveFormsModule","or to avoid accessing the control in such a way,","because this tests ReactiveFormsModule instead of own implementation."].join(" "),func_get_vca=e=>{const o=core_form&&core_injector(core_form.NgControl,e.injector),t=null==o?void 0:o.valueAccessor;if(t)return t;const r=core_form&&core_injector(core_form.FormControlDirective,e.injector);if(null==r?void 0:r.form)return r.form;const n=core_form&&core_injector(core_form.NgModel,e.injector);if(n)return n;throw new Error(message)},triggerInput=(e,o)=>{mock_helper_trigger(e,"focus");const t=Object.getOwnPropertyDescriptor(e.nativeElement,"value");(0,mock_helper_stub_member.A)(e.nativeElement,"value",o),mock_helper_trigger(e,"input"),mock_helper_trigger(e,"change"),t&&((0,helper_define_property_descriptor.A)(e.nativeElement,"value",t),e.nativeElement.value=o),mock_helper_trigger(e,"blur")},handleKnown=(e,o)=>core_form&&e instanceof core_form.AbstractControl?(e.setValue(o),!0):core_form&&e instanceof core_form.NgModel?(e.update.emit(o),!0):!!isMockControlValueAccessor(e.instance)&&(e.instance.__simulateChange(o),!0),hasListener=e=>e.listeners.some((e=>"input"===e.name||"change"===e.name)),keys=["onChange","onChangeCallback","onChangeCb","onChangeClb","onChangeFn","_onChange","_onChangeCallback","_onChangeCb","_onChangeClb","_onChangeFn","changeFn","_changeFn","onModelChange","cvaOnChange","cvaOnChangeCallback","cvaOnChangeCb","cvaOnChangeClb","cvaOnChangeFn","_cvaOnChange","_cvaOnChangeCallback","_cvaOnChangeCb","_cvaOnChangeClb","_cvaOnChangeFn"],mock_helper_change=(e,o,t)=>{const r=mock_helper_find(func_get_last_fixture(),e,void 0);if(!r)throw new Error(`Cannot find an element via ngMocks.change(${func_parse_find_args_name(e)})`);const n=func_get_vca(r);if(handleKnown(n,o)||hasListener(r))return void triggerInput(r,o);for(const e of t?[t]:keys)if("function"==typeof n[e])return n.writeValue(o),void n[e](o);const s=(0,helper_extract_methods_from_prototype.A)(n);throw new Error(["Unsupported type of ControlValueAccessor,",`please ensure it has '${t||"onChange"}' method.`,"If it is a 3rd-party library, please provide the correct name of the method in the 'methodName' parameter.","Possible Names: "+s.join(", ")+"."].join(" "))},triggerTouch=e=>{mock_helper_trigger(e,"focus"),mock_helper_trigger(e,"blur")},mock_helper_touch_handleKnown=e=>core_form&&e instanceof core_form.AbstractControl?(e.markAsTouched(),!0):!!isMockControlValueAccessor(e.instance)&&(e.instance.__simulateTouch(),!0),mock_helper_touch_hasListener=e=>e.listeners.some((e=>"focus"===e.name||"blur"===e.name)),mock_helper_touch_keys=["onTouched","onTouchedCallback","onTouchedCb","onTouchedClb","onTouchedFn","_onTouched","_onTouchedCallback","_onTouchedCb","_onTouchedClb","_onTouchedFn","markAsTouched","_markAsTouched","onModelTouched","cvaOnTouch","cvaOnTouchCallback","cvaOnTouchCb","cvaOnTouchClb","cvaOnTouchFn","_cvaOnTouch","_cvaOnTouchCallback","_cvaOnTouchCb","_cvaOnTouchClb","_cvaOnTouchFn"],mock_helper_touch=(e,o)=>{const t=mock_helper_find(func_get_last_fixture(),e,void 0);if(!t)throw new Error(`Cannot find an element via ngMocks.touch(${func_parse_find_args_name(e)})`);const r=func_get_vca(t);if(mock_helper_touch_handleKnown(r)||mock_helper_touch_hasListener(t))return void triggerTouch(t);for(const e of o?[o]:mock_helper_touch_keys)if("function"==typeof r[e])return void r[e]();const n=(0,helper_extract_methods_from_prototype.A)(r);throw new Error(["Unsupported type of ControlValueAccessor,",`please ensure it has '${o||"onTouched"}' method.`,"If it is a 3rd-party library, please provide the correct name of the method in the 'methodName' parameter.","Possible Names: "+n.join(", ")+"."].join(" "))},mock_helper_click=(e,o)=>{mock_helper_trigger(e,"click",o)},mock_helper_find_all=(...e)=>{const[o,t]=func_parse_find_args(e);return is_debug_node(t)?[t]:(null==o?void 0:o.queryAll(func_parse_find_term(t)))||[]},getParentWithInjector=e=>{let o=e;for(;"NullInjector"===(null==o?void 0:o.injector.constructor.name);)o=o.parent;if(o)return o.injector},func_get_from_node_injector=(e,o,t)=>{if(!o.injector||"NullInjector"===o.injector.constructor.name)return;const r=getParentWithInjector(o.parent),n=r?core_injector(t,r):void 0,s=core_injector(t,o.injector);n!==s&&((0,func_is_ng_def.p)(t,"t")&&void 0!==s||void 0!==s&&-1===e.indexOf(s))&&e.push(s)},func_get_from_node_element=e=>{var o;return"#text"===(null===(o=e.nativeNode)||void 0===o?void 0:o.nodeName)&&e.parent?e.parent:e},detectGatherFlag=(e,o,t)=>!!(o&&o.nativeNode&&"#comment"===o.nativeNode.nodeName&&Array.isArray(t)&&t[0]===o.nativeNode)||!Array.isArray(t)&&(o&&t.nodeName?"#comment"===t.nodeName?t===o.nativeNode:"#text"===t.nodeName&&t.parentNode===o.nativeNode:e),isNotObject=e=>!e||"object"!=typeof e,shouldBeScanned=(e,o)=>-1===e.indexOf(o)&&Array.isArray(o),scan=({result:e,el:o,nodes:t,normalize:r,proto:n},s,c=[])=>{c.push(t);let _=s,i=t.length;t.length>1&&t[1]&&"object"==typeof t[1]&&t[1].bindingStartIndex&&(i=t[1].bindingStartIndex);for(let s=0;s{if("object"==typeof e[1]&&e[20]===o)return e;for(let t=21;t{var o;let t=e,r=null===(o=t.nativeNode)||void 0===o?void 0:o.__ngContext__;for(;void 0===r&&t.parent;)t=t.parent,r=t.nativeNode.__ngContext__;if("number"!=typeof r)return r;const n=t.injector._lView;return Array.isArray(n)?detectContextByIndex(n,r):void 0},contextToNodes=e=>Array.isArray(e)?e:null==e?void 0:e.lView,func_get_from_node_ivy=(e,o,t)=>{if(!o||o._debugContext)return;const r=func_get_from_node_element(o);func_get_from_node_scan({el:r,nodes:contextToNodes(detectContext(o))||[],normalize:e=>e,proto:t,result:e},!0)},normalize=e=>{if(!e||"object"!=typeof e)return e;for(const o of["renderElement","renderText","instance"])if(e[o])return e[o];return null},func_get_from_node_standard=(e,o,t)=>{if(!o||!o._debugContext)return;const r=func_get_from_node_element(o);func_get_from_node_scan({el:r,nodes:o._debugContext.view.nodes,normalize,proto:t,result:e},!0)},func_get_from_node=(e,o,t)=>(func_get_from_node_injector(e,o,t),(0,func_is_ng_def.p)(t,"t")||"string"==typeof t||(func_get_from_node_standard(e,o,t),func_get_from_node_ivy(e,o,t)),e),func_is_valid_find_instance_selector=e=>"function"==typeof e||(0,func_is_ng_def.p)(e,"t"),mock_helper_find_instance_defaultNotFoundValue={},mock_helper_find_instance=(...e)=>{const[o,t,r]=mock_helper_func_parse_find_args(e,func_is_valid_find_instance_selector,mock_helper_find_instance_defaultNotFoundValue);if("function"!=typeof t&&!(0,func_is_ng_def.p)(t,"t")&&"string"!=typeof t)throw new Error("Only classes or tokens are accepted");const n=getSourceOfMock(t),s=[],c=func_get_last_fixture();if(c)mock_helper_crawl(mock_helper_find(c,o,void 0),((e,o)=>(func_get_from_node(s,e,n),0===s.length&&o&&"#comment"===o.nativeNode.nodeName&&func_get_from_node(s,o,n),s.length>0)),!0);else try{s.push((0,core_helpers.Ah)(n))}catch(e){if(!e||"object"!=typeof e||void 0===e.ngTempTokenPath)throw e}if(s.length>0)return s[0];if(r!==mock_helper_find_instance_defaultNotFoundValue)return r;throw new Error(`Cannot find an instance via ngMocks.findInstance(${func_parse_find_args_name(t)})`)},mock_helper_find_instances=(...e)=>{const[o,t]=mock_helper_func_parse_find_args(e,func_is_valid_find_instance_selector);if("function"!=typeof t&&!(0,func_is_ng_def.p)(t,"t")&&"string"!=typeof t)throw new Error("Only classes or tokens are accepted");const r=getSourceOfMock(t),n=[],s=[],c=func_get_last_fixture();if(c){const e=mock_helper_find_all(c,o,void 0);for(const o of e)mock_helper_crawl(o,((e,o)=>{-1===s.indexOf(e)&&(func_get_from_node(n,e,r),s.push(e)),o&&"#comment"===o.nativeNode.nodeName&&-1===s.indexOf(o)&&(func_get_from_node(n,o,r),s.push(o))}),!0)}else try{n.push((0,core_helpers.Ah)(r))}catch(e){}return n},handle_array=(e,o)=>e(o.map((o=>e(o,!0))).join("")),format_handler=e=>(o,t=!1)=>{const r=(o,n=!1)=>{if(Array.isArray(o))return handle_array(r,o);if(is_fixture(o))return r(o.debugElement,t);const s=e(r,o,n);return void 0!==s?s:is_debug_node(o)&&"#comment"===o.nativeNode.nodeName?r(nested_check_children(o),!0):is_debug_node(o)?r(o.nativeNode,n):""};return Array.isArray(o)?o.map((e=>r(e,t))):r(o,t)},handle_text=e=>{var o,t;return null!==(t=null!==(o=e.nodeValue)&&void 0!==o?o:e.textContent)&&void 0!==t?t:e.wholeText},is_text=e=>!!e&&"object"==typeof e&&"#text"===e.nodeName,normalizeValue=e=>e?e.replace(new RegExp("\\s+","mg")," ").replace(new RegExp("\x3c!--(.|\\n|\\r)*?--\x3e|\x3c!--(.|\\n|\\r)*","mg"),"").replace(new RegExp("\\s+","mg")," ").replace(new RegExp(">\\s+<","mg"),"><").replace(new RegExp('"\\s+>',"mg"),'">'):"",normalizeText=e=>e.replace(new RegExp("&","mg"),"&").replace(new RegExp('"',"mg"),""").replace(new RegExp("<","mg"),"<").replace(new RegExp(">","mg"),">").replace(new RegExp("'","mg"),"'"),getElementValue=(e,o)=>o?e.outerHTML:e.innerHTML,handlePrimitives=(e,o,t)=>{if("string"==typeof o||void 0===o){const e=normalizeValue(o);return t?e:e.trim()}return is_html_element(o)?e(getElementValue(o,t)):is_text(o)?handlePrimitives(e,normalizeText(handle_text(o)),t):void 0},mock_helper_format_html=format_handler(handlePrimitives),mock_helper_format_text_normalizeValue=e=>e?e.replace(new RegExp("\\s+","mg")," "):"",mock_helper_format_text_getElementValue=(e,o)=>{var t;const r=null!==(t=e.textContent)&&void 0!==t?t:"";return o?r:r.trim()},mock_helper_format_text_handlePrimitives=(e,o,t)=>{if("string"==typeof o||void 0===o){const e=mock_helper_format_text_normalizeValue(o);return t?e:e.trim()}return is_html_element(o)?e(mock_helper_format_text_getElementValue(o,t)):is_text(o)?mock_helper_format_text_handlePrimitives(e,handle_text(o),t):void 0},mock_helper_format_text=format_handler(mock_helper_format_text_handlePrimitives),calls=[],mock_helper_auto_spy=e=>{"reset"===e?calls.pop():calls.push(e);const o=calls[calls.length-1];return"jasmine"===o?(0,helper_mock_service.O)((e=>jasmine.createSpy(e))):"jest"===o?(0,helper_mock_service.O)((e=>jest.fn().mockName(e))):o&&"default"!==o&&"reset"!==o?(0,helper_mock_service.O)(o):(0,helper_mock_service.O)()},mock_helper_console=(e,o)=>(...t)=>{const r=[];beforeEach((()=>{for(const o of e)-1===t.indexOf(o)&&t.push(o);for(const e of t)(0,core_define_property.A)(console,`__ngMocksBackup_${e}`,console[`__ngMocksBackup_${e}`]||[]),console[`__ngMocksBackup_${e}`].push(console[e]),r.push(e),console[e]=o(e)})),afterEach((()=>{for(const e of r)console[e]=console[`__ngMocksBackup_${e}`].pop();r.splice(0,r.length)}))},factory=e=>helper_mock_service.A.mockFunction(`console.${e}`),mock_helper_console_ignore=mock_helper_console(["log"],factory),mock_helper_console_throw_factory=e=>(...o)=>{const t=new Error(o.join(" "));throw(0,core_define_property.A)(t,"ngMocksConsoleCatch",e),t},mock_helper_console_throw=mock_helper_console(["warn","error"],mock_helper_console_throw_factory),mock_helper_default_config=(e,o)=>{const t=ng_mocks_universe.A.getConfigMock();for(const r of(0,core_helpers.Bq)(e))o?t.set(r,o):t.delete(r)},mock_helper_default_mock=(e,o)=>{const t=ng_mocks_universe.A.getOverrides();for(const r of(0,core_helpers.Bq)(e))if(o){const e=t.has(r)?t.get(r):new Set;e.add(o),t.set(r,e)}else t.delete(r)},hooks=ng_mocks_universe.A.global.get("faster-hooks")||{after:[],before:[]};ng_mocks_universe.A.global.set("faster-hooks",hooks);const configureTestingModule=(e,o)=>t=>{if(testing_.TestBed.ngMocksFasterLock)return e.call(o,t);ng_mocks_universe.A.global.set("bullet:customized",!0);let r=e;for(const e of hooks.before)r=e(r,o);try{return(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterLock",!0),r.call(o,t)}finally{(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterLock",void 0)}},resetTestingModule=(e,o)=>()=>{if(testing_.TestBed.ngMocksFasterLock)return e.call(o);if(ng_mocks_universe.A.global.has("bullet"))return ng_mocks_universe.A.global.has("bullet:customized")&&ng_mocks_universe.A.global.set("bullet:reset",!0),o;ng_mocks_universe.A.global.delete("bullet:customized"),ng_mocks_universe.A.global.delete("bullet:reset");let t=e;for(const e of hooks.after)t=e(t,o);try{return(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterLock",!0),t.call(o)}finally{(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterLock",void 0)}},mock_helper_faster_install=()=>{testing_.TestBed.ngMocksFasterInstalled||(testing_.TestBed.configureTestingModule=configureTestingModule(testing_.TestBed.configureTestingModule,testing_.TestBed),testing_.TestBed.resetTestingModule=resetTestingModule(testing_.TestBed.resetTestingModule,testing_.TestBed),(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterInstalled",!0));const e=(0,testing_.getTestBed)();return e.ngMocksFasterInstalled||(e.configureTestingModule=configureTestingModule(e.configureTestingModule,e),e.resetTestingModule=resetTestingModule(e.resetTestingModule,e),(0,core_define_property.A)(e,"ngMocksFasterInstalled",!0)),hooks},mock_helper_flush_test_bed=()=>{const e=(0,testing_.getTestBed)();e._instantiated=!1,e._moduleFactory=void 0,e._testModuleRef=null},resetFixtures=e=>{const o=(0,testing_.getTestBed)()._activeFixtures||[];let t=0;for(let r=o.length-1;r>=0;r-=1)o[r].ngMocksStackId&&o[r].ngMocksStackId!==e?t+=1:(o[r].ngMocksStackId=void 0,o[r].destroy(),o.splice(r,1));0===t&&mock_helper_flush_test_bed()},idAdd=e=>{var o;const t=null!==(o=ng_mocks_universe.A.global.get("bullet:stack"))&&void 0!==o?o:[];t.push(e),ng_mocks_universe.A.global.set("bullet:stack",t),ng_mocks_universe.A.global.set("bullet:stack:id",e)},idRemove=e=>{const o=ng_mocks_universe.A.global.get("bullet:stack");o.splice(o.indexOf(e),1),o.length>0?ng_mocks_universe.A.global.set("bullet:stack:id",o[o.length-1]):ng_mocks_universe.A.global.delete("bullet:stack:id"),resetFixtures(e)},mock_helper_faster=()=>{mock_helper_faster_install();const e={},o={};beforeAll((()=>{ng_mocks_universe.A.global.has("bullet:customized")&&testing_.TestBed.resetTestingModule(),ng_mocks_universe.A.global.set("bullet",!0),idAdd(e)})),beforeEach((()=>{idAdd(o)})),afterEach((()=>{idRemove(o)})),afterAll((()=>{idRemove(e),ng_mocks_universe.A.global.delete("bullet"),ng_mocks_universe.A.global.has("bullet:reset")&&testing_.TestBed.resetTestingModule()}))},mock_helper_get_defaultNotFoundValue={},parseArgs=e=>({el:e[0],notFoundValue:3===e.length?e[2]:mock_helper_get_defaultNotFoundValue,sel:e[1]}),mock_helper_get=(...e)=>{if(1===e.length)try{return testing_.TestBed.inject?testing_.TestBed.inject(e[0]):testing_.TestBed.get(e[0])}catch(o){if(!o||"object"!=typeof o||void 0===o.ngTempTokenPath)throw o;throw new Error(`Cannot find an instance via ngMocks.get(${func_parse_find_args_name(e[0])})`)}const{el:o,sel:t,notFoundValue:r}=parseArgs(e),n=mock_helper_find(func_get_last_fixture(),o,void 0),s=getSourceOfMock(t);if(n){const e=func_get_from_node([],n,s);if(e.length>0)return e[0]}if(n){const e=nested_check_parent(n,void 0);if(e&&"#comment"===e.nativeNode.nodeName){const o=func_get_from_node([],e,s);if(o.length>0)return o[0]}}if(r!==mock_helper_get_defaultNotFoundValue)return r;throw new Error(`Cannot find ${(0,func_get_name.A)(t)} instance via ngMocks.get`)},iterator=(e,o,t=new Set)=>{const r=(0,collect_declarations.A)(e);for(const e of r.decorators)for(const n of core_config.A.dependencies)if(r[e][n])for(const s of(0,core_helpers.Bq)(r[e][n])){const e=(0,func_get_type.A)(s);e&&!t.has(e)&&(t.add(e),o(e),iterator(e,o,t))}},func_iterate_declaration=iterator,func_global_prepare=()=>{var e;ng_mocks_universe.A.cacheDeclarations.clear(),null===(e=ng_mocks_universe.A.config.get("ngMocksDepsSkip"))||void 0===e||e.clear()},action=e=>{ng_mocks_universe.A.getDefaults().set(e,["exclude"])},mock_helper_global_exclude=(e,o=!1)=>{func_global_prepare(),action(e),o&&func_iterate_declaration(e,action)},mock_helper_global_keep_action=e=>{ng_mocks_universe.A.getDefaults().set(e,["keep"])},mock_helper_global_keep=(e,o=!1)=>{func_global_prepare(),mock_helper_global_keep_action(e),o&&func_iterate_declaration(e,mock_helper_global_keep_action)},mock_helper_global_mock_action=e=>{ng_mocks_universe.A.getDefaults().set(e,["mock"])},mock_helper_global_mock=(e,o=!1)=>{func_global_prepare(),mock_helper_global_mock_action(e),o&&func_iterate_declaration(e,mock_helper_global_mock_action)},mock_helper_global_replace=(e,o)=>{let t=!0;if(((0,func_is_ng_def.p)(e,"m")&&(0,func_is_ng_def.p)(o,"m")||(0,func_is_ng_def.p)(e,"c")&&(0,func_is_ng_def.p)(o,"c")||(0,func_is_ng_def.p)(e,"d")&&(0,func_is_ng_def.p)(o,"d")||(0,func_is_ng_def.p)(e,"p")&&(0,func_is_ng_def.p)(o,"p"))&&(t=!1),t)throw new Error("Cannot replace the declaration, both have to be a Module, a Component, a Directive or a Pipe");func_global_prepare(),ng_mocks_universe.A.getDefaults().set(e,["replace",o])},mock_helper_global_wipe_action=e=>{ng_mocks_universe.A.getDefaults().delete(e),mock_helper_default_mock(e)},mock_helper_global_wipe=(e,o=!1)=>{func_global_prepare(),mock_helper_global_wipe_action(e),o&&func_iterate_declaration(e,mock_helper_global_wipe_action)},mock_helper_guts_skipDef=(e,o,t)=>!!o.has(e)||(o.add(e),t.has(e)),createMetaHandler=(e,o,t,r,n)=>{const s=e.get(o)||o;(0,func_is_ng_def.p)(s,"m")?t.push(s):(0,func_is_ng_def.p)(s,"c")||(0,func_is_ng_def.p)(s,"d")?r.push(s):(0,func_is_ng_def.p)(s,"p")?(r.push(s),n.push(s)):(0,func_is_ng_injection_token.S)(s)||n.push(s)},createMeta=({keep:e,skip:o,optional:t,exclude:r,imports:n,declarations:s,providers:c})=>{for(const _ of e)o.has(_)||r.has(_)||t.has(_)||createMetaHandler(t,_,n,s,c);return{declarations:s,imports:n,providers:c}},typeMap=[["m","module"],["c","component"],["d","directive"],["p","pipe"]],mock_helper_guts_getType=(e,o)=>{if((0,func_is_ng_module_def_with_providers.h)(e))return"module-with-providers";for(const[t,r]of typeMap)if((0,func_is_ng_def.p)(e,t))return"m"===t&&o.has(e)?`${r}-keep`:r;return""},handleModuleWithProviders=(e,o)=>{e.skip.has(o.ngModule)||(e.skip.add(o.ngModule),e.exclude.has(o.ngModule)||e.imports.push(e.keep.has(o.ngModule)?o:MockModule(o)))},handleDeclaration=(e,o,t,r)=>{mock_helper_guts_skipDef(o,e.skip,e.exclude)||r.push(e.keep.has(o)?o:t(o))},handleDestructuring=(e,o,t)=>{if(mock_helper_guts_skipDef(o,e.skip,e.exclude))return;const r=core_reflect_module_resolve(o);for(const o of(0,core_helpers.Bq)([r.declarations,r.imports]))t(e,o);for(const o of r.providers?(0,core_helpers.Bq)(r.providers):[])resolveProvider(e,o)},resolveProvider=({skip:e,keep:o,providers:t,exclude:r},n)=>{const s=(0,func_get_type.A)(n);if(e.add(s),r.has(s))return;const c=o.has(s)?n:(0,mock_provider.A)(n);c&&t.push(c)},resolveMap={component:MockComponent,directive:MockDirective,pipe:MockPipe},resolveHandler=(e,o,t,r)=>{"module-with-providers"===o?handleModuleWithProviders(e,t):"module-keep"===o||"module"===o&&r?handleDeclaration(e,t,MockModule,e.imports):"module"===o?handleDestructuring(e,t,resolve):resolveMap[o]?handleDeclaration(e,t,resolveMap[o],e.declarations):resolveProvider(e,t)},resolve=(e,o,t=!0)=>{if(!o)return;const r=mock_helper_guts_getType(o,e.keep);let n;if("module-with-providers"!==r){const t=e.optional.get(o);t&&t!==o&&(n=t,e.keep.add(n))}n||(n=o),resolveHandler(e,r,n,t)},generateDataWithUniverse=(e,o,t,r)=>{for(const n of(0,core_helpers.d4)(ng_mocks_universe.A.getDefaults())){const s=ng_mocks_universe.A.getBuildDeclaration(n);e.has(n)||o.has(n)||t.has(n)||(r.set(n,s),null===s?t.add(n):void 0===s?o.add(n):n===s&&e.add(n))}},generateData=(e,o,t)=>{const r=new Set((0,core_helpers.Bq)(e||[])),n=new Set((0,core_helpers.Bq)(o||[])),s=new Set((0,core_helpers.Bq)(t||[])),c=new Map;return generateDataWithUniverse(r,n,s,c),{declarations:[],exclude:s,imports:[],keep:r,mock:n,optional:c,providers:[],skip:new Set}},mock_helper_guts=(e,o=null,t=null)=>{const r=generateData(e,o,t),n=new Map;ng_mocks_universe.A.config.set("ngMocksDepsResolution",n);for(const e of(0,core_helpers.LG)(r.keep))n.set(e,"keep");for(const e of(0,core_helpers.LG)(r.exclude))n.set(e,"exclude");ng_mocks_universe.A.config.set("mockNgDefResolver",new core_def_stack);for(const e of(0,core_helpers.LG)(r.mock))n.set(e,"mock"),r.optional.has(e)||resolve(r,e,!1);const s=createMeta(r);return ng_mocks_universe.A.config.delete("mockNgDefResolver"),ng_mocks_universe.A.config.delete("ngMocksDepsResolution"),s},mock_helper_attributes_defaultNotFoundValue={},mock_helper_attributes_parseArgs=e=>[e[0],e[1],3===e.length?e[2]:mock_helper_attributes_defaultNotFoundValue],attrMatches=(e,o)=>{const{name:t,alias:r=""}=(0,func_directive_io_parse.A)(e);if(!r&&t===o||r&&r===o)return t},detectAttribute=(e,o,t)=>{for(const r of(null==e?void 0:e.providerTokens)||[]){const n=func_parse_provider_tokens_directives(e,r);if(n)for(const s of n[o]||[]){const o=attrMatches(s,t);if(o)return mock_helper_get(e,r)[o]}}throw new Error("Not found")},mock_helper_attributes=(e,o,...t)=>{const[r,n,s]=mock_helper_attributes_parseArgs(t);try{return detectAttribute(mock_helper_find(func_get_last_fixture(),r,void 0),o,n)}catch(e){}if(s!==mock_helper_attributes_defaultNotFoundValue)return s;throw new Error(`Cannot find ${n} ${e} via ngMocks.${e}`)},mock_helper_input=(...e)=>mock_helper_attributes("input","inputs",...e),mock_helper_output=(...e)=>mock_helper_attributes("output","outputs",...e),mock_helper_reset=()=>{ng_mocks_universe.A.builtDeclarations=new Map,ng_mocks_universe.A.builtProviders=new Map,ng_mocks_universe.A.cacheDeclarations=new Map,ng_mocks_universe.A.cacheProviders=new Map,ng_mocks_universe.A.config=new Map,ng_mocks_universe.A.configInstance=new Map,ng_mocks_universe.A.flags=new Set(core_config.A.flags),ng_mocks_universe.A.touches=new Set},getValVcr=e=>{const o=[];for(const t of e.__ngMocksConfig.queryScanKeys||[]){const r=e[t],n=e[`__ngMocksVcr_${t}`],s=r instanceof core_.QueryList?r.toArray():[r],c=n instanceof core_.QueryList?n.toArray():[n];for(let e=0;e!!e.__template&&!!e.__vcr&&o(e.__template)&&t(e.__vcr,e.__template),isRightTemplate=(e,o,t)=>!!e&&o instanceof core_.TemplateRef&&t(o),findDeep=(e,o,t)=>{if(!func_is_mock(e))throw new Error("Only instances of mock declarations are accepted");if(handleDirective(e,o,t))return!0;for(const[r,n]of getValVcr(e)){if(func_is_mock(r)&&findDeep(r,o,t))return!0;if(isRightTemplate(n,r,o))return t(n,r)}return!1},func_find_deep=findDeep,func_parse_template=e=>{if(e instanceof core_.TemplateRef)return e;if(func_is_mock(e)&&e.__template)return e.__template;const o=(null==e?void 0:e.nativeNode)&&e.injector;if(o){const e=core_injector(core_.TemplateRef,o);if(e)return e}const t=new Error("Unknown template has been passed, only TemplateRef or a mock structural directive are supported");throw t.param=e,t},mock_helper_hide=(e,o)=>{const t=o?func_parse_template(o):void 0;let r=!1;if(func_find_deep(e,(e=>!t||e.elementRef.nativeElement===t.elementRef.nativeElement),(e=>(e.clear(),r=!0,!1))),!r)throw new Error("Cannot find path to the TemplateRef")},mock_helper_render=(e,o,t,r)=>{const n=func_parse_template(o);if(!func_find_deep(e,(e=>e.elementRef.nativeElement===n.elementRef.nativeElement),((e,o)=>{const n=Object.assign(Object.assign({},r),{$implicit:t});return e.clear(),e.createEmbeddedView(o,n).detectChanges(),!0})))throw new Error("Cannot find path to the TemplateRef")},template_ref_detect_crawler=e=>{if("string"==typeof e)return crawl_by_id(e);if(Array.isArray(e)&&1===e.length&&"string"==typeof e[0])return crawl_by_attribute(e[0]);if(Array.isArray(e)&&2===e.length&&"string"==typeof e[0])return crawl_by_attribute_value(e[0],e[1]);if("function"==typeof e)return crawl_by_declaration(e);throw new Error("Unknown selector")},detect_template_ref=(e,o,t=0)=>r=>{try{const t=!detect_text_node(r)&&o(r)?core_injector(core_.TemplateRef,r.injector):void 0;t&&e.push(t)}catch(e){}return!!t&&e.length===t},func_is_valid_template_ref_selector=e=>"string"==typeof e||!(!Array.isArray(e)||"string"!=typeof e[0])||"function"==typeof e,mock_helper_find_template_ref_defaultNotFoundValue={},mock_helper_find_template_ref=(...e)=>{const[o,t,r]=mock_helper_func_parse_find_args(e,func_is_valid_template_ref_selector,mock_helper_find_template_ref_defaultNotFoundValue),n=[],s=template_ref_detect_crawler(t);if(nested_check(mock_helper_find(func_get_last_fixture(),o,void 0),void 0,detect_template_ref(n,s,1)),n.length>0)return n[0];if(r!==mock_helper_find_template_ref_defaultNotFoundValue)return r;throw new Error(`Cannot find a TemplateRef via ngMocks.findTemplateRef(${func_parse_find_args_name(t)})`)},mock_helper_find_template_refs=(...e)=>{const[o,t]=mock_helper_func_parse_find_args(e,func_is_valid_template_ref_selector),r=[],n=template_ref_detect_crawler(t);return nested_check(mock_helper_find(func_get_last_fixture(),o,void 0),void 0,detect_template_ref(r,n)),r},flagNames=["onMockBuilderMissingDependency","onMockInstanceRestoreNeed","onTestBedFlushNeed"],mock_helper_object={autoSpy:mock_helper_auto_spy,change:mock_helper_change,click:mock_helper_click,config:e=>{const o=ng_mocks_universe.A.global.get("flags");for(const t of flagNames)null===e[t]?o[t]=core_config.A[t]:void 0!==e[t]&&(o[t]=e[t]);null===e.mockRenderCacheSize?ng_mocks_universe.A.global.delete("mockRenderCacheSize"):void 0!==e.mockRenderCacheSize&&ng_mocks_universe.A.global.set("mockRenderCacheSize",e.mockRenderCacheSize)},crawl:mock_helper_crawl,defaultConfig:mock_helper_default_config,defaultMock:mock_helper_default_mock,event:mock_helper_event,faster:mock_helper_faster,find:mock_helper_find,findAll:mock_helper_find_all,findInstance:mock_helper_find_instance,findInstances:mock_helper_find_instances,findTemplateRef:mock_helper_find_template_ref,findTemplateRefs:mock_helper_find_template_refs,flushTestBed:mock_helper_flush_test_bed,formatHtml:mock_helper_format_html,formatText:mock_helper_format_text,get:mock_helper_get,globalExclude:mock_helper_global_exclude,globalKeep:mock_helper_global_keep,globalMock:mock_helper_global_mock,globalReplace:mock_helper_global_replace,globalWipe:mock_helper_global_wipe,guts:mock_helper_guts,hide:mock_helper_hide,ignoreOnConsole:mock_helper_console_ignore,input:mock_helper_input,output:mock_helper_output,render:mock_helper_render,reset:mock_helper_reset,reveal:mock_helper_reveal,revealAll:mock_helper_reveal_all,stub:mock_helper_stub.A,stubMember:mock_helper_stub_member.A,throwOnConsole:mock_helper_console_throw,touch:mock_helper_touch,trigger:mock_helper_trigger},ngMocks=mock_helper_object;var mock_service=__webpack_require__(839);const defaultValue={};function MockProviders(...e){return e.map((e=>MockProvider(e,defaultValue)))}function MockProvider(e,o=defaultValue,t,r={}){func_import_exists(e,"MockProvider");const{deps:n,multi:s}="boolean"==typeof r?{deps:void 0,multi:r}:Array.isArray(r)?{deps:r,multi:void 0}:r;return t?{provide:e,[t]:o,deps:n,multi:s}:(0,helper_use_factory.A)(e,(()=>(0,mock_service.K)(e)),(e=>o===defaultValue?e:e?(0,mock_helper_stub.A)(e,o):o))}const applyOverride=(e,o)=>{(0,func_is_ng_def.p)(e,"c")?testing_.TestBed.overrideComponent(e,o):(0,func_is_ng_def.p)(e,"d")?testing_.TestBed.overrideDirective(e,o):(0,func_is_ng_def.p)(e,"m")&&testing_.TestBed.overrideModule(e,o),((0,func_is_ng_def.p)(e,"t")||(0,func_is_ng_def.p)(e,"i"))&&testing_.TestBed.overrideProvider(e,o)},ng_mocks_global_overrides_applyOverrides=e=>{for(const[o,[t,r]]of(0,core_helpers.Nn)(e))testing_.TestBed.ngMocksOverrides.set(o,Object.assign(Object.assign({},r),{override:t})),applyOverride(o,t)},applyNgMocksOverrides=e=>{var o;if(null===(o=e.ngMocksOverrides)||void 0===o?void 0:o.size){ngMocks.flushTestBed();for(const[o,t]of(0,core_helpers.Nn)(e.ngMocksOverrides))applyOverride(o,t)}e.ngMocksOverrides=void 0},initTestBed=()=>{testing_.TestBed.ngMocksSelectors||(0,core_define_property.A)(testing_.TestBed,"ngMocksSelectors",new Map),testing_.TestBed.ngMocksOverrides||(0,core_define_property.A)(testing_.TestBed,"ngMocksOverrides",new Map)},generateTouches=(e,o)=>{for(const t of core_config.A.dependencies)for(const r of e[t]?(0,core_helpers.Bq)(e[t]):[]){const e=(0,func_get_type.A)(r);if((0,func_is_ng_module_def_with_providers.h)(r)&&generateTouches(r,o),!o.has(e)&&(o.add(e),"function"==typeof e)){if(!Object.prototype.hasOwnProperty.call(e,"__ngMocksTouches")){const o=new Set,t=core_reflect_meta(e);(0,core_define_property.A)(e,"__ngMocksTouches",o,!1),t&&generateTouches(t,o)}(0,core_helpers.LG)(e.__ngMocksTouches,o)}}},defineTouches=(e,o,t)=>{var r;let n=t;return!n&&ng_mocks_universe.A.getDefaults().size>0&&(n=func_extract_tokens(e._providers||(null===(r=e._compiler)||void 0===r?void 0:r.providers)).touches,n||(n=new Set,o.providers=o.providers||[],o.providers.push({provide:core_tokens.Em,useValue:n})),generateTouches(o,n)),n},applyPlatformOverrideDef=e=>{const o=(0,func_get_type.A)(e);if(testing_.TestBed.ngMocksOverrides.has(o))return;const t=core_reflect_module_resolve(o),r=get_override_def(t);r&&(testing_.TestBed.ngMocksOverrides.set(o,{set:t}),testing_.TestBed.overrideModule(o,{set:r}))},applyPlatformOverridesBasedOnProvidedIn=(e,o)=>{const t=core_reflect_provided_in(e);t&&("string"==typeof t||o.has(t))&&(testing_.TestBed.ngMocksOverrides.set(e,{}),testing_.TestBed.overrideProvider(e,MockProvider(e)))},applyPlatformOverridesBasedOnDefaults=e=>{for(const[o,[t]]of(0,core_helpers.Nn)(ng_mocks_universe.A.getDefaults()))"mock"===t&&((0,func_is_ng_def.p)(o,"i")||(0,func_is_ng_def.p)(o,"t"))&&(e.has(o)||testing_.TestBed.ngMocksOverrides.has(o)||applyPlatformOverridesBasedOnProvidedIn(o,e))},applyPlatformOverrides=(e,o)=>{if(testing_.TestBed.ngMocksOverrides){const t=ng_mocks_universe.A.touches;ng_mocks_universe.A.touches=o;for(const o of(0,core_helpers.Bq)(e.ngModule||[]))applyPlatformOverrideDef(o);applyPlatformOverridesBasedOnDefaults(o),ng_mocks_universe.A.touches=t}},ng_mocks_global_overrides_configureTestingModule=(e,o)=>t=>{var r,n;initTestBed();const s=!("object"!=typeof t||!t||t.providers&&-1!==t.providers.indexOf(MockBuilder));let c=0;const _=[];for(const e of s?["imports","declarations"]:[])for(const o of(0,core_helpers.Bq)(t[e]))o&&(_.push([(0,func_is_ng_module_def_with_providers.h)(o)?{ngModule:getSourceOfMock(o.ngModule),providers:o.providers}:getSourceOfMock(o),(0,func_is_ng_module_def_with_providers.h)(o)?o.ngModule:o,isMockNgDef((0,func_get_type.A)(o))]),c|=_[_.length-1][2]?2:1);let i=3===c?void 0:t;if(!i){let e=MockBuilder(core_tokens.gG);for(const[o,t,n]of _){const s=null===(r=t.prototype.__ngMocksConfig)||void 0===r?void 0:r.transform,c={export:!(0,func_is_ng_def.p)(o,"m"),exportAll:!1,onRoot:!0};e=n&&s?e.mock(o,s,c):n?e.mock(o,c):e.keep(o,c)}i=e.build(),i=Object.assign(Object.assign(Object.assign({},t),i),{providers:[...null!==(n=t.providers)&&void 0!==n?n:[],...i.providers]})}const a=(0,testing_.getTestBed)(),l=func_extract_tokens(i.providers),{mocks:p,overrides:u}=l,d=defineTouches(a,i,l.touches);return p&&ngMocks.flushTestBed(),u&&ng_mocks_global_overrides_applyOverrides(u),!d||a._instantiated||a._testModuleRef||applyPlatformOverrides(a,d),e.call(o,i)},ng_mocks_global_overrides_resetTestingModule=(e,o)=>()=>(ng_mocks_universe.A.global.delete("builder:config"),ng_mocks_universe.A.global.delete("builder:module"),testing_.TestBed.ngMocksSelectors=void 0,applyNgMocksOverrides(testing_.TestBed),e.call(o)),patchVcrInstance=e=>{if(!core_.ViewContainerRef.ngMocksOverridesPatched&&((0,core_define_property.A)(core_.ViewContainerRef,"ngMocksOverridesPatched",!0),e.createComponent)){const o=e.createComponent,t=(0,helper_create_clone.A)(o,void 0,void 0,(function(e,...t){var r;const n=core_injector(core_tokens.en,this.injector);return o.apply(this,[null!==(r=null==n?void 0:n.get(e))&&void 0!==r?r:e,...t])}));(0,core_define_property.A)(e.constructor.prototype,"createComponent",t,!0),(0,core_define_property.A)(e,"createComponent",t,!0)}},createComponent=(e,o)=>t=>{const r=e.call(o,t);try{const e=r.debugElement.injector.get(core_.ViewContainerRef);patchVcrInstance(e)}catch(e){}return r},viewContainerInstall=()=>{const e=core_.ViewContainerRef;if(!e.ngMocksOverridesInstalled){const o=e.__NG_ELEMENT_ID__;o&&(0,core_define_property.A)(e,"__NG_ELEMENT_ID__",(0,helper_create_clone.A)(o,void 0,void 0,((...e)=>{const t=o.apply(o,e);return patchVcrInstance(t),t})),!0),(0,core_define_property.A)(testing_.TestBed,"createComponent",createComponent(testing_.TestBed.createComponent,testing_.TestBed)),(0,core_define_property.A)(core_.ViewContainerRef,"ngMocksOverridesInstalled",!0)}},installInjector=e=>{if(e.constructor.prototype.__ngMocksInjector||!e.constructor.prototype.get)return e;(0,core_define_property.A)(e.constructor.prototype,"__ngMocksInjector",!0);const o=e.constructor.prototype.get;return e.constructor.prototype.get=(0,helper_create_clone.A)(o,void 0,void 0,(function(e,...t){const r=o.call(this,e,...t);return r&&"object"==typeof r&&"function"==typeof r.constructor&&"string"==typeof r.constructor.name&&"Injector"===r.constructor.name.slice(-8)&&installInjector(r),r})),e},install=()=>{if(!testing_.TestBed.ngMocksOverridesInstalled){const e=mock_helper_faster_install();viewContainerInstall(),-1===e.before.indexOf(ng_mocks_global_overrides_configureTestingModule)&&e.before.push(ng_mocks_global_overrides_configureTestingModule),-1===e.after.indexOf(ng_mocks_global_overrides_resetTestingModule)&&e.after.push(ng_mocks_global_overrides_resetTestingModule),(0,core_define_property.A)(testing_.TestBed,"ngMocksOverridesInstalled",!0);const o=core_.Injector.create;core_.Injector.create=(0,helper_create_clone.A)(o,void 0,void 0,((...e)=>installInjector(o.apply(core_.Injector,e))));try{core_.Injector.create({length:0,providers:[]})}catch(e){}}};function isMockedNgDefOf(e,o,t){return"function"==typeof e&&e.mockOf===o&&(!t||(0,func_is_ng_def.p)(e,t))}install();const getMock=(e,o,t)=>{if(t&&!t.has(o))throw new Error(`There is no mock for ${(0,func_get_name.A)(o)}`);let r=t?t.get(o):void 0;return r===o&&(r=void 0),r||o===e?!r&&ng_mocks_universe.A.cacheDeclarations.has(o)&&(r=ng_mocks_universe.A.cacheDeclarations.get(o)):r=e,r};function getMockedNgDefOf(e,o){var t;const r=null!==(t=e.mockOf)&&void 0!==t?t:e,n=core_injector(core_tokens.en),s=getMock(e,r,n);if(s&&!o)return s;if(s&&o&&isMockedNgDefOf(s,r,o))return s;throw new Error(`There is no mock for ${(0,func_get_name.A)(r)}`)}function isMockOf(e,o,t){return func_is_mock(e)&&e.constructor===o&&(t?(0,func_is_ng_def.p)(e.constructor,t):(0,func_is_ng_def.p)(e.constructor))}const isMockValidator=e=>!!func_is_mock(e)&&!!e.__ngMocksConfig.isValidator,mock_instance_forgot_reset=e=>{const o=[];for(;e.length>0;){const[t,r]=e.pop()||[];r===ng_mocks_universe.A.configInstance.get(t)&&o.push("function"==typeof t?(0,func_get_name.A)(t):t)}if(o.length>0){const e=ng_mocks_universe.A.global.get("flags"),t=[`MockInstance: side effects have been detected (${o.join(", ")}).`,"Forgot to add MockInstance.scope() or to call MockInstance.restore()?"].join(" ");if("warn"===e.onMockInstanceRestoreNeed)console.warn(t);else if("throw"===e.onMockInstanceRestoreNeed)throw new Error(t)}};let currentStack;ng_mocks_stack.subscribePush((e=>{currentStack=e})),ng_mocks_stack.subscribePop(((e,o)=>{for(const o of e.mockInstance||[])if(ng_mocks_universe.A.configInstance.has(o)){const e=ng_mocks_universe.A.configInstance.get(o);e.overloads.pop(),ng_mocks_universe.A.configInstance.set(o,Object.assign({},e))}currentStack=o[o.length-1]}));const parseMockInstanceArgs=e=>{const o={};return"string"==typeof e[0]?(o.key=e[0],o.value=e[1],o.accessor=e[2]):(o.value=e[0],o.value&&"object"==typeof o.value&&(o.value=o.value.init)),o},checkReset=[];let checkCollect=!1;"undefined"!=typeof beforeEach&&(beforeEach((()=>checkCollect=!0)),beforeEach((()=>mock_instance_forgot_reset(checkReset))),afterEach((()=>checkCollect=!1)));const mockInstanceConfig=(e,o,t,r)=>{var n;const s=ng_mocks_universe.A.configInstance.has(e)?ng_mocks_universe.A.configInstance.get(e):{},c=s.overloads||[];c.push([o,t,r]),s.overloads=c,ng_mocks_universe.A.configInstance.set(e,Object.assign({},s));const _=null!==(n=currentStack.mockInstance)&&void 0!==n?n:[];return _.push(e),currentStack.mockInstance=_,checkCollect&&checkReset.push([e,ng_mocks_universe.A.configInstance.get(e),currentStack]),t};function MockInstance(e,...o){if(func_import_exists(e,"MockInstance"),o.length>0){const{key:t,value:r,accessor:n}=parseMockInstanceArgs(o);return mockInstanceConfig(e,t,r,n)}const t=ng_mocks_universe.A.configInstance.get(e)||{};ng_mocks_universe.A.configInstance.set(e,Object.assign(Object.assign({},t),{overloads:[]}));for(let o=checkReset.length-1;o>=0;o-=1)checkReset[o][0]===e&&checkReset[o][2]===currentStack&&checkReset.splice(o,1)}function MockReset(){ng_mocks_universe.A.configInstance.clear()}function MockDeclarations(...e){return e.map(MockDeclaration)}function MockDeclaration(e){if((0,func_is_ng_def.p)(e,"p"))return MockPipe(e);if((0,func_is_ng_def.p)(e,"c"))return MockComponent(e);if((0,func_is_ng_def.p)(e,"d"))return MockDirective(e);throw error_jest_mock(e),new Error(["MockDeclaration does not know how to mock","function"==typeof e?(0,func_get_name.A)(e):e].join(" "))}!function(e){e.remember=function(){ng_mocks_stack.stackPush()},e.restore=function(){ng_mocks_stack.stackPop()},e.scope=function(o="case"){"all"!==o&&"suite"!==o||(beforeAll(e.remember),afterAll(e.restore)),"all"!==o&&"case"!==o||(beforeEach(e.remember),afterEach(e.restore))}}(MockInstance||(MockInstance={}));const generateTemplateAttrWrap=(e,o)=>"i"===o?`[${e}]`:`(${e})`,generateTemplateAttrWithParams=(e,o)=>{let t=` ${generateTemplateAttrWrap(e,o)}="`;return t+="i"===o?e:`__ngMocksOutput('${e}', $event)`,t+='"',t},generateTemplateAttr=(e,o,t)=>{if(!e&&"o"===t)return"";let r="";const n=null!=e?e:o;for(const e of o){const{name:o,alias:s}=(0,func_directive_io_parse.A)(e);r+=-1===n.indexOf(s||o)?"":generateTemplateAttrWithParams(s||o,t)}return r},func_generate_template=(e,{selector:o,bindings:t,inputs:r,outputs:n})=>{let s="";return"string"==typeof e?s=e:(0,func_is_ng_def.p)(e,"p")&&t&&-1!==t.indexOf("$implicit")?s=`{{ $implicit | ${core_reflect_pipe_resolve(e).name} }}`:o&&(s+=`<${o}`,s+=generateTemplateAttr(t,r,"i"),s+=generateTemplateAttr(t,n,"o"),s+=`>${o}>`),s},generateWrapperOutput=e=>(o,t)=>"function"==typeof e[o]?e[o](t):e[o]&&"object"==typeof e[o]&&"function"==typeof e[o].emit?e[o].emit(t):e[o]&&"object"==typeof e[o]&&"function"==typeof e[o].next?e[o].next(t):void(e[o]=t),generateWrapperComponent=({bindings:e,options:o,inputs:t})=>{class r{constructor(){(0,core_define_property.A)(this,"__ngMocksOutput",generateWrapperOutput(this));let o=0;if((0,helper_define_property_descriptor.A)(this,"__ngContext__",{get:()=>o,set:e=>o=e,enumerable:!1}),!e)for(const e of t||[]){let o=null;(0,helper_define_property_descriptor.A)(this,e,{get:()=>o,set:e=>o=e})}}}return(0,core_define_property.A)(r.prototype,`__ngMocks_index_${ng_mocks_universe.A.index()}`,void 0,!1),(0,core_.Component)(o)(r),r},generateWrapperDirective=({selector:e,options:o})=>{class t{}return(0,core_.Directive)({selector:e,providers:o.providers})(t),t},getCache=()=>{var e;const o=null!==(e=ng_mocks_universe.A.config.get("MockRenderCaches"))&&void 0!==e?e:[];return 0===o.length&&ng_mocks_universe.A.config.set("MockRenderCaches",o),o},checkCache=(e,o)=>{for(const t of e){if(t.cacheKey.length!==o.length)continue;let e=!0;for(let r=0;r{var n,s,c;const _=getCache(),i=[e,...null!=t?t:[null],...null!==(n=r.providers)&&void 0!==n?n:[null],...null!==(s=r.viewProviders)&&void 0!==s?s:[null]];let a=checkCache(_,i);if(a)return a;const l=o.inputs?[...o.inputs]:[],p=o.outputs?[...o.outputs]:[];if(o.hostDirectives)for(const e of o.hostDirectives)"object"==typeof e&&e.directive&&(e.inputs&&l.push(...e.inputs),e.outputs&&p.push(...e.outputs));const u=func_generate_template(e,{selector:o.selector,inputs:l,outputs:p,bindings:t}),d={providers:r.providers,selector:"mock-render",template:u,viewProviders:r.viewProviders};if(a=generateWrapperComponent(Object.assign(Object.assign({},o),{bindings:t,options:d})),(0,core_define_property.A)(a,"cacheKey",i),(0,core_define_property.A)(a,"tpl",u),o.selector&&d.providers){const e=generateWrapperDirective(Object.assign(Object.assign({},o),{bindings:t,options:d}));(0,core_define_property.A)(a,"providers",e)}return _.unshift(a),_.splice(null!==(c=ng_mocks_universe.A.global.get("mockRenderCacheSize"))&&void 0!==c?c:core_config.A.mockRenderCacheSize),a},createPropertyGet=(e,o,t)=>{const r=()=>{if("function"==typeof t[e]){if(o[`__ngMocks_${e}__origin`]!==t[e]){const r=helper_mock_service.A.createClone(t[e],o,t);(0,core_define_property.A)(o,`__ngMocks_${e}`,r),(0,core_define_property.A)(o,`__ngMocks_${e}__origin`,t[e])}return o[`__ngMocks_${e}`]}return t[e]};return(0,core_define_property.A)(r,"__ngMocksProxy",!0),r},createPropertySet=(e,o,t)=>{const r=r=>{o[`__ngMocks_${e}`]&&(o[`__ngMocks_${e}`]=void 0),o[`__ngMocks_${e}__origin`]&&(o[`__ngMocks_${e}__origin`]=void 0),t[e]=r};return(0,core_define_property.A)(r,"__ngMocksProxy",!0),r},extractAllKeys=e=>[...helper_mock_service.A.extractPropertiesFromPrototype(Object.getPrototypeOf(e)),...helper_mock_service.A.extractMethodsFromPrototype(Object.getPrototypeOf(e)),...Object.keys(e)],extractOwnKeys=e=>[...Object.getOwnPropertyNames(e),...Object.keys(e)],func_install_prop_reader=(e,o,t,r=!1)=>{if(!o)return;(0,core_define_property.A)(e,"__ngMocks__source",o);const n=extractOwnKeys(e),s=[...extractAllKeys(o),...t];for(const t of s)(r||-1===n.indexOf(t))&&((0,helper_define_property_descriptor.A)(e,t,{get:createPropertyGet(t,e,o),set:createPropertySet(t,e,o)}),n.push(t))},registerTemplateMiddleware=(e,o)=>{const t=(0,core_helpers.He)(e),r={provide:e,useExisting:t};o.providers=[...o.providers||[],r];let n={};try{const t=testing_.TestBed.ngMocksOverrides,{override:s}=t.get(e);n=Object.assign({},s.set),n.providers=n.providers?[...n.providers,r]:o.providers}catch(e){}const s=!0===o.__ngMocksStandalone;((0,func_is_ng_def.p)(e,"c")?core_.Component:core_.Directive)(Object.assign(Object.assign(Object.assign({},o),n),s?{standalone:s}:{}))(t),testing_.TestBed.configureTestingModule({[s?"imports":"declarations"]:[t]})},func_reflect_template=e=>{var o;if(!(0,func_is_ng_def.p)(e,"c")&&!(0,func_is_ng_def.p)(e,"d"))return{};const t=core_reflect_directive_resolve(e),r={};for(const e of Object.keys(t))"standalone"!==e?r[e]=t[e]:(0,core_define_property.A)(r,"__ngMocksStandalone",!!t[e]);return r.selector&&/[\s,[\]]/.test(r.selector)&&(r.selector=""),r.selector||(r.selector=(null===(o=testing_.TestBed.ngMocksSelectors)||void 0===o?void 0:o.get(e))||"",r.selector||(r.selector=`ng-mocks-${e.name}`,registerTemplateMiddleware(e,r),testing_.TestBed.ngMocksSelectors&&testing_.TestBed.ngMocksSelectors.set(e,r.selector))),r},renderDeclaration=(e,o,t)=>{e.point=e.debugElement.children[0]&&"#text"!==e.debugElement.children[0].nativeElement.nodeName&&"#comment"!==e.debugElement.children[0].nativeElement.nodeName?e.debugElement.children[0]:e.debugElement,(0,func_is_ng_def.p)(o,"d")?(0,helper_define_property_descriptor.A)(e.point,"componentInstance",{get:()=>ngMocks.get(e.point,o)}):(0,func_is_ng_def.p)(o,"p")&&(0,helper_define_property_descriptor.A)(e.point,"componentInstance",{get:()=>ngMocks.findInstance(e.point,o)}),tryWhen(!t,(()=>func_install_prop_reader(e.componentInstance,e.point.componentInstance,[])))},renderInjection=(e,o,t)=>{let r;try{r=(0,core_helpers.Ah)(o)}catch(e){if((0,func_is_ng_def.p)(o,"p"))throw new Error([`Cannot render ${(0,func_get_name.A)(o)}.`,"Did you forget to set $implicit param, or add the pipe to providers?","https://ng-mocks.sudo.eu/guides/pipe"].join(" "));throw e}t&&ngMocks.stub(r,t),e.point=(0,mock_service.K)(core_.DebugElement,{childNodes:[],children:[],componentInstance:r,nativeElement:(0,mock_service.K)(HTMLElement)}),func_install_prop_reader(e.componentInstance,e.point.componentInstance,[],!0)},tryWhen=(e,o)=>{if(e)try{o()}catch(e){}},fixtureMessage=["Forgot to flush TestBed?","MockRender cannot be used without a reset after TestBed.get / TestBed.inject / TestBed.createComponent and another MockRender in the same test.","If you want to mock a service before rendering, consider usage of MockRenderFactory or MockInstance.","To flush TestBed, add a call of ngMocks.flushTestBed() before the call of MockRender, or pass `reset: true` to MockRender options."].join(" "),handleFixtureError=e=>{const o=new Error(fixtureMessage);throw(0,core_define_property.A)(o,"parent",e),o},flushTestBed=e=>{const o=ng_mocks_universe.A.global.get("flags"),t=(0,testing_.getTestBed)();e.reset||!t._instantiated&&!t._testModuleRef?ngMocks.flushTestBed():"throw"!==o.onTestBedFlushNeed&&(t._instantiated||t._testModuleRef)&&("warn"===o.onTestBedFlushNeed&&console.warn(fixtureMessage),ngMocks.flushTestBed())},generateFactoryInstall=(e,o)=>()=>{var t;const r=(0,testing_.getTestBed)(),n=(null===(t=r._compiler)||void 0===t?void 0:t.declarations)||r.declarations||r._declarations;if(!n||-1===n.indexOf(e)){flushTestBed(o);try{const o=[];e.providers&&o.push(e.providers),o.push(e),testing_.TestBed.configureTestingModule({declarations:o})}catch(e){handleFixtureError(e)}}},generateFactory=(e,o,t,r)=>{const n=(r,s)=>{n.configureTestBed();const c=testing_.TestBed.createComponent(e);return func_install_prop_reader(c.componentInstance,null!=r?r:{},null!=o?o:[]),(0,core_define_property.A)(c,"ngMocksStackId",ng_mocks_universe.A.global.get("bullet:stack:id")),(void 0===s||s)&&c.detectChanges(),"string"==typeof t||(0,func_is_ng_def.p)(t,"c")||(0,func_is_ng_def.p)(t,"d")||e.tpl&&(0,func_is_ng_def.p)(t,"p")?renderDeclaration(c,t,r):renderInjection(c,t,r),c};return n.declaration=e,n.bindings=o,n.configureTestBed=generateFactoryInstall(e,r),n};function MockRenderFactory(e,o,t={}){func_import_exists(e,"MockRender");const r="string"==typeof e||(0,func_is_ng_def.p)(e,"t")?{}:func_reflect_template(e),n=func_create_wrapper(e,r,o,t),s=generateFactory(n,o,e,t);return"root"!==ng_mocks_stack.current().level&&!1!==t.configureTestBed&&s.configureTestBed(),s}function MockRender(e,o,t=!0){const r=0===arguments.length?"":e,n=o&&"object"==typeof o?Object.keys(o):o,s="boolean"==typeof t?{detectChanges:t}:Object.assign({},t);return MockRenderFactory(r,n,s)(o,s.detectChanges)}var __webpack_exports__IMockBuilder=__webpack_exports__.rX,__webpack_exports__IMockBuilderConfig=__webpack_exports__.HA,__webpack_exports__IMockBuilderConfigAll=__webpack_exports__.Wn,__webpack_exports__IMockBuilderConfigComponent=__webpack_exports__.Me,__webpack_exports__IMockBuilderConfigDirective=__webpack_exports__.I7,__webpack_exports__IMockBuilderConfigModule=__webpack_exports__.tv,__webpack_exports__IMockBuilderExtended=__webpack_exports__.OG,__webpack_exports__IMockBuilderProvider=__webpack_exports__.sF,__webpack_exports__IMockBuilderResult=__webpack_exports__.me,__webpack_exports__LegacyControlValueAccessor=__webpack_exports__.bk,__webpack_exports__Mock=__webpack_exports__.JT,__webpack_exports__MockBuilder=__webpack_exports__._V,__webpack_exports__MockComponent=__webpack_exports__.Am,__webpack_exports__MockComponents=__webpack_exports__.$u,__webpack_exports__MockControlValueAccessor=__webpack_exports__.D2,__webpack_exports__MockDeclaration=__webpack_exports__.dw,__webpack_exports__MockDeclarations=__webpack_exports__.uV,__webpack_exports__MockDirective=__webpack_exports__.Cc,__webpack_exports__MockDirectives=__webpack_exports__.nr,__webpack_exports__MockInstance=__webpack_exports__.Wm,__webpack_exports__MockModule=__webpack_exports__.BN,__webpack_exports__MockPipe=__webpack_exports__.ZJ,__webpack_exports__MockPipes=__webpack_exports__.yI,__webpack_exports__MockProvider=__webpack_exports__.Qo,__webpack_exports__MockProviders=__webpack_exports__.dD,__webpack_exports__MockRender=__webpack_exports__.Ty,__webpack_exports__MockRenderFactory=__webpack_exports__.P0,__webpack_exports__MockReset=__webpack_exports__.mB,__webpack_exports__MockService=__webpack_exports__.KH,__webpack_exports__MockValidator=__webpack_exports__.b6,__webpack_exports__MockedComponent=__webpack_exports__.Je,__webpack_exports__MockedDirective=__webpack_exports__.T4,__webpack_exports__MockedModule=__webpack_exports__.qZ,__webpack_exports__MockedPipe=__webpack_exports__.cm,__webpack_exports__NG_MOCKS=__webpack_exports__.en,__webpack_exports__NG_MOCKS_GUARDS=__webpack_exports__.ZG,__webpack_exports__NG_MOCKS_INTERCEPTORS=__webpack_exports__.rO,__webpack_exports__NG_MOCKS_OVERRIDES=__webpack_exports__.So,__webpack_exports__NG_MOCKS_RESOLVERS=__webpack_exports__.C3,__webpack_exports__NG_MOCKS_ROOT_PROVIDERS=__webpack_exports__.gG,__webpack_exports__NG_MOCKS_TOUCHES=__webpack_exports__.Em,__webpack_exports__getInjection=__webpack_exports__.Ah,__webpack_exports__getMockedNgDefOf=__webpack_exports__.xz,__webpack_exports__getSourceOfMock=__webpack_exports__.VK,__webpack_exports__getTestBedInjection=__webpack_exports__.d5,__webpack_exports__isMockControlValueAccessor=__webpack_exports__.IA,__webpack_exports__isMockNgDef=__webpack_exports__.Bt,__webpack_exports__isMockOf=__webpack_exports__.AW,__webpack_exports__isMockValidator=__webpack_exports__.lt,__webpack_exports__isMockedNgDefOf=__webpack_exports__.Fk,__webpack_exports__isNgDef=__webpack_exports__.pA,__webpack_exports__isNgInjectionToken=__webpack_exports__.SM,__webpack_exports__ngMocks=__webpack_exports__.H5;export{__webpack_exports__IMockBuilder as IMockBuilder,__webpack_exports__IMockBuilderConfig as IMockBuilderConfig,__webpack_exports__IMockBuilderConfigAll as IMockBuilderConfigAll,__webpack_exports__IMockBuilderConfigComponent as IMockBuilderConfigComponent,__webpack_exports__IMockBuilderConfigDirective as IMockBuilderConfigDirective,__webpack_exports__IMockBuilderConfigModule as IMockBuilderConfigModule,__webpack_exports__IMockBuilderExtended as IMockBuilderExtended,__webpack_exports__IMockBuilderProvider as IMockBuilderProvider,__webpack_exports__IMockBuilderResult as IMockBuilderResult,__webpack_exports__LegacyControlValueAccessor as LegacyControlValueAccessor,__webpack_exports__Mock as Mock,__webpack_exports__MockBuilder as MockBuilder,__webpack_exports__MockComponent as MockComponent,__webpack_exports__MockComponents as MockComponents,__webpack_exports__MockControlValueAccessor as MockControlValueAccessor,__webpack_exports__MockDeclaration as MockDeclaration,__webpack_exports__MockDeclarations as MockDeclarations,__webpack_exports__MockDirective as MockDirective,__webpack_exports__MockDirectives as MockDirectives,__webpack_exports__MockInstance as MockInstance,__webpack_exports__MockModule as MockModule,__webpack_exports__MockPipe as MockPipe,__webpack_exports__MockPipes as MockPipes,__webpack_exports__MockProvider as MockProvider,__webpack_exports__MockProviders as MockProviders,__webpack_exports__MockRender as MockRender,__webpack_exports__MockRenderFactory as MockRenderFactory,__webpack_exports__MockReset as MockReset,__webpack_exports__MockService as MockService,__webpack_exports__MockValidator as MockValidator,__webpack_exports__MockedComponent as MockedComponent,__webpack_exports__MockedDirective as MockedDirective,__webpack_exports__MockedModule as MockedModule,__webpack_exports__MockedPipe as MockedPipe,__webpack_exports__NG_MOCKS as NG_MOCKS,__webpack_exports__NG_MOCKS_GUARDS as NG_MOCKS_GUARDS,__webpack_exports__NG_MOCKS_INTERCEPTORS as NG_MOCKS_INTERCEPTORS,__webpack_exports__NG_MOCKS_OVERRIDES as NG_MOCKS_OVERRIDES,__webpack_exports__NG_MOCKS_RESOLVERS as NG_MOCKS_RESOLVERS,__webpack_exports__NG_MOCKS_ROOT_PROVIDERS as NG_MOCKS_ROOT_PROVIDERS,__webpack_exports__NG_MOCKS_TOUCHES as NG_MOCKS_TOUCHES,__webpack_exports__getInjection as getInjection,__webpack_exports__getMockedNgDefOf as getMockedNgDefOf,__webpack_exports__getSourceOfMock as getSourceOfMock,__webpack_exports__getTestBedInjection as getTestBedInjection,__webpack_exports__isMockControlValueAccessor as isMockControlValueAccessor,__webpack_exports__isMockNgDef as isMockNgDef,__webpack_exports__isMockOf as isMockOf,__webpack_exports__isMockValidator as isMockValidator,__webpack_exports__isMockedNgDefOf as isMockedNgDefOf,__webpack_exports__isNgDef as isNgDef,__webpack_exports__isNgInjectionToken as isNgInjectionToken,__webpack_exports__ngMocks as ngMocks}; ++import*as __WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__ from"@angular/core";import*as __WEBPACK_EXTERNAL_MODULE__angular_core_testing_89899de6__ from"@angular/core/testing";import*as __WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__ from"@angular/forms";import*as __WEBPACK_EXTERNAL_MODULE__angular_common_d12e0fe1__ from"@angular/common";import*as __WEBPACK_EXTERNAL_MODULE__angular_platform_browser_bc6fa964__ from"@angular/platform-browser";var __webpack_modules__={295:(e,o,t)=>{t.d(o,{A:()=>r});const r={flags:["cacheModule","cacheComponent","cacheDirective","cacheProvider","correctModuleExports"],mockRenderCacheSize:25,neverMockModule:["ApplicationModule","CommonModule","BrowserModule","_ApplicationModule","_CommonModule","_BrowserModule"],neverMockProvidedFunction:["DomRendererFactory2","EventManager","Injector","RendererFactory2","Sanitizer","DomSanitizer","DomSanitizerImpl","ApplicationInitStatus","ApplicationRef","Compiler","IterableDiffers","KeyValueDiffers","_DomRendererFactory2","_EventManager","_Injector","_Sanitizer","_DomSanitizer","_DomSanitizerImpl","_ApplicationInitStatus","_ApplicationRef","_Compiler","_IterableDiffers","_KeyValueDiffers"],neverMockToken:["InjectionToken Set Injector scope.","InjectionToken EventManagerPlugins","InjectionToken HammerGestureConfig","InjectionToken AppId","InjectionToken DefaultCurrencyCode","InjectionToken LocaleId","InjectionToken SCHEDULER_TOKEN"],onMockBuilderMissingDependency:"throw",onMockInstanceRestoreNeed:"warn",onTestBedFlushNeed:"warn",dependencies:["declarations","hostDirectives","entryComponents","bootstrap","providers","viewProviders","imports","exports"]}},174:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(932);const n=(e,o,t,n=!1)=>{r.A.definePropertyDescriptor(e,o,{configurable:!0,enumerable:n,value:t,writable:!0})}},456:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.d(__webpack_exports__,{Ah:()=>getInjection,Bq:()=>flatten,He:()=>extendClass,LG:()=>mapValues,Nn:()=>mapEntries,by:()=>extractDependency,d4:()=>mapKeys,d5:()=>getTestBedInjection});var _angular_core_testing__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(957),_core_define_property__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(174),_core_reflect_parameters_resolve__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(749),_func_get_global__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(102),_func_get_name__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(970),_ng_mocks_universe__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(73);const getTestBedInjection=e=>{try{return getInjection(e)}catch(e){return}},getInjection=e=>{const o=(0,_angular_core_testing__WEBPACK_IMPORTED_MODULE_0__.getTestBed)();return o.inject?o.inject(e):o.get(e)},flatten=(e,o=[])=>{if(Array.isArray(e))for(const t of e)flatten(t,o);else if(null!==e&&"object"==typeof e&&Array.isArray(e.ɵproviders))for(const t of e.ɵproviders)flatten(t,o);else o.push(e);return o},mapKeys=e=>{const o=[];return e.forEach(((e,t)=>o.push(t))),o},mapValues=(e,o)=>{const t=[];return o?e.forEach((e=>{o.add(e)})):e.forEach((e=>{t.push(e)})),t},mapEntries=(e,o)=>{const t=[];return o?e.forEach(((e,t)=>o.set(t,e))):e.forEach(((e,o)=>t.push([o,e]))),t},extractDependencyArray=(e,o)=>{for(const t of e){const e=t&&"object"==typeof t?t.ngMetadataName:void 0;"Optional"!==e&&"SkipSelf"!==e&&"Self"!==e&&o.add(t)}},extractDependency=(e,o)=>{if(o)for(const t of e)Array.isArray(t)?extractDependencyArray(t,o):o.add(t)},extendClassicClass=base=>{let child;const index=_ng_mocks_universe__WEBPACK_IMPORTED_MODULE_3__.A.index(),glb=(0,_func_get_global__WEBPACK_IMPORTED_MODULE_4__.A)();glb.ngMocksParent=base;try{eval(`\n var glb = typeof window === 'undefined' ? global : window;\n class MockMiddleware${index} extends glb.ngMocksParent {};\n glb.ngMocksResult = MockMiddleware${index};\n `),child=glb.ngMocksResult}catch(e){class o extends glb.ngMocksParent{}child=o}finally{glb.ngMocksResult=void 0,glb.ngMocksParent=void 0}return(0,_core_define_property__WEBPACK_IMPORTED_MODULE_1__.A)(child.prototype,`__ngMocks_index_${index}`,void 0,!1),child},extendClass=e=>{const o=extendClassicClass(e);(0,_core_define_property__WEBPACK_IMPORTED_MODULE_1__.A)(o,"name",`MockMiddleware${(0,_func_get_name__WEBPACK_IMPORTED_MODULE_5__.A)(e)}`,!0);const t=(0,_core_reflect_parameters_resolve__WEBPACK_IMPORTED_MODULE_2__.A)(e);return t.length>0&&(0,_core_define_property__WEBPACK_IMPORTED_MODULE_1__.A)(o,"parameters",[...t]),o}},749:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(673);const n=e=>{var o;return null!==(o=(0,r.A)(e).parameters)&&void 0!==o?o:[]}},763:(e,o,t)=>{t.d(o,{C3:()=>i,Em:()=>s,So:()=>c,ZG:()=>_,en:()=>n,gG:()=>l,rO:()=>a});var r=t(614);const n=new r.InjectionToken("NG_MOCKS");n.__ngMocksSkip=!0;const s=new r.InjectionToken("NG_MOCKS_TOUCHES");s.__ngMocksSkip=!0;const c=new r.InjectionToken("NG_MOCKS_OVERRIDES");c.__ngMocksSkip=!0;const _=new r.InjectionToken("NG_MOCKS_GUARDS");_.__ngMocksSkip=!0;const i=new r.InjectionToken("NG_MOCKS_RESOLVERS");i.__ngMocksSkip=!0;const a=new r.InjectionToken("NG_MOCKS_INTERCEPTORS");a.__ngMocksSkip=!0;const l=new r.InjectionToken("NG_MOCKS_ROOT_PROVIDERS");l.__ngMocksSkip=!0},439:(e,o,t)=>{function r({name:e,alias:o,required:t},r=!1){return t?{name:e,alias:o,required:t}:o&&e!==o?r?o:`${e}:${o}`:r?"":e}t.d(o,{A:()=>r})},184:(e,o,t)=>{function r(e){if("string"==typeof e){const[o,t]=e.split(":").map((e=>e.trim()));return o!==t&&t?{name:o,alias:t}:{name:o}}return e}t.d(o,{A:()=>r})},285:(e,o,t)=>{t.d(o,{A:()=>r});const r=e=>"function"==typeof e&&e.__forward_ref__?e():e},102:(e,o,t)=>{t.d(o,{A:()=>r});const r=()=>"undefined"==typeof window?t.g:window},970:(e,o,t)=>{t.d(o,{A:()=>n});const r=new RegExp("[^0-9a-z]+","mgi"),n=e=>{let o;return"function"==typeof e&&e.name?o=e.name:"function"==typeof e?o="arrowFunction":"object"==typeof e&&e&&"InjectionToken"===e.ngMetadataName?o=e._desc:"object"==typeof e&&e&&"function"==typeof e.constructor&&(o=e.constructor.name),o||(o="unknown"),o.replace(r,"_")}},297:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(659);const n=e=>e&&"object"==typeof e&&e.provide?e.provide:(0,r.h)(e)?e.ngModule:e&&"object"==typeof e&&e.directive?e.directive:e},218:(e,o,t)=>{t.d(o,{p:()=>p});var r=t(152),n=t(673);const s=(e,o)=>{const{decorators:t}=(0,n.A)(e);if(0===t.length)return!1;let r=1;if("Injectable"===o&&-1!==t.indexOf("Injectable"))return!0;for(;"Injectable"===t[t.length-r];)r+=1;return t[t.length-r]===o},c=(e,o)=>(!o||"m"===o)&&s(e,"NgModule"),_=(e,o)=>(!o||"c"===o)&&s(e,"Component"),i=(e,o)=>(!o||"d"===o)&&s(e,"Directive"),a=(e,o)=>(!o||"p"===o)&&s(e,"Pipe"),l=(e,o)=>(!o||"i"===o)&&s(e,"Injectable");function p(e,o){if("t"===o)return(0,r.S)(e);if("function"!=typeof e)return!1;const t=c(e,o),n=_(e,o),s=i(e,o),p=a(e,o),u=l(e,o);return t||n||s||p||u}},152:(e,o,t)=>{t.d(o,{S:()=>r});const r=e=>e&&"object"==typeof e&&"InjectionToken"===e.ngMetadataName},659:(e,o,t)=>{t.d(o,{h:()=>r});const r=e=>e&&"object"==typeof e&&"function"==typeof e.ngModule},73:(e,o,t)=>{t.d(o,{A:()=>p});var r=t(295),n=t(102),s=t(970);const c=e=>()=>(_.global.has(e)||_.global.set(e,new Map),_.global.get(e));(0,n.A)().ngMocksUniverse=(0,n.A)().ngMocksUniverse||{};const _=(0,n.A)().ngMocksUniverse;_.builtDeclarations=new Map,_.builtProviders=new Map,_.cacheDeclarations=new Map,_.cacheProviders=new Map,_.config=new Map,_.configInstance=new Map,_.flags=new Set(r.A.flags),_.global=new Map,_.touches=new Set,_.global.set("flags",{onMockBuilderMissingDependency:r.A.onMockBuilderMissingDependency,onMockInstanceRestoreNeed:r.A.onMockInstanceRestoreNeed,onTestBedFlushNeed:r.A.onTestBedFlushNeed}),_.getOverrides=c("overrides"),_.getDefaults=c("defaults"),_.getConfigMock=c("configMock");const i=e=>{{const o=_.getDefaults().get(e);if(o)return o}{const o="function"==typeof e?_.getDefaults().get(`@${(0,s.A)(e)}`):void 0;if(o)return o}return[]};_.getResolution=e=>{const o=_.config.get("ngMocksDepsResolution");if(null==o?void 0:o.has(e))return o.get(e);const[t]=i(e);return t},_.getBuildDeclaration=e=>{if(_.builtDeclarations.has(e))return _.builtDeclarations.get(e);const[o,t]=i(e);return"exclude"===o?null:o&&"keep"!==o?"replace"===o?t:void 0:e},_.hasBuildDeclaration=e=>{if(_.builtDeclarations.has(e))return void 0!==_.builtDeclarations.get(e);const[o]=i(e);return!!o&&"mock"!==o};const a=e=>_.hasBuildDeclaration(e),l=e=>_.getBuildDeclaration(e);_.isExcludedDef=e=>{const o=_.getResolution(e);return(!o||"exclude"===o)&&a(e)&&null===l(e)},_.isProvidedDef=e=>a(e)&&null!==l(e),_.getDefaults().set("@StoreDevtoolsModule",["exclude"]),_.indexValue=0,_.index=()=>_.indexValue++;const p=_},589:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(20);const n=(e,o,t,n)=>{var s;const c=null!==(s=(0,r.A)(e,o))&&void 0!==s?s:{};if(!n&&c.set&&c.set.__ngMocksProxy)return c.set(t),t;const _={configurable:!0,enumerable:!0};return"get"===n&&c.set?_.set=c.set:"set"===n&&c.get&&(_.get=c.get),n?_[n]=t:(_.writable=!0,_.value=t),Object.defineProperty(e,o,_),t}},195:(e,o,t)=>{t.d(o,{A:()=>_});var r=t(331),n=t(794),s=t(20),c=t(932);const _=(e,o,t)=>{if("string"==typeof o)return c.A.mock(e,o,t);let _=e,i=o;const a=["__zone_symbol__unconfigurables"];"function"==typeof o&&(_=c.A.createClone(o),i=e,a.push(...Object.getOwnPropertyNames(_)));const l=[...(0,r.A)(i),...(0,n.A)(i)];for(const e of l){const o=-1===a.indexOf(e)?(0,s.A)(i,e):void 0;o&&Object.prototype.hasOwnProperty.call(o,"value")&&void 0===o.value||c.A.definePropertyDescriptor(_,e,o)}return _}},760:(e,o,t)=>{t.d(o,{A:()=>s});var r=t(73),n=t(589);const s=e=>{const o=[],t=r.A.configInstance.get(e);if(null==t?void 0:t.overloads)for(const[e,r,s]of t.overloads)e?o.push((o=>{(0,n.A)(o,e,r,s)})):o.push(r);return o}},365:(e,o,t)=>{t.d(o,{A:()=>_});var r=t(6),n=t(331),s=t(794),c=t(20);const _=(e,o,t,_)=>{const i=function(...r){return(_||e).apply(o===this?t:this,r)};for(const o of[...(0,n.A)(e),...(0,s.A)(e)]){const t=(0,c.A)(e,o);(0,r.A)(i,o,t)}return i}},6:(e,o,t)=>{t.d(o,{A:()=>n});var r=t(20);const n=(e,o,t)=>{if(!t||!e)return!1;if(Object.defineProperty){const n=(0,r.A)(e,o);if(!1===(null==n?void 0:n.configurable))return!1;Object.defineProperty(e,o,Object.assign(Object.assign(Object.assign({},t),{configurable:!0}),void 0===t.get&&void 0===t.set||!1===t.writable?{writable:!0}:{}))}else e[o]=t.value;return!0}},331:(e,o,t)=>{t.d(o,{A:()=>_});var r=t(970);const n=["sanitize","bypassSecurityTrustHtml","bypassSecurityTrustStyle","bypassSecurityTrustScript","bypassSecurityTrustUrl","bypassSecurityTrustResourceUrl"],s={DomSanitizer:n,Sanitizer:n},c=e=>{var o;const t=Object.getOwnPropertyNames(e);for(const n of null!==(o=s[(0,r.A)(e)])&&void 0!==o?o:[])t.push(n);return t},_=e=>{const o=[];let t=e;for(;t&&null!==Object.getPrototypeOf(t);){for(const e of c(t)){if("constructor"===e)continue;const r=Object.getOwnPropertyDescriptor(t,e);r&&(r.get||r.set)||-1!==o.indexOf(e)||o.push(e)}t=Object.getPrototypeOf(t)}return o}},794:(e,o,t)=>{t.d(o,{A:()=>r});const r=e=>{const o=[];let t=e;for(;t&&null!==Object.getPrototypeOf(t);){for(const e of Object.getOwnPropertyNames(t)){if("constructor"===e)continue;const r=Object.getOwnPropertyDescriptor(t,e);r&&(r.get||r.set)&&-1===o.indexOf(e)&&o.push(e)}t=Object.getPrototypeOf(t)}return o}},20:(e,o,t)=>{t.d(o,{A:()=>r});const r=(e,o)=>{let t=e;for(;t&&null!==Object.getPrototypeOf(t);){const e=Object.getOwnPropertyDescriptor(t,o);if(e)return e;t=Object.getPrototypeOf(t)}}},932:(e,o,t)=>{t.d(o,{A:()=>A,O:()=>M});var r=t(102),n=t(365),s=t(174),c=t(970),_=t(6),i=t(331),a=t(794),l=t(20);const p=(e,o=!1)=>{const t=p.customMockFunction&&!o?p.customMockFunction(e):e=>(n&&n(e),r);let r,n;return(0,s.A)(t,"__ngMocks",!0),(0,s.A)(t,"__ngMocksSet",(e=>n=e)),(0,s.A)(t,"__ngMocksGet",(e=>r=e)),t},u=p;var d=t(763),f=t(218),g=t(73);const k=["canActivate","canActivateChild","canDeactivate","canMatch","canLoad"],m=(e,o)=>Array.isArray(e[o])?(e=>{const o=[];for(const t of e)!g.A.isProvidedDef(t)&&g.A.isExcludedDef(d.ZG)||(o.push(t),(0,f.p)(t)||g.A.touches.add(t));return o})(e[o]):e[o],h=(e,o)=>{if(g.A.cacheDeclarations.has(e))return g.A.cacheDeclarations.get(e);if("object"!=typeof e)return e;if(o.has(e))return e;let t,r=!1;return Array.isArray(e)?[r,t]=((e,o,t)=>{const r=[];let n=!1;e.set(o,r);for(const s of o)g.A.isExcludedDef(s)?n=n||!0:(r.push(t(s,e)),n=n||r[r.length-1]!==s);return[n,r]})(o,e,h):e&&([r,t]=((e,o,t)=>{let r={},n=!1;e.set(o,r);for(const s of Object.keys(o))g.A.isExcludedDef(o[s])?n=n||!0:(r[s]=t(o[s],e),n=n||r[s]!==o[s]);for(const e of k){const o=m(r,e);o&&r[e].length!==o.length&&(n=n||!0,r=Object.assign(Object.assign({},r),{[e]:o}))}if("object"==typeof r.resolve&&r.resolve){const e={};let o=!1;for(const t of Object.keys(r.resolve)){const n=r.resolve[t];g.A.isProvidedDef(n)||!g.A.isExcludedDef(d.C3)?(e[t]=n,(0,f.p)(n)||g.A.touches.add(n)):o=o||!0}o&&(n=n||!0,r=Object.assign(Object.assign({},r),{resolve:e}))}return[n,r]})(o,e,h)),r?(Object.setPrototypeOf(t,Object.getPrototypeOf(e)),t):e};var v=t(663),b=t(465);(0,r.A)().ngMockshelperMockService=(0,r.A)().ngMockshelperMockService||{mockFunction:u,registerMockFunction:e=>{(0,r.A)().ngMockshelperMockService.mockFunction.customMockFunction=e},createClone:n.A,createMockFromPrototype:e=>{const o=(0,c.A)(e),t={};(0,s.A)(t,"__ngMocks",!0);const r=A.extractMethodsFromPrototype(e);for(const e of r)A.mock(t,e,o);const n=A.extractPropertiesFromPrototype(e);for(const e of n)A.mock(t,e,"get",o),A.mock(t,e,"set",o);return Object.setPrototypeOf(t,e),t},definePropertyDescriptor:_.A,extractMethodsFromPrototype:i.A,extractPropertiesFromPrototype:a.A,extractPropertyDescriptor:l.A,mock:(e,o,...t)=>{const{accessType:r,mockName:n}=(e=>{let o,t;return e.length>0&&"get"!==e[0]&&"set"!==e[0]?t=e[0]:e.length>0&&("get"===e[0]||"set"===e[0])&&(o=e[0],t=e[1]),{accessType:o,mockName:t}})(t),s=Object.getOwnPropertyDescriptor(e,o);if(s&&s[r||"value"])return s[r||"value"];const _=((e,o,t,r)=>`${null!=o?o:"function"==typeof t.prototype?t.prototype.name:(0,c.A)(t)}.${e}${null!=r?r:""}`)(o,n,e,r),i=A.mockFunction(_,!!r),a=((e,o,t)=>Object.assign(Object.assign(Object.assign(Object.assign({},"get"===t&&e&&e.set?{set:e.set}:{}),"set"===t&&e&&e.get?{get:e.get}:{}),t?{}:{writable:!0}),{[t||"value"]:o,configurable:!0,enumerable:!0}))(s,i,r);return a.get&&a.set&&a.get.__ngMocks&&a.set.__ngMocks&&a.set.__ngMocksSet((e=>a.get.__ngMocksGet(e))),Object.defineProperty(e,o,a),i},replaceWithMocks:e=>{const o=new Map,t=h(e,o);return o.clear(),t},resolveProvider:v.A,useFactory:b.A};const A=(0,r.A)().ngMockshelperMockService;function M(e){(0,r.A)().ngMockshelperMockService.registerMockFunction(e)}},663:(e,o,t)=>{t.d(o,{A:()=>u});var r=t(456),n=t(763),s=t(285),c=t(297),_=t(152),i=t(73),a=t(932),l=t(415);const p=(e,o,t)=>{let r=!1,n=!e;return o&&e&&!n&&(n=((e,o,...t)=>{for(const r of t)if(e[r]!==o[r])return!0;return!1})(o,e,"provide","useValue","useClass","useExisting","useFactory","deps")),(o===t&&e!==o||o!==t&&n)&&(r=!0),!r},u=(e,o,t)=>{const{provide:u,multi:d,change:f}=((e,o)=>{const t=(0,c.A)(e);return{change:()=>{o&&o()},multi:e!==t&&!!e.multi,provide:t}})(e,t);if(((e,o)=>null===i.A.builtProviders.get(o)||(o!==e&&e.deps&&(0,r.by)(e.deps,i.A.config.get("ngMocksDeps")),((e,o)=>{if(((e,o)=>i.A.builtProviders.has(n.rO)&&null===i.A.builtProviders.get(n.rO)&&(0,_.S)(o)&&"InjectionToken HTTP_INTERCEPTORS"===o.toString()&&o!==e)(e,o)){if(e.useFactory||e.useValue)return!0;const o=(0,s.A)(e.useExisting)||e.useClass;if(!i.A.builtProviders.has(o)||null===i.A.builtProviders.get(o))return!0}return!1})(e,o)))(e,u))return f();if(((e,o)=>{var t;return!(!e||"object"!=typeof e||!e.useExisting||!e.useExisting.mockOf&&(i.A.getResolution(o)&&!(null===(t=i.A.config.get(o))||void 0===t?void 0:t.__internal)||"keep"!==i.A.getResolution((0,s.A)(e.useExisting))))})(e,u))return i.A.touches.add(u),e;if(o.has(u))return((e,o)=>{let t=o;const r=i.A.builtProviders.get(e);return r&&(t=r),"function"==typeof t&&(t={provide:e,useClass:t}),t})(u,o.get(u));const g=((e,o,t)=>{var r;let n=((e,o)=>{if(i.A.builtProviders.has(o)){const t=i.A.builtProviders.get(o);return t===o?e:t}})(e,o);return!n&&i.A.flags.has("skipMock")&&"mock"!==i.A.getResolution(o)&&(null===(r=i.A.config.get("ngMocksDepsSkip"))||void 0===r||r.add(o),n=e),n||(n=(0,l.A)(e)),n=((e,o,t)=>{if(o!==e&&t&&t.useValue){const e=a.A.replaceWithMocks(t.useValue);return e===t.useValue?t:Object.assign(Object.assign({},t),{useValue:e})}return t})(e,o,n),p(n,e,o)||t(),n&&i.A.touches.add(o),n})(e,u,f);return d&&"object"==typeof g?Object.assign(Object.assign({},g),{multi:d}):g}},465:(e,o,t)=>{t.d(o,{A:()=>p});var r=t(614),n=t(456),s=t(152),c=t(73),_=t(195),i=t(760),a=t(839);const l=e=>(0,s.S)(e)||"string"==typeof e,p=(e,o,t)=>({deps:[r.Injector],provide:e,useFactory:r=>{const s=o?o():(0,a.K)(e),p=c.A.getOverrides().get(e),u=p?(0,n.LG)(p):[];return t&&u.push(t),u.push(...(0,i.A)(e)),((e,o,t,r,n)=>{let s=o;for(const o of t){const t=o(s,r);l(e)?s=t:o!==n?t&&(s=(0,_.A)(s,t)):s=t}return s})(e,s,u,r,t)}})},415:(e,o,t)=>{t.d(o,{A:()=>g});var r=t(295),n=t(297),s=t(152),c=t(73),_=t(6),i=t(20),a=t(465),l=t(839);const{neverMockProvidedFunction:p,neverMockToken:u}=r.A,d=[[e=>"boolean"==typeof e,!1],[e=>"number"==typeof e,0],[e=>"string"==typeof e,""],[e=>null===e,null]],f=(e,o,t)=>{var r;if(o===e)return t?(0,a.A)(e,(()=>{})):void 0;if(e.multi)return void(null===(r=c.A.config.get("ngMocksMulti"))||void 0===r||r.add(o));let n;return-1!==Object.keys(e).indexOf("useValue")?n=((e,o)=>(0,a.A)(o,(()=>e.useValue&&"object"==typeof e.useValue?(0,l.K)(e.useValue):(e=>{for(const[o,t]of d)if(o(e))return t})(e.useValue))))(e,o):-1!==Object.keys(e).indexOf("useExisting")?n=e:-1!==Object.keys(e).indexOf("useClass")?n=((e,o)=>c.A.builtProviders.has(e.useClass)&&c.A.builtProviders.get(e.useClass)===e.useClass?e:(0,a.A)(o,(()=>(0,l.K)(e.useClass))))(e,o):-1!==Object.keys(e).indexOf("useFactory")&&(n=(0,a.A)(o,(()=>({})))),n},g=(e,o=!1)=>{const t=(0,n.A)(e);if("mock"===c.A.getResolution(t));else{if((e=>"function"==typeof e&&-1!==p.indexOf(e.name))(t))return e;if((e=>(0,s.S)(e)&&-1!==u.indexOf(e.toString()))(t))return}const r=c.A.flags.has("cacheProvider")?c.A.cacheProviders:void 0;return t===e&&r&&r.has(t)?r.get(t):((e,o,t)=>{let r;return"function"==typeof o&&(r=((e,o)=>(0,a.A)(o,(()=>{const t=(0,l.K)(o);return o!==e&&-1!==Object.keys(e).indexOf("useClass")&&((e,o)=>{const t=Object.getOwnPropertyNames(e),r=(0,l.K)(o);for(const o of Object.getOwnPropertyNames(r)){if(-1!==t.indexOf(o))continue;const n=(0,i.A)(r,o);(0,_.A)(e,o,n)}})(t,e.useClass),t})))(e,o)),o===e&&r&&t&&t.set(o,r),r})(e,t,r)||f(e,t,o)}},839:(e,o,t)=>{t.d(o,{K:()=>a});var r=t(970),n=t(195);const s=e=>{if("function"!=typeof e)return!1;if(!e.prototype)return!0;if((e=>!!(e.ɵprov||e.__annotations__||e.__parameters__||e.parameters))(e))return!1;const o=e.toString();if(null!==o.match(/^class\b/))return!1;const t=o.match(/^function\s+([^\s(]+)\(/);return null===t||!((e,o,t)=>{if(null!==e.match(/^class/))return!0;if(Object.keys(t.prototype).length>0)return!0;const r=e.codePointAt(0);if(r&&r>=65&&r<=90&&null!==o.match(/\bthis\./gm))return!0;const n=new RegExp(`\\(this,\\s*${e}\\)`,"mg");return null!==o.match(n)})(t[1],o,e)};var c=t(932);const _=[[e=>"function"==typeof e&&!s(e),(e,o)=>{const t=c.A.createMockFromPrototype(o.prototype);return e.set(o,t),t}],[s,(e,o,t)=>{const n=c.A.mockFunction(`func:${t||(0,r.A)(o)}`);return e.set(o,n()),n}],[e=>Array.isArray(e),()=>[]],[e=>null!==e&&"object"==typeof e&&"InjectionToken"!==e.ngMetadataName&&"object"==typeof Object.getPrototypeOf(e),(e,o,t,r)=>{const n=c.A.createMockFromPrototype(o.constructor.prototype);e.set(o,n);for(const s of Object.keys(o)){const c=r(e,o[s],`${t||"instance"}.${s}`);void 0!==c&&(n[s]=c)}return Object.setPrototypeOf(n,Object.getPrototypeOf(o)),n}]],i=(e,o,t="",r)=>{const s=((e,o,t,r)=>{var n;for(const[s,c]of _)if(s(o))return null!==(n=e.get(o))&&void 0!==n?n:c(e,o,t,r)})(e,o,t,i);return r&&(0,n.A)(s,r),s};function a(e,...o){const t=o.length>0&&"string"==typeof o[0]?o[0]:o[1],r=o.length>0&&o[0]&&"object"==typeof o[0]?o[0]:void 0,n=new Map,s=i(n,e,t,r);return n.clear(),s}},673:(e,o,t)=>{t.d(o,{A:()=>x});var r=t(614),n=t(174),s=t(439),c=t(184);const _=(e,o)=>{const t=e.indexOf(o);-1!==t&&e.splice(t,1),"Injectable"!==o&&"Pipe"!==o&&"Directive"!==o&&"Component"!==o&&"NgModule"!==o||e.push(o)},i=e=>{const o=[];for(const t of Object.keys(e))o.push(t);return o},a=e=>(o,t,r,n)=>{var _;const{alias:i,required:a}=(0,c.A)({name:t,alias:null!==(_=r.alias)&&void 0!==_?_:r.bindingPropertyName,required:r.required}),l=(0,s.A)({name:t,alias:i,required:a});let p=!0;for(const o of n[e]){if(o===l){p=!1;break}const{name:e,alias:r,required:n}=(0,c.A)(o);if(e===t&&r===i&&n===a){p=!1;break}}p&&n[e].unshift(l)},l=a("inputs"),p=a("outputs"),u=e=>(o,t,r,n)=>{n.queries[t]||(n.queries[t]=Object.assign(Object.assign({isViewQuery:e,ngMetadataName:o,selector:r.selector},void 0===r.read?{}:{read:r.read}),void 0===r.static?{}:{static:r.static}))},d=u(!1),f=u(!0),g=e=>(o,t,r,n)=>{n.queries[t]||(n.queries[t]=Object.assign(Object.assign(Object.assign({isViewQuery:e,ngMetadataName:o,selector:r.selector},void 0===r.descendants?{}:{descendants:r.descendants}),void 0===r.emitDistinctChangesOnly?{}:{emitDistinctChangesOnly:r.emitDistinctChangesOnly}),void 0===r.read?{}:{read:r.read}))},k={ContentChild:d,ContentChildren:g(!1),HostBinding:(e,o,t,r)=>{const n=`[${t.hostPropertyName||o}]`;r.host[n]||(r.host[n]=o),r.hostBindings.push([o,t.hostPropertyName||o,...t.args?[t.args]:[]])},HostListener:(e,o,t,r)=>{const n=`(${t.eventName||o})`;r.host[n]||(r.host[n]=`${o}($event)`),r.hostListeners.push([o,t.eventName||o,...t.args?[t.args]:[]])},Input:l,Output:p,ViewChild:f,ViewChildren:g(!0)},m=e=>{const o=a(e);return(e,t,r,n)=>{var s;const{alias:c,required:_}=void 0===(null===(s=r.args)||void 0===s?void 0:s[0])?{}:"string"==typeof r.args[0]?{alias:r.args[0]}:r.args[0];o(e,t,{alias:c,required:_,bindingPropertyName:c},n)}},h=m("inputs"),v=m("outputs"),b=e=>(o,t,r,n)=>{n.queries[t]||(n.queries[t]=Object.assign({isViewQuery:e,ngMetadataName:o,selector:r.args[0]},r.args[1]))},A=b(!1),M=b(!0),y={ContentChild:A,ContentChildren:A,HostBinding:(e,o,t,r)=>{var n;const s=`[${(null===(n=t.args)||void 0===n?void 0:n[0])||o}]`;r.host[s]||(r.host[s]=o),r.hostBindings.push([o,...t.args||[]])},HostListener:(e,o,t,r)=>{var n;const s=`(${(null===(n=t.args)||void 0===n?void 0:n[0])||o})`;r.host[s]||(r.host[s]=`${o}($event)`),r.hostListeners.push([o,...t.args||[]])},Input:h,Output:v,ViewChild:M,ViewChildren:M},w=(e,o)=>{if(e){e.inputs=e.inputs||[];for(const t of o.inputs)-1===e.inputs.indexOf(t)&&e.inputs.push(t);e.outputs=e.outputs||[];for(const t of o.outputs)-1===e.outputs.indexOf(t)&&e.outputs.push(t);e.queries=Object.assign(Object.assign({},e.queries||[]),o.queries),e.hostBindings=o.hostBindings,e.hostListeners=o.hostListeners}},O=new r["ɵReflectionCapabilities"],C=e=>{if("function"!=typeof e&&"object"!=typeof e)return{};if(Object.prototype.hasOwnProperty.call(e,"__ngMocksParsed"))return e.__ngMocksDeclarations;const o=Object.getPrototypeOf(e),t=o?C(o):{},r=(e=>({host:e.host?Object.assign({},e.host):{},hostBindings:e.hostBindings?[...e.hostBindings]:[],hostListeners:e.hostListeners?[...e.hostListeners]:[],attributes:e.attributes?[...e.attributes]:[],inputs:e.inputs?[...e.inputs]:[],outputs:e.outputs?[...e.outputs]:[],propDecorators:e.propDecorators?Object.assign({},e.propDecorators):{},queries:e.queries?Object.assign({},e.queries):{},decorators:e.decorators?[...e.decorators]:[]}))(t);return(0,n.A)(e,"__ngMocksParsed",!0),((e,o)=>{if(Object.prototype.hasOwnProperty.call(e,"__parameters__")&&e.__parameters__)for(const t of e.__parameters__)for(const e of t||[])"Attribute"===e.ngMetadataName&&-1===o.attributes.indexOf(e.attributeName)&&o.attributes.push(e.attributeName)})(e,r),((e,o)=>{if(Object.prototype.hasOwnProperty.call(e,"__annotations__")&&e.__annotations__)for(const t of e.__annotations__){const e=null==t?void 0:t.ngMetadataName;e&&(o[e]=Object.assign(Object.assign({},t),{attributes:o.attributes}),_(o.decorators,e))}})(e,r),((e,o)=>{var t,r;if(Object.prototype.hasOwnProperty.call(e,"decorators")&&e.decorators)for(const n of e.decorators){const e=null===(r=null===(t=null==n?void 0:n.type)||void 0===t?void 0:t.prototype)||void 0===r?void 0:r.ngMetadataName;e&&(o[e]=n.args?Object.assign({},n.args[0]):{},_(o.decorators,e))}})(e,r),((e,o)=>{var t,r,n;if(Object.prototype.hasOwnProperty.call(e,"propDecorators")&&e.propDecorators)for(const s of i(e.propDecorators)){o.propDecorators[s]=[...o.propDecorators[s]||[],...e.propDecorators[s]];for(const c of e.propDecorators[s]){const e=null===(r=null===(t=null==c?void 0:c.type)||void 0===t?void 0:t.prototype)||void 0===r?void 0:r.ngMetadataName;e&&(null===(n=y[e])||void 0===n||n.call(y,e,s,c,o))}}})(e,r),((e,o)=>{var t;if(Object.prototype.hasOwnProperty.call(e,"__prop__metadata__")&&e.__prop__metadata__)for(const r of i(e.__prop__metadata__)){const n=e.__prop__metadata__[r];for(const e of n){const n=null==e?void 0:e.ngMetadataName;n&&(null===(t=k[n])||void 0===t||t.call(k,n,r,e,o))}}})(e,r),w(r.Directive,r),w(r.Component,r),(0,n.A)(e,"__ngMocksDeclarations",Object.assign(Object.assign(Object.assign({},t),r),{parameters:O.parameters(e)})),e.__ngMocksDeclarations},x=C},614:(e,o,t)=>{e.exports=(e=>{var o={};return t.d(o,e),o})({ChangeDetectorRef:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ChangeDetectorRef,Component:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Component,ComponentFactoryResolver:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ComponentFactoryResolver,ContentChild:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ContentChild,ContentChildren:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ContentChildren,DebugElement:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.DebugElement,Directive:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Directive,ElementRef:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ElementRef,EventEmitter:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.EventEmitter,InjectionToken:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.InjectionToken,Injector:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Injector,Input:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Input,NgModule:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.NgModule,Optional:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Optional,Output:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Output,Pipe:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Pipe,QueryList:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.QueryList,Self:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.Self,TemplateRef:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.TemplateRef,ViewChild:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ViewChild,ViewChildren:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ViewChildren,ViewContainerRef:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__.ViewContainerRef,ɵReflectionCapabilities:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_bcead0df__["ɵReflectionCapabilities"]})},957:(e,o,t)=>{e.exports=(e=>{var o={};return t.d(o,e),o})({TestBed:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_testing_89899de6__.TestBed,getTestBed:()=>__WEBPACK_EXTERNAL_MODULE__angular_core_testing_89899de6__.getTestBed})}},__webpack_module_cache__={};function __webpack_require__(e){var o=__webpack_module_cache__[e];if(void 0!==o)return o.exports;var t=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](t,t.exports,__webpack_require__),t.exports}__webpack_require__.d=(e,o)=>{for(var t in o)__webpack_require__.o(o,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:o[t]})},__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.o=(e,o)=>Object.prototype.hasOwnProperty.call(e,o),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.d(__webpack_exports__,{rX:()=>types_namespaceObject.IMockBuilder,HA:()=>types_namespaceObject.IMockBuilderConfig,Wn:()=>types_namespaceObject.IMockBuilderConfigAll,Me:()=>types_namespaceObject.IMockBuilderConfigComponent,I7:()=>types_namespaceObject.IMockBuilderConfigDirective,tv:()=>types_namespaceObject.IMockBuilderConfigModule,OG:()=>types_namespaceObject.IMockBuilderExtended,sF:()=>types_namespaceObject.IMockBuilderProvider,me:()=>types_namespaceObject.IMockBuilderResult,bk:()=>LegacyControlValueAccessor,JT:()=>Mock,_V:()=>MockBuilder,Am:()=>MockComponent,$u:()=>MockComponents,D2:()=>mock_control_value_accessor_namespaceObject.MockControlValueAccessor,dw:()=>MockDeclaration,uV:()=>MockDeclarations,Cc:()=>MockDirective,nr:()=>MockDirectives,Wm:()=>MockInstance,BN:()=>MockModule,ZJ:()=>MockPipe,yI:()=>MockPipes,Qo:()=>MockProvider,dD:()=>MockProviders,Ty:()=>MockRender,P0:()=>MockRenderFactory,mB:()=>MockReset,KH:()=>mock_service.K,b6:()=>mock_control_value_accessor_namespaceObject.MockValidator,Je:()=>mock_component_types_namespaceObject.MockedComponent,T4:()=>mock_directive_types_namespaceObject.MockedDirective,qZ:()=>mock_module_types_namespaceObject.MockedModule,cm:()=>mock_pipe_types_namespaceObject.MockedPipe,en:()=>core_tokens.en,ZG:()=>core_tokens.ZG,rO:()=>core_tokens.rO,So:()=>core_tokens.So,C3:()=>core_tokens.C3,gG:()=>core_tokens.gG,Em:()=>core_tokens.Em,Ah:()=>core_helpers.Ah,xz:()=>getMockedNgDefOf,VK:()=>getSourceOfMock,d5:()=>core_helpers.d5,IA:()=>isMockControlValueAccessor,Bt:()=>isMockNgDef,AW:()=>isMockOf,lt:()=>isMockValidator,Fk:()=>isMockedNgDefOf,pA:()=>func_is_ng_def.p,SM:()=>func_is_ng_injection_token.S,H5:()=>ngMocks});var mock_control_value_accessor_namespaceObject={};__webpack_require__.r(mock_control_value_accessor_namespaceObject),__webpack_require__.d(mock_control_value_accessor_namespaceObject,{b:()=>LegacyControlValueAccessor});var types_namespaceObject={};__webpack_require__.r(types_namespaceObject);var mock_module_types_namespaceObject={};__webpack_require__.r(mock_module_types_namespaceObject);var mock_component_types_namespaceObject={};__webpack_require__.r(mock_component_types_namespaceObject);var mock_directive_types_namespaceObject={};__webpack_require__.r(mock_directive_types_namespaceObject);var mock_pipe_types_namespaceObject={};__webpack_require__.r(mock_pipe_types_namespaceObject);var ng_mocks_universe=__webpack_require__(73),_a,_b;const stackRoot={id:{},level:"root"},stack=ng_mocks_universe.A.global.get("reporter-stack")||[Object.assign({},stackRoot)];ng_mocks_universe.A.global.set("reporter-stack",stack);const current=()=>stack[stack.length-1],listenersPush=null!==(_a=ng_mocks_universe.A.global.get("reporter-stack-push"))&&void 0!==_a?_a:[];ng_mocks_universe.A.global.set("reporter-stack-push",listenersPush);const listenersPop=null!==(_b=ng_mocks_universe.A.global.get("reporter-stack-pop"))&&void 0!==_b?_b:[];ng_mocks_universe.A.global.set("reporter-stack-pop",listenersPop);const stackPush=()=>{const e={};ng_mocks_universe.A.global.set("reporter-stack-id",e);const o={id:e,level:"runtime"};stack.push(o);for(const e of listenersPush)e(o,stack)},stackPop=()=>{const e=stack.pop();if(0===stack.length&&stack.push("root"===(null==e?void 0:e.level)?e:Object.assign({},stackRoot)),e&&"root"!==e.level)for(const o of listenersPop)o(e,stack);ng_mocks_universe.A.global.set("reporter-stack-id",stack[stack.length-1].id)},subscribePush=e=>{listenersPush.indexOf(e)&&listenersPush.push(e),stack.length>0&&e(stack[stack.length-1],stack)},subscribePop=e=>{-1===listenersPop.indexOf(e)&&listenersPop.push(e)},unsubscribePush=e=>{const o=listenersPush.indexOf(e);-1!==o&&listenersPush.splice(o,1)},unsubscribePop=e=>{const o=listenersPop.indexOf(e);-1!==o&&listenersPop.splice(o,1)},ng_mocks_stack={current,stackPop,stackPush,subscribePop,subscribePush,unsubscribePop,unsubscribePush};var core_=__webpack_require__(614),testing_=__webpack_require__(957),core_helpers=__webpack_require__(456),core_tokens=__webpack_require__(763);const func_extract_tokens=e=>{let o,t,r;for(const n of(0,core_helpers.Bq)(e||[]))"object"==typeof n&&(n.provide===core_tokens.en&&(o=n.useValue),n.provide===core_tokens.So&&(t=n.useValue),n.provide===core_tokens.Em&&(r=n.useValue));return{mocks:o,overrides:t,touches:r}};var core_define_property=__webpack_require__(174),collect_declarations=__webpack_require__(673),func_is_ng_injection_token=__webpack_require__(152);const getNgType=e=>{if("string"==typeof e)return;if((0,func_is_ng_injection_token.S)(e))return"Injectable";const{decorators:o}=(0,collect_declarations.A)(e);for(let e=o.length-1;e>=0;e-=1)if("Injectable"!==o[e])return o[e];return o.length>0?"Injectable":void 0};function isStandalone(e){const o=getNgType(e);return"NgModule"!==o}var helper_extract_property_descriptor=__webpack_require__(20);const core_def_stack=class{constructor(){this.stack=[],this.push()}push(){this.stack.push(new Map)}pop(){var e;return null!==(e=this.stack.pop())&&void 0!==e?e:new Map}has(e){for(let o=this.stack.length-1;o>=0;o-=1)if(this.stack[o].has(e))return!0;return!1}get(e){for(let o=this.stack.length-1;o>=0;o-=1)if(this.stack[o].has(e))return this.stack[o].get(e)}set(e,o){for(let t=this.stack.length-1;t>=0;t-=1)this.stack[t].set(e,o);return this}merge(e){for(const[o,t]of(0,core_helpers.Nn)(e))this.set(o,t);return this}};var func_get_name=__webpack_require__(970),func_is_ng_def=__webpack_require__(218),func_is_ng_module_def_with_providers=__webpack_require__(659),core_config=__webpack_require__(295);class MockBuilderStash{constructor(){this.data={}}backup(){this.data={builtDeclarations:ng_mocks_universe.A.builtDeclarations,builtProviders:ng_mocks_universe.A.builtProviders,cacheDeclarations:ng_mocks_universe.A.cacheDeclarations,cacheProviders:ng_mocks_universe.A.cacheProviders,config:ng_mocks_universe.A.config,configInstance:ng_mocks_universe.A.configInstance,flags:ng_mocks_universe.A.flags,touches:ng_mocks_universe.A.touches},ng_mocks_universe.A.builtDeclarations=new Map,ng_mocks_universe.A.builtProviders=new Map,ng_mocks_universe.A.cacheDeclarations=new Map,ng_mocks_universe.A.cacheProviders=new Map,ng_mocks_universe.A.config=new Map,ng_mocks_universe.A.configInstance=new Map,ng_mocks_universe.A.flags=new Set(core_config.A.flags),ng_mocks_universe.A.touches=new Set}restore(){for(const e of Object.keys(this.data))ng_mocks_universe.A[e]=this.data[e]}}const core_reflect_provided_in=e=>{var o,t,r;if(e&&("object"==typeof e||"function"==typeof e))return null!==(t=null===(o=e.ɵprov)||void 0===o?void 0:o.providedIn)&&void 0!==t?t:null===(r=e.ngInjectableDef)||void 0===r?void 0:r.providedIn};var func_get_type=__webpack_require__(297),helper_resolve_provider=__webpack_require__(663);const add_requested_providers=(e,{providerDef:o,mockDef:t},r)=>{for(const t of(0,core_helpers.LG)(o))e.providers.push(t);for(const o of(0,core_helpers.Bq)(e.providers)){const e=(0,func_get_type.A)(o);ng_mocks_universe.A.touches.add(e),e!==o&&o.deps&&(0,core_helpers.by)(o.deps,ng_mocks_universe.A.config.get("ngMocksDeps"))}for(const o of(0,core_helpers.LG)(t))ng_mocks_universe.A.touches.has(o)||"root"!==core_reflect_provided_in(o)||(e.providers.push((0,helper_resolve_provider.A)(o,r)),ng_mocks_universe.A.touches.add(o))},apply_platform_modules=()=>{const e=(0,testing_.getTestBed)();if(e.ngModule)for(const o of(0,core_helpers.Bq)(e.ngModule))ng_mocks_universe.A.touches.add((0,func_get_type.A)(o))},error_empty_def=e=>{if(!e)throw new Error(["undefined / null has been passed into ng-mocks as a declaration / provider.","Please ensure that the current test file has correct imports:","imported files exist and imported declarations have been exported in the file."].join(" "))},func_is_jest_mock=e=>!(!e||"function"!=typeof e&&"object"!=typeof e||!(e._isMockFunction&&e.mockName&&e.__annotations__)),error_jest_mock=e=>{if(func_is_jest_mock(e))throw new Error([`ng-mocks got ${(0,func_get_name.A)(e)} which has been already mocked by jest.mock().`,"It is not possible to produce correct mocks for it, because jest.mock() removes Angular decorators.",`To fix this, please avoid jest.mock() on the file which exports ${(0,func_get_name.A)(e)} or add jest.dontMock() on it.`,"The same should be done for all related dependencies."].join(" "))},error_missing_decorators=e=>{throw new Error([`${(0,func_get_name.A)(e)} declaration has been passed into ng-mocks without Angular decorators.`,"Therefore, it cannot be properly handled.","Highly likely,","undefined"==typeof jest?"":"jest.mock() has been used on its file, or","ng-mocks is imported in production code, or got a class without Angular decoration.","Otherwise, please create an issue on github: https://github.com/help-me-mom/ng-mocks/issues/new?title=False%20positive%20ng-mocks%20not%20in%20JIT.","Thank you in advance for support."].join(" "))},core_reflect_body_catch=e=>o=>{error_empty_def(o);try{return e(o)}catch(e){error_jest_mock(o),error_missing_decorators(o)}},core_reflect_directive_resolve=e=>core_reflect_body_catch((e=>{const o=(0,collect_declarations.A)(e);if(o.Component)return o.Component;if(o.Directive)return o.Directive;throw new Error("Cannot resolve declarations")}))(e),core_reflect_module_resolve=e=>core_reflect_body_catch((e=>{const o=(0,collect_declarations.A)(e);if(o.NgModule)return o.NgModule;throw new Error("Cannot resolve declarations")}))(e),core_reflect_meta=e=>(0,func_is_ng_def.p)(e,"c")||(0,func_is_ng_def.p)(e,"d")?core_reflect_directive_resolve(e):(0,func_is_ng_def.p)(e,"m")?core_reflect_module_resolve(e):void 0;function getSourceOfMock(e){return"function"==typeof e&&e.mockOf?e.mockOf:e}const mark_exported=(e,o)=>{var t;const r=getSourceOfMock(e),n=null!==(t=ng_mocks_universe.A.configInstance.get(r))&&void 0!==t?t:{__set:!0};n.exported||(n.exported=new Set),o&&n.exported.add(getSourceOfMock(o)),n.__set&&(n.__set=void 0,ng_mocks_universe.A.configInstance.set(r,n))};var x=e=>{var o={};return __webpack_require__.d(o,e),o},y=e=>()=>e;const forms_namespaceObject=x({AbstractControl:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.AbstractControl,DefaultValueAccessor:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.DefaultValueAccessor,FormControl:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.FormControl,FormControlDirective:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.FormControlDirective,NG_ASYNC_VALIDATORS:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NG_ASYNC_VALIDATORS,NG_VALIDATORS:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NG_VALIDATORS,NG_VALUE_ACCESSOR:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NG_VALUE_ACCESSOR,NgControl:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NgControl,NgModel:()=>__WEBPACK_EXTERNAL_MODULE__angular_forms_df10eade__.NgModel}),AbstractControl=forms_namespaceObject.AbstractControl,DefaultValueAccessor=forms_namespaceObject.DefaultValueAccessor,FormControl=forms_namespaceObject.FormControl,FormControlDirective=forms_namespaceObject.FormControlDirective,NG_ASYNC_VALIDATORS=forms_namespaceObject.NG_ASYNC_VALIDATORS,NG_VALIDATORS=forms_namespaceObject.NG_VALIDATORS,NG_VALUE_ACCESSOR=forms_namespaceObject.NG_VALUE_ACCESSOR,NgControl=forms_namespaceObject.NgControl,NgModel=forms_namespaceObject.NgModel,core_form={AbstractControl,DefaultValueAccessor,FormControl,FormControlDirective,NG_ASYNC_VALIDATORS,NG_VALIDATORS,NG_VALUE_ACCESSOR,NgControl,NgModel},func_is_mock=e=>e&&"object"==typeof e&&!!e.__ngMocks;var mock_helper_stub=__webpack_require__(195),mock_instance_apply=__webpack_require__(760),helper_mock_service=__webpack_require__(932),func_directive_io_parse=__webpack_require__(184);const applyProxy=(e,o,t,r)=>{if(e.instance&&r&&(e.instance[r]=t),e.instance&&e.instance[o])return e.instance[o](t)};class MockControlValueAccessorProxy{constructor(e){this.target=e}registerOnChange(e){applyProxy(this,"registerOnChange",e,"__simulateChange")}registerOnTouched(e){applyProxy(this,"registerOnTouched",e,"__simulateTouch")}setDisabledState(e){applyProxy(this,"setDisabledState",e)}writeValue(e){applyProxy(this,"writeValue",e)}}class MockValidatorProxy{constructor(e){this.target=e}registerOnValidatorChange(e){applyProxy(this,"registerOnValidatorChange",e,"__simulateValidatorChange")}validate(e){return this.instance&&this.instance.validate?this.instance.validate(e):null}}class MockAsyncValidatorProxy{constructor(e){this.target=e}registerOnValidatorChange(e){applyProxy(this,"registerOnValidatorChange",e,"__simulateValidatorChange")}validate(e){if(this.instance&&this.instance.validate){const o=this.instance.validate(e);return void 0===o?Promise.resolve(null):o}return Promise.resolve(null)}}const setValueAccessor=(e,o)=>{if(o&&!o.valueAccessor&&e.__ngMocksConfig.setControlValueAccessor)try{o.valueAccessor=new MockControlValueAccessorProxy(e.__ngMocksCtor)}catch(e){}},installValueAccessor=(e,o)=>{e.valueAccessor.instance||e.valueAccessor.target!==o.__ngMocksCtor||(e.valueAccessor.instance=o,helper_mock_service.A.mock(o,"registerOnChange"),helper_mock_service.A.mock(o,"registerOnTouched"),helper_mock_service.A.mock(o,"setDisabledState"),helper_mock_service.A.mock(o,"writeValue"),o.__ngMocksConfig.isControlValueAccessor=!0)},installValidator=(e,o)=>{for(const t of e)t.instance||t.target!==o.__ngMocksCtor||(t.instance=o,helper_mock_service.A.mock(o,"registerOnValidatorChange"),helper_mock_service.A.mock(o,"validate"),o.__ngMocksConfig.isValidator=!0)},applyNgValueAccessor=(e,o)=>{setValueAccessor(e,o);try{o&&(installValueAccessor(o,e),installValidator(o._rawValidators,e),installValidator(o._rawAsyncValidators,e))}catch(e){}},applyOutputs=e=>{const o=[];for(const t of e.__ngMocksConfig.outputs||[])o.push((0,func_directive_io_parse.A)(t).name);for(const t of o)e[t]||Object.getOwnPropertyDescriptor(e,t)||(e[t]=new core_.EventEmitter)},applyPrototype=(e,o)=>{for(const t of[...helper_mock_service.A.extractMethodsFromPrototype(o),...helper_mock_service.A.extractPropertiesFromPrototype(o)]){const r=helper_mock_service.A.extractPropertyDescriptor(o,t);helper_mock_service.A.definePropertyDescriptor(e,t,r)}},applyMethods=(e,o)=>{for(const t of helper_mock_service.A.extractMethodsFromPrototype(o))e[t]||Object.getOwnPropertyDescriptor(e,t)||helper_mock_service.A.mock(e,t)},applyProps=(e,o)=>{for(const t of helper_mock_service.A.extractPropertiesFromPrototype(o))e[t]||Object.getOwnPropertyDescriptor(e,t)||(helper_mock_service.A.mock(e,t,"get"),helper_mock_service.A.mock(e,t,"set"))},applyOverrides=(e,o,t)=>{const r=ng_mocks_universe.A.getOverrides().get(o),n=r?(0,core_helpers.LG)(r):[];e.__ngMocksConfig.init&&n.push(e.__ngMocksConfig.init),n.push(...(0,mock_instance_apply.A)(o));for(const o of n){const r=o(e,t);r&&(0,mock_helper_stub.A)(e,r)}};class Mock{constructor(e=null,o=null){const t=this.constructor.mockOf;(0,core_define_property.A)(this,"__ngMocks",!0),(0,core_define_property.A)(this,"__ngMocksInjector",e),(0,core_define_property.A)(this,"__ngMocksCtor",this.constructor);for(const e of this.__ngMocksConfig.queryScanKeys||[])(0,core_define_property.A)(this,`__ngMocksVcr_${e}`,void 0);for(const e of this.__ngMocksConfig.hostBindings||[])helper_mock_service.A.mock(this,e,"get"),helper_mock_service.A.mock(this,e,"set");for(const e of this.__ngMocksConfig.hostListeners||[])helper_mock_service.A.mock(this,e);func_is_mock(this)&&(applyNgValueAccessor(this,o),applyOutputs(this),applyPrototype(this,Object.getPrototypeOf(this)),applyMethods(this,t.prototype),applyProps(this,t.prototype)),Object.setPrototypeOf(this,t.prototype),applyOverrides(this,t,null!=e?e:void 0)}}(0,core_define_property.A)(Mock,"parameters",[[core_.Injector,new core_.Optional],[core_form.NgControl||(()=>{}),new core_.Optional,new core_.Self]]);class LegacyControlValueAccessor extends Mock{__simulateChange(){}__simulateTouch(){}__simulateValidatorChange(){}}var func_directive_io_build=__webpack_require__(439);const decorate_inputs=(e,o,t)=>{if(o)for(const r of o){const{name:o,alias:n,required:s}=(0,func_directive_io_parse.A)(r);t&&-1!==t.indexOf(o)||(0,core_.Input)((0,func_directive_io_build.A)({name:o,alias:n,required:s},!0))(e.prototype,o)}},decorate_mock=(e,o,t={})=>{(0,core_define_property.A)(e,"mockOf",o),(0,core_define_property.A)(e,"nameConstructor",(0,func_get_name.A)(e)),(0,core_define_property.A)(e,"name",`MockOf${(0,func_get_name.A)(o)}`,!0);const r=ng_mocks_universe.A.getConfigMock().has(o)?Object.assign(Object.assign({},t),{config:Object.assign(Object.assign({},ng_mocks_universe.A.getConfigMock().get(o)),t.config)}):t;(0,core_define_property.A)(e.prototype,"__ngMocksConfig",r)},decorate_outputs=(e,o)=>{if(o)for(const t of o){const{name:o,alias:r,required:n}=(0,func_directive_io_parse.A)(t);(0,core_.Output)((0,func_directive_io_build.A)({name:o,alias:r,required:n},!0))(e.prototype,o)}},map={ContentChild:core_.ContentChild,ContentChildren:core_.ContentChildren,ViewChild:core_.ViewChild,ViewChildren:core_.ViewChildren},isInternalKey=e=>0===e.indexOf("__mock"),cloneVcrQuery=e=>Object.assign(Object.assign({},e),{ngMetadataName:e.ngMetadataName,read:core_.ViewContainerRef}),generateFinalQueries=e=>{const o=[],t=[];for(const r of Object.keys(e)){const n=e[r];o.push([r,n]),n.isViewQuery||isInternalKey(r)||(t.push(r),o.push([`__ngMocksVcr_${r}`,cloneVcrQuery(n)]))}return[o,t]},decorate_queries=(e,o)=>{if(!o)return[];const[t,r]=generateFinalQueries(o);for(const[o,r]of t)r.ngMetadataName&&(0,map[r.ngMetadataName])(r.selector,r)(e.prototype,o);return r};var func_extract_forward_ref=__webpack_require__(285);const to_existing_provider=(e,o)=>({provide:e,useExisting:o}),to_factory_provider=(e,o)=>({multi:!0,provide:e,useFactory:o}),processTokens=(e,o)=>{const t=(0,func_get_type.A)(o);return core_form.NG_VALIDATORS&&t===core_form.NG_VALIDATORS?to_factory_provider(t,(()=>new MockValidatorProxy(e))):core_form.NG_ASYNC_VALIDATORS&&t===core_form.NG_ASYNC_VALIDATORS?to_factory_provider(t,(()=>new MockAsyncValidatorProxy(e))):core_form.NG_VALUE_ACCESSOR&&t===core_form.NG_VALUE_ACCESSOR?to_factory_provider(t,(()=>new MockControlValueAccessorProxy(e))):void 0},processOwnUseExisting=(e,o,t)=>{const r=(0,func_get_type.A)(t);if(r!==core_form.NgControl&&r!==core_form.FormControlDirective)return t!==r&&(0,func_extract_forward_ref.A)(t.useExisting)===e?to_existing_provider(r,o):void 0},processProvider=(e,o,t,r)=>{const n=processTokens(o,t);if(n)return n;return processOwnUseExisting(e,o,t)||helper_mock_service.A.resolveProvider(t,r)},clone_providers=(e,o,t,r)=>{const n=[];let s;for(const c of(0,core_helpers.Bq)(t||[])){(0,func_get_type.A)(c)===core_form.NG_VALUE_ACCESSOR&&(s=!1);const t=processProvider(e,o,c,r);t&&n.push(t)}return{providers:n,setControlValueAccessor:s}},buildConfig=(e,o,t)=>({config:ng_mocks_universe.A.config.get(e),outputs:o.outputs,queryScanKeys:[],setControlValueAccessor:t}),decorate_declaration=(e,o,t,r)=>{const n=ng_mocks_universe.A.config.has("mockNgDefResolver");n||ng_mocks_universe.A.config.set("mockNgDefResolver",new core_def_stack);const s=Object.assign({},r);if(void 0!==t.exportAs&&(s.exportAs=t.exportAs),void 0!==t.selector&&(s.selector=t.selector),void 0!==t.standalone&&(s.standalone=t.standalone),t.standalone&&t.imports){const[,{imports:e}]=mock_ng_def({imports:t.imports,skipExports:!0});(null==e?void 0:e.length)&&(s.imports=e)}if(t.hostDirectives){const[,{hostDirectives:e}]=mock_ng_def({hostDirectives:t.hostDirectives,skipExports:!0});(null==e?void 0:e.length)&&(s.hostDirectives=e)}const{setControlValueAccessor:c,providers:_}=clone_providers(e,o,t.providers||[],ng_mocks_universe.A.config.get("mockNgDefResolver"));_.push(to_existing_provider(e,o)),s.providers=_;const{providers:i}=clone_providers(e,o,t.viewProviders||[],ng_mocks_universe.A.config.get("mockNgDefResolver"));i.length>0&&(s.viewProviders=i);const a=buildConfig(e,t,null!=c?c:-1!==helper_mock_service.A.extractMethodsFromPrototype(e.prototype).indexOf("writeValue"));decorate_mock(o,e,a),t.queries&&decorate_inputs(o,t.inputs,Object.keys(t.queries)),decorate_outputs(o,t.outputs),a.queryScanKeys=decorate_queries(o,t.queries),a.hostBindings=[];for(const[e]of t.hostBindings||[])-1===a.hostBindings.indexOf(e)&&a.hostBindings.push(e);a.hostListeners=[];for(const[e]of t.hostListeners||[])-1===a.hostListeners.indexOf(e)&&a.hostListeners.push(e);return n||ng_mocks_universe.A.config.delete("mockNgDefResolver"),s},getType=e=>(0,func_is_ng_def.p)(e,"p")?"pipe":(0,func_is_ng_def.p)(e,"d")?"directive":(0,func_is_ng_def.p)(e,"c")?"component":(0,func_is_ng_def.p)(e,"m")?"module":(0,func_is_ng_def.p)(e,"i")?"service":(0,func_is_ng_def.p)(e,"t")?"token":"",func_import_exists=(e,o)=>{if(null==e)throw new Error(`null / undefined has been passed into ${o}. Please check that its import is correct.`);if("MockPipe"===o&&(0,func_is_ng_def.p)(e,"p"))return;if("MockDirective"===o&&(0,func_is_ng_def.p)(e,"d"))return;if("MockComponent"===o&&(0,func_is_ng_def.p)(e,"c"))return;if("MockModule"===o&&(0,func_is_ng_def.p)(e,"m"))return;const t=getType(e);if(t&&"MockPipe"===o)throw new Error(`${o} accepts pipes, whereas ${(0,func_get_name.A)(e)} is a ${t}.`);if(t&&"MockDirective"===o)throw new Error(`${o} accepts directives, whereas ${(0,func_get_name.A)(e)} is a ${t}.`);if(t&&"MockComponent"===o)throw new Error(`${o} accepts components, whereas ${(0,func_get_name.A)(e)} is a ${t}.`);if(t&&"MockModule"===o)throw new Error(`${o} accepts modules, whereas ${(0,func_get_name.A)(e)} is a ${t}.`)};function isMockNgDef(e,o){return!!e.mockOf&&(!o||(0,func_is_ng_def.p)(e.mockOf,o))}const func_get_last_fixture=()=>{const e=(0,testing_.getTestBed)()._activeFixtures;return e[e.length-1]},return_cached_mock=e=>{let o;try{o=func_get_last_fixture().debugElement.injector.get(core_tokens.en).get(e)}catch(e){}return o||(o=ng_mocks_universe.A.cacheDeclarations.get(e)),e.__ngMocksResolutions&&ng_mocks_universe.A.config.has("mockNgDefResolver")&&ng_mocks_universe.A.config.get("mockNgDefResolver").merge(e.__ngMocksResolutions),o},get_mock=(e,o,t,r,n,s)=>{if(func_import_exists(e,t),isMockNgDef(e,o))return e;if(ng_mocks_universe.A.flags.has(r)&&ng_mocks_universe.A.cacheDeclarations.has(e))return return_cached_mock(e);const c=ng_mocks_universe.A.config.has("ngMocksDepsResolution");c||ng_mocks_universe.A.config.set("ngMocksDepsResolution",new Map);const _=(0,core_helpers.He)(n);return s(e,_),ng_mocks_universe.A.flags.has(r)&&ng_mocks_universe.A.cacheDeclarations.set(e,_),c||ng_mocks_universe.A.config.delete("ngMocksDepsResolution"),_},vcrArgs={read:core_.ViewContainerRef,static:!1},trArgs={read:core_.TemplateRef,static:!1},viewChildTemplate=(e,o)=>``,isTemplateRefQuery=e=>!(e.isViewQuery||e.read&&e.read!==core_.TemplateRef||"string"!=typeof e.selector&&!e.read),generate_template=e=>{const o=[""];if(!e)return o.join("");for(const t of Object.keys(e)){const r=e[t];if(0!==t.indexOf("__mock")&&isTemplateRefQuery(r)){if("string"==typeof r.selector){const t=r.selector.replace(new RegExp("\\W","mg"),"_");e[`__vcrIf_key_${t}`]=new core_.ViewChild(`ngIf_key_${t}`,vcrArgs),e[`__trIf_key_${t}`]=new core_.ViewChild(`ngIf_key_${t}`,trArgs),e[`__mockView_key_${t}`]=new core_.ViewChild(`key_${t}`,vcrArgs),e[`__mockTpl_key_${t}`]=r,o.push(viewChildTemplate(t,"key"))}e[`__vcrIf_prop_${t}`]=new core_.ViewChild(`ngIf_prop_${t}`,vcrArgs),e[`__trIf_prop_${t}`]=new core_.ViewChild(`ngIf_prop_${t}`,trArgs),e[`__mockView_prop_${t}`]=new core_.ViewChild(`prop_${t}`,vcrArgs),o.push(viewChildTemplate(t,"prop"))}}return o.join("")},get_key=e=>{if("string"==typeof e)return["key",`__mockTpl_key_${e}`,e,void 0];const[o,...t]=e;return["prop",o,o,t.length>0?t:void 0]},mixRenderPrepareVcr=(e,o,t,r)=>{const n=e[`__vcrIf_${o}_${t}`],s=e[`__trIf_${o}_${t}`];return n&&s&&!e[`ngMocksRender_${o}_${t}`]&&(e[`ngMocksRender_${o}_${t}`]=n.createEmbeddedView(s,{}),r.detectChanges()),e[`__mockView_${o}_${t}`]},mixRenderReorderViews=(e,o,t)=>{for(const e of o.splice(t+1))e.destroy();let r=0;for(const t of o)t&&(e.move(t,r),r+=1)},mixRenderApplyContext=(e,o)=>{for(const o of Object.keys(e.context))e.context[o]=void 0;for(const t of Object.keys(o))e.context[t]=o[t];e.markForCheck()},mixRenderHandleViews=(e,o,t,r,n,s)=>{let c=-1;for(const o of t)if(c+=1,r[c]=r[c]||void 0,(!n||-1!==n.indexOf(c))&&o){if(!(o instanceof core_.TemplateRef))throw new Error("Cannot find TemplateRef");r[c]||(r[c]=e.createEmbeddedView(o,{})),mixRenderApplyContext(r[c],s)}return o.detectChanges(),c},mixRender=(e,o)=>{(0,core_define_property.A)(e,"__render",((t,r,n)=>{const[s,c,_,i]=get_key(t),a=mixRenderPrepareVcr(e,s,_,o);if(!a)return;const l=e[c],p=l instanceof core_.QueryList?l.toArray():[l],u=e[`ngMocksRender_${s}_${_}_views`]||[],d=mixRenderHandleViews(a,o,p,u,i,Object.assign(Object.assign({},n),{$implicit:r}));mixRenderReorderViews(a,u,d),e[`ngMocksRender_${s}_${_}_views`]=u,o.detectChanges()}))},mixHideHandler=(e,o,t,r)=>{const n=e[`ngMocksRender_${o}_${t}_views`];let s=-1;for(const e of n)s+=1,r&&-1===r.indexOf(s)||!e||(e.destroy(),n[s]=void 0)},mixHide=(e,o)=>{(0,core_define_property.A)(e,"__hide",(t=>{const[r,,n,s]=get_key(t);e[`ngMocksRender_${r}_${n}`]&&(mixHideHandler(e,r,n,s),s||(e[`ngMocksRender_${r}_${n}`].destroy(),e[`ngMocksRender_${r}_${n}`]=void 0),o.detectChanges())}))};class ComponentMockBase extends LegacyControlValueAccessor{constructor(e,o,t){super(e,o),func_is_mock(this)&&(mixRender(this,t),mixHide(this,t))}ngAfterViewInit(){const e=this.__ngMocksConfig.config;if(!this.__rendered&&e&&e.render){for(const o of Object.keys(e.render)){const{$implicit:t,variables:r}=!0===e.render[o]?{$implicit:void 0,variables:{}}:e.render[o];this.__render(o,t,r)}this.__rendered=!0}}}(0,core_define_property.A)(ComponentMockBase,"parameters",[[core_.Injector],[core_form.NgControl||(()=>{}),new core_.Optional,new core_.Self],[core_.ChangeDetectorRef]]);const decorateClass=(e,o)=>{const t=core_reflect_directive_resolve(e);(0,core_.Component)(decorate_declaration(e,o,t,{template:generate_template(t.queries)}))(o)};function MockComponents(...e){return e.map(MockComponent)}function MockComponent(e){return get_mock(e,"c","MockComponent","cacheComponent",ComponentMockBase,decorateClass)}class DirectiveMockBase extends LegacyControlValueAccessor{constructor(e,o,t,r,n=null,s=null){super(e,o),this.__ngMocksInstall(r,t,n,s)}ngOnInit(){const e=this.__ngMocksConfig.config;if(null==e?void 0:e.render){const{$implicit:o,variables:t}=!0===e.render?{$implicit:void 0,variables:{}}:e.render;this.__render(o,t)}}__ngMocksInstall(e,o,t,r){(0,core_define_property.A)(this,"__element",t),(0,core_define_property.A)(this,"__template",r),(0,core_define_property.A)(this,"__viewContainer",e),(0,core_define_property.A)(this,"__vcr",e),(0,core_define_property.A)(this,"__cdr",o),(0,core_define_property.A)(this,"__isStructural",r&&e),(0,core_define_property.A)(this,"__render",((t,n)=>{e&&r&&(e.clear(),e.createEmbeddedView(r,Object.assign(Object.assign({},n),{$implicit:t})),o.detectChanges())}))}}(0,core_define_property.A)(DirectiveMockBase,"parameters",[[core_.Injector],[core_form.NgControl||(()=>{}),new core_.Optional,new core_.Self],[core_.ChangeDetectorRef],[core_.ViewContainerRef],[core_.ElementRef,new core_.Optional,new core_.Self],[core_.TemplateRef,new core_.Optional,new core_.Self]]);const mock_directive_decorateClass=(e,o)=>{const t=core_reflect_directive_resolve(e),r=decorate_declaration(e,o,t,{});(0,core_.Directive)(r)(o)};function MockDirectives(...e){return e.map(MockDirective)}function MockDirective(e){return get_mock(e,"d","MockDirective","cacheDirective",DirectiveMockBase,mock_directive_decorateClass)}const core_reflect_pipe_resolve=e=>core_reflect_body_catch((e=>{const o=(0,collect_declarations.A)(e);if(o.Pipe)return o.Pipe;throw new Error("Cannot resolve declarations")}))(e);function MockPipes(...e){return e.map((e=>MockPipe(e,void 0)))}const getMockClass=(e,o)=>{var t;const r=ng_mocks_universe.A.config.get(e),n=null!=o?o:null===(t=null==r?void 0:r.defValue)||void 0===t?void 0:t.transform,s=(0,core_helpers.He)(Mock);return(0,core_.Pipe)(core_reflect_pipe_resolve(e))(s),decorate_mock(s,e,{init:e=>{n&&(e.transform=n),e.transform||helper_mock_service.A.mock(e,"transform",`${(0,func_get_name.A)(e)}.transform`)},transform:n}),s};function MockPipe(e,o){if(func_import_exists(e,"MockPipe"),isMockNgDef(e,"p"))return e;if(ng_mocks_universe.A.flags.has("cachePipe")&&ng_mocks_universe.A.cacheDeclarations.has(e))return return_cached_mock(e);const t=getMockClass(e,o);return ng_mocks_universe.A.flags.has("cachePipe")&&ng_mocks_universe.A.cacheDeclarations.set(e,t),t}const flagMock=e=>"mock"===e&&ng_mocks_universe.A.flags.has("skipMock"),flagKeep=e=>"keep"===e&&!ng_mocks_universe.A.flags.has("skipMock"),flagReplace=e=>"replace"===e&&!ng_mocks_universe.A.flags.has("skipMock"),flagNever=e=>-1!==core_config.A.neverMockModule.indexOf((0,func_get_name.A)(e))&&!ng_mocks_universe.A.flags.has("skipMock"),preProcessFlags=e=>{let o=!1,t=!0;ng_mocks_universe.A.flags.has("hasRootModule")?t=!1:ng_mocks_universe.A.flags.add("hasRootModule");const r=ng_mocks_universe.A.getResolution(e);return flagMock(r)&&(o=!0,ng_mocks_universe.A.flags.delete("skipMock")),flagNever(e)&&(o=!0,ng_mocks_universe.A.flags.add("skipMock")),t||!flagKeep(r)&&!flagReplace(r)||(o=!0,ng_mocks_universe.A.flags.add("skipMock")),{isRootModule:t,toggleSkipMockFlag:o}},postProcessFlags=({isRootModule:e,toggleSkipMockFlag:o})=>{o&&ng_mocks_universe.A.flags.has("skipMock")?ng_mocks_universe.A.flags.delete("skipMock"):o&&!ng_mocks_universe.A.flags.has("skipMock")&&ng_mocks_universe.A.flags.add("skipMock"),e&&ng_mocks_universe.A.flags.delete("hasRootModule")},extractModuleAndProviders=e=>{let o,t;return(0,func_is_ng_module_def_with_providers.h)(e)?(o=e.ngModule,e.providers&&(t=e.providers)):o=e,{ngModule:o,ngModuleProviders:t}},getExistingMockModule=(e,o)=>{var t;if(isMockNgDef(e,"m"))return e;if(ng_mocks_universe.A.flags.has("cacheModule")&&ng_mocks_universe.A.cacheDeclarations.has(e))return return_cached_mock(e);if(!o&&"mock"!==(null===(t=ng_mocks_universe.A.config.get("ngMocksDepsResolution"))||void 0===t?void 0:t.get(e))&&ng_mocks_universe.A.hasBuildDeclaration(e)){const o=ng_mocks_universe.A.getBuildDeclaration(e);if((0,func_is_ng_def.p)(o,"m")&&o!==e)return o}},detectMockModule=(e,o)=>{const[t,r,n]=o?[!1]:mock_ng_def(core_reflect_module_resolve(e),e);if(n&&(0,core_define_property.A)(e,"__ngMocksResolutions",n),t){const o=ng_mocks_universe.A.flags.has("skipMock")?e:Mock,t=(0,core_helpers.He)(o);return(0,core_.NgModule)(r)(t),decorate_mock(t,e),t}return o||e},getMockProviders=e=>{if(e){const[o,t]=mock_ng_def({providers:e,skipExports:!0});return o?t.providers:e}},generateReturn=(e,o,t,r,n)=>r===o&&n===t?e:(0,func_is_ng_module_def_with_providers.h)(e)?Object.assign({ngModule:r},n?{providers:n}:{}):r;function MockModule(e){var o;func_import_exists(e,"MockModule");const{ngModule:t,ngModuleProviders:r}=extractModuleAndProviders(e),n=preProcessFlags(t);try{const s=detectMockModule(t,getExistingMockModule(t,n.isRootModule));ng_mocks_universe.A.flags.has("cacheModule")&&ng_mocks_universe.A.cacheDeclarations.set(t,s),ng_mocks_universe.A.flags.has("skipMock")&&(null===(o=ng_mocks_universe.A.config.get("ngMocksDepsSkip"))||void 0===o||o.add(s));const c=getMockProviders(r);return generateReturn(e,t,r,s,c)}finally{postProcessFlags(n)}}const processDefMap=[["c",MockComponent],["d",MockDirective],["p",MockPipe]],processDef=e=>{if((0,func_is_ng_def.p)(e,"m")||(0,func_is_ng_module_def_with_providers.h)(e))return MockModule(e);if(ng_mocks_universe.A.hasBuildDeclaration(e))return ng_mocks_universe.A.getBuildDeclaration(e);if(ng_mocks_universe.A.flags.has("skipMock")&&"mock"!==ng_mocks_universe.A.getResolution(e))return e;for(const[o,t]of processDefMap)if((0,func_is_ng_def.p)(e,o))return t(e)},createResolveProvider=(e,o)=>t=>helper_mock_service.A.resolveProvider(t,e,o),createResolveWithProviders=(e,o)=>(0,func_is_ng_module_def_with_providers.h)(o)&&(0,func_is_ng_module_def_with_providers.h)(e),createResolveExisting=(e,o,t)=>{const r=o.get(e);return e!==r&&t(),r},createResolveExcluded=(e,o,t)=>{o.set(e,void 0),t()},createResolve=(e,o)=>t=>{var r;if(e.has(t))return createResolveExisting(t,e,o);const n=(0,func_get_type.A)(t);if(ng_mocks_universe.A.isExcludedDef(n))return createResolveExcluded(t,e,o);ng_mocks_universe.A.touches.add(n);const s=processDef(t);return createResolveWithProviders(t,s)&&e.set(t.ngModule,s.ngModule),ng_mocks_universe.A.flags.has("skipMock")&&(null===(r=ng_mocks_universe.A.config.get("ngMocksDepsSkip"))||void 0===r||r.add(s)),e.set(t,s),o(s!==t),s},create_resolvers=(e,o)=>({resolve:createResolve(o,e),resolveProvider:createResolveProvider(o,e)}),mark_providers=e=>{for(const o of(0,core_helpers.Bq)(null!=e?e:[])){const e=(0,func_get_type.A)(o);mark_exported(e)}},flatToExisting=(e,o)=>(0,core_helpers.Bq)(e).map(o).filter((e=>!!e)),configureProcessMetaKeys=(e,o)=>[["declarations",e],["hostDirectives",o=>{const t=(0,func_get_type.A)(o),r=e(t);return r===t?o:o==t?r:Object.assign(Object.assign({},o),{directive:r})}],["imports",e],["entryComponents",e],["bootstrap",e],["providers",o],["viewProviders",o],["exports",e],["schemas",e=>e]],processMeta=(e,o,t)=>{var r;const n={},s=configureProcessMetaKeys(o,t),c=ng_mocks_universe.A.flags.has("cachePipe");c||ng_mocks_universe.A.flags.add("cachePipe");for(const[o,t]of s)(null===(r=e[o])||void 0===r?void 0:r.length)&&(n[o]=flatToExisting(e[o],t));return e.skipMarkProviders||(mark_providers(n.providers),mark_providers(n.viewProviders)),c||ng_mocks_universe.A.flags.delete("cachePipe"),n},resolveDefForExport=(e,o,t,r)=>{const n=ng_mocks_universe.A.config.get(r)||{},s=(0,func_get_type.A)(e),c=o(s);if(!c)return;const _=ng_mocks_universe.A.config.get(s);return(null==_?void 0:_.export)&&r&&!n.export&&ng_mocks_universe.A.config.set(r,Object.assign(Object.assign({},n),{export:!0})),!t||n.exportAll||(null==_?void 0:_.export)?(mark_exported(s,r),c):void 0},skipAddExports=(e,o)=>!e||!!o.exports&&-1!==o.exports.indexOf(e),addExports=(e,o,t,r,n)=>{const s=ng_mocks_universe.A.flags.has("skipMock")||ng_mocks_universe.A.flags.has("correctModuleExports");for(const c of(0,core_helpers.Bq)([t.imports||[],t.declarations||[]])){const t=resolveDefForExport(c,e,s,n);skipAddExports(t,r)||(o(),r.exports=r.exports||[],r.exports.push(t))}},mock_ng_def=(e,o)=>{const t=ng_mocks_universe.A.config.has("mockNgDefResolver");t||ng_mocks_universe.A.config.set("mockNgDefResolver",new core_def_stack),ng_mocks_universe.A.config.get("mockNgDefResolver").push();let r=!ng_mocks_universe.A.flags.has("skipMock");const n=(e=!0)=>{r=r||e},{resolve:s,resolveProvider:c}=create_resolvers(n,ng_mocks_universe.A.config.get("mockNgDefResolver")),_=processMeta(e,s,c);e.skipExports||addExports(s,n,e,_,o);for(const e of o&&_.exports?(0,core_helpers.Bq)(_.exports):[])mark_exported(e,o);const i=ng_mocks_universe.A.config.get("mockNgDefResolver").pop();return t||ng_mocks_universe.A.config.delete("mockNgDefResolver"),[r,_,i]},get_override_def=e=>{if(!e)return;const o=ng_mocks_universe.A.flags.has("skipMock");o||ng_mocks_universe.A.flags.add("skipMock");const[t,r]=mock_ng_def(e);return o||ng_mocks_universe.A.flags.delete("skipMock"),t?r:void 0},skip_override=(e,o,t,r)=>!!ng_mocks_universe.A.cacheDeclarations.has(r)||!(!e.has(t)||r!==o.get(t)),create_ng_mocks_overrides_token=(e,o)=>{const t=new Map;for(const r of(0,core_helpers.LG)(ng_mocks_universe.A.touches)){const n=r,s=ng_mocks_universe.A.getBuildDeclaration(n)||n;if(skip_override(e,o,n,s))continue;const c=core_reflect_meta(s),_=get_override_def(c);if(!_)continue;const i={};for(const e of Object.keys(_))i[e]=c[e];t.set(s,[{set:_},{set:i}])}return{provide:core_tokens.So,useValue:t}},create_ng_mocks_token=()=>{const e=new Map;for(const[o,t]of[...(0,core_helpers.Nn)(ng_mocks_universe.A.builtProviders),...(0,core_helpers.Nn)(ng_mocks_universe.A.builtDeclarations),...(0,core_helpers.Nn)(ng_mocks_universe.A.cacheDeclarations),...(0,core_helpers.Nn)(ng_mocks_universe.A.cacheProviders)])e.has(o)||e.set(o,t);return{provide:core_tokens.en,useValue:e}},create_ng_mocks_touches_token=()=>{const e=new Set;for(const o of(0,core_helpers.LG)(ng_mocks_universe.A.touches)){const t=o;let r=ng_mocks_universe.A.getBuildDeclaration(t);void 0===r&&(r=t),e.add(t),e.add(r)}return{provide:core_tokens.Em,useValue:e}};var helper_create_clone=__webpack_require__(365);class EntryComponentsModule{constructor(e,o){if(!o)return;const t=o.resolveComponentFactory;o.resolveComponentFactory=(0,helper_create_clone.A)(t,void 0,void 0,((r,...n)=>{var s;return t.apply(o,[null!==(s=e.get(r))&&void 0!==s?s:r,...n])}))}}(0,core_define_property.A)(EntryComponentsModule,"parameters",[[core_tokens.en],[core_.ComponentFactoryResolver,new core_.Optional]]);class IvyModule{}(0,core_.NgModule)()(IvyModule);const handle_entry_components=e=>{const o=[];for(const t of e.declarations)(0,func_is_ng_def.p)(t,"c")&&o.push(t);const t=(0,core_helpers.He)(EntryComponentsModule);(0,core_.NgModule)({entryComponents:IvyModule.ɵmod?[]:o})(t),e.imports.push(t)};var helper_use_factory=__webpack_require__(465),core_reflect_parameters_resolve=__webpack_require__(749),common_x=e=>{var o={};return __webpack_require__.d(o,e),o},common_y=e=>()=>e;const common_namespaceObject=common_x({DOCUMENT:()=>__WEBPACK_EXTERNAL_MODULE__angular_common_d12e0fe1__.DOCUMENT}),skipResolution=e=>{const o=ng_mocks_universe.A.getResolution(e);return"keep"===o||"exclude"===o||"mock"!==o&&void 0},skipSystem=e=>{if(!e||e===common_namespaceObject.DOCUMENT||ng_mocks_universe.A.touches.has(e))return!0;const o=skipResolution(e);return void 0!==o?o:"function"==typeof e&&-1!==core_config.A.neverMockProvidedFunction.indexOf(e.name)||!(!(0,func_is_ng_injection_token.S)(e)||-1===core_config.A.neverMockToken.indexOf(e.toString()))},skip_dep=e=>{if(skipSystem(e))return!0;const o=core_reflect_provided_in(e);return!("function"!=typeof e||o&&"platform"!==o)},add_def_to_root_provider_parameters=(e,o,t)=>{skip_dep(t)||!o.has(core_tokens.gG)&&ng_mocks_universe.A.config.get("ngMocksDepsSkip").has(t)||e.add(t)},check_root_provider_dependency=(e,o,t)=>{"function"==typeof e&&-1===t.indexOf(e)&&(t.push(e),o.push(e))},extract_dep=e=>{if(!e)return;let o;for(const t of e)t&&"object"==typeof t&&t.token&&(o=t.token),o||!t||"object"==typeof t&&t.ngMetadataName||(o=t);return(0,func_extract_forward_ref.A)(o)},get_root_providers_data=()=>{const e=[(0,core_helpers.LG)(ng_mocks_universe.A.config.get("ngMocksDepsSkip")),(0,core_helpers.LG)(ng_mocks_universe.A.config.get("ngMocksDeps")),(0,core_helpers.LG)(ng_mocks_universe.A.touches)];return{buckets:e,touched:[].concat(...e)}},handle_provided_in_dependency=e=>{if(ng_mocks_universe.A.touches.has(e))return;const o=core_reflect_provided_in(e);o&&ng_mocks_universe.A.config.get("ngMocksDepsSkip").has(o)&&ng_mocks_universe.A.config.get("ngMocksDepsSkip").add(e)},skip_root_provider_dependency=e=>!!skip_dep(e)||ng_mocks_universe.A.config.get("ngMocksDepsSkip").has(e),get_root_provider_parameters=e=>{const o=new Set,{buckets:t,touched:r}=get_root_providers_data();for(const n of t)for(const t of n){add_def_to_root_provider_parameters(o,e,t);for(const s of(0,core_reflect_parameters_resolve.A)(t)){const c=extract_dep(s);handle_provided_in_dependency(c),skip_root_provider_dependency(c)||(check_root_provider_dependency(c,r,n),e.has(core_tokens.gG)||!ng_mocks_universe.A.config.get("ngMocksDepsSkip").has(t)?o.add(c):ng_mocks_universe.A.config.get("ngMocksDepsSkip").add(c))}}return o},handle_root_providers=(e,{keepDef:o,mockDef:t},r)=>{const n=o.has(core_tokens.gG)?new Set:get_root_provider_parameters(t);if(n.size>0)for(const o of(0,core_helpers.LG)(n)){const t=(0,helper_resolve_provider.A)(o,r);if(t)e.providers.push(t);else if((0,func_is_ng_injection_token.S)(o)){const t=ng_mocks_universe.A.config.has("ngMocksMulti")&&ng_mocks_universe.A.config.get("ngMocksMulti").has(o);e.providers.push((0,helper_use_factory.A)(o,(()=>t?[]:void 0)))}}},init_module=(e,o)=>{var t;const r=null!==(t=ng_mocks_universe.A.config.get("mockNgDefResolver").get(e))&&void 0!==t?t:ng_mocks_universe.A.getBuildDeclaration(e),n=o.has(e)?o.get(e):void 0;return n?{ngModule:r,providers:n}:r},skipDef=e=>ng_mocks_universe.A.touches.has(e)||(0,func_is_ng_def.p)(e)||(0,func_is_ng_injection_token.S)(e)||"string"==typeof e,handleDef=({imports:e,declarations:o,providers:t},r,n)=>{skipDef(r)||error_jest_mock(r);let s=!1;if((0,func_is_ng_def.p)(r,"m")){const o=init_module(r,n);if(e.push(o),s=!0,"object"==typeof o&&o.providers)for(const e of(0,core_helpers.Bq)(o.providers))ng_mocks_universe.A.touches.add((0,func_get_type.A)(e))}if(((0,func_is_ng_def.p)(r,"c")||(0,func_is_ng_def.p)(r,"d")||(0,func_is_ng_def.p)(r,"p"))&&((isStandalone(r)?e:o).push(ng_mocks_universe.A.getBuildDeclaration(r)),s=!0),(0,func_is_ng_def.p)(r,"i")||!(0,func_is_ng_def.p)(r)){const e=ng_mocks_universe.A.builtProviders.get(r);e&&"string"!=typeof e&&!1===(0,func_is_ng_def.p)(e,"t")&&(t.push(e),s=!0)}s&&(mark_exported(r),ng_mocks_universe.A.touches.add(r))},isExportedOnRoot=(e,o,t)=>{const r=o.get(e),n=t.get(e)||{};if((0,func_is_ng_def.p)(e,"m")&&n.onRoot)return e;if(!(null==r?void 0:r.exported))return e;for(const e of(0,core_helpers.LG)(r.exported)){const r=isExportedOnRoot(e,o,t);if(r)return r}},moveModulesUp=(e,o)=>{const t=(0,func_is_ng_def.p)(e,"m"),r=(0,func_is_ng_def.p)(o,"m");return t&&r?0:t?-1:r?1:0},init_ng_modules=({configDefault:e,keepDef:o,mockDef:t,replaceDef:r},n)=>{const s={imports:[],declarations:[],providers:[]},c=[],_=[],i=[...(0,core_helpers.LG)(t),...(0,core_helpers.LG)(o),...(0,core_helpers.LG)(r)];i.sort(moveModulesUp);for(const o of i){const t=(0,func_is_ng_def.p)(o,"m")&&n.has(o)?o:isExportedOnRoot(o,ng_mocks_universe.A.configInstance,ng_mocks_universe.A.config);if(!t||-1!==c.indexOf(t))continue;const r=ng_mocks_universe.A.config.get(t)||{__set:!0};c.push(t),r.onRoot=r.onRoot||!r.dependency,r.__set&&(r.__set=void 0,ng_mocks_universe.A.config.set(t,r)),(0,func_is_ng_def.p)(t,"m")&&r.onRoot?handleDef(s,t,n):r.dependency||!r.export||!(0,func_is_ng_def.p)(t,"i")&&(0,func_is_ng_def.p)(t)?!r.dependency&&r.export?handleDef(s,t,n):ng_mocks_universe.A.touches.has(t)||r.dependency?!r.dependency||!e.dependency||"root"===core_reflect_provided_in(t)||"object"==typeof t&&t.__ngMocksSkip||_.push(t):handleDef(s,t,n):(handleDef(s,t,n),mark_providers([t]))}const a=ng_mocks_universe.A.global.get("flags");for(const e of _){if(ng_mocks_universe.A.touches.has(e))continue;const o=[`MockBuilder has found a missing dependency: ${(0,func_get_name.A)(e)}.`,"It means no module provides it.",'Please, use the "export" flag if you want to add it explicitly.',"https://ng-mocks.sudo.eu/api/MockBuilder#export-flag"].join(" ");if("warn"===a.onMockBuilderMissingDependency)console.warn(o);else if("throw"===a.onMockBuilderMissingDependency)throw new Error(o)}return s},funcExtractDeps=(e,o,t=!1)=>{const r=(0,collect_declarations.A)(e),n=getNgType(e);if(!n||"Injectable"===n)return o;const s=r[n];for(const e of core_config.A.dependencies)if(s[e])for(const r of(0,core_helpers.Bq)(s[e])){const e=(0,func_get_type.A)(r);o.has(e)||(o.add(e),t&&funcExtractDeps(e,o))}return o},init_exclude_def=e=>{const o=ng_mocks_universe.A.builtDeclarations,t=ng_mocks_universe.A.builtProviders,r=ng_mocks_universe.A.config.get("ngMocksDepsResolution");for(const n of(0,core_helpers.LG)(e))o.set(n,null),t.set(n,null),r.set(n,"exclude")},init_keep_def=(e,o)=>{const t=new Set,r=ng_mocks_universe.A.builtDeclarations,n=ng_mocks_universe.A.builtProviders,s=ng_mocks_universe.A.config.get("ngMocksDepsResolution");for(const c of(0,core_helpers.LG)(e))r.set(c,c),n.set(c,c),s.set(c,"keep"),o.get(c).shallow&&funcExtractDeps(c,t);return t};var mock_provider=__webpack_require__(415);const createInstance=(e,o,t)=>t.precise?o:(0,mock_helper_stub.A)(e,o),try_mock_provider=(e,o)=>{if((0,func_is_ng_def.p)(e,"i")&&o.has(e)){const t=ng_mocks_universe.A.config.get(e),r=o.get(e);ng_mocks_universe.A.builtProviders.set(e,(0,helper_use_factory.A)(e,void 0,(e=>createInstance(e,r,t))))}else(0,func_is_ng_def.p)(e,"i")&&ng_mocks_universe.A.builtProviders.set(e,(0,mock_provider.A)(e,!0));if(!(0,func_is_ng_def.p)(e)&&o.has(e)){const t=o.get(e);ng_mocks_universe.A.builtProviders.set(e,(0,helper_use_factory.A)(e,void 0,(()=>t)))}else(0,func_is_ng_def.p)(e)||ng_mocks_universe.A.builtProviders.set(e,(0,mock_provider.A)(e,!0))},init_mock_declarations=(e,o)=>{const t=ng_mocks_universe.A.builtDeclarations,r=ng_mocks_universe.A.config.get("ngMocksDepsResolution");for(const n of(0,core_helpers.LG)(e)){const e=!ng_mocks_universe.A.touches.has(n);r.set(n,"mock"),t.set(n,void 0),try_mock_provider(n,o),e&&ng_mocks_universe.A.touches.delete(n)}},try_mock_declaration=e=>{void 0===ng_mocks_universe.A.builtDeclarations.get(e)&&((0,func_is_ng_def.p)(e,"c")&&ng_mocks_universe.A.builtDeclarations.set(e,MockComponent(e)),(0,func_is_ng_def.p)(e,"d")&&ng_mocks_universe.A.builtDeclarations.set(e,MockDirective(e)),(0,func_is_ng_def.p)(e,"p")&&ng_mocks_universe.A.builtDeclarations.set(e,MockPipe(e)))},init_modules=(e,o,t,r)=>{var n,s,c,_,i;const a=new Map;for(const l of[...(0,core_helpers.LG)(e),...(0,core_helpers.LG)(o),...(0,core_helpers.LG)(t)]){const e=(0,collect_declarations.A)(l),t=[...null!==(n=r.get(l))&&void 0!==n?n:[],...null!==(c=null===(s=e.Component)||void 0===s?void 0:s.providers)&&void 0!==c?c:[],...null!==(i=null===(_=e.Directive)||void 0===_?void 0:_.providers)&&void 0!==i?i:[]],p=!ng_mocks_universe.A.touches.has(l);o.has(l)||ng_mocks_universe.A.flags.add("skipMock");const u=(0,func_is_ng_def.p)(l,"m");if(t.length>0){const[,e]=mock_ng_def({providers:t,skipMarkProviders:!u,skipExports:!0});a.set(l,e.providers)}u&&ng_mocks_universe.A.builtDeclarations.set(l,MockModule(l)),ng_mocks_universe.A.flags.delete("skipMock"),p&&ng_mocks_universe.A.touches.delete(l)}for(const e of(0,core_helpers.LG)(o))try_mock_declaration(e);return a},init_replace_def=(e,o)=>{const t=ng_mocks_universe.A.builtDeclarations,r=ng_mocks_universe.A.config.get("ngMocksDepsResolution");for(const n of(0,core_helpers.LG)(e))t.set(n,o.get(n)),r.set(n,"replace")},init_universe=({configDef:e,defProviders:o,defValue:t,excludeDef:r,keepDef:n,mockDef:s,replaceDef:c})=>{ng_mocks_universe.A.flags.add("cachePipe"),ng_mocks_universe.A.config.set("ngMocksMulti",new Set),ng_mocks_universe.A.config.set("ngMocksDeps",new Set),ng_mocks_universe.A.config.set("ngMocksDepsSkip",new Set),ng_mocks_universe.A.config.set("ngMocksDepsResolution",new Map);const _=init_keep_def(n,e);for(const e of(0,core_helpers.LG)(_))ng_mocks_universe.A.touches.add(e);for(const e of(0,core_helpers.LG)(n))_.add(e),funcExtractDeps(e,_,!0);for(const e of(0,core_helpers.LG)(s))_.add(e),funcExtractDeps(e,_,!0);for(const e of(0,core_helpers.LG)(c))_.add(e),funcExtractDeps(e,_,!0);for(const o of(0,core_helpers.LG)(_)){if(e.has(o))continue;const _=ng_mocks_universe.A.getResolution(o);"replace"===_?(c.add(o),t.set(o,ng_mocks_universe.A.getBuildDeclaration(o))):"keep"===_?n.add(o):"exclude"===_?r.add(o):("mock"===_||ng_mocks_universe.A.touches.has(o))&&s.add(o),e.set(o,ng_mocks_universe.A.touches.has(o)?{dependency:!0,__internal:!0}:{})}for(const[o,r]of(0,core_helpers.Nn)(e))ng_mocks_universe.A.config.set(o,Object.assign(Object.assign(Object.assign({},ng_mocks_universe.A.getConfigMock().get(o)),r),{defValue:t.get(o)}));return init_replace_def(c,t),init_exclude_def(r),init_mock_declarations(s,t),init_modules(n,s,c,o)},parse_mock_arguments=(e,o,t,r)=>{let n=e===o?r:o,s=null!=t?t:o!==r&&"object"==typeof o?o:void 0;return(0,func_is_ng_def.p)(e,"p")&&"function"==typeof o&&o!==e&&!(0,func_is_ng_def.p)(o,"p")?(n={transform:o},s=t):!(0,func_is_ng_def.p)(e,"i")&&(0,func_is_ng_def.p)(e)||(s=t),n=n===s?r:n,{config:s,mock:n}},parse_provider=e=>{const o=(0,func_get_type.A)(e);return{multi:o!==e&&e.multi,provide:o}};var __awaiter=function(e,o,t,r){return new(t||(t=Promise))((function(n,s){function c(e){try{i(r.next(e))}catch(e){s(e)}}function _(e){try{i(r.throw(e))}catch(e){s(e)}}function i(e){var o;e.done?n(e.value):(o=e.value,o instanceof t?o:new t((function(e){e(o)}))).then(c,_)}i((r=r.apply(e,o||[])).next())}))};const normaliseModule=e=>(0,func_is_ng_module_def_with_providers.h)(e)?{def:e.ngModule,providers:e.providers}:{def:e,providers:void 0},generateProviderValue=(e,o,t)=>t?[...Array.isArray(o)?o:[],e]:e,defaultMock={};class MockBuilderPromise{constructor(e){this.configDefault=e,this.beforeCC=new Set,this.configDef=new Map,this.defProviders=new Map,this.defValue=new Map,this.excludeDef=new Set,this.keepDef=new Set,this.mockDef=new Set,this.providerDef=new Map,this.replaceDef=new Set,this.stash=new MockBuilderStash,"undefined"!=typeof Symbol&&(this[Symbol.toStringTag]="Promise")}beforeCompileComponents(e){return this.beforeCC.add(e),this}build(){this.stash.backup();const e=new core_def_stack;ng_mocks_universe.A.config.set("mockNgDefResolver",e),ng_mocks_universe.A.flags.add("hasRootModule");try{const o=this.combineParams(),t=init_ng_modules(o,init_universe(o));return add_requested_providers(t,o,e),handle_root_providers(t,o,e),handle_entry_components(t),apply_platform_modules(),t.providers.push(create_ng_mocks_token(),create_ng_mocks_touches_token(),create_ng_mocks_overrides_token(this.replaceDef,this.defValue),MockBuilder),t}finally{ng_mocks_universe.A.flags.delete("hasRootModule"),ng_mocks_universe.A.config.delete("mockNgDefResolver"),this.stash.restore()}}catch(e){return __awaiter(this,void 0,void 0,(function*(){return this.then().catch(e)}))}exclude(e){return this.wipe(e),this.excludeDef.add(e),this.setConfigDef(e),this}finally(e){return __awaiter(this,void 0,void 0,(function*(){return this.then().finally(e)}))}keep(e,o){const{def:t,providers:r}=normaliseModule(e),n=this.keepDef.has(t)?this.defProviders.get(t):[];return this.wipe(t),this.keepDef.add(t),r&&this.defProviders.set(t,[...n||[],...r]),this.setConfigDef(t,o),this}mock(e,o=defaultMock,t){const{def:r,providers:n}=normaliseModule(e),{config:s,mock:c}=parse_mock_arguments(r,o,t,defaultMock);if((0,func_is_ng_def.p)(c)&&(0,func_is_ng_def.p)(e)&&!(0,func_is_ng_def.p)(e,"t"))throw new Error([`MockBuilder.mock(${(0,func_get_name.A)(e)}) received a class when its shape is expected.`,"Please try ngMocks.defaultMock instead."].join(" "));const _=this.mockDef.has(r)?this.defProviders.get(r):[];return this.wipe(r),this.mockDef.add(r),n&&this.defProviders.set(r,[..._||[],...n]),this.setDefValue(r,c),this.setConfigDef(r,s),this}provide(e){for(const o of(0,core_helpers.Bq)(e)){const{provide:e,multi:t}=parse_provider(o),r=this.providerDef.has(e)?this.providerDef.get(e):[];this.providerDef.set(e,generateProviderValue(o,r,t))}return this}replace(e,o,t){if(!(0,func_is_ng_def.p)(o)||!(0,func_is_ng_def.p)(e)||(0,func_is_ng_def.p)(o,"i")||(0,func_is_ng_def.p)(e,"i"))throw new Error("Cannot replace the declaration, both have to be a Module, a Component, a Directive or a Pipe, for Providers use `.mock` or `.provide`");return this.wipe(e),this.replaceDef.add(e),this.defValue.set(e,o),this.setConfigDef(e,t),this}then(e,o){return __awaiter(this,void 0,void 0,(function*(){const t=new Promise((e=>{const o=testing_.TestBed.configureTestingModule(this.build());for(const e of(0,core_helpers.LG)(this.beforeCC))e(o);o.compileComponents().then((()=>{e({testBed:o})}))}));return t.then(e,o)}))}combineParams(){return{configDef:this.configDef,configDefault:this.configDefault,defProviders:this.defProviders,defValue:this.defValue,excludeDef:this.excludeDef,keepDef:this.keepDef,mockDef:this.mockDef,providerDef:this.providerDef,replaceDef:this.replaceDef}}setConfigDef(e,o){!o&&this.configDef.has(e)||this.configDef.set(e,null!=o?o:this.configDefault)}setDefValue(e,o){o===defaultMock?this.defValue.delete(e):this.defValue.set(e,o)}wipe(e){this.defProviders.delete(e),this.defValue.delete(e),this.excludeDef.delete(e),this.keepDef.delete(e),this.mockDef.delete(e),this.providerDef.delete(e),this.replaceDef.delete(e)}}const objectsDiffer=(e,o)=>{const t=Object.keys(e),r=Object.keys(o);if(t.length!==r.length)return!0;for(const r of t)if(e[r]!==o[r])return!0;return!1},equal_variables=(e,o)=>e===o||!(e&&!o||!e&&o)&&!objectsDiffer(e,o),equal_render_defs=(e,o)=>e===o||("boolean"!=typeof e&&"boolean"!=typeof o||e===o)&&e.$implicit===o.$implicit&&equal_variables(e.variables,o.variables),equal_render_configs_objectsDiffer=(e,o)=>{if(Object.keys(e).length!==Object.keys(o).length)return!0;for(const t of Object.keys(e))if(!equal_render_defs(e[t],o[t]))return!0;return!1},equal_render_configs=(e,o)=>!(!equal_render_defs(o,e)||"object"==typeof o&&"object"==typeof e&&equal_render_configs_objectsDiffer(o,e)),are_equal_config_params=(e,o)=>o===e||o.dependency===e.dependency&&o.export===e.export&&o.exportAll===e.exportAll&&!!equal_render_configs(e.render,o.render),are_equal_maps=(e,o,t=((e,o)=>e===o))=>{if(!o||o.size!==e.size)return!1;for(const r of(0,core_helpers.d4)(e)){if(!o.has(r))return!1;if(!t(o.get(r),e.get(r)))return!1}return!0},areEqualProviderDefs=(e,o,...t)=>{for(const r of t)if(o&&e&&o[r]&&e[r]&&o[r]===e[r])return!0;return o===e},are_equal_providers=(e,o)=>{if(Array.isArray(e)!==Array.isArray(o))return!1;const[t,r]=[(0,core_helpers.Bq)(e),(0,core_helpers.Bq)(o)];if(t.length!==r.length)return!1;for(let e=0;e{if(!o||o.size!==e.size)return!1;for(const t of(0,core_helpers.LG)(e))if(!o.has(t))return!1;return!0},get_empty_config=()=>({beforeCC:new Set,configDef:new Map,defProviders:new Map,defValue:new Map,excludeDef:new Set,keepDef:new Set,mockDef:new Set,providerDef:new Map,replaceDef:new Set}),required_metadata=e=>Object.assign(Object.assign({},e),{declarations:[...e.declarations||[]],imports:[...e.imports||[]],providers:[...e.providers||[]]});var mock_builder_performance_awaiter=function(e,o,t,r){return new(t||(t=Promise))((function(n,s){function c(e){try{i(r.next(e))}catch(e){s(e)}}function _(e){try{i(r.throw(e))}catch(e){s(e)}}function i(e){var o;e.done?n(e.value):(o=e.value,o instanceof t?o:new t((function(e){e(o)}))).then(c,_)}i((r=r.apply(e,o||[])).next())}))};class MockBuilderPerformance extends MockBuilderPromise{build(){const e=ng_mocks_universe.A.global;if(e.has("builder:module")&&e.has("builder:config")&&this.equalsTo(e.get("builder:config")))return required_metadata(e.get("builder:module"));e.has("builder:module")&&e.delete(e.get("builder:module"));const o=this.cloneConfig(),t=super.build();return e.set("builder:config",o),e.set("builder:module",t),required_metadata(t)}then(e,o){const t=Object.create(null,{then:{get:()=>super.then}});return mock_builder_performance_awaiter(this,void 0,void 0,(function*(){const r=ng_mocks_universe.A.global;if(r.has("bullet")&&r.has("builder:module")&&r.has("builder:config")&&this.equalsTo(r.get("builder:config")))return r.get(r.get("builder:module")).then(e,o);r.has("bullet")&&r.has("bullet:reset")&&(console.warn("ngMocks.faster has zero effect due to changes in testing module between runs"),r.delete("bullet"),testing_.TestBed.resetTestingModule(),r.set("bullet",!0));const n=t.then.call(this,e,o);return r.set(r.get("builder:module"),n),n}))}cloneConfig(){const e=get_empty_config();return(0,core_helpers.LG)(this.beforeCC,e.beforeCC),(0,core_helpers.LG)(this.excludeDef,e.excludeDef),(0,core_helpers.LG)(this.keepDef,e.keepDef),(0,core_helpers.LG)(this.mockDef,e.mockDef),(0,core_helpers.LG)(this.replaceDef,e.replaceDef),(0,core_helpers.Nn)(this.configDef,e.configDef),(0,core_helpers.Nn)(this.defProviders,e.defProviders),(0,core_helpers.Nn)(this.defValue,e.defValue),(0,core_helpers.Nn)(this.providerDef,e.providerDef),e}equalsTo(e){for(const o of["beforeCC","keepDef","replaceDef","excludeDef","mockDef"])if(!are_equal_sets(this[o],e[o]))return!1;for(const o of["defValue"])if(!are_equal_maps(this[o],e[o]))return!1;for(const o of["providerDef","defProviders"])if(!are_equal_maps(this[o],e[o],are_equal_providers))return!1;return are_equal_maps(this.configDef,e.configDef,are_equal_config_params)}}function MockBuilder(...e){const[o,t]=e,r=new MockBuilderPerformance(e.length<2?{export:!0}:{dependency:!0}),n=ng_mocks_universe.A.config.get("MockBuilderExtensions");for(const e of n?(0,core_helpers.d4)(n):[]){if((0,helper_extract_property_descriptor.A)(r,e))throw new Error(`MockBuilder.${e} is a base method and cannot be customized, please use a different name.`);(0,core_define_property.A)(r,e,((...o)=>(n.get(e)(r,o),r)))}if(o)for(const e of(0,core_helpers.Bq)(o))r.keep(e,{export:!0,shallow:isStandalone(e)});if(t)for(const e of(0,core_helpers.Bq)(t))r.mock(e,e,{export:!0,exportAll:!0});return r}function mockBuilderExtend(e,o){var t;const r=null!==(t=ng_mocks_universe.A.config.get("MockBuilderExtensions"))&&void 0!==t?t:new Map;o?(r.set(e,o),ng_mocks_universe.A.config.set("MockBuilderExtensions",r)):r.delete(e)}!function(e){e.extend=function(e,o){mockBuilderExtend(e,o)}}(MockBuilder||(MockBuilder={}));const is_debug_node=e=>!!(null==e?void 0:e.nativeElement)||!!(null==e?void 0:e.nativeNode),func_parse_find_args_name=e=>"string"==typeof e?e:"function"==typeof e?e.name:(0,func_is_ng_def.p)(e,"t")?e._desc:Array.isArray(e)?e[0]:e?"":"",is_fixture=e=>!!e&&"object"==typeof e&&void 0!==e.debugElement,findDebugElement=e=>is_fixture(e)?findDebugElement(e.debugElement):e&&e.injector&&e.query?e:void 0,func_parse_find_args=(e,o)=>{var t;let r,n,s=o;return 3===e.length?(r=findDebugElement(e[0]),n=e[1],s=e[2]):1===e.length?(r=findDebugElement(func_get_last_fixture()),[n]=e):e[0]?(r=findDebugElement(e[0]),r?n=e[1]:(r=findDebugElement(func_get_last_fixture()),[n,s]=e)):n=e[1],n=null!==(t=findDebugElement(n))&&void 0!==t?t:n,[r,n,s]};var platform_browser_x=e=>{var o={};return __webpack_require__.d(o,e),o},platform_browser_y=e=>()=>e;const platform_browser_namespaceObject=platform_browser_x({By:()=>__WEBPACK_EXTERNAL_MODULE__angular_platform_browser_bc6fa964__.By}),func_parse_find_term=e=>Array.isArray(e)?platform_browser_namespaceObject.By.css(1===e.length?`[${e[0]}]`:`[${e[0]}="${e[1]}"]`):"string"==typeof e?platform_browser_namespaceObject.By.css(e):platform_browser_namespaceObject.By.directive(getSourceOfMock(e)),defaultNotFoundValue={},mock_helper_find=(...e)=>{const[o,t,r]=func_parse_find_args(e,defaultNotFoundValue),n=is_debug_node(t)?t:null==o?void 0:o.query(func_parse_find_term(t));if(n)return n;if(r!==defaultNotFoundValue)return r;throw new Error(`Cannot find an element via ngMocks.find(${func_parse_find_args_name(t)})`)},detect_text_node=e=>"#text"===e.nativeNode.nodeName,el_def_compare=(e,o)=>!(!e||!o)&&e===o,el_def_get_node=e=>detect_text_node(e)?void 0:e.injector._tNode||e.injector.elDef||void 0,defaultInjector={},core_injector=(e,o=defaultInjector)=>{if(o===defaultInjector)return(0,core_helpers.d5)(e);try{return o.get(e)}catch(e){return}},getVcr=(e,o)=>{if(e!==o&&"#comment"===o.nativeNode.nodeName)return core_injector(core_.ViewContainerRef,o.injector)},getScanViewRefRootNodes=(e,o)=>{const t=getVcr(e,o);if(!t)return[];const r=[];for(let e=0;e{var o;let t,r;for(const n of(null===(o=e.parent)||void 0===o?void 0:o.childNodes)||[])for(const[o,s]of getScanViewRefRootNodes(e,n))s===e.nativeNode&&(void 0===r||o{var o,t,r,n;return(null===(o=e.injector._tNode)||void 0===o?void 0:o.parent)||(null===(t=e.injector.elDef)||void 0===t?void 0:t.parent)||scanViewRef(e)||(null===(r=e.parent)||void 0===r?void 0:r.injector._tNode)||(null===(n=e.parent)||void 0===n?void 0:n.injector.elDef)||void 0},nested_check_children=e=>{var o,t;const r=el_def_get_node(e);if(!r||detect_text_node(e))return[];const n=void 0!==e.childNodes,s=[];for(const t of e.childNodes||(null===(o=e.parent)||void 0===o?void 0:o.childNodes)||[]){const e=el_def_get_parent(t);(n||el_def_compare(r,e))&&(e&&!el_def_compare(r,e)||s.push(t))}if("BODY"===(null===(t=e.parent)||void 0===t?void 0:t.name)){const o=e.parent.childNodes;let t=o.length,r=0;for(let n=o.length-1;n>=0;n-=1){const s=o[n];if("#comment"===s.nativeNode.nodeName)r=n;else if(s.nativeNode===e.nativeNode){t=n+1;break}}for(let e=t;e{var t;if(o)return o;const r=el_def_get_parent(e),n=e.parent?el_def_get_node(e.parent):void 0;if(e.parent&&el_def_compare(r,n))return e.parent;for(const o of(null===(t=e.parent)||void 0===t?void 0:t.childNodes)||[]){const e=el_def_get_node(o);if(el_def_compare(r,e))return o}},nested_check_parent=detectParent,nestedCheck=(e,o,t,r=!1)=>{if(!e)return!1;if(!r&&detect_text_node(e))return!1;if(t(e,nested_check_parent(e,o)))return!0;for(const o of nested_check_children(e))if(nestedCheck(o,e,t,r))return!0;return!1},nested_check=nestedCheck,mock_helper_crawl=(e,o,t=!1)=>{const r=mock_helper_find(func_get_last_fixture(),e,void 0);nested_check(r,void 0,o,t)},isSelector=e=>("string"==typeof e||Array.isArray(e)&&"string"==typeof e[0]||is_fixture(e)||is_debug_node(e),!0),mock_helper_func_parse_find_args=(e,o,t)=>{let r,n,s=t;return 3===e.length?[r,n,s]=e:1===e.length?(r=func_get_last_fixture(),[n]=e):o(e[1])&&isSelector(e[0])?[r,n]=e:(r=func_get_last_fixture(),[n,s]=e),[r,n,s]},detect_attribute_in_selectors=(e,o)=>{for(const t of e){const e=t.match(/\[([^=\]]+)/g);if(e)for(const t of e)if(t===`[${o}`)return!0}return!1},getMeta=e=>{try{return core_reflect_directive_resolve(e)}catch(e){return}},func_parse_provider_tokens_directives=(e,o)=>{if(e)try{const t=(0,func_get_type.A)(o),r=core_injector(t,e.injector);return getMeta(r.constructor)}catch(e){return}},func_get_public_provider_keys=e=>e.injector.elDef?Object.keys(e.injector.elDef.element.publicProviders):[],func_parse_inputs_and_requires_attributes=(e,o)=>{const t=e.injector.elDef.element.publicProviders[o],r=t.provider.value;if(!r)return[[],[],0];const n=func_parse_provider_tokens_directives(e,r),s=t.bindings.map((e=>e.nonMinifiedName||e.name));return[(null==n?void 0:n.inputs)||[],s,t.nodeIndex]},collectSelectors=e=>{const o=[];for(const t of e.providerTokens){const r=func_parse_provider_tokens_directives(e,t);(null==r?void 0:r.selector)&&-1===o.indexOf(r.selector)&&o.push(r.selector)}return o},collectAttributesClassic=e=>{const o=[];for(const t of func_get_public_provider_keys(e)){const[r,n]=func_parse_inputs_and_requires_attributes(e,t);for(const e of r){const{name:t,alias:r}=(0,func_directive_io_parse.A)(e),s=r||t;-1!==n.indexOf(t)&&-1===o.indexOf(s)&&o.push(s)}}return o},collectAttributesIvy=e=>{var o,t;const r=[],n=(null===(o=e.injector._tNode)||void 0===o?void 0:o.attrs)||[];let s=2;for(let o=0;o[collectSelectors(e),[...collectAttributesClassic(e),...collectAttributesIvy(e)]],crawl_by_attribute=e=>o=>{const[t,r]=detect_selectors_from_node(o);return-1!==r.indexOf(e)||!!detect_attribute_in_selectors(t,e)},detectInClassic=(e,o,t)=>{for(const r of func_get_public_provider_keys(e)){const[n,s,c]=func_parse_inputs_and_requires_attributes(e,r);for(const r of n){const{name:n,alias:_}=(0,func_directive_io_parse.A)(r);if(o===(_||n)&&-1!==s.indexOf(n)&&t===e.injector.view.nodes[c].instance[n])return!0}}return!1},detectInIvy=(e,o,t)=>{var r,n,s;const c=(null===(r=e.injector._tNode)||void 0===r?void 0:r.attrs)||[];let _=2;for(let r=0;rt=>!!detectInIvy(t,e,o)||detectInClassic(t,e,o),crawl_by_declaration=e=>{const o=getSourceOfMock(e);return e=>!!e&&-1!==e.providerTokens.indexOf(o)&&void 0!==core_injector(o,e.injector)},crawl_by_id=e=>o=>!!o.references[e],regExp=new RegExp("\\[.*?\\]","g"),detect_tag_name_in_selectors=(e,o)=>{for(const t of e){const e=t.replace(regExp,"").split(",");for(const t of e)if(t.trim()===o)return!0}return!1},crawl_by_tag_name=e=>o=>{const[t]=detect_selectors_from_node(o);return detect_tag_name_in_selectors(t,e)},isCrawlByAttribute=e=>Array.isArray(e)&&1===e.length&&"string"==typeof e[0],isCrawlByAttributeValue=e=>Array.isArray(e)&&2===e.length&&"string"==typeof e[0],isCrawlById=e=>"string"==typeof e&&0===e.indexOf("#")&&e.length>1,isCrawlByTagName=e=>"string"==typeof e&&0!==e.indexOf("#")&&e.length>0,isCrawlByDeclaration=e=>"function"==typeof e,detect_crawler=e=>{if(isCrawlByAttribute(e))return crawl_by_attribute(e[0]);if(isCrawlByAttributeValue(e))return crawl_by_attribute_value(e[0],e[1]);if(isCrawlById(e))return crawl_by_id(e.slice(1));if(isCrawlByTagName(e))return crawl_by_tag_name(e);if(isCrawlByDeclaration(e))return crawl_by_declaration(e);throw new Error("Unknown selector")},func_is_valid_reveal_selector=e=>"string"==typeof e||!(!Array.isArray(e)||"string"!=typeof e[0])||"function"==typeof e,mock_helper_reveal_defaultNotFoundValue={},mock_helper_reveal=(...e)=>{const[o,t,r]=mock_helper_func_parse_find_args(e,func_is_valid_reveal_selector,mock_helper_reveal_defaultNotFoundValue),n=mock_helper_find(func_get_last_fixture(),o,void 0),s=detect_crawler(t);let c;if(mock_helper_crawl(n,(e=>!(e===n||detect_text_node(e)||!s(e)||(c=e,0)))),c)return c;if(r!==mock_helper_reveal_defaultNotFoundValue)return r;throw new Error(`Cannot find a DebugElement via ngMocks.reveal(${func_parse_find_args_name(t)})`)},mock_helper_reveal_all=(...e)=>{const[o,t]=mock_helper_func_parse_find_args(e,func_is_valid_reveal_selector),r=mock_helper_find(func_get_last_fixture(),o,void 0),n=detect_crawler(t),s=[];return mock_helper_crawl(r,(e=>{e!==r&&!detect_text_node(e)&&n(e)&&s.push(e)})),s},isMockControlValueAccessor=e=>!!func_is_mock(e)&&!!e.__ngMocksConfig.isControlValueAccessor;var helper_define_property_descriptor=__webpack_require__(6),helper_extract_methods_from_prototype=__webpack_require__(331);const is_html_element=e=>!!e&&"object"==typeof e&&void 0!==e.innerHTML,preventBubble=["focus","blur","load","unload","change","reset","scroll"],customEvent=(e,o)=>{const t=Object.assign({bubbles:!1,cancelable:!1},o),r=document.createEvent("CustomEvent");return r.initCustomEvent(e,t.bubbles,t.cancelable,null),r},eventCtor="function"==typeof Event?(e,o)=>new CustomEvent(e,o):customEvent,keyMap={alt:{altKey:!0,code:"AltLeft",key:"Alt",location:1,which:18},arrowdown:{code:"ArrowDown",key:"ArrowDown",location:0,which:40},arrowleft:{code:"ArrowLeft",key:"ArrowLeft",location:0,which:37},arrowright:{code:"ArrowRight",key:"ArrowRight",location:0,which:39},arrowup:{code:"ArrowUp",key:"ArrowUp",location:0,which:38},backspace:{code:"Backspace",key:"Backspace",location:0,which:8},control:{code:"ControlLeft",ctrlKey:!0,key:"Control",location:1,which:17},enter:{code:"Enter",key:"Enter",location:0,which:13},esc:{code:"Escape",key:"Escape",location:0,which:27},meta:{code:"MetaLeft",key:"Meta",location:1,metaKey:!0,which:91},shift:{code:"ShiftLeft",key:"Shift",location:1,shiftKey:!0,which:16},space:{code:"Space",key:" ",location:0,which:32},tab:{code:"Tab",key:"Tab",location:0,which:9}};for(let e=1;e<=12;e+=1)keyMap[`f${e}`]={code:`F${e}`,key:`F${e}`,location:0,which:e+111};const getCode=e=>{const o=e.codePointAt(0);return o&&o>=97&&o<=122||o&&o>=65&&o<=90?`Key${e.toUpperCase()}`:o&&o>=48&&o<=57?`Digit${e}`:"Unknown"},applyPayload=(e,o)=>{const t={};for(const e of o?o.split("."):[]){let o=keyMap[e];if(o||1!==e.length||(o={code:getCode(e),key:e}),!o)throw new Error(`Unknown event part ${e}`);(0,mock_helper_stub.A)(t,o)}o&&(0,mock_helper_stub.A)(e,t)},mock_helper_event=(e,o,t)=>{const r=e.indexOf("."),[n,s]=-1===r?[e]:[e.slice(0,Math.max(0,r)),e.slice(r+1)],c=eventCtor(n,Object.assign({bubbles:-1===preventBubble.indexOf(e),cancelable:!0},o));return applyPayload(c,s),t&&(0,mock_helper_stub.A)(c,t),c},mock_helper_trigger_preventBubble=["focus","blur","load","unload","change","reset","scroll"],toEventObj=e=>"string"==typeof e?mock_helper_event(e,{bubbles:-1===mock_helper_trigger_preventBubble.indexOf(e),cancelable:!0}):e,getNativeElement=e=>is_debug_node(e)||is_fixture(e)?e.nativeElement:is_html_element(e)?e:void 0,mock_helper_trigger=(e,o,t)=>{const r=is_html_element(e)?e:mock_helper_find(func_get_last_fixture(),e,void 0),n=getNativeElement(r);if(!n)throw new Error(`Cannot trigger ${"string"==typeof o?o:o.type} event undefined element`);if(n.disabled)return;const s=toEventObj(o);s.target||(0,mock_helper_stub.A)(s,{target:n}),t&&(0,mock_helper_stub.A)(s,t),n.dispatchEvent(s)};var mock_helper_stub_member=__webpack_require__(589);const message=["Cannot find ControlValueAccessor on the element.","If it is a mock input with [formControlName],","you need either to avoid mocking ReactiveFormsModule","or to avoid accessing the control in such a way,","because this tests ReactiveFormsModule instead of own implementation."].join(" "),func_get_vca=e=>{const o=core_form&&core_injector(core_form.NgControl,e.injector),t=null==o?void 0:o.valueAccessor;if(t)return t;const r=core_form&&core_injector(core_form.FormControlDirective,e.injector);if(null==r?void 0:r.form)return r.form;const n=core_form&&core_injector(core_form.NgModel,e.injector);if(n)return n;throw new Error(message)},triggerInput=(e,o)=>{mock_helper_trigger(e,"focus");const t=Object.getOwnPropertyDescriptor(e.nativeElement,"value");(0,mock_helper_stub_member.A)(e.nativeElement,"value",o),mock_helper_trigger(e,"input"),mock_helper_trigger(e,"change"),t&&((0,helper_define_property_descriptor.A)(e.nativeElement,"value",t),e.nativeElement.value=o),mock_helper_trigger(e,"blur")},handleKnown=(e,o)=>core_form&&e instanceof core_form.AbstractControl?(e.setValue(o),!0):core_form&&e instanceof core_form.NgModel?(e.update.emit(o),!0):!!isMockControlValueAccessor(e.instance)&&(e.instance.__simulateChange(o),!0),hasListener=e=>e.listeners.some((e=>"input"===e.name||"change"===e.name)),keys=["onChange","onChangeCallback","onChangeCb","onChangeClb","onChangeFn","_onChange","_onChangeCallback","_onChangeCb","_onChangeClb","_onChangeFn","changeFn","_changeFn","onModelChange","cvaOnChange","cvaOnChangeCallback","cvaOnChangeCb","cvaOnChangeClb","cvaOnChangeFn","_cvaOnChange","_cvaOnChangeCallback","_cvaOnChangeCb","_cvaOnChangeClb","_cvaOnChangeFn"],mock_helper_change=(e,o,t)=>{const r=mock_helper_find(func_get_last_fixture(),e,void 0);if(!r)throw new Error(`Cannot find an element via ngMocks.change(${func_parse_find_args_name(e)})`);const n=func_get_vca(r);if(handleKnown(n,o)||hasListener(r))return void triggerInput(r,o);for(const e of t?[t]:keys)if("function"==typeof n[e])return n.writeValue(o),void n[e](o);const s=(0,helper_extract_methods_from_prototype.A)(n);throw new Error(["Unsupported type of ControlValueAccessor,",`please ensure it has '${t||"onChange"}' method.`,"If it is a 3rd-party library, please provide the correct name of the method in the 'methodName' parameter.","Possible Names: "+s.join(", ")+"."].join(" "))},triggerTouch=e=>{mock_helper_trigger(e,"focus"),mock_helper_trigger(e,"blur")},mock_helper_touch_handleKnown=e=>core_form&&e instanceof core_form.AbstractControl?(e.markAsTouched(),!0):!!isMockControlValueAccessor(e.instance)&&(e.instance.__simulateTouch(),!0),mock_helper_touch_hasListener=e=>e.listeners.some((e=>"focus"===e.name||"blur"===e.name)),mock_helper_touch_keys=["onTouched","onTouchedCallback","onTouchedCb","onTouchedClb","onTouchedFn","_onTouched","_onTouchedCallback","_onTouchedCb","_onTouchedClb","_onTouchedFn","markAsTouched","_markAsTouched","onModelTouched","cvaOnTouch","cvaOnTouchCallback","cvaOnTouchCb","cvaOnTouchClb","cvaOnTouchFn","_cvaOnTouch","_cvaOnTouchCallback","_cvaOnTouchCb","_cvaOnTouchClb","_cvaOnTouchFn"],mock_helper_touch=(e,o)=>{const t=mock_helper_find(func_get_last_fixture(),e,void 0);if(!t)throw new Error(`Cannot find an element via ngMocks.touch(${func_parse_find_args_name(e)})`);const r=func_get_vca(t);if(mock_helper_touch_handleKnown(r)||mock_helper_touch_hasListener(t))return void triggerTouch(t);for(const e of o?[o]:mock_helper_touch_keys)if("function"==typeof r[e])return void r[e]();const n=(0,helper_extract_methods_from_prototype.A)(r);throw new Error(["Unsupported type of ControlValueAccessor,",`please ensure it has '${o||"onTouched"}' method.`,"If it is a 3rd-party library, please provide the correct name of the method in the 'methodName' parameter.","Possible Names: "+n.join(", ")+"."].join(" "))},mock_helper_click=(e,o)=>{mock_helper_trigger(e,"click",o)},mock_helper_find_all=(...e)=>{const[o,t]=func_parse_find_args(e);return is_debug_node(t)?[t]:(null==o?void 0:o.queryAll(func_parse_find_term(t)))||[]},getParentWithInjector=e=>{let o=e;for(;"NullInjector"===(null==o?void 0:o.injector.constructor.name);)o=o.parent;if(o)return o.injector},func_get_from_node_injector=(e,o,t)=>{if(!o.injector||"NullInjector"===o.injector.constructor.name)return;const r=getParentWithInjector(o.parent),n=r?core_injector(t,r):void 0,s=core_injector(t,o.injector);n!==s&&((0,func_is_ng_def.p)(t,"t")&&void 0!==s||void 0!==s&&-1===e.indexOf(s))&&e.push(s)},func_get_from_node_element=e=>{var o;return"#text"===(null===(o=e.nativeNode)||void 0===o?void 0:o.nodeName)&&e.parent?e.parent:e},detectGatherFlag=(e,o,t)=>!!(o&&o.nativeNode&&"#comment"===o.nativeNode.nodeName&&Array.isArray(t)&&t[0]===o.nativeNode)||!Array.isArray(t)&&(o&&t.nodeName?"#comment"===t.nodeName?t===o.nativeNode:"#text"===t.nodeName&&t.parentNode===o.nativeNode:e),isNotObject=e=>!e||"object"!=typeof e,shouldBeScanned=(e,o)=>-1===e.indexOf(o)&&Array.isArray(o),scan=({result:e,el:o,nodes:t,normalize:r,proto:n},s,c=[])=>{c.push(t);let _=s,i=t.length;t.length>1&&t[1]&&"object"==typeof t[1]&&t[1].bindingStartIndex&&(i=t[1].bindingStartIndex);for(let s=0;s{if("object"==typeof e[1]&&e[20]===o)return e;for(let t=21;t{var o;let t=e,r=null===(o=t.nativeNode)||void 0===o?void 0:o.__ngContext__;for(;void 0===r&&t.parent;)t=t.parent,r=t.nativeNode.__ngContext__;if("number"!=typeof r)return r;const n=t.injector._lView;return Array.isArray(n)?detectContextByIndex(n,r):void 0},contextToNodes=e=>Array.isArray(e)?e:null==e?void 0:e.lView,func_get_from_node_ivy=(e,o,t)=>{if(!o||o._debugContext)return;const r=func_get_from_node_element(o);func_get_from_node_scan({el:r,nodes:contextToNodes(detectContext(o))||[],normalize:e=>e,proto:t,result:e},!0)},normalize=e=>{if(!e||"object"!=typeof e)return e;for(const o of["renderElement","renderText","instance"])if(e[o])return e[o];return null},func_get_from_node_standard=(e,o,t)=>{if(!o||!o._debugContext)return;const r=func_get_from_node_element(o);func_get_from_node_scan({el:r,nodes:o._debugContext.view.nodes,normalize,proto:t,result:e},!0)},func_get_from_node=(e,o,t)=>(func_get_from_node_injector(e,o,t),(0,func_is_ng_def.p)(t,"t")||"string"==typeof t||(func_get_from_node_standard(e,o,t),func_get_from_node_ivy(e,o,t)),e),func_is_valid_find_instance_selector=e=>"function"==typeof e||(0,func_is_ng_def.p)(e,"t"),mock_helper_find_instance_defaultNotFoundValue={},mock_helper_find_instance=(...e)=>{const[o,t,r]=mock_helper_func_parse_find_args(e,func_is_valid_find_instance_selector,mock_helper_find_instance_defaultNotFoundValue);if("function"!=typeof t&&!(0,func_is_ng_def.p)(t,"t")&&"string"!=typeof t)throw new Error("Only classes or tokens are accepted");const n=getSourceOfMock(t),s=[],c=func_get_last_fixture();if(c)mock_helper_crawl(mock_helper_find(c,o,void 0),((e,o)=>(func_get_from_node(s,e,n),0===s.length&&o&&"#comment"===o.nativeNode.nodeName&&func_get_from_node(s,o,n),s.length>0)),!0);else try{s.push((0,core_helpers.Ah)(n))}catch(e){if(!e||"object"!=typeof e||void 0===e.ngTempTokenPath)throw e}if(s.length>0)return s[0];if(r!==mock_helper_find_instance_defaultNotFoundValue)return r;throw new Error(`Cannot find an instance via ngMocks.findInstance(${func_parse_find_args_name(t)})`)},mock_helper_find_instances=(...e)=>{const[o,t]=mock_helper_func_parse_find_args(e,func_is_valid_find_instance_selector);if("function"!=typeof t&&!(0,func_is_ng_def.p)(t,"t")&&"string"!=typeof t)throw new Error("Only classes or tokens are accepted");const r=getSourceOfMock(t),n=[],s=[],c=func_get_last_fixture();if(c){const e=mock_helper_find_all(c,o,void 0);for(const o of e)mock_helper_crawl(o,((e,o)=>{-1===s.indexOf(e)&&(func_get_from_node(n,e,r),s.push(e)),o&&"#comment"===o.nativeNode.nodeName&&-1===s.indexOf(o)&&(func_get_from_node(n,o,r),s.push(o))}),!0)}else try{n.push((0,core_helpers.Ah)(r))}catch(e){}return n},handle_array=(e,o)=>e(o.map((o=>e(o,!0))).join("")),format_handler=e=>(o,t=!1)=>{const r=(o,n=!1)=>{if(Array.isArray(o))return handle_array(r,o);if(is_fixture(o))return r(o.debugElement,t);const s=e(r,o,n);return void 0!==s?s:is_debug_node(o)&&"#comment"===o.nativeNode.nodeName?r(nested_check_children(o),!0):is_debug_node(o)?r(o.nativeNode,n):""};return Array.isArray(o)?o.map((e=>r(e,t))):r(o,t)},handle_text=e=>{var o,t;return null!==(t=null!==(o=e.nodeValue)&&void 0!==o?o:e.textContent)&&void 0!==t?t:e.wholeText},is_text=e=>!!e&&"object"==typeof e&&"#text"===e.nodeName,normalizeValue=e=>e?e.replace(new RegExp("\\s+","mg")," ").replace(new RegExp("\x3c!--(.|\\n|\\r)*?--\x3e|\x3c!--(.|\\n|\\r)*","mg"),"").replace(new RegExp("\\s+","mg")," ").replace(new RegExp(">\\s+<","mg"),"><").replace(new RegExp('"\\s+>',"mg"),'">'):"",normalizeText=e=>e.replace(new RegExp("&","mg"),"&").replace(new RegExp('"',"mg"),""").replace(new RegExp("<","mg"),"<").replace(new RegExp(">","mg"),">").replace(new RegExp("'","mg"),"'"),getElementValue=(e,o)=>o?e.outerHTML:e.innerHTML,handlePrimitives=(e,o,t)=>{if("string"==typeof o||void 0===o){const e=normalizeValue(o);return t?e:e.trim()}return is_html_element(o)?e(getElementValue(o,t)):is_text(o)?handlePrimitives(e,normalizeText(handle_text(o)),t):void 0},mock_helper_format_html=format_handler(handlePrimitives),mock_helper_format_text_normalizeValue=e=>e?e.replace(new RegExp("\\s+","mg")," "):"",mock_helper_format_text_getElementValue=(e,o)=>{var t;const r=null!==(t=e.textContent)&&void 0!==t?t:"";return o?r:r.trim()},mock_helper_format_text_handlePrimitives=(e,o,t)=>{if("string"==typeof o||void 0===o){const e=mock_helper_format_text_normalizeValue(o);return t?e:e.trim()}return is_html_element(o)?e(mock_helper_format_text_getElementValue(o,t)):is_text(o)?mock_helper_format_text_handlePrimitives(e,handle_text(o),t):void 0},mock_helper_format_text=format_handler(mock_helper_format_text_handlePrimitives),calls=[],mock_helper_auto_spy=e=>{"reset"===e?calls.pop():calls.push(e);const o=calls[calls.length-1];return"jasmine"===o?(0,helper_mock_service.O)((e=>jasmine.createSpy(e))):"jest"===o?(0,helper_mock_service.O)((e=>jest.fn().mockName(e))):o&&"default"!==o&&"reset"!==o?(0,helper_mock_service.O)(o):(0,helper_mock_service.O)()},mock_helper_console=(e,o)=>(...t)=>{const r=[];beforeEach((()=>{for(const o of e)-1===t.indexOf(o)&&t.push(o);for(const e of t)(0,core_define_property.A)(console,`__ngMocksBackup_${e}`,console[`__ngMocksBackup_${e}`]||[]),console[`__ngMocksBackup_${e}`].push(console[e]),r.push(e),console[e]=o(e)})),afterEach((()=>{for(const e of r)console[e]=console[`__ngMocksBackup_${e}`].pop();r.splice(0,r.length)}))},factory=e=>helper_mock_service.A.mockFunction(`console.${e}`),mock_helper_console_ignore=mock_helper_console(["log"],factory),mock_helper_console_throw_factory=e=>(...o)=>{const t=new Error(o.join(" "));throw(0,core_define_property.A)(t,"ngMocksConsoleCatch",e),t},mock_helper_console_throw=mock_helper_console(["warn","error"],mock_helper_console_throw_factory),mock_helper_default_config=(e,o)=>{const t=ng_mocks_universe.A.getConfigMock();for(const r of(0,core_helpers.Bq)(e))o?t.set(r,o):t.delete(r)},mock_helper_default_mock=(e,o)=>{const t=ng_mocks_universe.A.getOverrides();for(const r of(0,core_helpers.Bq)(e))if(o){const e=t.has(r)?t.get(r):new Set;e.add(o),t.set(r,e)}else t.delete(r)},hooks=ng_mocks_universe.A.global.get("faster-hooks")||{after:[],before:[]};ng_mocks_universe.A.global.set("faster-hooks",hooks);const configureTestingModule=(e,o)=>t=>{if(testing_.TestBed.ngMocksFasterLock)return e.call(o,t);ng_mocks_universe.A.global.set("bullet:customized",!0);let r=e;for(const e of hooks.before)r=e(r,o);try{return(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterLock",!0),r.call(o,t)}finally{(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterLock",void 0)}},resetTestingModule=(e,o)=>()=>{if(testing_.TestBed.ngMocksFasterLock)return e.call(o);if(ng_mocks_universe.A.global.has("bullet"))return ng_mocks_universe.A.global.has("bullet:customized")&&ng_mocks_universe.A.global.set("bullet:reset",!0),o;ng_mocks_universe.A.global.delete("bullet:customized"),ng_mocks_universe.A.global.delete("bullet:reset");let t=e;for(const e of hooks.after)t=e(t,o);try{return(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterLock",!0),t.call(o)}finally{(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterLock",void 0)}},mock_helper_faster_install=()=>{testing_.TestBed.ngMocksFasterInstalled||(testing_.TestBed.configureTestingModule=configureTestingModule(testing_.TestBed.configureTestingModule,testing_.TestBed),testing_.TestBed.resetTestingModule=resetTestingModule(testing_.TestBed.resetTestingModule,testing_.TestBed),(0,core_define_property.A)(testing_.TestBed,"ngMocksFasterInstalled",!0));const e=(0,testing_.getTestBed)();return e.ngMocksFasterInstalled||(e.configureTestingModule=configureTestingModule(e.configureTestingModule,e),e.resetTestingModule=resetTestingModule(e.resetTestingModule,e),(0,core_define_property.A)(e,"ngMocksFasterInstalled",!0)),hooks},mock_helper_flush_test_bed=()=>{const e=(0,testing_.getTestBed)();e._instantiated=!1,e._moduleFactory=void 0,e._testModuleRef=null},resetFixtures=e=>{const o=(0,testing_.getTestBed)()._activeFixtures||[];let t=0;for(let r=o.length-1;r>=0;r-=1)o[r].ngMocksStackId&&o[r].ngMocksStackId!==e?t+=1:(o[r].ngMocksStackId=void 0,o[r].destroy(),o.splice(r,1));0===t&&mock_helper_flush_test_bed()},idAdd=e=>{var o;const t=null!==(o=ng_mocks_universe.A.global.get("bullet:stack"))&&void 0!==o?o:[];t.push(e),ng_mocks_universe.A.global.set("bullet:stack",t),ng_mocks_universe.A.global.set("bullet:stack:id",e)},idRemove=e=>{const o=ng_mocks_universe.A.global.get("bullet:stack");o.splice(o.indexOf(e),1),o.length>0?ng_mocks_universe.A.global.set("bullet:stack:id",o[o.length-1]):ng_mocks_universe.A.global.delete("bullet:stack:id"),resetFixtures(e)},mock_helper_faster=()=>{mock_helper_faster_install();const e={},o={};beforeAll((()=>{ng_mocks_universe.A.global.has("bullet:customized")&&testing_.TestBed.resetTestingModule(),ng_mocks_universe.A.global.set("bullet",!0),idAdd(e)})),beforeEach((()=>{idAdd(o)})),afterEach((()=>{idRemove(o)})),afterAll((()=>{idRemove(e),ng_mocks_universe.A.global.delete("bullet"),ng_mocks_universe.A.global.has("bullet:reset")&&testing_.TestBed.resetTestingModule()}))},mock_helper_get_defaultNotFoundValue={},parseArgs=e=>({el:e[0],notFoundValue:3===e.length?e[2]:mock_helper_get_defaultNotFoundValue,sel:e[1]}),mock_helper_get=(...e)=>{if(1===e.length)try{return testing_.TestBed.inject?testing_.TestBed.inject(e[0]):testing_.TestBed.get(e[0])}catch(o){if(!o||"object"!=typeof o||void 0===o.ngTempTokenPath)throw o;throw new Error(`Cannot find an instance via ngMocks.get(${func_parse_find_args_name(e[0])})`)}const{el:o,sel:t,notFoundValue:r}=parseArgs(e),n=mock_helper_find(func_get_last_fixture(),o,void 0),s=getSourceOfMock(t);if(n){const e=func_get_from_node([],n,s);if(e.length>0)return e[0]}if(n){const e=nested_check_parent(n,void 0);if(e&&"#comment"===e.nativeNode.nodeName){const o=func_get_from_node([],e,s);if(o.length>0)return o[0]}}if(r!==mock_helper_get_defaultNotFoundValue)return r;throw new Error(`Cannot find ${(0,func_get_name.A)(t)} instance via ngMocks.get`)},iterator=(e,o,t=new Set)=>{const r=(0,collect_declarations.A)(e);for(const e of r.decorators)for(const n of core_config.A.dependencies)if(r[e][n])for(const s of(0,core_helpers.Bq)(r[e][n])){const e=(0,func_get_type.A)(s);e&&!t.has(e)&&(t.add(e),o(e),iterator(e,o,t))}},func_iterate_declaration=iterator,func_global_prepare=()=>{var e;ng_mocks_universe.A.cacheDeclarations.clear(),null===(e=ng_mocks_universe.A.config.get("ngMocksDepsSkip"))||void 0===e||e.clear()},action=e=>{ng_mocks_universe.A.getDefaults().set(e,["exclude"])},mock_helper_global_exclude=(e,o=!1)=>{func_global_prepare(),action(e),o&&func_iterate_declaration(e,action)},mock_helper_global_keep_action=e=>{ng_mocks_universe.A.getDefaults().set(e,["keep"])},mock_helper_global_keep=(e,o=!1)=>{func_global_prepare(),mock_helper_global_keep_action(e),o&&func_iterate_declaration(e,mock_helper_global_keep_action)},mock_helper_global_mock_action=e=>{ng_mocks_universe.A.getDefaults().set(e,["mock"])},mock_helper_global_mock=(e,o=!1)=>{func_global_prepare(),mock_helper_global_mock_action(e),o&&func_iterate_declaration(e,mock_helper_global_mock_action)},mock_helper_global_replace=(e,o)=>{let t=!0;if(((0,func_is_ng_def.p)(e,"m")&&(0,func_is_ng_def.p)(o,"m")||(0,func_is_ng_def.p)(e,"c")&&(0,func_is_ng_def.p)(o,"c")||(0,func_is_ng_def.p)(e,"d")&&(0,func_is_ng_def.p)(o,"d")||(0,func_is_ng_def.p)(e,"p")&&(0,func_is_ng_def.p)(o,"p"))&&(t=!1),t)throw new Error("Cannot replace the declaration, both have to be a Module, a Component, a Directive or a Pipe");func_global_prepare(),ng_mocks_universe.A.getDefaults().set(e,["replace",o])},mock_helper_global_wipe_action=e=>{ng_mocks_universe.A.getDefaults().delete(e),mock_helper_default_mock(e)},mock_helper_global_wipe=(e,o=!1)=>{func_global_prepare(),mock_helper_global_wipe_action(e),o&&func_iterate_declaration(e,mock_helper_global_wipe_action)},mock_helper_guts_skipDef=(e,o,t)=>!!o.has(e)||(o.add(e),t.has(e)),createMetaHandler=(e,o,t,r,n)=>{const s=e.get(o)||o;(0,func_is_ng_def.p)(s,"m")?t.push(s):(0,func_is_ng_def.p)(s,"c")||(0,func_is_ng_def.p)(s,"d")?r.push(s):(0,func_is_ng_def.p)(s,"p")?(r.push(s),n.push(s)):(0,func_is_ng_injection_token.S)(s)||n.push(s)},createMeta=({keep:e,skip:o,optional:t,exclude:r,imports:n,declarations:s,providers:c})=>{for(const _ of e)o.has(_)||r.has(_)||t.has(_)||createMetaHandler(t,_,n,s,c);return{declarations:s,imports:n,providers:c}},typeMap=[["m","module"],["c","component"],["d","directive"],["p","pipe"]],mock_helper_guts_getType=(e,o)=>{if((0,func_is_ng_module_def_with_providers.h)(e))return"module-with-providers";for(const[t,r]of typeMap)if((0,func_is_ng_def.p)(e,t))return"m"===t&&o.has(e)?`${r}-keep`:r;return""},handleModuleWithProviders=(e,o)=>{e.skip.has(o.ngModule)||(e.skip.add(o.ngModule),e.exclude.has(o.ngModule)||e.imports.push(e.keep.has(o.ngModule)?o:MockModule(o)))},handleDeclaration=(e,o,t,r)=>{mock_helper_guts_skipDef(o,e.skip,e.exclude)||r.push(e.keep.has(o)?o:t(o))},handleDestructuring=(e,o,t)=>{if(mock_helper_guts_skipDef(o,e.skip,e.exclude))return;const r=core_reflect_module_resolve(o);for(const o of(0,core_helpers.Bq)([r.declarations,r.imports]))t(e,o);for(const o of r.providers?(0,core_helpers.Bq)(r.providers):[])resolveProvider(e,o)},resolveProvider=({skip:e,keep:o,providers:t,exclude:r},n)=>{const s=(0,func_get_type.A)(n);if(e.add(s),r.has(s))return;const c=o.has(s)?n:(0,mock_provider.A)(n);c&&t.push(c)},resolveMap={component:MockComponent,directive:MockDirective,pipe:MockPipe},resolveHandler=(e,o,t,r)=>{"module-with-providers"===o?handleModuleWithProviders(e,t):"module-keep"===o||"module"===o&&r?handleDeclaration(e,t,MockModule,e.imports):"module"===o?handleDestructuring(e,t,resolve):resolveMap[o]?handleDeclaration(e,t,resolveMap[o],e.declarations):resolveProvider(e,t)},resolve=(e,o,t=!0)=>{if(!o)return;const r=mock_helper_guts_getType(o,e.keep);let n;if("module-with-providers"!==r){const t=e.optional.get(o);t&&t!==o&&(n=t,e.keep.add(n))}n||(n=o),resolveHandler(e,r,n,t)},generateDataWithUniverse=(e,o,t,r)=>{for(const n of(0,core_helpers.d4)(ng_mocks_universe.A.getDefaults())){const s=ng_mocks_universe.A.getBuildDeclaration(n);e.has(n)||o.has(n)||t.has(n)||(r.set(n,s),null===s?t.add(n):void 0===s?o.add(n):n===s&&e.add(n))}},generateData=(e,o,t)=>{const r=new Set((0,core_helpers.Bq)(e||[])),n=new Set((0,core_helpers.Bq)(o||[])),s=new Set((0,core_helpers.Bq)(t||[])),c=new Map;return generateDataWithUniverse(r,n,s,c),{declarations:[],exclude:s,imports:[],keep:r,mock:n,optional:c,providers:[],skip:new Set}},mock_helper_guts=(e,o=null,t=null)=>{const r=generateData(e,o,t),n=new Map;ng_mocks_universe.A.config.set("ngMocksDepsResolution",n);for(const e of(0,core_helpers.LG)(r.keep))n.set(e,"keep");for(const e of(0,core_helpers.LG)(r.exclude))n.set(e,"exclude");ng_mocks_universe.A.config.set("mockNgDefResolver",new core_def_stack);for(const e of(0,core_helpers.LG)(r.mock))n.set(e,"mock"),r.optional.has(e)||resolve(r,e,!1);const s=createMeta(r);return ng_mocks_universe.A.config.delete("mockNgDefResolver"),ng_mocks_universe.A.config.delete("ngMocksDepsResolution"),s},mock_helper_attributes_defaultNotFoundValue={},mock_helper_attributes_parseArgs=e=>[e[0],e[1],3===e.length?e[2]:mock_helper_attributes_defaultNotFoundValue],attrMatches=(e,o)=>{const{name:t,alias:r=""}=(0,func_directive_io_parse.A)(e);if(!r&&t===o||r&&r===o)return t},detectAttribute=(e,o,t)=>{for(const r of(null==e?void 0:e.providerTokens)||[]){const n=func_parse_provider_tokens_directives(e,r);if(n)for(const s of n[o]||[]){const o=attrMatches(s,t);if(o)return mock_helper_get(e,r)[o]}}throw new Error("Not found")},mock_helper_attributes=(e,o,...t)=>{const[r,n,s]=mock_helper_attributes_parseArgs(t);try{return detectAttribute(mock_helper_find(func_get_last_fixture(),r,void 0),o,n)}catch(e){}if(s!==mock_helper_attributes_defaultNotFoundValue)return s;throw new Error(`Cannot find ${n} ${e} via ngMocks.${e}`)},mock_helper_input=(...e)=>mock_helper_attributes("input","inputs",...e),mock_helper_output=(...e)=>mock_helper_attributes("output","outputs",...e),mock_helper_reset=()=>{ng_mocks_universe.A.builtDeclarations=new Map,ng_mocks_universe.A.builtProviders=new Map,ng_mocks_universe.A.cacheDeclarations=new Map,ng_mocks_universe.A.cacheProviders=new Map,ng_mocks_universe.A.config=new Map,ng_mocks_universe.A.configInstance=new Map,ng_mocks_universe.A.flags=new Set(core_config.A.flags),ng_mocks_universe.A.touches=new Set},getValVcr=e=>{const o=[];for(const t of e.__ngMocksConfig.queryScanKeys||[]){const r=e[t],n=e[`__ngMocksVcr_${t}`],s=r instanceof core_.QueryList?r.toArray():[r],c=n instanceof core_.QueryList?n.toArray():[n];for(let e=0;e!!e.__template&&!!e.__vcr&&o(e.__template)&&t(e.__vcr,e.__template),isRightTemplate=(e,o,t)=>!!e&&o instanceof core_.TemplateRef&&t(o),findDeep=(e,o,t)=>{if(!func_is_mock(e))throw new Error("Only instances of mock declarations are accepted");if(handleDirective(e,o,t))return!0;for(const[r,n]of getValVcr(e)){if(func_is_mock(r)&&findDeep(r,o,t))return!0;if(isRightTemplate(n,r,o))return t(n,r)}return!1},func_find_deep=findDeep,func_parse_template=e=>{if(e instanceof core_.TemplateRef)return e;if(func_is_mock(e)&&e.__template)return e.__template;const o=(null==e?void 0:e.nativeNode)&&e.injector;if(o){const e=core_injector(core_.TemplateRef,o);if(e)return e}const t=new Error("Unknown template has been passed, only TemplateRef or a mock structural directive are supported");throw t.param=e,t},mock_helper_hide=(e,o)=>{const t=o?func_parse_template(o):void 0;let r=!1;if(func_find_deep(e,(e=>!t||e.elementRef.nativeElement===t.elementRef.nativeElement),(e=>(e.clear(),r=!0,!1))),!r)throw new Error("Cannot find path to the TemplateRef")},mock_helper_render=(e,o,t,r)=>{const n=func_parse_template(o);if(!func_find_deep(e,(e=>e.elementRef.nativeElement===n.elementRef.nativeElement),((e,o)=>{const n=Object.assign(Object.assign({},r),{$implicit:t});return e.clear(),e.createEmbeddedView(o,n).detectChanges(),!0})))throw new Error("Cannot find path to the TemplateRef")},template_ref_detect_crawler=e=>{if("string"==typeof e)return crawl_by_id(e);if(Array.isArray(e)&&1===e.length&&"string"==typeof e[0])return crawl_by_attribute(e[0]);if(Array.isArray(e)&&2===e.length&&"string"==typeof e[0])return crawl_by_attribute_value(e[0],e[1]);if("function"==typeof e)return crawl_by_declaration(e);throw new Error("Unknown selector")},detect_template_ref=(e,o,t=0)=>r=>{try{const t=!detect_text_node(r)&&o(r)?core_injector(core_.TemplateRef,r.injector):void 0;t&&e.push(t)}catch(e){}return!!t&&e.length===t},func_is_valid_template_ref_selector=e=>"string"==typeof e||!(!Array.isArray(e)||"string"!=typeof e[0])||"function"==typeof e,mock_helper_find_template_ref_defaultNotFoundValue={},mock_helper_find_template_ref=(...e)=>{const[o,t,r]=mock_helper_func_parse_find_args(e,func_is_valid_template_ref_selector,mock_helper_find_template_ref_defaultNotFoundValue),n=[],s=template_ref_detect_crawler(t);if(nested_check(mock_helper_find(func_get_last_fixture(),o,void 0),void 0,detect_template_ref(n,s,1)),n.length>0)return n[0];if(r!==mock_helper_find_template_ref_defaultNotFoundValue)return r;throw new Error(`Cannot find a TemplateRef via ngMocks.findTemplateRef(${func_parse_find_args_name(t)})`)},mock_helper_find_template_refs=(...e)=>{const[o,t]=mock_helper_func_parse_find_args(e,func_is_valid_template_ref_selector),r=[],n=template_ref_detect_crawler(t);return nested_check(mock_helper_find(func_get_last_fixture(),o,void 0),void 0,detect_template_ref(r,n)),r},flagNames=["onMockBuilderMissingDependency","onMockInstanceRestoreNeed","onTestBedFlushNeed"],mock_helper_object={autoSpy:mock_helper_auto_spy,change:mock_helper_change,click:mock_helper_click,config:e=>{const o=ng_mocks_universe.A.global.get("flags");for(const t of flagNames)null===e[t]?o[t]=core_config.A[t]:void 0!==e[t]&&(o[t]=e[t]);null===e.mockRenderCacheSize?ng_mocks_universe.A.global.delete("mockRenderCacheSize"):void 0!==e.mockRenderCacheSize&&ng_mocks_universe.A.global.set("mockRenderCacheSize",e.mockRenderCacheSize)},crawl:mock_helper_crawl,defaultConfig:mock_helper_default_config,defaultMock:mock_helper_default_mock,event:mock_helper_event,faster:mock_helper_faster,find:mock_helper_find,findAll:mock_helper_find_all,findInstance:mock_helper_find_instance,findInstances:mock_helper_find_instances,findTemplateRef:mock_helper_find_template_ref,findTemplateRefs:mock_helper_find_template_refs,flushTestBed:mock_helper_flush_test_bed,formatHtml:mock_helper_format_html,formatText:mock_helper_format_text,get:mock_helper_get,globalExclude:mock_helper_global_exclude,globalKeep:mock_helper_global_keep,globalMock:mock_helper_global_mock,globalReplace:mock_helper_global_replace,globalWipe:mock_helper_global_wipe,guts:mock_helper_guts,hide:mock_helper_hide,ignoreOnConsole:mock_helper_console_ignore,input:mock_helper_input,output:mock_helper_output,render:mock_helper_render,reset:mock_helper_reset,reveal:mock_helper_reveal,revealAll:mock_helper_reveal_all,stub:mock_helper_stub.A,stubMember:mock_helper_stub_member.A,throwOnConsole:mock_helper_console_throw,touch:mock_helper_touch,trigger:mock_helper_trigger},ngMocks=mock_helper_object;var mock_service=__webpack_require__(839);const defaultValue={};function MockProviders(...e){return e.map((e=>MockProvider(e,defaultValue)))}function MockProvider(e,o=defaultValue,t,r={}){func_import_exists(e,"MockProvider");const{deps:n,multi:s}="boolean"==typeof r?{deps:void 0,multi:r}:Array.isArray(r)?{deps:r,multi:void 0}:r;return t?{provide:e,[t]:o,deps:n,multi:s}:(0,helper_use_factory.A)(e,(()=>(0,mock_service.K)(e)),(e=>o===defaultValue?e:e?(0,mock_helper_stub.A)(e,o):o))}const applyOverride=(e,o)=>{(0,func_is_ng_def.p)(e,"c")?testing_.TestBed.overrideComponent(e,o):(0,func_is_ng_def.p)(e,"d")?testing_.TestBed.overrideDirective(e,o):(0,func_is_ng_def.p)(e,"m")&&testing_.TestBed.overrideModule(e,o),((0,func_is_ng_def.p)(e,"t")||(0,func_is_ng_def.p)(e,"i"))&&testing_.TestBed.overrideProvider(e,o)},ng_mocks_global_overrides_applyOverrides=e=>{for(const[o,[t,r]]of(0,core_helpers.Nn)(e))testing_.TestBed.ngMocksOverrides.set(o,Object.assign(Object.assign({},r),{override:t})),applyOverride(o,t)},applyNgMocksOverrides=e=>{var o;if(null===(o=e.ngMocksOverrides)||void 0===o?void 0:o.size){ngMocks.flushTestBed();for(const[o,t]of(0,core_helpers.Nn)(e.ngMocksOverrides))applyOverride(o,t)}e.ngMocksOverrides=void 0},initTestBed=()=>{testing_.TestBed.ngMocksSelectors||(0,core_define_property.A)(testing_.TestBed,"ngMocksSelectors",new Map),testing_.TestBed.ngMocksOverrides||(0,core_define_property.A)(testing_.TestBed,"ngMocksOverrides",new Map)},generateTouches=(e,o)=>{for(const t of core_config.A.dependencies)for(const r of e[t]?(0,core_helpers.Bq)(e[t]):[]){const e=(0,func_get_type.A)(r);if((0,func_is_ng_module_def_with_providers.h)(r)&&generateTouches(r,o),!o.has(e)&&(o.add(e),"function"==typeof e)){if(!Object.prototype.hasOwnProperty.call(e,"__ngMocksTouches")){const o=new Set,t=core_reflect_meta(e);(0,core_define_property.A)(e,"__ngMocksTouches",o,!1),t&&generateTouches(t,o)}(0,core_helpers.LG)(e.__ngMocksTouches,o)}}},defineTouches=(e,o,t)=>{var r;let n=t;return!n&&ng_mocks_universe.A.getDefaults().size>0&&(n=func_extract_tokens(e._providers||(null===(r=e._compiler)||void 0===r?void 0:r.providers)).touches,n||(n=new Set,o.providers=o.providers||[],o.providers.push({provide:core_tokens.Em,useValue:n})),generateTouches(o,n)),n},applyPlatformOverrideDef=e=>{const o=(0,func_get_type.A)(e);if(testing_.TestBed.ngMocksOverrides.has(o))return;const t=core_reflect_module_resolve(o),r=get_override_def(t);r&&(testing_.TestBed.ngMocksOverrides.set(o,{set:t}),testing_.TestBed.overrideModule(o,{set:r}))},applyPlatformOverridesBasedOnProvidedIn=(e,o)=>{const t=core_reflect_provided_in(e);t&&("string"==typeof t||o.has(t))&&(testing_.TestBed.ngMocksOverrides.set(e,{}),testing_.TestBed.overrideProvider(e,MockProvider(e)))},applyPlatformOverridesBasedOnDefaults=e=>{for(const[o,[t]]of(0,core_helpers.Nn)(ng_mocks_universe.A.getDefaults()))"mock"===t&&((0,func_is_ng_def.p)(o,"i")||(0,func_is_ng_def.p)(o,"t"))&&(e.has(o)||testing_.TestBed.ngMocksOverrides.has(o)||applyPlatformOverridesBasedOnProvidedIn(o,e))},applyPlatformOverrides=(e,o)=>{if(testing_.TestBed.ngMocksOverrides){const t=ng_mocks_universe.A.touches;ng_mocks_universe.A.touches=o;for(const o of(0,core_helpers.Bq)(e.ngModule||[]))applyPlatformOverrideDef(o);applyPlatformOverridesBasedOnDefaults(o),ng_mocks_universe.A.touches=t}},ng_mocks_global_overrides_configureTestingModule=(e,o)=>t=>{var r,n;initTestBed();const s=!("object"!=typeof t||!t||t.providers&&-1!==t.providers.indexOf(MockBuilder));let c=0;const _=[];for(const e of s?["imports","declarations"]:[])for(const o of(0,core_helpers.Bq)(t[e]))o&&(_.push([(0,func_is_ng_module_def_with_providers.h)(o)?{ngModule:getSourceOfMock(o.ngModule),providers:o.providers}:getSourceOfMock(o),(0,func_is_ng_module_def_with_providers.h)(o)?o.ngModule:o,isMockNgDef((0,func_get_type.A)(o))]),c|=_[_.length-1][2]?2:1);let i=3===c?void 0:t;if(!i){let e=MockBuilder(core_tokens.gG);for(const[o,t,n]of _){const s=null===(r=t.prototype.__ngMocksConfig)||void 0===r?void 0:r.transform,c={export:!(0,func_is_ng_def.p)(o,"m"),exportAll:!1,onRoot:!0};e=n&&s?e.mock(o,s,c):n?e.mock(o,c):e.keep(o,c)}i=e.build(),i=Object.assign(Object.assign(Object.assign({},t),i),{providers:[...null!==(n=t.providers)&&void 0!==n?n:[],...i.providers]})}const a=(0,testing_.getTestBed)(),l=func_extract_tokens(i.providers),{mocks:p,overrides:u}=l,d=defineTouches(a,i,l.touches);return p&&ngMocks.flushTestBed(),u&&ng_mocks_global_overrides_applyOverrides(u),!d||a._instantiated||a._testModuleRef||applyPlatformOverrides(a,d),e.call(o,i)},ng_mocks_global_overrides_resetTestingModule=(e,o)=>()=>(ng_mocks_universe.A.global.delete("builder:config"),ng_mocks_universe.A.global.delete("builder:module"),testing_.TestBed.ngMocksSelectors=void 0,applyNgMocksOverrides(testing_.TestBed),e.call(o)),patchVcrInstance=e=>{if(!core_.ViewContainerRef.ngMocksOverridesPatched&&((0,core_define_property.A)(core_.ViewContainerRef,"ngMocksOverridesPatched",!0),e.createComponent)){const o=e.createComponent,t=(0,helper_create_clone.A)(o,void 0,void 0,(function(e,...t){var r;const n=core_injector(core_tokens.en,this.injector);return o.apply(this,[null!==(r=null==n?void 0:n.get(e))&&void 0!==r?r:e,...t])}));(0,core_define_property.A)(e.constructor.prototype,"createComponent",t,!0),(0,core_define_property.A)(e,"createComponent",t,!0)}},createComponent=(e,o)=>t=>{const r=e.call(o,t);try{const e=r.debugElement.injector.get(core_.ViewContainerRef);patchVcrInstance(e)}catch(e){}return r},viewContainerInstall=()=>{const e=core_.ViewContainerRef;if(!e.ngMocksOverridesInstalled){const o=e.__NG_ELEMENT_ID__;o&&(0,core_define_property.A)(e,"__NG_ELEMENT_ID__",(0,helper_create_clone.A)(o,void 0,void 0,((...e)=>{const t=o.apply(o,e);return patchVcrInstance(t),t})),!0),(0,core_define_property.A)(testing_.TestBed,"createComponent",createComponent(testing_.TestBed.createComponent,testing_.TestBed)),(0,core_define_property.A)(core_.ViewContainerRef,"ngMocksOverridesInstalled",!0)}},installInjector=e=>{if(e.constructor.prototype.__ngMocksInjector||!e.constructor.prototype.get)return e;(0,core_define_property.A)(e.constructor.prototype,"__ngMocksInjector",!0);const o=e.constructor.prototype.get;return e.constructor.prototype.get=(0,helper_create_clone.A)(o,void 0,void 0,(function(e,...t){const r=o.call(this,e,...t);return r&&"object"==typeof r&&"function"==typeof r.constructor&&"string"==typeof r.constructor.name&&"Injector"===r.constructor.name.slice(-8)&&installInjector(r),r})),e},install=()=>{if(!testing_.TestBed.ngMocksOverridesInstalled){const e=mock_helper_faster_install();viewContainerInstall(),-1===e.before.indexOf(ng_mocks_global_overrides_configureTestingModule)&&e.before.push(ng_mocks_global_overrides_configureTestingModule),-1===e.after.indexOf(ng_mocks_global_overrides_resetTestingModule)&&e.after.push(ng_mocks_global_overrides_resetTestingModule),(0,core_define_property.A)(testing_.TestBed,"ngMocksOverridesInstalled",!0);const o=core_.Injector.create;core_.Injector.create=(0,helper_create_clone.A)(o,void 0,void 0,((...e)=>installInjector(o.apply(core_.Injector,e))));try{core_.Injector.create({length:0,providers:[]})}catch(e){}}};function isMockedNgDefOf(e,o,t){return"function"==typeof e&&e.mockOf===o&&(!t||(0,func_is_ng_def.p)(e,t))}install();const getMock=(e,o,t)=>{if(t&&!t.has(o))throw new Error(`There is no mock for ${(0,func_get_name.A)(o)}`);let r=t?t.get(o):void 0;return r===o&&(r=void 0),r||o===e?!r&&ng_mocks_universe.A.cacheDeclarations.has(o)&&(r=ng_mocks_universe.A.cacheDeclarations.get(o)):r=e,r};function getMockedNgDefOf(e,o){var t;const r=null!==(t=e.mockOf)&&void 0!==t?t:e,n=core_injector(core_tokens.en),s=getMock(e,r,n);if(s&&!o)return s;if(s&&o&&isMockedNgDefOf(s,r,o))return s;throw new Error(`There is no mock for ${(0,func_get_name.A)(r)}`)}function isMockOf(e,o,t){return func_is_mock(e)&&e.constructor===o&&(t?(0,func_is_ng_def.p)(e.constructor,t):(0,func_is_ng_def.p)(e.constructor))}const isMockValidator=e=>!!func_is_mock(e)&&!!e.__ngMocksConfig.isValidator,mock_instance_forgot_reset=e=>{const o=[];for(;e.length>0;){const[t,r]=e.pop()||[];r===ng_mocks_universe.A.configInstance.get(t)&&o.push("function"==typeof t?(0,func_get_name.A)(t):t)}if(o.length>0){const e=ng_mocks_universe.A.global.get("flags"),t=[`MockInstance: side effects have been detected (${o.join(", ")}).`,"Forgot to add MockInstance.scope() or to call MockInstance.restore()?"].join(" ");if("warn"===e.onMockInstanceRestoreNeed)console.warn(t);else if("throw"===e.onMockInstanceRestoreNeed)throw new Error(t)}};let currentStack;ng_mocks_stack.subscribePush((e=>{currentStack=e})),ng_mocks_stack.subscribePop(((e,o)=>{for(const o of e.mockInstance||[])if(ng_mocks_universe.A.configInstance.has(o)){const e=ng_mocks_universe.A.configInstance.get(o);e.overloads.pop(),ng_mocks_universe.A.configInstance.set(o,Object.assign({},e))}currentStack=o[o.length-1]}));const parseMockInstanceArgs=e=>{const o={};return"string"==typeof e[0]?(o.key=e[0],o.value=e[1],o.accessor=e[2]):(o.value=e[0],o.value&&"object"==typeof o.value&&(o.value=o.value.init)),o},checkReset=[];let checkCollect=!1;"undefined"!=typeof beforeEach&&(beforeEach((()=>checkCollect=!0)),beforeEach((()=>mock_instance_forgot_reset(checkReset))),afterEach((()=>checkCollect=!1)));const mockInstanceConfig=(e,o,t,r)=>{var n;const s=ng_mocks_universe.A.configInstance.has(e)?ng_mocks_universe.A.configInstance.get(e):{},c=s.overloads||[];c.push([o,t,r]),s.overloads=c,ng_mocks_universe.A.configInstance.set(e,Object.assign({},s));const _=null!==(n=currentStack.mockInstance)&&void 0!==n?n:[];return _.push(e),currentStack.mockInstance=_,checkCollect&&checkReset.push([e,ng_mocks_universe.A.configInstance.get(e),currentStack]),t};function MockInstance(e,...o){if(func_import_exists(e,"MockInstance"),o.length>0){const{key:t,value:r,accessor:n}=parseMockInstanceArgs(o);return mockInstanceConfig(e,t,r,n)}const t=ng_mocks_universe.A.configInstance.get(e)||{};ng_mocks_universe.A.configInstance.set(e,Object.assign(Object.assign({},t),{overloads:[]}));for(let o=checkReset.length-1;o>=0;o-=1)checkReset[o][0]===e&&checkReset[o][2]===currentStack&&checkReset.splice(o,1)}function MockReset(){ng_mocks_universe.A.configInstance.clear()}function MockDeclarations(...e){return e.map(MockDeclaration)}function MockDeclaration(e){if((0,func_is_ng_def.p)(e,"p"))return MockPipe(e);if((0,func_is_ng_def.p)(e,"c"))return MockComponent(e);if((0,func_is_ng_def.p)(e,"d"))return MockDirective(e);throw error_jest_mock(e),new Error(["MockDeclaration does not know how to mock","function"==typeof e?(0,func_get_name.A)(e):e].join(" "))}!function(e){e.remember=function(){ng_mocks_stack.stackPush()},e.restore=function(){ng_mocks_stack.stackPop()},e.scope=function(o="case"){"all"!==o&&"suite"!==o||(beforeAll(e.remember),afterAll(e.restore)),"all"!==o&&"case"!==o||(beforeEach(e.remember),afterEach(e.restore))}}(MockInstance||(MockInstance={}));const generateTemplateAttrWrap=(e,o)=>"i"===o?`[${e}]`:`(${e})`,generateTemplateAttrWithParams=(e,o)=>{let t=` ${generateTemplateAttrWrap(e,o)}="`;return t+="i"===o?e:`__ngMocksOutput('${e}', $event)`,t+='"',t},generateTemplateAttr=(e,o,t)=>{if(!e&&"o"===t)return"";let r="";const n=null!=e?e:o;for(const e of o){const{name:o,alias:s}=(0,func_directive_io_parse.A)(e);r+=-1===n.indexOf(s||o)?"":generateTemplateAttrWithParams(s||o,t)}return r},func_generate_template=(e,{selector:o,bindings:t,inputs:r,outputs:n})=>{let s="";return"string"==typeof e?s=e:(0,func_is_ng_def.p)(e,"p")&&t&&-1!==t.indexOf("$implicit")?s=`{{ $implicit | ${core_reflect_pipe_resolve(e).name} }}`:o&&(s+=`<${o}`,s+=generateTemplateAttr(t,r,"i"),s+=generateTemplateAttr(t,n,"o"),s+=`>${o}>`),s},generateWrapperOutput=e=>(o,t)=>"function"==typeof e[o]?e[o](t):e[o]&&"object"==typeof e[o]&&"function"==typeof e[o].emit?e[o].emit(t):e[o]&&"object"==typeof e[o]&&"function"==typeof e[o].next?e[o].next(t):void(e[o]=t),generateWrapperComponent=({bindings:e,options:o,inputs:t})=>{class r{constructor(){(0,core_define_property.A)(this,"__ngMocksOutput",generateWrapperOutput(this));let o=0;if((0,helper_define_property_descriptor.A)(this,"__ngContext__",{get:()=>o,set:e=>o=e,enumerable:!1}),!e)for(const e of t||[]){let o=null;(0,helper_define_property_descriptor.A)(this,e,{get:()=>o,set:e=>o=e})}}}return(0,core_define_property.A)(r.prototype,`__ngMocks_index_${ng_mocks_universe.A.index()}`,void 0,!1),(0,core_.Component)(o)(r),r},generateWrapperDirective=({selector:e,options:o})=>{class t{}return(0,core_.Directive)({selector:e,providers:o.providers})(t),t},getCache=()=>{var e;const o=null!==(e=ng_mocks_universe.A.config.get("MockRenderCaches"))&&void 0!==e?e:[];return 0===o.length&&ng_mocks_universe.A.config.set("MockRenderCaches",o),o},checkCache=(e,o)=>{for(const t of e){if(t.cacheKey.length!==o.length)continue;let e=!0;for(let r=0;r{var n,s,c;const _=getCache(),i=[e,...null!=t?t:[null],...null!==(n=r.providers)&&void 0!==n?n:[null],...null!==(s=r.viewProviders)&&void 0!==s?s:[null]];let a=checkCache(_,i);if(a)return a;const l=o.inputs?[...o.inputs]:[],p=o.outputs?[...o.outputs]:[];if(o.hostDirectives)for(const e of o.hostDirectives)"object"==typeof e&&e.directive&&(e.inputs&&l.push(...e.inputs),e.outputs&&p.push(...e.outputs));const u=func_generate_template(e,{selector:o.selector,inputs:l,outputs:p,bindings:t}),d={providers:r.providers,selector:"mock-render",template:u,viewProviders:r.viewProviders};if(a=generateWrapperComponent(Object.assign(Object.assign({},o),{bindings:t,options:d})),(0,core_define_property.A)(a,"cacheKey",i),(0,core_define_property.A)(a,"tpl",u),o.selector&&d.providers){const e=generateWrapperDirective(Object.assign(Object.assign({},o),{bindings:t,options:d}));(0,core_define_property.A)(a,"providers",e)}return _.unshift(a),_.splice(null!==(c=ng_mocks_universe.A.global.get("mockRenderCacheSize"))&&void 0!==c?c:core_config.A.mockRenderCacheSize),a},createPropertyGet=(e,o,t)=>{const r=()=>{if("function"==typeof t[e]){if(o[`__ngMocks_${e}__origin`]!==t[e]){const r=helper_mock_service.A.createClone(t[e],o,t);(0,core_define_property.A)(o,`__ngMocks_${e}`,r),(0,core_define_property.A)(o,`__ngMocks_${e}__origin`,t[e])}return o[`__ngMocks_${e}`]}return t[e]};return(0,core_define_property.A)(r,"__ngMocksProxy",!0),r},createPropertySet=(e,o,t)=>{const r=r=>{o[`__ngMocks_${e}`]&&(o[`__ngMocks_${e}`]=void 0),o[`__ngMocks_${e}__origin`]&&(o[`__ngMocks_${e}__origin`]=void 0),t[e]=r};return(0,core_define_property.A)(r,"__ngMocksProxy",!0),r},extractAllKeys=e=>[...helper_mock_service.A.extractPropertiesFromPrototype(Object.getPrototypeOf(e)),...helper_mock_service.A.extractMethodsFromPrototype(Object.getPrototypeOf(e)),...Object.keys(e)],extractOwnKeys=e=>[...Object.getOwnPropertyNames(e),...Object.keys(e)],func_install_prop_reader=(e,o,t,r=!1)=>{if(!o)return;(0,core_define_property.A)(e,"__ngMocks__source",o);const n=extractOwnKeys(e),s=[...extractAllKeys(o),...t];for(const t of s)(r||-1===n.indexOf(t))&&((0,helper_define_property_descriptor.A)(e,t,{get:createPropertyGet(t,e,o),set:createPropertySet(t,e,o)}),n.push(t))},registerTemplateMiddleware=(e,o)=>{const t=(0,core_helpers.He)(e),r={provide:e,useExisting:t};o.providers=[...o.providers||[],r];let n={};try{const t=testing_.TestBed.ngMocksOverrides,{override:s}=t.get(e);n=Object.assign({},s.set),n.providers=n.providers?[...n.providers,r]:o.providers}catch(e){}const s=!0===o.__ngMocksStandalone;((0,func_is_ng_def.p)(e,"c")?core_.Component:core_.Directive)(Object.assign(Object.assign(Object.assign({},o),n),s?{standalone:s}:{}))(t),testing_.TestBed.configureTestingModule({[s?"imports":"declarations"]:[t]})},func_reflect_template=e=>{var o;if(!(0,func_is_ng_def.p)(e,"c")&&!(0,func_is_ng_def.p)(e,"d"))return{};const t=core_reflect_directive_resolve(e),r={};for(const e of Object.keys(t))"standalone"!==e?r[e]=t[e]:(0,core_define_property.A)(r,"__ngMocksStandalone",!!t[e]);return r.selector&&/[\s,[\]]/.test(r.selector)&&(r.selector=""),r.selector||(r.selector=(null===(o=testing_.TestBed.ngMocksSelectors)||void 0===o?void 0:o.get(e))||"",r.selector||(r.selector=`ng-mocks-${e.name}`,registerTemplateMiddleware(e,r),testing_.TestBed.ngMocksSelectors&&testing_.TestBed.ngMocksSelectors.set(e,r.selector))),r},renderDeclaration=(e,o,t)=>{e.point=e.debugElement.children[0]&&"#text"!==e.debugElement.children[0].nativeElement.nodeName&&"#comment"!==e.debugElement.children[0].nativeElement.nodeName?e.debugElement.children[0]:e.debugElement,(0,func_is_ng_def.p)(o,"d")?(0,helper_define_property_descriptor.A)(e.point,"componentInstance",{get:()=>ngMocks.get(e.point,o)}):(0,func_is_ng_def.p)(o,"p")&&(0,helper_define_property_descriptor.A)(e.point,"componentInstance",{get:()=>ngMocks.findInstance(e.point,o)}),tryWhen(!t,(()=>func_install_prop_reader(e.componentInstance,e.point.componentInstance,[])))},renderInjection=(e,o,t)=>{let r;try{r=(0,core_helpers.Ah)(o)}catch(e){if((0,func_is_ng_def.p)(o,"p"))throw new Error([`Cannot render ${(0,func_get_name.A)(o)}.`,"Did you forget to set $implicit param, or add the pipe to providers?","https://ng-mocks.sudo.eu/guides/pipe"].join(" "));throw e}t&&ngMocks.stub(r,t),e.point=(0,mock_service.K)(core_.DebugElement,{childNodes:[],children:[],componentInstance:r,nativeElement:(0,mock_service.K)(HTMLElement)}),func_install_prop_reader(e.componentInstance,e.point.componentInstance,[],!0)},tryWhen=(e,o)=>{if(e)try{o()}catch(e){}},fixtureMessage=["Forgot to flush TestBed?","MockRender cannot be used without a reset after TestBed.get / TestBed.inject / TestBed.createComponent and another MockRender in the same test.","If you want to mock a service before rendering, consider usage of MockRenderFactory or MockInstance.","To flush TestBed, add a call of ngMocks.flushTestBed() before the call of MockRender, or pass `reset: true` to MockRender options."].join(" "),handleFixtureError=e=>{const o=new Error(fixtureMessage);throw(0,core_define_property.A)(o,"parent",e),o},flushTestBed=e=>{const o=ng_mocks_universe.A.global.get("flags"),t=(0,testing_.getTestBed)();e.reset||!t._instantiated&&!t._testModuleRef?ngMocks.flushTestBed():"throw"!==o.onTestBedFlushNeed&&(t._instantiated||t._testModuleRef)&&("warn"===o.onTestBedFlushNeed&&console.warn(fixtureMessage),ngMocks.flushTestBed())},generateFactoryInstall=(e,o)=>()=>{var t;const r=(0,testing_.getTestBed)(),n=(null===(t=r._compiler)||void 0===t?void 0:t.declarations)||r.declarations||r._declarations;if(!n||-1===n.indexOf(e)){flushTestBed(o);try{const o=[];e.providers&&o.push(e.providers),o.push(e),testing_.TestBed.configureTestingModule({declarations:o})}catch(e){handleFixtureError(e)}}},generateFactory=(e,o,t,r)=>{const n=(r,s)=>{n.configureTestBed();const c=testing_.TestBed.createComponent(e);return func_install_prop_reader(c.componentInstance,null!=r?r:{},null!=o?o:[]),(0,core_define_property.A)(c,"ngMocksStackId",ng_mocks_universe.A.global.get("bullet:stack:id")),(void 0===s||s)&&c.detectChanges(),"string"==typeof t||(0,func_is_ng_def.p)(t,"c")||(0,func_is_ng_def.p)(t,"d")||e.tpl&&(0,func_is_ng_def.p)(t,"p")?renderDeclaration(c,t,r):renderInjection(c,t,r),c};return n.declaration=e,n.bindings=o,n.configureTestBed=generateFactoryInstall(e,r),n};function MockRenderFactory(e,o,t={}){func_import_exists(e,"MockRender");const r="string"==typeof e||(0,func_is_ng_def.p)(e,"t")?{}:func_reflect_template(e),n=func_create_wrapper(e,r,o,t),s=generateFactory(n,o,e,t);return"root"!==ng_mocks_stack.current().level&&!1!==t.configureTestBed&&s.configureTestBed(),s}function MockRender(e,o,t=!0){const r=0===arguments.length?"":e,n=o&&"object"==typeof o?Object.keys(o):o,s="boolean"==typeof t?{detectChanges:t}:Object.assign({},t);return MockRenderFactory(r,n,s)(o,s.detectChanges)}var __webpack_exports__IMockBuilder=__webpack_exports__.rX,__webpack_exports__IMockBuilderConfig=__webpack_exports__.HA,__webpack_exports__IMockBuilderConfigAll=__webpack_exports__.Wn,__webpack_exports__IMockBuilderConfigComponent=__webpack_exports__.Me,__webpack_exports__IMockBuilderConfigDirective=__webpack_exports__.I7,__webpack_exports__IMockBuilderConfigModule=__webpack_exports__.tv,__webpack_exports__IMockBuilderExtended=__webpack_exports__.OG,__webpack_exports__IMockBuilderProvider=__webpack_exports__.sF,__webpack_exports__IMockBuilderResult=__webpack_exports__.me,__webpack_exports__LegacyControlValueAccessor=__webpack_exports__.bk,__webpack_exports__Mock=__webpack_exports__.JT,__webpack_exports__MockBuilder=__webpack_exports__._V,__webpack_exports__MockComponent=__webpack_exports__.Am,__webpack_exports__MockComponents=__webpack_exports__.$u,__webpack_exports__MockControlValueAccessor=__webpack_exports__.D2,__webpack_exports__MockDeclaration=__webpack_exports__.dw,__webpack_exports__MockDeclarations=__webpack_exports__.uV,__webpack_exports__MockDirective=__webpack_exports__.Cc,__webpack_exports__MockDirectives=__webpack_exports__.nr,__webpack_exports__MockInstance=__webpack_exports__.Wm,__webpack_exports__MockModule=__webpack_exports__.BN,__webpack_exports__MockPipe=__webpack_exports__.ZJ,__webpack_exports__MockPipes=__webpack_exports__.yI,__webpack_exports__MockProvider=__webpack_exports__.Qo,__webpack_exports__MockProviders=__webpack_exports__.dD,__webpack_exports__MockRender=__webpack_exports__.Ty,__webpack_exports__MockRenderFactory=__webpack_exports__.P0,__webpack_exports__MockReset=__webpack_exports__.mB,__webpack_exports__MockService=__webpack_exports__.KH,__webpack_exports__MockValidator=__webpack_exports__.b6,__webpack_exports__MockedComponent=__webpack_exports__.Je,__webpack_exports__MockedDirective=__webpack_exports__.T4,__webpack_exports__MockedModule=__webpack_exports__.qZ,__webpack_exports__MockedPipe=__webpack_exports__.cm,__webpack_exports__NG_MOCKS=__webpack_exports__.en,__webpack_exports__NG_MOCKS_GUARDS=__webpack_exports__.ZG,__webpack_exports__NG_MOCKS_INTERCEPTORS=__webpack_exports__.rO,__webpack_exports__NG_MOCKS_OVERRIDES=__webpack_exports__.So,__webpack_exports__NG_MOCKS_RESOLVERS=__webpack_exports__.C3,__webpack_exports__NG_MOCKS_ROOT_PROVIDERS=__webpack_exports__.gG,__webpack_exports__NG_MOCKS_TOUCHES=__webpack_exports__.Em,__webpack_exports__getInjection=__webpack_exports__.Ah,__webpack_exports__getMockedNgDefOf=__webpack_exports__.xz,__webpack_exports__getSourceOfMock=__webpack_exports__.VK,__webpack_exports__getTestBedInjection=__webpack_exports__.d5,__webpack_exports__isMockControlValueAccessor=__webpack_exports__.IA,__webpack_exports__isMockNgDef=__webpack_exports__.Bt,__webpack_exports__isMockOf=__webpack_exports__.AW,__webpack_exports__isMockValidator=__webpack_exports__.lt,__webpack_exports__isMockedNgDefOf=__webpack_exports__.Fk,__webpack_exports__isNgDef=__webpack_exports__.pA,__webpack_exports__isNgInjectionToken=__webpack_exports__.SM,__webpack_exports__ngMocks=__webpack_exports__.H5;export{__webpack_exports__IMockBuilder as IMockBuilder,__webpack_exports__IMockBuilderConfig as IMockBuilderConfig,__webpack_exports__IMockBuilderConfigAll as IMockBuilderConfigAll,__webpack_exports__IMockBuilderConfigComponent as IMockBuilderConfigComponent,__webpack_exports__IMockBuilderConfigDirective as IMockBuilderConfigDirective,__webpack_exports__IMockBuilderConfigModule as IMockBuilderConfigModule,__webpack_exports__IMockBuilderExtended as IMockBuilderExtended,__webpack_exports__IMockBuilderProvider as IMockBuilderProvider,__webpack_exports__IMockBuilderResult as IMockBuilderResult,__webpack_exports__LegacyControlValueAccessor as LegacyControlValueAccessor,__webpack_exports__Mock as Mock,__webpack_exports__MockBuilder as MockBuilder,__webpack_exports__MockComponent as MockComponent,__webpack_exports__MockComponents as MockComponents,__webpack_exports__MockControlValueAccessor as MockControlValueAccessor,__webpack_exports__MockDeclaration as MockDeclaration,__webpack_exports__MockDeclarations as MockDeclarations,__webpack_exports__MockDirective as MockDirective,__webpack_exports__MockDirectives as MockDirectives,__webpack_exports__MockInstance as MockInstance,__webpack_exports__MockModule as MockModule,__webpack_exports__MockPipe as MockPipe,__webpack_exports__MockPipes as MockPipes,__webpack_exports__MockProvider as MockProvider,__webpack_exports__MockProviders as MockProviders,__webpack_exports__MockRender as MockRender,__webpack_exports__MockRenderFactory as MockRenderFactory,__webpack_exports__MockReset as MockReset,__webpack_exports__MockService as MockService,__webpack_exports__MockValidator as MockValidator,__webpack_exports__MockedComponent as MockedComponent,__webpack_exports__MockedDirective as MockedDirective,__webpack_exports__MockedModule as MockedModule,__webpack_exports__MockedPipe as MockedPipe,__webpack_exports__NG_MOCKS as NG_MOCKS,__webpack_exports__NG_MOCKS_GUARDS as NG_MOCKS_GUARDS,__webpack_exports__NG_MOCKS_INTERCEPTORS as NG_MOCKS_INTERCEPTORS,__webpack_exports__NG_MOCKS_OVERRIDES as NG_MOCKS_OVERRIDES,__webpack_exports__NG_MOCKS_RESOLVERS as NG_MOCKS_RESOLVERS,__webpack_exports__NG_MOCKS_ROOT_PROVIDERS as NG_MOCKS_ROOT_PROVIDERS,__webpack_exports__NG_MOCKS_TOUCHES as NG_MOCKS_TOUCHES,__webpack_exports__getInjection as getInjection,__webpack_exports__getMockedNgDefOf as getMockedNgDefOf,__webpack_exports__getSourceOfMock as getSourceOfMock,__webpack_exports__getTestBedInjection as getTestBedInjection,__webpack_exports__isMockControlValueAccessor as isMockControlValueAccessor,__webpack_exports__isMockNgDef as isMockNgDef,__webpack_exports__isMockOf as isMockOf,__webpack_exports__isMockValidator as isMockValidator,__webpack_exports__isMockedNgDefOf as isMockedNgDefOf,__webpack_exports__isNgDef as isNgDef,__webpack_exports__isNgInjectionToken as isNgInjectionToken,__webpack_exports__ngMocks as ngMocks}; + //# sourceMappingURL=index.mjs.map diff --git a/per-module-coverage-recorder.sh b/per-module-coverage-recorder.sh new file mode 100755 index 000000000000..315a7acfe941 --- /dev/null +++ b/per-module-coverage-recorder.sh @@ -0,0 +1,6 @@ +MODULES=("assessment" "athena" "atlas" "buildagent" "communication" "core" "exam" "exercise" "fileupload" "iris" + "lecture" "lti" "modeling" "plagiarism" "programming" "quiz" "text" "tutorialgroup") + +for module in "${MODULES[@]}"; do + ./gradlew test jacocoTestReport -x webapp jacocoTestCoverageVerification -DincludeModules="$module" || true +done diff --git a/proxy.conf.mjs b/proxy.conf.mjs index 9a1ecebc4a3d..53e4497d75ea 100644 --- a/proxy.conf.mjs +++ b/proxy.conf.mjs @@ -2,22 +2,23 @@ export default [ { context: [ - "/api", - "/services", - "/management", - "/swagger-resources", - "/v3/api-docs", - "/h2-console", - "/auth", - "/health", - "/public", - "/.well-known" + "/api/", + "/services/", + "/management/", + "^/management$", + "/swagger-resources/", + "/v3/api-docs/", + "/h2-console/", + "/auth/", + "/health/", + "/public/", + "/.well-known/" ], target: `http://localhost:8080`, secure: false }, { - context: ["/websocket"], + context: ["/websocket/"], target: "ws://127.0.0.1:8080", ws: true } diff --git a/read.ms b/read.ms new file mode 100644 index 000000000000..68e8407fbb7e --- /dev/null +++ b/read.ms @@ -0,0 +1,5 @@ +## Coverage Results + +| Module Name | Instruction Coverage (%) | Missed Classes | +|-------------|---------------------------|----------------| +| athena | 85.63 | 2 | diff --git a/result.md b/result.md new file mode 100644 index 000000000000..0bb4b11cdf12 --- /dev/null +++ b/result.md @@ -0,0 +1,5 @@ +## Coverage Results + +| Module Name | Instruction Coverage (%) | Missed Classes | +|-------------|---------------------------|----------------| +| atlas | 84.64 | 13 | diff --git a/src/main/java/de/tum/cit/aet/artemis/assessment/domain/Feedback.java b/src/main/java/de/tum/cit/aet/artemis/assessment/domain/Feedback.java index de095b019216..c07579401ff0 100644 --- a/src/main/java/de/tum/cit/aet/artemis/assessment/domain/Feedback.java +++ b/src/main/java/de/tum/cit/aet/artemis/assessment/domain/Feedback.java @@ -79,7 +79,7 @@ public class Feedback extends DomainObject { * null if the feedback was not created by an automatic test case. */ @ManyToOne(fetch = FetchType.LAZY) - @JsonIgnoreProperties({ "tasks", "solutionEntries", "exercise", "coverageEntries" }) + @JsonIgnoreProperties({ "tasks", "exercise" }) private ProgrammingExerciseTestCase testCase; /** diff --git a/src/main/java/de/tum/cit/aet/artemis/assessment/domain/Result.java b/src/main/java/de/tum/cit/aet/artemis/assessment/domain/Result.java index 88d5d44e5271..ad45634f2d74 100644 --- a/src/main/java/de/tum/cit/aet/artemis/assessment/domain/Result.java +++ b/src/main/java/de/tum/cit/aet/artemis/assessment/domain/Result.java @@ -10,10 +10,8 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.Objects; import java.util.Optional; -import java.util.Set; import java.util.stream.Collectors; import jakarta.persistence.CascadeType; @@ -28,7 +26,6 @@ import jakarta.persistence.OneToMany; import jakarta.persistence.OrderColumn; import jakarta.persistence.Table; -import jakarta.persistence.Transient; import jakarta.validation.constraints.NotNull; import org.apache.commons.lang3.StringUtils; @@ -53,7 +50,6 @@ import de.tum.cit.aet.artemis.exercise.domain.participation.Participation; import de.tum.cit.aet.artemis.exercise.service.ExerciseDateService; import de.tum.cit.aet.artemis.programming.domain.ProgrammingExercise; -import de.tum.cit.aet.artemis.programming.domain.hestia.CoverageFileReport; import de.tum.cit.aet.artemis.programming.dto.ResultDTO; import de.tum.cit.aet.artemis.quiz.config.QuizView; import de.tum.cit.aet.artemis.quiz.domain.QuizExercise; @@ -152,13 +148,6 @@ public class Result extends DomainObject implements Comparable { @JsonIgnore private Instant lastModifiedDate; - // This attribute is required to forward the coverage file reports after creating the build result. This is required in order to - // delay referencing the corresponding test cases from the entries because the test cases are not saved in the database - // at this point of time but the required test case name would be lost, otherwise. - @Transient - @JsonIgnore - private Map> fileReportsByTestCaseName; - public ZonedDateTime getCompletionDate() { return completionDate; } @@ -500,14 +489,6 @@ public void setCodeIssueCount(int codeIssueCount) { this.codeIssueCount = Math.min(codeIssueCount, SIZE_OF_UNSIGNED_TINYINT); } - public Map> getCoverageFileReportsByTestCaseName() { - return fileReportsByTestCaseName; - } - - public void setCoverageFileReportsByTestCaseName(Map> fileReportsByTestCaseName) { - this.fileReportsByTestCaseName = fileReportsByTestCaseName; - } - /** * Checks the initialization status of the assessment note before returning. Only a single element is returned instead of the list, * because it is modelled that way on the client-side. Jackson therefore needs a single object for the (de-)serialization. diff --git a/src/main/java/de/tum/cit/aet/artemis/assessment/repository/LongFeedbackTextRepository.java b/src/main/java/de/tum/cit/aet/artemis/assessment/repository/LongFeedbackTextRepository.java index 4e0c502a75db..f3a8909a6978 100644 --- a/src/main/java/de/tum/cit/aet/artemis/assessment/repository/LongFeedbackTextRepository.java +++ b/src/main/java/de/tum/cit/aet/artemis/assessment/repository/LongFeedbackTextRepository.java @@ -52,6 +52,10 @@ public interface LongFeedbackTextRepository extends ArtemisJpaRepository feedbackIds); + @Modifying + @Transactional + void deleteByFeedbackId(final Long feedbackId); + default LongFeedbackText findByFeedbackIdWithFeedbackAndResultAndParticipationElseThrow(final Long feedbackId) { return getValueElseThrow(findWithFeedbackAndResultAndParticipationByFeedbackId(feedbackId), feedbackId); } diff --git a/src/main/java/de/tum/cit/aet/artemis/assessment/service/ResultService.java b/src/main/java/de/tum/cit/aet/artemis/assessment/service/ResultService.java index 1dce0090c001..7c91008842c4 100644 --- a/src/main/java/de/tum/cit/aet/artemis/assessment/service/ResultService.java +++ b/src/main/java/de/tum/cit/aet/artemis/assessment/service/ResultService.java @@ -67,16 +67,16 @@ import de.tum.cit.aet.artemis.programming.domain.ProgrammingExercise; import de.tum.cit.aet.artemis.programming.domain.ProgrammingExerciseParticipation; import de.tum.cit.aet.artemis.programming.domain.ProgrammingExerciseStudentParticipation; +import de.tum.cit.aet.artemis.programming.domain.ProgrammingExerciseTask; import de.tum.cit.aet.artemis.programming.domain.ProgrammingExerciseTestCase; import de.tum.cit.aet.artemis.programming.domain.build.BuildPlanType; -import de.tum.cit.aet.artemis.programming.domain.hestia.ProgrammingExerciseTask; import de.tum.cit.aet.artemis.programming.repository.BuildJobRepository; import de.tum.cit.aet.artemis.programming.repository.ProgrammingExerciseRepository; import de.tum.cit.aet.artemis.programming.repository.ProgrammingExerciseStudentParticipationRepository; import de.tum.cit.aet.artemis.programming.repository.SolutionProgrammingExerciseParticipationRepository; import de.tum.cit.aet.artemis.programming.repository.TemplateProgrammingExerciseParticipationRepository; import de.tum.cit.aet.artemis.programming.service.BuildLogEntryService; -import de.tum.cit.aet.artemis.programming.service.hestia.ProgrammingExerciseTaskService; +import de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseTaskService; @Profile(PROFILE_CORE) @Service @@ -198,8 +198,8 @@ public Result createNewManualResult(Result result, boolean ratedResult) { return savedResult; } - public Result createNewRatedManualResult(Result result) { - return createNewManualResult(result, true); + public void createNewRatedManualResult(Result result) { + createNewManualResult(result, true); } /** @@ -522,23 +522,26 @@ private void handleFeedbackPersistence(Feedback feedback, Result result, Map continuousIntegrationService, ProgrammingExerciseGradingService programmingExerciseGradingService, - ResultService resultService, TestwiseCoverageService testwiseCoverageService, ProgrammingTriggerService programmingTriggerService, - ProgrammingMessagingService programmingMessagingService) { + ResultService resultService, ProgrammingTriggerService programmingTriggerService, ProgrammingMessagingService programmingMessagingService) { this.continuousIntegrationService = continuousIntegrationService; this.programmingExerciseGradingService = programmingExerciseGradingService; this.resultService = resultService; - this.testwiseCoverageService = testwiseCoverageService; this.programmingTriggerService = programmingTriggerService; this.programmingMessagingService = programmingMessagingService; } @@ -125,12 +120,6 @@ public ResponseEntity processNewProgrammingExerciseResult(@RequestHeader(" // This method will return without triggering the build if the submission is not of type TEST. var programmingSubmission = (ProgrammingSubmission) result.getSubmission(); triggerTemplateBuildIfTestCasesChanged(participation.getProgrammingExercise().getId(), programmingSubmission); - - // the test cases and the submission have been saved to the database previously, therefore we can add the reference to the coverage reports - if (Boolean.TRUE.equals(participation.getProgrammingExercise().getBuildConfig().isTestwiseCoverageEnabled()) && Boolean.TRUE.equals(result.isSuccessful())) { - testwiseCoverageService.createTestwiseCoverageReport(result.getCoverageFileReportsByTestCaseName(), participation.getProgrammingExercise(), - programmingSubmission); - } } programmingMessagingService.notifyUserAboutNewResult(result, participation); diff --git a/src/main/java/de/tum/cit/aet/artemis/atlas/api/LearnerProfileApi.java b/src/main/java/de/tum/cit/aet/artemis/atlas/api/LearnerProfileApi.java new file mode 100644 index 000000000000..d3099a4ba970 --- /dev/null +++ b/src/main/java/de/tum/cit/aet/artemis/atlas/api/LearnerProfileApi.java @@ -0,0 +1,51 @@ +package de.tum.cit.aet.artemis.atlas.api; + +import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_CORE; + +import java.util.Set; + +import org.springframework.context.annotation.Profile; +import org.springframework.stereotype.Controller; + +import de.tum.cit.aet.artemis.atlas.service.profile.CourseLearnerProfileService; +import de.tum.cit.aet.artemis.atlas.service.profile.LearnerProfileService; +import de.tum.cit.aet.artemis.core.domain.Course; +import de.tum.cit.aet.artemis.core.domain.User; + +@Controller +@Profile(PROFILE_CORE) +public class LearnerProfileApi extends AbstractAtlasApi { + + private final LearnerProfileService learnerProfileService; + + private final CourseLearnerProfileService courseLearnerProfileService; + + public LearnerProfileApi(LearnerProfileService learnerProfileService, CourseLearnerProfileService courseLearnerProfileService) { + this.learnerProfileService = learnerProfileService; + this.courseLearnerProfileService = courseLearnerProfileService; + } + + public void deleteAllForCourse(Course course) { + courseLearnerProfileService.deleteAllForCourse(course); + } + + public void createCourseLearnerProfile(Course course, User user) { + courseLearnerProfileService.createCourseLearnerProfile(course, user); + } + + public void createCourseLearnerProfiles(Course course, Set students) { + courseLearnerProfileService.createCourseLearnerProfiles(course, students); + } + + public void deleteCourseLearnerProfile(Course course, User user) { + courseLearnerProfileService.deleteCourseLearnerProfile(course, user); + } + + public void createProfile(User user) { + learnerProfileService.createProfile(user); + } + + public void deleteProfile(User user) { + learnerProfileService.deleteProfile(user); + } +} diff --git a/src/main/java/de/tum/cit/aet/artemis/atlas/domain/profile/CourseLearnerProfile.java b/src/main/java/de/tum/cit/aet/artemis/atlas/domain/profile/CourseLearnerProfile.java new file mode 100644 index 000000000000..91e77a7c44e1 --- /dev/null +++ b/src/main/java/de/tum/cit/aet/artemis/atlas/domain/profile/CourseLearnerProfile.java @@ -0,0 +1,82 @@ +package de.tum.cit.aet.artemis.atlas.domain.profile; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.OneToOne; +import jakarta.persistence.Table; +import jakarta.validation.constraints.Max; +import jakarta.validation.constraints.Min; + +import de.tum.cit.aet.artemis.core.domain.Course; +import de.tum.cit.aet.artemis.core.domain.DomainObject; + +@Entity +@Table(name = "course_learner_profile") +public class CourseLearnerProfile extends DomainObject { + + @ManyToOne + @JoinColumn(name = "learner_profile_id") + private LearnerProfile learnerProfile; + + @OneToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "course_id") + private Course course; + + @Column(name = "aim_for_grade_or_bonus") + @Min(0) + @Max(5) + private int aimForGradeOrBonus; + + @Column(name = "time_investment") + @Min(0) + @Max(5) + private int timeInvestment; + + @Column(name = "repetition_intensity") + @Min(0) + @Max(5) + private int repetitionIntensity; + + public void setLearnerProfile(LearnerProfile learnerProfile) { + this.learnerProfile = learnerProfile; + } + + public LearnerProfile getLearnerProfile() { + return this.learnerProfile; + } + + public void setCourse(Course course) { + this.course = course; + } + + public Course getCourse() { + return this.course; + } + + public int getAimForGradeOrBonus() { + return aimForGradeOrBonus; + } + + public void setAimForGradeOrBonus(int aimForGradeOrBonus) { + this.aimForGradeOrBonus = aimForGradeOrBonus; + } + + public int getTimeInvestment() { + return timeInvestment; + } + + public void setTimeInvestment(int timeInvestment) { + this.timeInvestment = timeInvestment; + } + + public int getRepetitionIntensity() { + return repetitionIntensity; + } + + public void setRepetitionIntensity(int repetitionIntensity) { + this.repetitionIntensity = repetitionIntensity; + } +} diff --git a/src/main/java/de/tum/cit/aet/artemis/atlas/domain/profile/LearnerProfile.java b/src/main/java/de/tum/cit/aet/artemis/atlas/domain/profile/LearnerProfile.java new file mode 100644 index 000000000000..84bed662672d --- /dev/null +++ b/src/main/java/de/tum/cit/aet/artemis/atlas/domain/profile/LearnerProfile.java @@ -0,0 +1,54 @@ +package de.tum.cit.aet.artemis.atlas.domain.profile; + +import java.util.Collection; +import java.util.HashSet; +import java.util.Set; + +import jakarta.persistence.CascadeType; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.OneToMany; +import jakarta.persistence.OneToOne; +import jakarta.persistence.Table; + +import de.tum.cit.aet.artemis.core.domain.DomainObject; +import de.tum.cit.aet.artemis.core.domain.User; + +@Entity +@Table(name = "learner_profile") +public class LearnerProfile extends DomainObject { + + @OneToOne(mappedBy = "learnerProfile", cascade = CascadeType.PERSIST) + private User user; + + @OneToMany(mappedBy = "learnerProfile", cascade = CascadeType.ALL, orphanRemoval = true, fetch = FetchType.LAZY) + private Set courseLearnerProfiles = new HashSet<>(); + + public void setUser(User user) { + this.user = user; + } + + public User getUser() { + return this.user; + } + + public void setCourseLearnerProfiles(Set courseLearnerProfiles) { + this.courseLearnerProfiles = courseLearnerProfiles; + } + + public Set getCourseLearnerProfiles() { + return this.courseLearnerProfiles; + } + + public boolean addCourseLearnerProfile(CourseLearnerProfile courseLearnerProfile) { + return this.courseLearnerProfiles.add(courseLearnerProfile); + } + + public boolean addAllCourseLearnerProfiles(Collection extends CourseLearnerProfile> courseLearnerProfiles) { + return this.courseLearnerProfiles.addAll(courseLearnerProfiles); + } + + public boolean removeCourseLearnerProfile(CourseLearnerProfile courseLearnerProfile) { + return this.courseLearnerProfiles.remove(courseLearnerProfile); + } +} diff --git a/src/main/java/de/tum/cit/aet/artemis/atlas/repository/CourseLearnerProfileRepository.java b/src/main/java/de/tum/cit/aet/artemis/atlas/repository/CourseLearnerProfileRepository.java new file mode 100644 index 000000000000..c58cb82f6b96 --- /dev/null +++ b/src/main/java/de/tum/cit/aet/artemis/atlas/repository/CourseLearnerProfileRepository.java @@ -0,0 +1,32 @@ +package de.tum.cit.aet.artemis.atlas.repository; + +import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_CORE; + +import org.springframework.context.annotation.Profile; +import org.springframework.data.jpa.repository.Modifying; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; +import org.springframework.stereotype.Repository; +import org.springframework.transaction.annotation.Transactional; + +import de.tum.cit.aet.artemis.atlas.domain.profile.CourseLearnerProfile; +import de.tum.cit.aet.artemis.core.domain.Course; +import de.tum.cit.aet.artemis.core.domain.User; +import de.tum.cit.aet.artemis.core.repository.base.ArtemisJpaRepository; + +@Profile(PROFILE_CORE) +@Repository +public interface CourseLearnerProfileRepository extends ArtemisJpaRepository { + + @Transactional // ok because of delete + @Modifying + @Query(""" + DELETE FROM CourseLearnerProfile clp + WHERE clp.course = :course AND clp.learnerProfile.user = :user + """) + void deleteByCourseAndUser(@Param("course") Course course, @Param("user") User user); + + @Transactional // ok because of delete + @Modifying + void deleteAllByCourse(Course couese); +} diff --git a/src/main/java/de/tum/cit/aet/artemis/atlas/repository/LearnerProfileRepository.java b/src/main/java/de/tum/cit/aet/artemis/atlas/repository/LearnerProfileRepository.java new file mode 100644 index 000000000000..e08712461584 --- /dev/null +++ b/src/main/java/de/tum/cit/aet/artemis/atlas/repository/LearnerProfileRepository.java @@ -0,0 +1,29 @@ +package de.tum.cit.aet.artemis.atlas.repository; + +import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_CORE; + +import java.util.Optional; + +import org.springframework.context.annotation.Profile; +import org.springframework.data.jpa.repository.Modifying; +import org.springframework.stereotype.Repository; +import org.springframework.transaction.annotation.Transactional; + +import de.tum.cit.aet.artemis.atlas.domain.profile.LearnerProfile; +import de.tum.cit.aet.artemis.core.domain.User; +import de.tum.cit.aet.artemis.core.repository.base.ArtemisJpaRepository; + +@Profile(PROFILE_CORE) +@Repository +public interface LearnerProfileRepository extends ArtemisJpaRepository { + + Optional findByUser(User user); + + default LearnerProfile findByUserElseThrow(User user) { + return getValueElseThrow(findByUser(user)); + } + + @Transactional // ok because of delete + @Modifying + void deleteByUser(User user); +} diff --git a/src/main/java/de/tum/cit/aet/artemis/atlas/service/LearningObjectImportService.java b/src/main/java/de/tum/cit/aet/artemis/atlas/service/LearningObjectImportService.java index d20c671193de..19f5081bb032 100644 --- a/src/main/java/de/tum/cit/aet/artemis/atlas/service/LearningObjectImportService.java +++ b/src/main/java/de/tum/cit/aet/artemis/atlas/service/LearningObjectImportService.java @@ -55,7 +55,7 @@ import de.tum.cit.aet.artemis.plagiarism.service.PlagiarismDetectionConfigHelper; import de.tum.cit.aet.artemis.programming.domain.ProgrammingExercise; import de.tum.cit.aet.artemis.programming.repository.ProgrammingExerciseRepository; -import de.tum.cit.aet.artemis.programming.repository.hestia.ProgrammingExerciseTaskRepository; +import de.tum.cit.aet.artemis.programming.repository.ProgrammingExerciseTaskRepository; import de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseImportService; import de.tum.cit.aet.artemis.quiz.domain.QuizExercise; import de.tum.cit.aet.artemis.quiz.repository.QuizExerciseRepository; @@ -261,7 +261,6 @@ else if (foundByShortName.isPresent()) { private void clearProgrammingExerciseAttributes(ProgrammingExercise programmingExercise) { programmingExercise.setTasks(null); - programmingExercise.setExerciseHints(new HashSet<>()); programmingExercise.setTestCases(new HashSet<>()); programmingExercise.setStaticCodeAnalysisCategories(new HashSet<>()); programmingExercise.setTeams(new HashSet<>()); diff --git a/src/main/java/de/tum/cit/aet/artemis/atlas/service/learningpath/LearningPathService.java b/src/main/java/de/tum/cit/aet/artemis/atlas/service/learningpath/LearningPathService.java index 083c06123a45..8048d2c04ab8 100644 --- a/src/main/java/de/tum/cit/aet/artemis/atlas/service/learningpath/LearningPathService.java +++ b/src/main/java/de/tum/cit/aet/artemis/atlas/service/learningpath/LearningPathService.java @@ -37,6 +37,7 @@ import de.tum.cit.aet.artemis.atlas.repository.CourseCompetencyRepository; import de.tum.cit.aet.artemis.atlas.repository.LearningPathRepository; import de.tum.cit.aet.artemis.atlas.service.competency.CompetencyProgressService; +import de.tum.cit.aet.artemis.atlas.service.profile.CourseLearnerProfileService; import de.tum.cit.aet.artemis.core.domain.Course; import de.tum.cit.aet.artemis.core.domain.User; import de.tum.cit.aet.artemis.core.dto.SearchResultPageDTO; @@ -90,10 +91,13 @@ public class LearningPathService { private final CourseCompetencyRepository courseCompetencyRepository; + private final CourseLearnerProfileService courseLearnerProfileService; + public LearningPathService(UserRepository userRepository, LearningPathRepository learningPathRepository, CompetencyProgressRepository competencyProgressRepository, LearningPathNavigationService learningPathNavigationService, CourseRepository courseRepository, CompetencyRepository competencyRepository, CompetencyRelationRepository competencyRelationRepository, LectureUnitCompletionRepository lectureUnitCompletionRepository, - StudentParticipationRepository studentParticipationRepository, CourseCompetencyRepository courseCompetencyRepository) { + StudentParticipationRepository studentParticipationRepository, CourseCompetencyRepository courseCompetencyRepository, + CourseLearnerProfileService courseLearnerProfileService) { this.userRepository = userRepository; this.learningPathRepository = learningPathRepository; this.competencyProgressRepository = competencyProgressRepository; @@ -104,6 +108,7 @@ public LearningPathService(UserRepository userRepository, LearningPathRepository this.lectureUnitCompletionRepository = lectureUnitCompletionRepository; this.studentParticipationRepository = studentParticipationRepository; this.courseCompetencyRepository = courseCompetencyRepository; + this.courseLearnerProfileService = courseLearnerProfileService; } /** @@ -113,7 +118,9 @@ public LearningPathService(UserRepository userRepository, LearningPathRepository */ public void enableLearningPathsForCourse(@NotNull Course course) { course.setLearningPathsEnabled(true); - generateLearningPaths(course); + Set students = userRepository.getStudentsWithLearnerProfile(course); + courseLearnerProfileService.createCourseLearnerProfiles(course, students); + generateLearningPaths(course, students); courseRepository.save(course); log.debug("Enabled learning paths for course (id={})", course.getId()); } @@ -124,7 +131,17 @@ public void enableLearningPathsForCourse(@NotNull Course course) { * @param course course the learning paths are created for */ public void generateLearningPaths(@NotNull Course course) { - var students = userRepository.getStudents(course); + Set students = userRepository.getStudentsWithLearnerProfile(course); + generateLearningPaths(course, students); + } + + /** + * Generate learning paths for all students enrolled in the course + * + * @param course course the learning paths are created for + * @param students students for which the learning paths are generated with eager loaded learner profiles + */ + public void generateLearningPaths(@NotNull Course course, Set students) { students.forEach(student -> generateLearningPathForUser(course, student)); log.debug("Successfully created learning paths for all {} students in course (id={})", students.size(), course.getId()); } diff --git a/src/main/java/de/tum/cit/aet/artemis/atlas/service/profile/CourseLearnerProfileService.java b/src/main/java/de/tum/cit/aet/artemis/atlas/service/profile/CourseLearnerProfileService.java new file mode 100644 index 000000000000..8ca20bec626e --- /dev/null +++ b/src/main/java/de/tum/cit/aet/artemis/atlas/service/profile/CourseLearnerProfileService.java @@ -0,0 +1,82 @@ +package de.tum.cit.aet.artemis.atlas.service.profile; + +import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_CORE; + +import java.util.Set; +import java.util.stream.Collectors; + +import org.springframework.context.annotation.Profile; +import org.springframework.stereotype.Service; + +import de.tum.cit.aet.artemis.atlas.domain.profile.CourseLearnerProfile; +import de.tum.cit.aet.artemis.atlas.repository.CourseLearnerProfileRepository; +import de.tum.cit.aet.artemis.atlas.repository.LearnerProfileRepository; +import de.tum.cit.aet.artemis.core.domain.Course; +import de.tum.cit.aet.artemis.core.domain.User; + +@Profile(PROFILE_CORE) +@Service +public class CourseLearnerProfileService { + + private final CourseLearnerProfileRepository courseLearnerProfileRepository; + + private final LearnerProfileRepository learnerProfileRepository; + + public CourseLearnerProfileService(CourseLearnerProfileRepository courseLearnerProfileRepository, LearnerProfileRepository learnerProfileRepository) { + this.courseLearnerProfileRepository = courseLearnerProfileRepository; + this.learnerProfileRepository = learnerProfileRepository; + } + + /** + * Create a course learner profile for a user and saves it in the database + * + * @param course the course for which the profile is created + * @param user the user for which the profile is created + */ + public void createCourseLearnerProfile(Course course, User user) { + var courseProfile = new CourseLearnerProfile(); + courseProfile.setCourse(course); + + var learnerProfile = learnerProfileRepository.findByUserElseThrow(user); + courseProfile.setLearnerProfile(learnerProfile); + + courseLearnerProfileRepository.save(courseProfile); + } + + /** + * Create course learner profiles for a set of users and saves them in the database. + * + * @param course the course for which the profiles are created + * @param users the users for which the profiles are created with eagerly loaded learner profiles + */ + public void createCourseLearnerProfiles(Course course, Set users) { + Set courseProfiles = users.stream().map(user -> { + var courseProfile = new CourseLearnerProfile(); + courseProfile.setCourse(course); + courseProfile.setLearnerProfile(user.getLearnerProfile()); + + return courseProfile; + }).collect(Collectors.toSet()); + + courseLearnerProfileRepository.saveAll(courseProfiles); + } + + /** + * Delete a course learner profile for a user + * + * @param course the course for which the profile is deleted + * @param user the user for which the profile is deleted + */ + public void deleteCourseLearnerProfile(Course course, User user) { + courseLearnerProfileRepository.deleteByCourseAndUser(course, user); + } + + /** + * Delete all course learner profiles for a course + * + * @param course the course for which the profiles are deleted + */ + public void deleteAllForCourse(Course course) { + courseLearnerProfileRepository.deleteAllByCourse(course); + } +} diff --git a/src/main/java/de/tum/cit/aet/artemis/atlas/service/profile/LearnerProfileService.java b/src/main/java/de/tum/cit/aet/artemis/atlas/service/profile/LearnerProfileService.java new file mode 100644 index 000000000000..5b92074b1c0d --- /dev/null +++ b/src/main/java/de/tum/cit/aet/artemis/atlas/service/profile/LearnerProfileService.java @@ -0,0 +1,46 @@ +package de.tum.cit.aet.artemis.atlas.service.profile; + +import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_CORE; + +import org.springframework.context.annotation.Profile; +import org.springframework.stereotype.Service; + +import de.tum.cit.aet.artemis.atlas.domain.profile.LearnerProfile; +import de.tum.cit.aet.artemis.atlas.repository.LearnerProfileRepository; +import de.tum.cit.aet.artemis.core.domain.User; +import de.tum.cit.aet.artemis.core.repository.UserRepository; + +@Profile(PROFILE_CORE) +@Service +public class LearnerProfileService { + + private final LearnerProfileRepository learnerProfileRepository; + + private final UserRepository userRepository; + + public LearnerProfileService(LearnerProfileRepository learnerProfileRepository, UserRepository userRepository) { + this.learnerProfileRepository = learnerProfileRepository; + this.userRepository = userRepository; + } + + /** + * Create a learner profile for a user and saves it in the database + * + * @param user the user for which the profile is created + */ + public void createProfile(User user) { + var profile = new LearnerProfile(); + profile.setUser(user); + user.setLearnerProfile(profile); + userRepository.save(user); + } + + /** + * Delete the learner profile of a user + * + * @param user the user for which the profile is deleted + */ + public void deleteProfile(User user) { + learnerProfileRepository.deleteByUser(user); + } +} diff --git a/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/BuildConfig.java b/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/BuildConfig.java index 34d139aa6f19..4f8df8d2f49d 100644 --- a/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/BuildConfig.java +++ b/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/BuildConfig.java @@ -11,12 +11,12 @@ // NOTE: this data structure is used in shared code between core and build agent nodes. Changing it requires that the shared data structures in Hazelcast (or potentially Redis) // in the future are migrated or cleared. Changes should be communicated in release notes as potentially breaking changes. +// TODO: reduce the amount of parameters and combine some in smaller record DTOs @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_EMPTY) public record BuildConfig(String buildScript, String dockerImage, String commitHashToBuild, String assignmentCommitHash, String testCommitHash, String branch, - ProgrammingLanguage programmingLanguage, ProjectType projectType, boolean scaEnabled, boolean sequentialTestRunsEnabled, boolean testwiseCoverageEnabled, - List resultPaths, int timeoutSeconds, String assignmentCheckoutPath, String testCheckoutPath, String solutionCheckoutPath, DockerRunConfig dockerRunConfig) - implements Serializable { + ProgrammingLanguage programmingLanguage, ProjectType projectType, boolean scaEnabled, boolean sequentialTestRunsEnabled, List resultPaths, int timeoutSeconds, + String assignmentCheckoutPath, String testCheckoutPath, String solutionCheckoutPath, DockerRunConfig dockerRunConfig) implements Serializable { @Override public String dockerImage() { diff --git a/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/BuildResult.java b/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/BuildResult.java index 9d78a5fe4984..b9ab91a21301 100644 --- a/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/BuildResult.java +++ b/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/BuildResult.java @@ -3,20 +3,15 @@ import java.io.Serializable; import java.time.ZonedDateTime; import java.util.ArrayList; -import java.util.Collections; import java.util.List; - -import org.springframework.util.ObjectUtils; +import java.util.Objects; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import de.tum.cit.aet.artemis.programming.domain.build.BuildLogEntry; -import de.tum.cit.aet.artemis.programming.dto.AbstractBuildResultNotificationDTO; -import de.tum.cit.aet.artemis.programming.dto.BuildJobDTOInterface; +import de.tum.cit.aet.artemis.programming.dto.BuildResultNotification; import de.tum.cit.aet.artemis.programming.dto.StaticCodeAnalysisReportDTO; -import de.tum.cit.aet.artemis.programming.dto.TestCaseBaseDTO; -import de.tum.cit.aet.artemis.programming.service.ci.notification.dto.TestwiseCoverageReportDTO; /** * Represents all the information returned by the local CI system about a build. @@ -27,88 +22,30 @@ // in the future are migrated or cleared. Changes should be communicated in release notes as potentially breaking changes. @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_EMPTY) -// TODO: this should be a record in the future -public class BuildResult extends AbstractBuildResultNotificationDTO implements Serializable { - - private final String assignmentRepoBranchName; - - private final String assignmentRepoCommitHash; - - private final String testsRepoCommitHash; - - private final boolean isBuildSuccessful; - - private final ZonedDateTime buildRunDate; - - private final List jobs; - - private List buildLogEntries = new ArrayList<>(); - - private final List staticCodeAnalysisReports; - - private boolean hasLogs = false; - - public BuildResult(String assignmentRepoBranchName, String assignmentRepoCommitHash, String testsRepoCommitHash, boolean isBuildSuccessful, ZonedDateTime buildRunDate, - List jobs, List staticCodeAnalysisReports) { - this.assignmentRepoBranchName = assignmentRepoBranchName; - this.assignmentRepoCommitHash = assignmentRepoCommitHash; - this.testsRepoCommitHash = testsRepoCommitHash; - this.isBuildSuccessful = isBuildSuccessful; - this.buildRunDate = buildRunDate; - this.jobs = jobs; - this.staticCodeAnalysisReports = staticCodeAnalysisReports; - } - - public BuildResult(String assignmentRepoBranchName, String assignmentRepoCommitHash, String testsRepoCommitHash, boolean isBuildSuccessful) { - this.assignmentRepoBranchName = assignmentRepoBranchName; - this.assignmentRepoCommitHash = assignmentRepoCommitHash; - this.testsRepoCommitHash = testsRepoCommitHash; - this.isBuildSuccessful = isBuildSuccessful; - this.buildRunDate = ZonedDateTime.now(); - this.jobs = new ArrayList<>(); - this.staticCodeAnalysisReports = new ArrayList<>(); - } +public record BuildResult(String assignmentRepoBranchName, String assignmentRepoCommitHash, String testsRepoCommitHash, boolean isBuildSuccessful, ZonedDateTime buildRunDate, + List jobs, List buildLogEntries, List staticCodeAnalysisReports, boolean hasLogs) + implements BuildResultNotification, Serializable { - @Override - public ZonedDateTime getBuildRunDate() { - return buildRunDate; - } - - @Override - protected String getCommitHashFromAssignmentRepo() { - if (ObjectUtils.isEmpty(assignmentRepoCommitHash)) { - return null; - } - return assignmentRepoCommitHash; - } - - @Override - protected String getCommitHashFromTestsRepo() { - if (ObjectUtils.isEmpty(testsRepoCommitHash)) { - return null; - } - return testsRepoCommitHash; + public BuildResult { + buildRunDate = Objects.requireNonNullElse(buildRunDate, ZonedDateTime.now()); + jobs = Objects.requireNonNullElse(jobs, new ArrayList<>()); + staticCodeAnalysisReports = Objects.requireNonNullElse(staticCodeAnalysisReports, new ArrayList<>()); + buildLogEntries = Objects.requireNonNullElse(buildLogEntries, new ArrayList<>()); + hasLogs = !buildLogEntries.isEmpty(); } - @Override - public String getBranchNameFromAssignmentRepo() { - return assignmentRepoBranchName; - } - - @Override - public boolean isBuildSuccessful() { - return isBuildSuccessful; + public BuildResult(String branch, String assignmentRepoCommitHash, String testsRepoCommitHash, List buildLogs, boolean isBuildSuccessful) { + this(branch, assignmentRepoCommitHash, testsRepoCommitHash, isBuildSuccessful, null, null, buildLogs, null, buildLogs != null && !buildLogs.isEmpty()); } @Override - public Double getBuildScore() { + public Double buildScore() { // the real score is calculated in the grading service return 0D; } /** - * Local CI does not support checking for artifacts as of now. - * TODO LOCALVC_CI: Figure out in the build process whether an artifact was created, and return true here if yes. + * NOTE: Local CI does not support checking for artifacts as of now. * * @return will always return false because LocalCI does not support checking for artifacts. */ @@ -117,81 +54,9 @@ public boolean hasArtifact() { return false; } - @Override - public boolean hasLogs() { - return hasLogs; - } - @Override public List extractBuildLogs() { // convert the buildLogEntry DTOs to BuildLogEntry objects return buildLogEntries.stream().map(log -> new BuildLogEntry(log.time(), log.log())).toList(); } - - /** - * Setter for the buildLogEntries - * - * @param buildLogEntries the buildLogEntries to be set - */ - public void setBuildLogEntries(List buildLogEntries) { - this.buildLogEntries = buildLogEntries; - hasLogs = true; - } - - @Override - public List extends BuildJobDTOInterface> getBuildJobs() { - return jobs; - } - - @Override - public List getStaticCodeAnalysisReports() { - return staticCodeAnalysisReports; - } - - @Override - public List getTestwiseCoverageReports() { - // TODO LOCALVC_CI: Implement testwise coverage and return the reports here. - return Collections.emptyList(); - } - - /** - * Represents all the information returned by the local CI system about a job. - * In the current implementation of local CI, there is always one job per build. - * - * @param failedTests list of failed tests. - * @param successfulTests list of successful tests. - */ - @JsonInclude(JsonInclude.Include.NON_EMPTY) - public record LocalCIJobDTO(List failedTests, List successfulTests) implements BuildJobDTOInterface, Serializable { - - @Override - public List extends TestCaseBaseDTO> getFailedTests() { - return failedTests; - } - - @Override - public List extends TestCaseBaseDTO> getSuccessfulTests() { - return successfulTests; - } - } - - /** - * Represents the information about one test case, including the test case's name and potential error messages that indicate what went wrong. - * - * @param name name of the test case. - * @param errors list of error messages. - */ - @JsonInclude(JsonInclude.Include.NON_EMPTY) - public record LocalCITestJobDTO(String name, List errors) implements TestCaseBaseDTO, Serializable { - - @Override - public String getName() { - return name; - } - - @Override - public List getTestMessages() { - return errors; - } - } } diff --git a/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/LocalCIJobDTO.java b/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/LocalCIJobDTO.java new file mode 100644 index 000000000000..27410b0b60f7 --- /dev/null +++ b/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/LocalCIJobDTO.java @@ -0,0 +1,26 @@ +package de.tum.cit.aet.artemis.buildagent.dto; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; + +import com.fasterxml.jackson.annotation.JsonInclude; + +import de.tum.cit.aet.artemis.programming.dto.BuildJobInterface; + +/** + * Represents all the information returned by the local CI system about a job. + * In the current implementation of local CI, there is always one job per build. + * + * @param failedTests list of failed tests. + * @param successfulTests list of successful tests. + */ +@JsonInclude(JsonInclude.Include.NON_EMPTY) +public record LocalCIJobDTO(List failedTests, List successfulTests) implements BuildJobInterface, Serializable { + + public LocalCIJobDTO { + failedTests = Objects.requireNonNullElse(failedTests, new ArrayList<>()); + successfulTests = Objects.requireNonNullElse(successfulTests, new ArrayList<>()); + } +} diff --git a/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/LocalCITestJobDTO.java b/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/LocalCITestJobDTO.java new file mode 100644 index 000000000000..3232501a8737 --- /dev/null +++ b/src/main/java/de/tum/cit/aet/artemis/buildagent/dto/LocalCITestJobDTO.java @@ -0,0 +1,18 @@ +package de.tum.cit.aet.artemis.buildagent.dto; + +import java.io.Serializable; +import java.util.List; + +import com.fasterxml.jackson.annotation.JsonInclude; + +import de.tum.cit.aet.artemis.programming.dto.TestCaseBase; + +/** + * Represents the information about one test case, including the test case's name and potential error messages that indicate what went wrong. + * + * @param name name of the test case. + * @param testMessages list of error messages. + */ +@JsonInclude(JsonInclude.Include.NON_EMPTY) +public record LocalCITestJobDTO(String name, List testMessages) implements TestCaseBase, Serializable { +} diff --git a/src/main/java/de/tum/cit/aet/artemis/buildagent/service/BuildJobExecutionService.java b/src/main/java/de/tum/cit/aet/artemis/buildagent/service/BuildJobExecutionService.java index e7fd13c7b97e..c77f26b426d1 100644 --- a/src/main/java/de/tum/cit/aet/artemis/buildagent/service/BuildJobExecutionService.java +++ b/src/main/java/de/tum/cit/aet/artemis/buildagent/service/BuildJobExecutionService.java @@ -40,7 +40,10 @@ import com.github.dockerjava.api.exception.NotFoundException; import de.tum.cit.aet.artemis.buildagent.dto.BuildJobQueueItem; +import de.tum.cit.aet.artemis.buildagent.dto.BuildLogDTO; import de.tum.cit.aet.artemis.buildagent.dto.BuildResult; +import de.tum.cit.aet.artemis.buildagent.dto.LocalCIJobDTO; +import de.tum.cit.aet.artemis.buildagent.dto.LocalCITestJobDTO; import de.tum.cit.aet.artemis.core.exception.EntityNotFoundException; import de.tum.cit.aet.artemis.core.exception.GitException; import de.tum.cit.aet.artemis.core.exception.LocalCIException; @@ -327,9 +330,9 @@ private BuildResult runScriptAndParseResults(BuildJobQueueItem buildJob, String try { testResultsTarInputStream = buildJobContainerService.getArchiveFromContainer(containerId, LOCALCI_WORKING_DIRECTORY + LOCALCI_RESULTS_DIRECTORY); + var buildLogs = buildLogsMap.getAndTruncateBuildLogs(buildJob.id()); buildResult = parseTestResults(testResultsTarInputStream, buildJob.buildConfig().branch(), assignmentRepoCommitHash, testRepoCommitHash, buildCompletedDate, - buildJob.id()); - buildResult.setBuildLogEntries(buildLogsMap.getAndTruncateBuildLogs(buildJob.id())); + buildJob.id(), buildLogs); } catch (NotFoundException e) { msg = "Could not find test results in container " + containerName; @@ -389,10 +392,10 @@ private BuildResult runScriptAndParseResults(BuildJobQueueItem buildJob, String // --- Helper methods ---- private BuildResult parseTestResults(TarArchiveInputStream testResultsTarInputStream, String assignmentRepoBranchName, String assignmentRepoCommitHash, - String testsRepoCommitHash, ZonedDateTime buildCompletedDate, String buildJobId) throws IOException { + String testsRepoCommitHash, ZonedDateTime buildCompletedDate, String buildJobId, List buildLogs) throws IOException { - List failedTests = new ArrayList<>(); - List successfulTests = new ArrayList<>(); + List failedTests = new ArrayList<>(); + List successfulTests = new ArrayList<>(); List staticCodeAnalysisReports = new ArrayList<>(); TarArchiveEntry tarEntry; @@ -434,7 +437,7 @@ private BuildResult parseTestResults(TarArchiveInputStream testResultsTarInputSt } return constructBuildResult(failedTests, successfulTests, assignmentRepoBranchName, assignmentRepoCommitHash, testsRepoCommitHash, !failedTests.isEmpty(), - buildCompletedDate, staticCodeAnalysisReports); + buildCompletedDate, staticCodeAnalysisReports, buildLogs); } private boolean isValidTestResultFile(TarArchiveEntry tarArchiveEntry) { @@ -499,7 +502,7 @@ private String readTarEntryContent(TarArchiveInputStream tarArchiveInputStream) */ private BuildResult constructFailedBuildResult(String assignmentRepoBranchName, @Nullable String assignmentRepoCommitHash, @Nullable String testsRepoCommitHash, ZonedDateTime buildRunDate) { - return constructBuildResult(List.of(), List.of(), assignmentRepoBranchName, assignmentRepoCommitHash, testsRepoCommitHash, false, buildRunDate, List.of()); + return constructBuildResult(List.of(), List.of(), assignmentRepoBranchName, assignmentRepoCommitHash, testsRepoCommitHash, false, buildRunDate, List.of(), null); } /** @@ -513,14 +516,15 @@ private BuildResult constructFailedBuildResult(String assignmentRepoBranchName, * @param isBuildSuccessful Whether the build was successful or not. * @param buildRunDate The date when the build was completed. * @param staticCodeAnalysisReports The static code analysis reports + * @param buildLogs the build logs * @return a {@link BuildResult} */ - private BuildResult constructBuildResult(List failedTests, List successfulTests, String assignmentRepoBranchName, + private BuildResult constructBuildResult(List failedTests, List successfulTests, String assignmentRepoBranchName, String assignmentRepoCommitHash, String testsRepoCommitHash, boolean isBuildSuccessful, ZonedDateTime buildRunDate, - List staticCodeAnalysisReports) { - BuildResult.LocalCIJobDTO job = new BuildResult.LocalCIJobDTO(failedTests, successfulTests); - - return new BuildResult(assignmentRepoBranchName, assignmentRepoCommitHash, testsRepoCommitHash, isBuildSuccessful, buildRunDate, List.of(job), staticCodeAnalysisReports); + List staticCodeAnalysisReports, List buildLogs) { + LocalCIJobDTO job = new LocalCIJobDTO(failedTests, successfulTests); + return new BuildResult(assignmentRepoBranchName, assignmentRepoCommitHash, testsRepoCommitHash, isBuildSuccessful, buildRunDate, List.of(job), buildLogs, + staticCodeAnalysisReports, true); } private Path cloneRepository(VcsRepositoryUri repositoryUri, @Nullable String commitHash, boolean checkout, String buildJobId) { diff --git a/src/main/java/de/tum/cit/aet/artemis/buildagent/service/SharedQueueProcessingService.java b/src/main/java/de/tum/cit/aet/artemis/buildagent/service/SharedQueueProcessingService.java index cc9c853ec806..c833a52704ec 100644 --- a/src/main/java/de/tum/cit/aet/artemis/buildagent/service/SharedQueueProcessingService.java +++ b/src/main/java/de/tum/cit/aet/artemis/buildagent/service/SharedQueueProcessingService.java @@ -463,8 +463,7 @@ private void processBuild(BuildJobQueueItem buildJob) { buildLogsMap.removeBuildLogs(buildJob.id()); BuildResult failedResult = new BuildResult(buildJob.buildConfig().branch(), buildJob.buildConfig().assignmentCommitHash(), buildJob.buildConfig().testCommitHash(), - false); - failedResult.setBuildLogEntries(buildLogs); + buildLogs, false); ResultQueueItem resultQueueItem = new ResultQueueItem(failedResult, job, buildLogs, ex); if (processResults.get()) { diff --git a/src/main/java/de/tum/cit/aet/artemis/buildagent/service/TestResultXmlParser.java b/src/main/java/de/tum/cit/aet/artemis/buildagent/service/TestResultXmlParser.java index ef9190911239..51603dd8f20f 100644 --- a/src/main/java/de/tum/cit/aet/artemis/buildagent/service/TestResultXmlParser.java +++ b/src/main/java/de/tum/cit/aet/artemis/buildagent/service/TestResultXmlParser.java @@ -12,7 +12,7 @@ import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlText; -import de.tum.cit.aet.artemis.buildagent.dto.BuildResult; +import de.tum.cit.aet.artemis.buildagent.dto.LocalCITestJobDTO; public class TestResultXmlParser { @@ -75,8 +75,7 @@ public class TestResultXmlParser { * @param successfulTests A list of successful tests. This list will be populated by the method. * @throws IOException If an I/O error occurs while reading the test result file. */ - public static void processTestResultFile(String testResultFileString, List failedTests, List successfulTests) - throws IOException { + public static void processTestResultFile(String testResultFileString, List failedTests, List successfulTests) throws IOException { testResultFileString = testResultFileString.replaceAll(INVALID_XML_CHARS, ""); // The root element can be or @@ -105,7 +104,7 @@ public static void processTestResultFile(String testResultFileString, List failedTests, List successfulTests, TestSuite suite) { + private static void processTopLevelTestSuite(List failedTests, List successfulTests, TestSuite suite) { processTestSuiteWithNamePrefix(suite, failedTests, successfulTests, ""); } @@ -117,8 +116,7 @@ private static void processTopLevelTestSuite(List * @param successfulTests A list of successful tests. This list will be populated by the method. * @param outerNamePrefix The name prefix for the test suite, derived from its parent suites. */ - private static void processInnerTestSuite(TestSuite testSuite, List failedTests, List successfulTests, - String outerNamePrefix) { + private static void processInnerTestSuite(TestSuite testSuite, List failedTests, List successfulTests, String outerNamePrefix) { // namePrefix recursively accumulates all parent testsuite names seperated with dots String namePrefix; if (testSuite.name() != null) { @@ -140,18 +138,17 @@ private static void processInnerTestSuite(TestSuite testSuite, List failedTests, List successfulTests, - String namePrefix) { + private static void processTestSuiteWithNamePrefix(TestSuite testSuite, List failedTests, List successfulTests, String namePrefix) { for (TestCase testCase : testSuite.testCases()) { if (testCase.isSkipped()) { continue; } Failure failure = testCase.extractFailure(); if (failure != null) { - failedTests.add(new BuildResult.LocalCITestJobDTO(namePrefix + testCase.name(), List.of(failure.extractMessage()))); + failedTests.add(new LocalCITestJobDTO(namePrefix + testCase.name(), List.of(failure.extractMessage()))); } else { - successfulTests.add(new BuildResult.LocalCITestJobDTO(namePrefix + testCase.name(), List.of())); + successfulTests.add(new LocalCITestJobDTO(namePrefix + testCase.name(), List.of())); } } @@ -190,11 +187,11 @@ private boolean isSkipped() { private Failure extractFailure() { return failure != null ? failure : error; } - } - // Intentionally empty record to represent the skipped tag () - @JsonIgnoreProperties(ignoreUnknown = true) - record Skip() { + // Intentionally empty record to represent the skipped tag () + @JsonIgnoreProperties(ignoreUnknown = true) + record Skip() { + } } // Due to issues with Jackson this currently cannot be a record. diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/domain/AnswerPost.java b/src/main/java/de/tum/cit/aet/artemis/communication/domain/AnswerPost.java index 9469d9e6d818..bcb3218eb621 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/domain/AnswerPost.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/domain/AnswerPost.java @@ -14,7 +14,6 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import org.hibernate.annotations.SQLRestriction; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; @@ -39,13 +38,6 @@ public class AnswerPost extends Posting { @OneToMany(mappedBy = "answerPost", cascade = CascadeType.REMOVE, orphanRemoval = true, fetch = FetchType.EAGER) private Set reactions = new HashSet<>(); - /*** - * The value 1 represents an answer post, given by the enum {{@link PostingType}} - */ - @OneToMany(mappedBy = "postId", cascade = CascadeType.REMOVE, orphanRemoval = true, fetch = FetchType.LAZY) - @SQLRestriction("post_type = 1") - private Set savedPosts = new HashSet<>(); - @ManyToOne @JsonIncludeProperties({ "id", "exercise", "lecture", "course", "courseWideContext", "conversation", "author" }) private Post post; @@ -90,11 +82,6 @@ public void setPost(Post post) { this.post = post; } - @JsonIgnore - public Set getSavedPosts() { - return savedPosts; - } - @JsonProperty("isSaved") public boolean getIsSaved() { return isSaved; diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/domain/Post.java b/src/main/java/de/tum/cit/aet/artemis/communication/domain/Post.java index 3bb92cb6a540..f6511017f1c6 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/domain/Post.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/domain/Post.java @@ -21,7 +21,6 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import org.hibernate.annotations.SQLRestriction; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; @@ -57,13 +56,6 @@ public class Post extends Posting { @OneToMany(mappedBy = "post", cascade = CascadeType.REMOVE, orphanRemoval = true, fetch = FetchType.EAGER) private Set answers = new HashSet<>(); - /*** - * The value 0 represents a post, given by the enum {{@link PostingType}} - */ - @OneToMany(mappedBy = "postId", cascade = CascadeType.REMOVE, orphanRemoval = true, fetch = FetchType.LAZY) - @SQLRestriction("post_type = 0") - private Set savedPosts = new HashSet<>(); - @ElementCollection(fetch = FetchType.EAGER) @CollectionTable(name = "post_tag", joinColumns = @JoinColumn(name = "post_id")) @Column(name = "text") @@ -235,11 +227,6 @@ public void setVoteCount(Integer voteCount) { this.voteCount = voteCount != null ? voteCount : 0; } - @JsonIgnore - public Set getSavedPosts() { - return savedPosts; - } - @JsonProperty("isSaved") public boolean getIsSaved() { return isSaved; diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/repository/ConversationMessageRepository.java b/src/main/java/de/tum/cit/aet/artemis/communication/repository/ConversationMessageRepository.java index 16c5be3aedc8..2952c5213432 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/repository/ConversationMessageRepository.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/repository/ConversationMessageRepository.java @@ -114,7 +114,6 @@ private PageImpl findPostsWithSpecification(Pageable pageable, Specificati LEFT JOIN FETCH p.conversation LEFT JOIN FETCH p.reactions LEFT JOIN FETCH p.tags - LEFT JOIN FETCH p.savedPosts LEFT JOIN FETCH p.answers a LEFT JOIN FETCH a.reactions LEFT JOIN FETCH a.post diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/repository/PostRepository.java b/src/main/java/de/tum/cit/aet/artemis/communication/repository/PostRepository.java index 1ea95f1d6657..7427a9fc1ce6 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/repository/PostRepository.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/repository/PostRepository.java @@ -48,7 +48,13 @@ default Post findPostOrMessagePostByIdElseThrow(Long postId) throws EntityNotFou List findAllByConversationId(Long conversationId); - List findAllByCourseId(Long courseId); + @Query(""" + SELECT p + FROM Post p + LEFT JOIN p.conversation conversation + WHERE conversation.course.id = :courseId + """) + List findAllByCourseId(@Param("courseId") Long courseId); List findByIdIn(List idList); } diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/repository/SavedPostRepository.java b/src/main/java/de/tum/cit/aet/artemis/communication/repository/SavedPostRepository.java index e0a00a5896aa..f490650f4fc4 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/repository/SavedPostRepository.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/repository/SavedPostRepository.java @@ -46,6 +46,16 @@ public interface SavedPostRepository extends ArtemisJpaRepository findSavedPostByPostIdAndPostType(Long postId, PostingType postType); + /*** * Query all post ids that a user has saved by a certain posting type. Cached by user id and post type. * diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/service/AnswerMessageService.java b/src/main/java/de/tum/cit/aet/artemis/communication/service/AnswerMessageService.java index f7645c202f63..d195ef870d7a 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/service/AnswerMessageService.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/service/AnswerMessageService.java @@ -12,6 +12,7 @@ import de.tum.cit.aet.artemis.communication.domain.AnswerPost; import de.tum.cit.aet.artemis.communication.domain.Post; +import de.tum.cit.aet.artemis.communication.domain.PostingType; import de.tum.cit.aet.artemis.communication.domain.conversation.Channel; import de.tum.cit.aet.artemis.communication.domain.conversation.Conversation; import de.tum.cit.aet.artemis.communication.domain.notification.SingleUserNotification; @@ -209,6 +210,10 @@ public void deleteAnswerMessageById(Long courseId, Long answerMessageId) { answerPostRepository.deleteById(answerMessageId); preparePostForBroadcast(updatedMessage); + // Delete all connected saved posts + var savedPosts = savedPostRepository.findSavedPostByPostIdAndPostType(answerMessageId, PostingType.ANSWER); + savedPostRepository.deleteAll(savedPosts); + broadcastForPost(new PostDTO(updatedMessage, MetisCrudAction.UPDATE), course.getId(), null, null); } diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/service/ConversationMessagingService.java b/src/main/java/de/tum/cit/aet/artemis/communication/service/ConversationMessagingService.java index 06f9409bddc0..9f66ebb10a21 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/service/ConversationMessagingService.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/service/ConversationMessagingService.java @@ -27,6 +27,7 @@ import de.tum.cit.aet.artemis.communication.domain.DisplayPriority; import de.tum.cit.aet.artemis.communication.domain.NotificationType; import de.tum.cit.aet.artemis.communication.domain.Post; +import de.tum.cit.aet.artemis.communication.domain.PostingType; import de.tum.cit.aet.artemis.communication.domain.conversation.Channel; import de.tum.cit.aet.artemis.communication.domain.conversation.Conversation; import de.tum.cit.aet.artemis.communication.domain.conversation.GroupChat; @@ -371,6 +372,10 @@ public void deleteMessageById(Long courseId, Long postId) { conversationParticipantRepository.decrementUnreadMessagesCountOfParticipants(conversation.getId(), user.getId()); conversation = conversationService.getConversationById(conversation.getId()); + // Delete all connected saved posts + var savedPosts = savedPostRepository.findSavedPostByPostIdAndPostType(postId, PostingType.POST); + savedPostRepository.deleteAll(savedPosts); + conversationService.notifyAllConversationMembersAboutUpdate(conversation); preparePostForBroadcast(post); broadcastForPost(new PostDTO(post, MetisCrudAction.DELETE), course.getId(), null, null); diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/service/EmailSummaryService.java b/src/main/java/de/tum/cit/aet/artemis/communication/service/EmailSummaryService.java index 6cdb1f29df6a..c9935129a415 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/service/EmailSummaryService.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/service/EmailSummaryService.java @@ -87,6 +87,10 @@ public void prepareEmailSummariesForUsers(Set users) { private void prepareEmailSummaryForUser(User user, Set allPossiblyRelevantExercisesForSummary) { // Get all courses with exercises, lectures and exams (filtered for given user) Set courses = courseService.findAllActiveForUser(user); + if (courses.isEmpty()) { + // There are not active courses for the user, so it also does not make sense to send an email summary + return; + } // Filter out the relevant exercises for this individual user's summary Set relevantExercisesForThisUser = allPossiblyRelevantExercisesForSummary.stream() diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/service/SavedPostScheduleService.java b/src/main/java/de/tum/cit/aet/artemis/communication/service/SavedPostScheduleService.java index 25e5922031f5..e2487b77e887 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/service/SavedPostScheduleService.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/service/SavedPostScheduleService.java @@ -45,7 +45,7 @@ public void cleanupArchivedSavedPosts() { /** * Cleans up all saved posts where the post entity does not exist anymore */ - @Scheduled(cron = "0 0 0 * * *") + @Scheduled(cron = "0 5 0 * * *") public void cleanupOrphanedSavedPosts() { List orphanedPosts = savedPostRepository.findOrphanedPostReferences(); if (!orphanedPosts.isEmpty()) { diff --git a/src/main/java/de/tum/cit/aet/artemis/communication/service/conversation/ConversationService.java b/src/main/java/de/tum/cit/aet/artemis/communication/service/conversation/ConversationService.java index 6dd36e5e9bac..b9fbbf97715c 100644 --- a/src/main/java/de/tum/cit/aet/artemis/communication/service/conversation/ConversationService.java +++ b/src/main/java/de/tum/cit/aet/artemis/communication/service/conversation/ConversationService.java @@ -164,11 +164,11 @@ public Conversation loadConversationWithParticipantsIfGroupChat(Long conversatio } /** - * Gets the conversation in a course for which the user is a member + * Gets the conversations in a course for which the user is a member * * @param course the course * @param requestingUser the user for which the conversations are requested - * @return the conversation in the course for which the user is a member + * @return list of conversations in the course for which the user is a member */ public List getConversationsOfUser(Course course, User requestingUser) { var conversationsOfUser = new ArrayList(); diff --git a/src/main/java/de/tum/cit/aet/artemis/core/config/Constants.java b/src/main/java/de/tum/cit/aet/artemis/core/config/Constants.java index 274b9e393ecb..a5fa0aaef44a 100644 --- a/src/main/java/de/tum/cit/aet/artemis/core/config/Constants.java +++ b/src/main/java/de/tum/cit/aet/artemis/core/config/Constants.java @@ -316,6 +316,11 @@ public final class Constants { */ public static final String PROFILE_BUILDAGENT = "buildagent"; + /** + * The name of the Spring profile used to process build jobs in a Jenkins setup. + */ + public static final String PROFILE_JENKINS = "jenkins"; + /** * The name of the Spring profile used for Artemis functionality. */ diff --git a/src/main/java/de/tum/cit/aet/artemis/core/config/RestTemplateConfiguration.java b/src/main/java/de/tum/cit/aet/artemis/core/config/RestTemplateConfiguration.java index 4ba55bc3c7dd..2971aa9936e0 100644 --- a/src/main/java/de/tum/cit/aet/artemis/core/config/RestTemplateConfiguration.java +++ b/src/main/java/de/tum/cit/aet/artemis/core/config/RestTemplateConfiguration.java @@ -4,6 +4,7 @@ import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_ATHENA; import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_CORE; import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_IRIS; +import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_JENKINS; import java.util.ArrayList; @@ -13,6 +14,7 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Profile; +import org.springframework.http.client.ClientHttpRequestFactory; import org.springframework.http.client.ClientHttpRequestInterceptor; import org.springframework.http.client.SimpleClientHttpRequestFactory; import org.springframework.http.converter.HttpMessageConverter; @@ -47,7 +49,7 @@ public RestTemplate gitlabRestTemplate(GitLabAuthorizationInterceptor gitlabInte } @Bean - @Profile("jenkins") + @Profile(PROFILE_JENKINS) public RestTemplate jenkinsRestTemplate(JenkinsAuthorizationInterceptor jenkinsInterceptor) { return initializeRestTemplateWithInterceptors(jenkinsInterceptor, createRestTemplate()); } @@ -91,7 +93,7 @@ public RestTemplate shortTimeoutGitlabRestTemplate(GitLabAuthorizationIntercepto } @Bean - @Profile("jenkins") + @Profile(PROFILE_JENKINS) public RestTemplate shortTimeoutJenkinsRestTemplate(JenkinsAuthorizationInterceptor jenkinsInterceptor) { return initializeRestTemplateWithInterceptors(jenkinsInterceptor, createShortTimeoutRestTemplate()); } @@ -115,7 +117,6 @@ public RestTemplate shortTimeoutHermesRestTemplate() { // Note: for certain requests, e.g. the Athena submission selection, we would like to have even shorter timeouts. // Therefore, we need additional rest templates. It is recommended to keep the timeout settings constant per rest template. - @Bean @Profile(PROFILE_ATHENA) public RestTemplate veryShortTimeoutAthenaRestTemplate(AthenaAuthorizationInterceptor athenaAuthorizationInterceptor) { @@ -172,16 +173,19 @@ private RestTemplate createRestTemplate() { } private RestTemplate createShortTimeoutRestTemplate() { - var requestFactory = new SimpleClientHttpRequestFactory(); - requestFactory.setReadTimeout(SHORT_READ_TIMEOUT); - requestFactory.setConnectTimeout(SHORT_CONNECTION_TIMEOUT); + final var requestFactory = getSimpleClientHttpRequestFactory(SHORT_READ_TIMEOUT, SHORT_CONNECTION_TIMEOUT); return new RestTemplate(requestFactory); } - private RestTemplate createVeryShortTimeoutRestTemplate() { + private static ClientHttpRequestFactory getSimpleClientHttpRequestFactory(int shortReadTimeout, int shortConnectionTimeout) { var requestFactory = new SimpleClientHttpRequestFactory(); - requestFactory.setReadTimeout(VERY_SHORT_READ_TIMEOUT); - requestFactory.setConnectTimeout(VERY_SHORT_CONNECTION_TIMEOUT); + requestFactory.setReadTimeout(shortReadTimeout); + requestFactory.setConnectTimeout(shortConnectionTimeout); + return requestFactory; + } + + private RestTemplate createVeryShortTimeoutRestTemplate() { + final var requestFactory = getSimpleClientHttpRequestFactory(VERY_SHORT_READ_TIMEOUT, VERY_SHORT_CONNECTION_TIMEOUT); return new RestTemplate(requestFactory); } } diff --git a/src/main/java/de/tum/cit/aet/artemis/core/config/connector/JenkinsServerConfiguration.java b/src/main/java/de/tum/cit/aet/artemis/core/config/connector/JenkinsServerConfiguration.java deleted file mode 100644 index c0da9667f954..000000000000 --- a/src/main/java/de/tum/cit/aet/artemis/core/config/connector/JenkinsServerConfiguration.java +++ /dev/null @@ -1,31 +0,0 @@ -package de.tum.cit.aet.artemis.core.config.connector; - -import java.net.URISyntaxException; -import java.net.URL; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Profile; - -import com.offbytwo.jenkins.JenkinsServer; - -@Configuration -@Profile("jenkins") -public class JenkinsServerConfiguration { - - @Value("${artemis.continuous-integration.user}") - private String jenkinsUser; - - @Value("${artemis.continuous-integration.password}") - private String jenkinsPassword; - - @Value("${artemis.continuous-integration.url}") - private URL jenkinsServerUrl; - - @Bean - public JenkinsServer jenkinsServer() throws URISyntaxException { - return new JenkinsServer(jenkinsServerUrl.toURI(), jenkinsUser, jenkinsPassword); - } - -} diff --git a/src/main/java/de/tum/cit/aet/artemis/core/domain/User.java b/src/main/java/de/tum/cit/aet/artemis/core/domain/User.java index c435194cdf40..e6c05978126b 100644 --- a/src/main/java/de/tum/cit/aet/artemis/core/domain/User.java +++ b/src/main/java/de/tum/cit/aet/artemis/core/domain/User.java @@ -21,6 +21,7 @@ import jakarta.persistence.JoinTable; import jakarta.persistence.ManyToMany; import jakarta.persistence.OneToMany; +import jakarta.persistence.OneToOne; import jakarta.persistence.Table; import jakarta.persistence.Transient; import jakarta.validation.constraints.Email; @@ -40,6 +41,7 @@ import de.tum.cit.aet.artemis.atlas.domain.competency.CompetencyProgress; import de.tum.cit.aet.artemis.atlas.domain.competency.LearningPath; +import de.tum.cit.aet.artemis.atlas.domain.profile.LearnerProfile; import de.tum.cit.aet.artemis.communication.domain.SavedPost; import de.tum.cit.aet.artemis.communication.domain.push_notification.PushNotificationDeviceConfiguration; import de.tum.cit.aet.artemis.core.config.Constants; @@ -211,6 +213,11 @@ public class User extends AbstractAuditingEntity implements Participant { @Column(name = "iris_accepted") private ZonedDateTime irisAccepted = null; + @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL, orphanRemoval = true) + @JsonIgnoreProperties("user") + @JoinColumn(name = "learner_profile_id") + private LearnerProfile learnerProfile; + public User() { } @@ -534,6 +541,10 @@ public void setIrisAcceptedTimestamp(@Nullable ZonedDateTime irisAccepted) { this.irisAccepted = irisAccepted; } + public boolean hasAcceptedIris() { + return irisAccepted != null; + } + /** * Checks if the user has accepted the Iris privacy policy. * If not, an {@link AccessForbiddenException} is thrown. @@ -543,4 +554,12 @@ public void hasAcceptedIrisElseThrow() { throw new AccessForbiddenException("The user has not accepted the Iris privacy policy yet."); } } + + public LearnerProfile getLearnerProfile() { + return learnerProfile; + } + + public void setLearnerProfile(LearnerProfile learnerProfile) { + this.learnerProfile = learnerProfile; + } } diff --git a/src/main/java/de/tum/cit/aet/artemis/core/dto/CourseDeletionSummaryDTO.java b/src/main/java/de/tum/cit/aet/artemis/core/dto/CourseDeletionSummaryDTO.java index 2f3b8d51596c..8ee1f5982268 100644 --- a/src/main/java/de/tum/cit/aet/artemis/core/dto/CourseDeletionSummaryDTO.java +++ b/src/main/java/de/tum/cit/aet/artemis/core/dto/CourseDeletionSummaryDTO.java @@ -3,5 +3,6 @@ import com.fasterxml.jackson.annotation.JsonInclude; @JsonInclude(JsonInclude.Include.NON_EMPTY) -public record CourseDeletionSummaryDTO(long numberOfBuilds, long numberOfCommunicationPosts, long numberOfAnswerPosts) { +public record CourseDeletionSummaryDTO(long numberOfBuilds, long numberOfCommunicationPosts, long numberOfAnswerPosts, long numberProgrammingExercises, long numberTextExercises, + long numberFileUploadExercises, long numberModelingExercises, long numberQuizExercises, long numberExams, long numberLectures) { } diff --git a/src/main/java/de/tum/cit/aet/artemis/core/repository/DataExportRepository.java b/src/main/java/de/tum/cit/aet/artemis/core/repository/DataExportRepository.java index fb87a2b0a8b0..33d9c104b5f6 100644 --- a/src/main/java/de/tum/cit/aet/artemis/core/repository/DataExportRepository.java +++ b/src/main/java/de/tum/cit/aet/artemis/core/repository/DataExportRepository.java @@ -37,7 +37,7 @@ public interface DataExportRepository extends ArtemisJpaRepository findAllToBeCreated(); /** - * Find all data exports that need to be deleted. This includes all data exports that have a creation date older than 7 days + * Find all data exports that need to be deleted. This includes all data exports that have a creation date older than 7 days and that have not been deleted or failed before * * @param thresholdDate the date to filter data exports, typically 7 days before today. * @return a set of data exports that need to be deleted @@ -47,6 +47,7 @@ public interface DataExportRepository extends ArtemisJpaRepository findAllToBeDeleted(@Param("thresholdDate") ZonedDateTime thresholdDate); diff --git a/src/main/java/de/tum/cit/aet/artemis/core/repository/UserRepository.java b/src/main/java/de/tum/cit/aet/artemis/core/repository/UserRepository.java index 0d3280cf5d96..ddf54cd99117 100644 --- a/src/main/java/de/tum/cit/aet/artemis/core/repository/UserRepository.java +++ b/src/main/java/de/tum/cit/aet/artemis/core/repository/UserRepository.java @@ -178,6 +178,9 @@ OR LOWER(user.login) = LOWER(:searchInput) @EntityGraph(type = LOAD, attributePaths = { "groups", "authorities" }) Set findAllWithGroupsAndAuthoritiesByIsDeletedIsFalseAndGroupsContains(String groupName); + @EntityGraph(type = LOAD, attributePaths = { "groups", "authorities", "learnerProfile" }) + Set findAllWithGroupsAndAuthoritiesAndLearnerProfileByIsDeletedIsFalseAndGroupsContains(String groupName); + @Query(""" SELECT DISTINCT user FROM User user @@ -920,7 +923,7 @@ private String getCurrentUserLogin() { } /** - * Get user with user groups and authorities with the username (i.e. user.getLogin() or principal.getName()) + * Get user with user groups and authorities with the username (i.e. user.getLogin() or principal.name()) * * @param username the username of the user who should be retrieved from the database * @return the user that belongs to the given principal with eagerly loaded groups and authorities @@ -995,6 +998,16 @@ default Set getStudents(Course course) { return findAllWithGroupsAndAuthoritiesByIsDeletedIsFalseAndGroupsContains(course.getStudentGroupName()); } + /** + * Get students by given course with their learner Profile + * + * @param course object + * @return students for given course + */ + default Set getStudentsWithLearnerProfile(Course course) { + return findAllWithGroupsAndAuthoritiesAndLearnerProfileByIsDeletedIsFalseAndGroupsContains(course.getStudentGroupName()); + } + /** * Get tutors by given course * diff --git a/src/main/java/de/tum/cit/aet/artemis/core/security/jwt/JWTFilter.java b/src/main/java/de/tum/cit/aet/artemis/core/security/jwt/JWTFilter.java index ff1ddcaaf3e3..d83fd44615b6 100644 --- a/src/main/java/de/tum/cit/aet/artemis/core/security/jwt/JWTFilter.java +++ b/src/main/java/de/tum/cit/aet/artemis/core/security/jwt/JWTFilter.java @@ -62,7 +62,8 @@ public void doFilter(ServletRequest servletRequest, ServletResponse servletRespo * @param tokenProvider the Artemis token provider used to generate and validate jwt's * @return the valid jwt or null if not found or invalid */ - public static @Nullable String extractValidJwt(HttpServletRequest httpServletRequest, TokenProvider tokenProvider) { + @Nullable + public static String extractValidJwt(HttpServletRequest httpServletRequest, TokenProvider tokenProvider) { var cookie = WebUtils.getCookie(httpServletRequest, JWT_COOKIE_NAME); var authHeader = httpServletRequest.getHeader(AUTHORIZATION_HEADER); @@ -76,8 +77,9 @@ public void doFilter(ServletRequest servletRequest, ServletResponse servletRespo } String jwtToken = cookie != null ? getJwtFromCookie(cookie) : getJwtFromBearer(authHeader); + String source = cookie != null ? "cookie" : "bearer"; - if (!isJwtValid(tokenProvider, jwtToken)) { + if (!isJwtValid(tokenProvider, jwtToken, source)) { return null; } @@ -90,7 +92,8 @@ public void doFilter(ServletRequest servletRequest, ServletResponse servletRespo * @param jwtCookie the cookie with Key "jwt" * @return the jwt or null if not found */ - private static @Nullable String getJwtFromCookie(@Nullable Cookie jwtCookie) { + @Nullable + private static String getJwtFromCookie(@Nullable Cookie jwtCookie) { if (jwtCookie == null) { return null; } @@ -103,7 +106,8 @@ public void doFilter(ServletRequest servletRequest, ServletResponse servletRespo * @param jwtBearer the content of the Authorization header * @return the jwt or null if not found */ - private static @Nullable String getJwtFromBearer(@Nullable String jwtBearer) { + @Nullable + private static String getJwtFromBearer(@Nullable String jwtBearer) { if (!StringUtils.hasText(jwtBearer) || !jwtBearer.startsWith(BEARER_PREFIX)) { return null; } @@ -116,10 +120,11 @@ public void doFilter(ServletRequest servletRequest, ServletResponse servletRespo * Checks if the jwt is valid * * @param tokenProvider the Artemis token provider used to generate and validate jwt's - * @param jwtToken the jwt + * @param jwtToken the jwt token which should be validated + * @param source the source of the jwt token * @return true if the jwt is valid, false if missing or invalid */ - private static boolean isJwtValid(TokenProvider tokenProvider, @Nullable String jwtToken) { - return StringUtils.hasText(jwtToken) && tokenProvider.validateTokenForAuthority(jwtToken); + private static boolean isJwtValid(TokenProvider tokenProvider, @Nullable String jwtToken, @Nullable String source) { + return StringUtils.hasText(jwtToken) && tokenProvider.validateTokenForAuthority(jwtToken, source); } } diff --git a/src/main/java/de/tum/cit/aet/artemis/core/security/jwt/TokenProvider.java b/src/main/java/de/tum/cit/aet/artemis/core/security/jwt/TokenProvider.java index de9a88d01dfa..98cb4560811d 100644 --- a/src/main/java/de/tum/cit/aet/artemis/core/security/jwt/TokenProvider.java +++ b/src/main/java/de/tum/cit/aet/artemis/core/security/jwt/TokenProvider.java @@ -8,6 +8,7 @@ import java.util.List; import java.util.stream.Collectors; +import jakarta.annotation.Nullable; import jakarta.annotation.PostConstruct; import javax.crypto.SecretKey; @@ -125,19 +126,21 @@ public Authentication getAuthentication(String token) { * Validate an JWT Authorization Token * * @param authToken JWT Authorization Token + * @param source the source of the token * @return boolean indicating if token is valid */ - public boolean validateTokenForAuthority(String authToken) { - return validateJwsToken(authToken); + public boolean validateTokenForAuthority(String authToken, @Nullable String source) { + return validateJwsToken(authToken, source); } /** * Validate an JWT Authorization Token * * @param authToken JWT Authorization Token + * @param source the source of the token * @return boolean indicating if token is valid */ - private boolean validateJwsToken(String authToken) { + private boolean validateJwsToken(String authToken, @Nullable String source) { try { parseClaims(authToken); return true; @@ -161,7 +164,7 @@ private boolean validateJwsToken(String authToken) { catch (IllegalArgumentException e) { log.error("Token validation error {}", e.getMessage()); } - log.info("Invalid JWT token: {}", authToken); + log.info("Invalid JWT token: {} from source {}", authToken, source); return false; } @@ -169,13 +172,7 @@ private Claims parseClaims(String authToken) { return Jwts.parser().verifyWith(key).build().parseSignedClaims(authToken).getPayload(); } - public T getClaim(String token, String claimName, Class claimType) { - Claims claims = parseClaims(token); - return claims.get(claimName, claimType); - } - public Date getExpirationDate(String authToken) { return parseClaims(authToken).getExpiration(); } - } diff --git a/src/main/java/de/tum/cit/aet/artemis/core/service/CourseService.java b/src/main/java/de/tum/cit/aet/artemis/core/service/CourseService.java index 232e86070473..b60d01d40313 100644 --- a/src/main/java/de/tum/cit/aet/artemis/core/service/CourseService.java +++ b/src/main/java/de/tum/cit/aet/artemis/core/service/CourseService.java @@ -55,6 +55,7 @@ import de.tum.cit.aet.artemis.assessment.service.TutorLeaderboardService; import de.tum.cit.aet.artemis.atlas.api.CompetencyProgressApi; import de.tum.cit.aet.artemis.atlas.api.CompetencyRelationApi; +import de.tum.cit.aet.artemis.atlas.api.LearnerProfileApi; import de.tum.cit.aet.artemis.atlas.api.LearningPathApi; import de.tum.cit.aet.artemis.atlas.api.PrerequisitesApi; import de.tum.cit.aet.artemis.communication.domain.FaqState; @@ -98,6 +99,7 @@ import de.tum.cit.aet.artemis.exam.repository.ExerciseGroupRepository; import de.tum.cit.aet.artemis.exam.service.ExamDeletionService; import de.tum.cit.aet.artemis.exercise.domain.Exercise; +import de.tum.cit.aet.artemis.exercise.domain.ExerciseType; import de.tum.cit.aet.artemis.exercise.domain.IncludedInOverallScore; import de.tum.cit.aet.artemis.exercise.repository.ExerciseRepository; import de.tum.cit.aet.artemis.exercise.repository.StudentParticipationRepository; @@ -126,8 +128,6 @@ public class CourseService { private static final Logger log = LoggerFactory.getLogger(CourseService.class); - private final FaqRepository faqRepository; - @Value("${artemis.course-archives-path}") private Path courseArchivesDirPath; @@ -215,6 +215,10 @@ public class CourseService { private final BuildJobRepository buildJobRepository; + private final FaqRepository faqRepository; + + private final LearnerProfileApi learnerProfileApi; + private final LLMTokenUsageTraceRepository llmTokenUsageTraceRepository; public CourseService(CourseRepository courseRepository, ExerciseService exerciseService, ExerciseDeletionService exerciseDeletionService, @@ -230,7 +234,8 @@ public CourseService(CourseRepository courseRepository, ExerciseService exercise LearningPathApi learningPathApi, Optional irisSettingsService, LectureRepository lectureRepository, TutorialGroupNotificationRepository tutorialGroupNotificationRepository, TutorialGroupChannelManagementService tutorialGroupChannelManagementService, PrerequisitesApi prerequisitesApi, CompetencyRelationApi competencyRelationApi, PostRepository postRepository, AnswerPostRepository answerPostRepository, - BuildJobRepository buildJobRepository, FaqRepository faqRepository, LLMTokenUsageTraceRepository llmTokenUsageTraceRepository) { + BuildJobRepository buildJobRepository, FaqRepository faqRepository, LearnerProfileApi learnerProfileApi, LLMTokenUsageTraceRepository llmTokenUsageTraceRepository) { + this.courseRepository = courseRepository; this.exerciseService = exerciseService; this.exerciseDeletionService = exerciseDeletionService; @@ -274,6 +279,7 @@ public CourseService(CourseRepository courseRepository, ExerciseService exercise this.postRepository = postRepository; this.answerPostRepository = answerPostRepository; this.faqRepository = faqRepository; + this.learnerProfileApi = learnerProfileApi; this.llmTokenUsageTraceRepository = llmTokenUsageTraceRepository; } @@ -475,13 +481,26 @@ public Set findAllOnlineCoursesForPlatformForUser(String registrationId, * @return the course deletion summary */ public CourseDeletionSummaryDTO getDeletionSummary(Course course) { + Long courseId = course.getId(); + List programmingExerciseIds = course.getExercises().stream().map(Exercise::getId).toList(); long numberOfBuilds = buildJobRepository.countBuildJobsByExerciseIds(programmingExerciseIds); - List posts = postRepository.findAllByCourseId(course.getId()); + List posts = postRepository.findAllByCourseId(courseId); long numberOfCommunicationPosts = posts.size(); long numberOfAnswerPosts = answerPostRepository.countAnswerPostsByPostIdIn(posts.stream().map(Post::getId).toList()); - return new CourseDeletionSummaryDTO(numberOfBuilds, numberOfCommunicationPosts, numberOfAnswerPosts); + long numberLectures = lectureRepository.countByCourse_Id(courseId); + long numberExams = examRepository.countByCourse_Id(courseId); + + Map countByExerciseType = exerciseService.countByCourseIdGroupByType(courseId); + long numberProgrammingExercises = countByExerciseType.get(ExerciseType.PROGRAMMING); + long numberTextExercises = countByExerciseType.get(ExerciseType.TEXT); + long numberQuizExercises = countByExerciseType.get(ExerciseType.QUIZ); + long numberFileUploadExercises = countByExerciseType.get(ExerciseType.FILE_UPLOAD); + long numberModelingExercises = countByExerciseType.get(ExerciseType.MODELING); + + return new CourseDeletionSummaryDTO(numberOfBuilds, numberOfCommunicationPosts, numberOfAnswerPosts, numberProgrammingExercises, numberTextExercises, + numberFileUploadExercises, numberModelingExercises, numberQuizExercises, numberExams, numberLectures); } /** @@ -512,6 +531,7 @@ public void delete(Course course) { deleteExamsOfCourse(course); deleteGradingScaleOfCourse(course); deleteFaqsOfCourse(course); + learnerProfileApi.deleteAllForCourse(course); irisSettingsService.ifPresent(iss -> iss.deleteSettingsFor(course)); courseRepository.deleteById(course.getId()); log.debug("Successfully deleted course {}.", course.getTitle()); @@ -622,6 +642,7 @@ public void enrollUserForCourseOrThrow(User user, Course course) { authCheckService.checkUserAllowedToEnrollInCourseElseThrow(user, course); userService.addUserToGroup(user, course.getStudentGroupName()); if (course.getLearningPathsEnabled()) { + learnerProfileApi.createCourseLearnerProfile(course, user); learningPathApi.generateLearningPathForUser(course, user); } final var auditEvent = new AuditEvent(user.getLogin(), Constants.ENROLL_IN_COURSE, "course=" + course.getTitle()); @@ -655,6 +676,7 @@ public List registerUsersForCourseGroup(Long courseId, List