diff --git a/Back-end/.editorconfig b/Back-end/.editorconfig deleted file mode 100644 index 3003493..0000000 --- a/Back-end/.editorconfig +++ /dev/null @@ -1,11 +0,0 @@ -# EditorConfig is awesome: https://EditorConfig.org - -root = true - -[*] -charset = utf-8 -indent_style = space -indent_size = 2 -trim_trailing_whitespace = true -end_of_line = lf -insert_final_newline = true diff --git a/Back-end/.gitignore b/Back-end/.gitignore deleted file mode 100644 index 432d619..0000000 --- a/Back-end/.gitignore +++ /dev/null @@ -1,185 +0,0 @@ -### Vert.x ### -.vertx/ - -### Eclipse ### - -.metadata -bin/ -tmp/ -*.tmp -*.bak -*.swp -*~.nib -local.properties -.settings/ -.loadpath -.recommenders - -# External tool builders -.externalToolBuilders/ - -# Locally stored "Eclipse launch configurations" -*.launch - -# PyDev specific (Python IDE for Eclipse) -*.pydevproject - -# CDT-specific (C/C++ Development Tooling) -.cproject - -# Java annotation processor (APT) -.factorypath - -# PDT-specific (PHP Development Tools) -.buildpath - -# sbteclipse plugin -.target - -# Tern plugin -.tern-project - -# TeXlipse plugin -.texlipse - -# STS (Spring Tool Suite) -.springBeans - -# Code Recommenders -.recommenders/ - -# Scala IDE specific (Scala & Java development for Eclipse) -.cache-main -.scala_dependencies -.worksheet - -### Intellij+iml ### -# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm -# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 - -# User-specific stuff: -.idea/**/workspace.xml -.idea/**/tasks.xml -.idea/dictionaries - -# Sensitive or high-churn files: -.idea/**/dataSources/ -.idea/**/dataSources.ids -.idea/**/dataSources.xml -.idea/**/dataSources.local.xml -.idea/**/sqlDataSources.xml -.idea/**/dynamic.xml -.idea/**/uiDesigner.xml - -# Gradle: -.idea/**/gradle.xml -.idea/**/libraries - -# CMake -cmake-buildTool-debug/ - -# Mongo Explorer plugin: -.idea/**/mongoSettings.xml - -## File-based project format: -*.iws - -## Plugin-specific files: - -# IntelliJ -/out/ - -# mpeltonen/sbt-idea plugin -.idea_modules/ - -# JIRA plugin -atlassian-ide-plugin.xml - -# Cursive Clojure plugin -.idea/replstate.xml - -# Crashlytics plugin (for Android Studio and IntelliJ) -com_crashlytics_export_strings.xml -crashlytics.properties -crashlytics-buildTool.properties -fabric.properties - -### Intellij+iml Patch ### -# Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-249601023 - -*.iml -modules.xml -.idea/misc.xml -*.ipr - -### macOS ### -*.DS_Store -.AppleDouble -.LSOverride - -# Icon must end with two \r -Icon - -# Thumbnails -._* - -# Files that might appear in the root of a volume -.DocumentRevisions-V100 -.fseventsd -.Spotlight-V100 -.TemporaryItems -.Trashes -.VolumeIcon.icns -.com.apple.timemachine.donotpresent - -# Directories potentially created on remote AFP share -.AppleDB -.AppleDesktop -Network Trash Folder -Temporary Items -.apdisk - -### Maven ### -target/ -pom.xml.tag -pom.xml.releaseBackup -pom.xml.versionsBackup -pom.xml.next -release.properties -dependency-reduced-pom.xml -buildNumber.properties -.mvn/timing.properties - -# Avoid ignoring Maven wrapper jar file (.jar files are usually ignored) -!/.mvn/wrapper/maven-wrapper.jar - -### Gradle ### -.gradle -/buildTool/ - -# Ignore Gradle GUI config -gradle-app.setting - -# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) -!gradle-wrapper.jar - -# Cache of project -.gradletasknamecache - -# # Work around https://youtrack.jetbrains.com/issue/IDEA-116898 -# gradle/wrapper/gradle-wrapper.properties - -### NetBeans ### -nbproject/private/ -buildTool/ -nbbuild/ -dist/ -nbdist/ -.nb-gradle/ - -### VisualStudioCode ### -.vscode/* -!.vscode/settings.json -!.vscode/tasks.json -!.vscode/launch.json -!.vscode/extensions.json diff --git a/Back-end/.mvn/wrapper/maven-wrapper.jar b/Back-end/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index cb28b0e..0000000 Binary files a/Back-end/.mvn/wrapper/maven-wrapper.jar and /dev/null differ diff --git a/Back-end/.mvn/wrapper/maven-wrapper.properties b/Back-end/.mvn/wrapper/maven-wrapper.properties deleted file mode 100644 index 346d645..0000000 --- a/Back-end/.mvn/wrapper/maven-wrapper.properties +++ /dev/null @@ -1,18 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar diff --git a/Back-end/Dockerfile b/Back-end/Dockerfile deleted file mode 100644 index e717a79..0000000 --- a/Back-end/Dockerfile +++ /dev/null @@ -1,25 +0,0 @@ -# Stage 1: Build the Maven artifact -FROM maven:3.9-eclipse-temurin-17 AS build -WORKDIR /app - -# Optimize build by caching dependencies where possible -COPY pom.xml . -# Download dependencies -RUN mvn dependency:go-offline -B - -# Copy source code and build the JAR -COPY src ./src -RUN mvn clean package -DskipTests - -# Stage 2: Setup the runtime environment -FROM eclipse-temurin:17-jre -WORKDIR /app - -# Copy the constructed fat JAR from the builder stage -COPY --from=build /app/target/starter-1.0.0-SNAPSHOT-fat.jar ./app.jar -COPY keystore.jceks ./ - -EXPOSE 8888 - -# Start the Vert.x application -ENTRYPOINT ["java", "-jar", "app.jar"] diff --git a/Back-end/README.adoc b/Back-end/README.adoc deleted file mode 100644 index 2eb78b2..0000000 --- a/Back-end/README.adoc +++ /dev/null @@ -1,31 +0,0 @@ -= Starter - -image:https://img.shields.io/badge/vert.x-4.5.13-purple.svg[link="https://vertx.io"] - -This application was generated using http://start.vertx.io - -== Building - -To launch your tests: -``` -./mvnw clean test -``` - -To package your application: -``` -./mvnw clean package -``` - -To run your application: -``` -./mvnw clean compile exec:java -``` - -== Help - -* https://vertx.io/docs/[Vert.x Documentation] -* https://stackoverflow.com/questions/tagged/vert.x?sort=newest&pageSize=15[Vert.x Stack Overflow] -* https://groups.google.com/forum/?fromgroups#!forum/vertx[Vert.x User Group] -* https://discord.gg/6ry7aqPWXy[Vert.x Discord] - - diff --git a/Back-end/keystore.jceks b/Back-end/keystore.jceks deleted file mode 100644 index 1f4ee58..0000000 Binary files a/Back-end/keystore.jceks and /dev/null differ diff --git a/Back-end/keystore.jceks.old b/Back-end/keystore.jceks.old deleted file mode 100644 index f00730b..0000000 Binary files a/Back-end/keystore.jceks.old and /dev/null differ diff --git a/Back-end/mvnw b/Back-end/mvnw deleted file mode 100755 index 8d937f4..0000000 --- a/Back-end/mvnw +++ /dev/null @@ -1,308 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Apache Maven Wrapper startup batch script, version 3.2.0 -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir -# -# Optional ENV vars -# ----------------- -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files -# ---------------------------------------------------------------------------- - -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi - - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi - -fi - -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "$(uname)" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - JAVA_HOME="$(/usr/libexec/java_home)"; export JAVA_HOME - else - JAVA_HOME="/Library/Java/Home"; export JAVA_HOME - fi - fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=$(java-config --jre-home) - fi -fi - -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$JAVA_HOME" ] && - JAVA_HOME=$(cygpath --unix "$JAVA_HOME") - [ -n "$CLASSPATH" ] && - CLASSPATH=$(cygpath --path --unix "$CLASSPATH") -fi - -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$JAVA_HOME" ] && [ -d "$JAVA_HOME" ] && - JAVA_HOME="$(cd "$JAVA_HOME" || (echo "cannot cd into $JAVA_HOME."; exit 1); pwd)" -fi - -if [ -z "$JAVA_HOME" ]; then - javaExecutable="$(which javac)" - if [ -n "$javaExecutable" ] && ! [ "$(expr "\"$javaExecutable\"" : '\([^ ]*\)')" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=$(which readlink) - if [ ! "$(expr "$readLink" : '\([^ ]*\)')" = "no" ]; then - if $darwin ; then - javaHome="$(dirname "\"$javaExecutable\"")" - javaExecutable="$(cd "\"$javaHome\"" && pwd -P)/javac" - else - javaExecutable="$(readlink -f "\"$javaExecutable\"")" - fi - javaHome="$(dirname "\"$javaExecutable\"")" - javaHome=$(expr "$javaHome" : '\(.*\)/bin') - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi -fi - -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="$(\unset -f command 2>/dev/null; \command -v java)" - fi -fi - -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi - -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." -fi - -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi - - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break - fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=$(cd "$wdir/.." || exit 1; pwd) - fi - # end of workaround - done - printf '%s' "$(cd "$basedir" || exit 1; pwd)" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - # Remove \r in case we run on Windows within Git Bash - # and check out the repository with auto CRLF management - # enabled. Otherwise, we may read lines that are delimited with - # \r\n and produce $'-Xarg\r' rather than -Xarg due to word - # splitting rules. - tr -s '\r\n' ' ' < "$1" - fi -} - -log() { - if [ "$MVNW_VERBOSE" = true ]; then - printf '%s\n' "$1" - fi -} - -BASE_DIR=$(find_maven_basedir "$(dirname "$0")") -if [ -z "$BASE_DIR" ]; then - exit 1; -fi - -MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}; export MAVEN_PROJECTBASEDIR -log "$MAVEN_PROJECTBASEDIR" - -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -wrapperJarPath="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" -if [ -r "$wrapperJarPath" ]; then - log "Found $wrapperJarPath" -else - log "Couldn't find $wrapperJarPath, downloading it ..." - - if [ -n "$MVNW_REPOURL" ]; then - wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" - else - wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" - fi - while IFS="=" read -r key value; do - # Remove '\r' from value to allow usage on windows as IFS does not consider '\r' as a separator ( considers space, tab, new line ('\n'), and custom '=' ) - safeValue=$(echo "$value" | tr -d '\r') - case "$key" in (wrapperUrl) wrapperUrl="$safeValue"; break ;; - esac - done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" - log "Downloading from: $wrapperUrl" - - if $cygwin; then - wrapperJarPath=$(cygpath --path --windows "$wrapperJarPath") - fi - - if command -v wget > /dev/null; then - log "Found wget ... using wget" - [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--quiet" - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget $QUIET "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget $QUIET --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - log "Found curl ... using curl" - [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--silent" - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" - else - curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" - fi - else - log "Falling back to using Java to download" - javaSource="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.java" - javaClass="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.class" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaSource=$(cygpath --path --windows "$javaSource") - javaClass=$(cygpath --path --windows "$javaClass") - fi - if [ -e "$javaSource" ]; then - if [ ! -e "$javaClass" ]; then - log " - Compiling MavenWrapperDownloader.java ..." - ("$JAVA_HOME/bin/javac" "$javaSource") - fi - if [ -e "$javaClass" ]; then - log " - Running MavenWrapperDownloader.java ..." - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$wrapperUrl" "$wrapperJarPath") || rm -f "$wrapperJarPath" - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -# If specified, validate the SHA-256 sum of the Maven wrapper jar file -wrapperSha256Sum="" -while IFS="=" read -r key value; do - case "$key" in (wrapperSha256Sum) wrapperSha256Sum=$value; break ;; - esac -done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" -if [ -n "$wrapperSha256Sum" ]; then - wrapperSha256Result=false - if command -v sha256sum > /dev/null; then - if echo "$wrapperSha256Sum $wrapperJarPath" | sha256sum -c > /dev/null 2>&1; then - wrapperSha256Result=true - fi - elif command -v shasum > /dev/null; then - if echo "$wrapperSha256Sum $wrapperJarPath" | shasum -a 256 -c > /dev/null 2>&1; then - wrapperSha256Result=true - fi - else - echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." - echo "Please install either command, or disable validation by removing 'wrapperSha256Sum' from your maven-wrapper.properties." - exit 1 - fi - if [ $wrapperSha256Result = false ]; then - echo "Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised." >&2 - echo "Investigate or delete $wrapperJarPath to attempt a clean download." >&2 - echo "If you updated your Maven version, you need to update the specified wrapperSha256Sum property." >&2 - exit 1 - fi -fi - -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$JAVA_HOME" ] && - JAVA_HOME=$(cygpath --path --windows "$JAVA_HOME") - [ -n "$CLASSPATH" ] && - CLASSPATH=$(cygpath --path --windows "$CLASSPATH") - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=$(cygpath --path --windows "$MAVEN_PROJECTBASEDIR") -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $*" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -# shellcheck disable=SC2086 # safe args -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/Back-end/mvnw.cmd b/Back-end/mvnw.cmd deleted file mode 100644 index c4586b5..0000000 --- a/Back-end/mvnw.cmd +++ /dev/null @@ -1,205 +0,0 @@ -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM http://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Apache Maven Wrapper startup batch script, version 3.2.0 -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir -@REM -@REM Optional ENV vars -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files -@REM ---------------------------------------------------------------------------- - -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %WRAPPER_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) -) -@REM End of extension - -@REM If specified, validate the SHA-256 sum of the Maven wrapper jar file -SET WRAPPER_SHA_256_SUM="" -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperSha256Sum" SET WRAPPER_SHA_256_SUM=%%B -) -IF NOT %WRAPPER_SHA_256_SUM%=="" ( - powershell -Command "&{"^ - "$hash = (Get-FileHash \"%WRAPPER_JAR%\" -Algorithm SHA256).Hash.ToLower();"^ - "If('%WRAPPER_SHA_256_SUM%' -ne $hash){"^ - " Write-Output 'Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised.';"^ - " Write-Output 'Investigate or delete %WRAPPER_JAR% to attempt a clean download.';"^ - " Write-Output 'If you updated your Maven version, you need to update the specified wrapperSha256Sum property.';"^ - " exit 1;"^ - "}"^ - "}" - if ERRORLEVEL 1 goto error -) - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% diff --git a/Back-end/pom.xml b/Back-end/pom.xml deleted file mode 100644 index 416e008..0000000 --- a/Back-end/pom.xml +++ /dev/null @@ -1,164 +0,0 @@ - - - 4.0.0 - - com.example - starter - 1.0.0-SNAPSHOT - - - UTF-8 - - 3.8.1 - 3.2.4 - 2.22.2 - 3.0.0 - - 4.5.13 - 5.9.1 - - com.example.starter.MainVerticle - io.vertx.core.Launcher - - - - - - io.vertx - vertx-stack-depchain - ${vertx.version} - pom - import - - - - - - - io.vertx - vertx-core - 4.5.13 - - - io.agroal - agroal-api - 1.16 - - - io.agroal - agroal-pool - 1.16 - - - io.vertx - vertx-jdbc-client - - - org.postgresql - postgresql - 42.6.0 - - - io.vertx - vertx-web - 4.4.0 - - - io.vertx - vertx-junit5 - test - - - org.junit.jupiter - junit-jupiter-api - ${junit-jupiter.version} - test - - - org.junit.jupiter - junit-jupiter-engine - ${junit-jupiter.version} - test - - - at.favre.lib - bcrypt - 0.9.0 - - - io.vertx - vertx-auth-jwt - 4.5.13 - - - - - - - - - maven-compiler-plugin - ${maven-compiler-plugin.version} - - 17 - - - - maven-shade-plugin - ${maven-shade-plugin.version} - - - package - - shade - - - - - *:* - - META-INF/*.SF - META-INF/*.DSA - META-INF/*.RSA - - - - - - - ${launcher.class} - ${main.verticle} - - - - - ${project.build.directory}/${project.artifactId}-${project.version}-fat.jar - - - - - - - maven-surefire-plugin - ${maven-surefire-plugin.version} - - - org.codehaus.mojo - exec-maven-plugin - ${exec-maven-plugin.version} - - ${launcher.class} - - run - ${main.verticle} - - - - - - - - diff --git a/Back-end/src/main/java/com/example/starter/AuthHandler.java b/Back-end/src/main/java/com/example/starter/AuthHandler.java deleted file mode 100644 index fa82816..0000000 --- a/Back-end/src/main/java/com/example/starter/AuthHandler.java +++ /dev/null @@ -1,169 +0,0 @@ -package com.example.starter; - -import io.vertx.core.json.JsonObject; -import io.vertx.ext.web.RoutingContext; -import at.favre.lib.crypto.bcrypt.BCrypt; -import io.vertx.ext.auth.jwt.JWTAuth; -import io.vertx.sqlclient.Tuple; -import io.vertx.sqlclient.Row; - -public class AuthHandler { - private final DatabaseService databaseService; - private final JWTAuth jwtAuth; - - public AuthHandler(DatabaseService databaseService, JWTAuth jwtAuth) { - this.databaseService = databaseService; - this.jwtAuth = jwtAuth; - } - - public void handleSignup(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Requête invalide").encode()); - return; - } - - String name = body.getString("name"); - String surname = body.getString("surname"); - String email = body.getString("email"); - String gender = body.getString("gender"); - String password = body.getString("password"); - String pseudo = body.getString("pseudo"); - - if (name == null || surname == null || email == null || gender == null || password == null || pseudo == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Tous les champs sont requis").encode()); - return; - } - - String hashedPassword = BCrypt.withDefaults().hashToString(12, password.toCharArray()); - - databaseService.pool - .preparedQuery("INSERT INTO users (name, surname, email, gender, password, pseudo) VALUES (?, ?, ?, ?, ?, ?)") - .execute(Tuple.of(name, surname, email, gender, hashedPassword, pseudo)) - .onSuccess(result -> { - context.response() - .setStatusCode(201) - .end(new JsonObject().put("message", "Utilisateur inscrit avec succès").encode()); - }) - .onFailure(err -> { - System.err.println("Erreur d'inscription : " + err.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur d'inscription").encode()); - }); - } - - public void handleLogin(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Requête invalide").encode()); - return; - } - - String email = body.getString("email"); - String password = body.getString("password"); - - if (email == null || password == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Email et mot de passe requis").encode()); - return; - } - - databaseService.pool - .preparedQuery("SELECT id, name, surname, password, points FROM users WHERE email = ?") - .execute(Tuple.of(email)) - .onSuccess(result -> { - if (result.rowCount() == 0) { - context.response() - .setStatusCode(401) - .end(new JsonObject().put("error", "Email ou mot de passe incorrect").encode()); - return; - } - - // Récupération de la ligne de manière sécurisée - Row row = null; - try { - row = result.iterator().next(); - } catch (Exception e) { - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur lors de la récupération des données utilisateur").encode()); - return; - } - - // Vérification que row n'est pas null avant d'y accéder - if (row == null) { - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Données utilisateur introuvables").encode()); - return; - } - - // Récupération des champs de manière sécurisée - Integer id = row.getInteger("id"); - String storedHashedPassword = row.getString("password"); - Integer nbPointsUser = row.getInteger("points"); - String name = row.getString("name"); - String surname = row.getString("surname"); - - // Vérification des champs obligatoires - if (id == null || storedHashedPassword == null) { - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Données utilisateur incomplètes").encode()); - return; - } - - // Valeur par défaut pour les points si null - if (nbPointsUser == null) { - nbPointsUser = 0; - } - - BCrypt.Result verification = BCrypt.verifyer().verify(password.toCharArray(), storedHashedPassword); - - if (verification.verified) { - JsonObject claims = new JsonObject() - .put("sub", email) - .put("id", id); - - // Ajout de name et surname seulement s'ils ne sont pas null - if (name != null) claims.put("name", name); - if (surname != null) claims.put("surname", surname); - - // Attribution du rôle en fonction des points - String role = "user"; - if (nbPointsUser >= 200) { - role = "admin"; - } else if (nbPointsUser >= 100) { - role = "complexe"; - } - claims.put("role", role); - - String token = jwtAuth.generateToken(claims); - - context.response() - .setStatusCode(200) - .end(new JsonObject().put("token", token).encode()); - } else { - context.response() - .setStatusCode(401) - .end(new JsonObject().put("error", "Email ou mot de passe incorrect").encode()); - } - }) - .onFailure(err -> { - System.err.println("Erreur de connexion : " + err.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur serveur").encode()); - }); - } -} \ No newline at end of file diff --git a/Back-end/src/main/java/com/example/starter/DatabaseService.java b/Back-end/src/main/java/com/example/starter/DatabaseService.java deleted file mode 100644 index 2572260..0000000 --- a/Back-end/src/main/java/com/example/starter/DatabaseService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.example.starter; - -import io.vertx.core.Vertx; -import io.vertx.jdbcclient.JDBCConnectOptions; -import io.vertx.jdbcclient.JDBCPool; - -import io.vertx.sqlclient.PoolOptions; - -public class DatabaseService { - JDBCPool pool; - - public DatabaseService(Vertx vertx) { - pool = JDBCPool.pool(vertx, - new JDBCConnectOptions() - .setJdbcUrl("jdbc:postgresql://" + (System.getenv("DB_HOST") != null ? System.getenv("DB_HOST") : "localhost") + ":" + (System.getenv("DB_PORT") != null ? System.getenv("DB_PORT") : "5432") + "/" + (System.getenv("DB_NAME") != null ? System.getenv("DB_NAME") : "postgres") + "?useUnicode=true&characterEncoding=UTF-8") - .setUser(System.getenv("DB_USER") != null ? System.getenv("DB_USER") : "postgres") - .setPassword(System.getenv("DB_PASSWORD") != null ? System.getenv("DB_PASSWORD") : "admin"), - new PoolOptions() - .setName("") - .setMaxSize(16) - ); - } -} diff --git a/Back-end/src/main/java/com/example/starter/JwtAuthProvider.java b/Back-end/src/main/java/com/example/starter/JwtAuthProvider.java deleted file mode 100644 index 6c3cd38..0000000 --- a/Back-end/src/main/java/com/example/starter/JwtAuthProvider.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.example.starter; - -import io.vertx.core.Vertx; -import io.vertx.ext.auth.jwt.JWTAuth; -import io.vertx.ext.auth.jwt.JWTAuthOptions; -import io.vertx.ext.auth.KeyStoreOptions; -import com.example.starter.JwtAuthProvider; - - -public class JwtAuthProvider { - - public static JWTAuth createJwtAuth(Vertx vertx) { - return JWTAuth.create(vertx, new JWTAuthOptions() - .setKeyStore(new KeyStoreOptions() - .setPath("keystore.jceks") - .setPassword("secret"))); - } -} diff --git a/Back-end/src/main/java/com/example/starter/MainVerticle.java b/Back-end/src/main/java/com/example/starter/MainVerticle.java deleted file mode 100644 index 1ac4def..0000000 --- a/Back-end/src/main/java/com/example/starter/MainVerticle.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.example.starter; - -import io.vertx.core.AbstractVerticle; -import io.vertx.core.Promise; -import io.vertx.core.http.HttpMethod; -import io.vertx.ext.web.Router; -import io.vertx.ext.web.handler.BodyHandler; -import io.vertx.ext.web.handler.CorsHandler; -import io.vertx.ext.auth.jwt.JWTAuth; -import io.vertx.ext.web.handler.JWTAuthHandler; - -public class MainVerticle extends AbstractVerticle { - private DatabaseService databaseService; - private Router router; - - @Override - public void start(Promise startPromise) throws Exception { - databaseService = new DatabaseService(vertx); - - // Initialisation du fournisseur JWT - JWTAuth jwtAuth = JwtAuthProvider.createJwtAuth(vertx); - - // Initialisation du routeur - router = Router.router(vertx); - router.route().handler(BodyHandler.create()); - router.route().handler(CorsHandler.create() - .addOrigin("*") - .allowedMethod(HttpMethod.GET) - .allowedMethod(HttpMethod.POST) - .allowedHeader("Content-Type") - .allowedHeader("Authorization")); - - // Protéger toutes les routes commençant par "/api/" - router.route("/api/*").handler(JWTAuthHandler.create(jwtAuth)); - - // Initialisation des handlers de requêtes - QueryObjects queryObjects = new QueryObjects(databaseService); - QueryWeatherData queryWeather = new QueryWeatherData(databaseService); - SetObjects setObjects = new SetObjects(databaseService); - SetWeatherData setWeatherData = new SetWeatherData(databaseService); - AuthHandler authHandler = new AuthHandler(databaseService, jwtAuth); - QueryUsers queryUsers = new QueryUsers(databaseService); - SetUser setUser = new SetUser(databaseService); - setObjects.setUserHandler(setUser); - queryObjects.setUserHandler(setUser); - setWeatherData.setUserHandler(setUser); - QueryDeleteObject RequestDeleteObject = new QueryDeleteObject(databaseService); - - SetRequestDeleteObject DeleteObject = new SetRequestDeleteObject(databaseService); - - - - - // Déclaration des routes - router.get("/objets").handler(queryObjects::getObjects); - router.post("/objet").handler(queryObjects::getParticularObject); - router.post("/modifObjet").handler(setObjects::setInfoObjet); - router.get("/wind").handler(queryWeather::getWindInfos); - router.get("/meteo").handler(queryWeather::getMeteoInfos); - router.post("/addObject").handler(setObjects::newObject); - router.get("/getRange").handler(queryWeather::getRangeData); - router.post("/modifRangeData").handler(setWeatherData::setRangeData); - router.post("/deleteObject").handler(setObjects::deleteObject); - router.get("/users").handler(queryUsers::getUsers); - router.post("/user").handler(queryUsers::getUser); - router.post("/setUserPoints").handler(setUser::setUserPoints); - router.post("/deleteUser").handler(setUser::deleteUser); - router.post("/updateProfil").handler(setUser::updateUserProfile); - router.post("/changePassword").handler(setUser::changeUserPassword); - router.post("/publicUser").handler(queryUsers::getPublicUser); - router.get("/getCategories").handler(queryObjects::getCategories); - router.get("/getLocations").handler(queryObjects::getLocations); - router.post("/getMeteoHome").handler(queryWeather::getMeteoInfosHomePage); - router.post("/addCategories").handler(setObjects::newCategorie); - router.post("/deleteCategories").handler(setObjects::deleteCategories); - router.post("/requestDeleteObject").handler(RequestDeleteObject::deleteObject); - router.get("/getDemandeSuppression").handler(DeleteObject::getAllDeletionRequests); - router.post("/reject").handler(RequestDeleteObject::rejectDemande); - // Routes d'authentification - router.post("/signup").handler(authHandler::handleSignup); - router.post("/login").handler(authHandler::handleLogin); - - // Création du serveur HTTP - vertx.createHttpServer() - .requestHandler(router) - .listen(8888) - .onSuccess(server -> { - System.out.println("HTTP server started on port " + server.actualPort()); - startPromise.complete(); - }) - .onFailure(throwable -> { - throwable.printStackTrace(); - startPromise.fail(throwable); - }); - } -} diff --git a/Back-end/src/main/java/com/example/starter/QueryDeleteObject.java b/Back-end/src/main/java/com/example/starter/QueryDeleteObject.java deleted file mode 100644 index 5df7d22..0000000 --- a/Back-end/src/main/java/com/example/starter/QueryDeleteObject.java +++ /dev/null @@ -1,144 +0,0 @@ -package com.example.starter; - -import io.vertx.core.json.JsonObject; -import io.vertx.ext.web.RoutingContext; -import io.vertx.sqlclient.Tuple; - -public class QueryDeleteObject { - private DatabaseService databaseService; - - public QueryDeleteObject(DatabaseService dtbS) { - this.databaseService = dtbS; - } - - public void deleteObject(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - - if (body == null) { - context.response().setStatusCode(400) - .end(new JsonObject().put("error", "Requête invalide").encode()); - return; - } - - Integer objectId = body.getInteger("object_id"); - Integer userId = body.getInteger("requested_by"); - - if (objectId == null || userId == null) { - context.response().setStatusCode(400) - .end(new JsonObject().put("error", "Champs manquants").encode()); - return; - } - - String checkQuery = "SELECT id FROM weather_objects WHERE id = ?"; - - databaseService.pool.preparedQuery(checkQuery).execute(Tuple.of(objectId), res -> { - if (res.failed()) { - res.cause().printStackTrace(); - context.response().setStatusCode(500) - .end(new JsonObject().put("error", "Erreur base de données").encode()); - return; - } - - if (res.result().rowCount() == 0) { - context.response().setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - - String checkDuplicate = "SELECT 1 FROM deletion_requests WHERE object_id = ? AND requested_by = ?"; - - databaseService.pool.preparedQuery(checkDuplicate).execute(Tuple.of(objectId, userId), duplicateCheck -> { - if (duplicateCheck.failed()) { - duplicateCheck.cause().printStackTrace(); - context.response().setStatusCode(500) - .end(new JsonObject().put("error", "Erreur vérification duplication").encode()); - return; - } - - if (duplicateCheck.result().rowCount() > 0) { - context.response().setStatusCode(409) - .end(new JsonObject().put("error", "Demande déjà existante").encode()); - return; - } - - String insertQuery = "INSERT INTO deletion_requests (object_id, requested_by) VALUES (?, ?)"; - - databaseService.pool.preparedQuery(insertQuery).execute(Tuple.of(objectId, userId), insertRes -> { - if (insertRes.succeeded()) { - context.response().setStatusCode(200) - .end(new JsonObject().put("message", "Demande envoyée").encode()); - } else { - insertRes.cause().printStackTrace(); - context.response().setStatusCode(500) - .end(new JsonObject().put("error", "Erreur insertion").encode()); - } - }); - }); - }); - } - - - public void getAllDeletionRequests(RoutingContext context) { - String query = "SELECT * FROM deletion_requests"; - - databaseService.pool.query(query).execute(res -> { - if (res.succeeded()) { - var results = res.result(); - var jsonArray = new io.vertx.core.json.JsonArray(); - - results.forEach(row -> { - JsonObject json = new JsonObject() - .put("id", row.getInteger("id")) - .put("object_id", row.getInteger("object_id")) - .put("requested_by", row.getInteger("requested_by")) - .put("requested_at", row.getLocalDateTime("requested_at").toString()); - - jsonArray.add(json); - }); - - context.response() - .putHeader("Content-Type", "application/json") - .end(jsonArray.encode()); - } else { - res.cause().printStackTrace(); - context.response().setStatusCode(500) - .end(new JsonObject().put("error", "Erreur lors de la récupération des demandes").encode()); - } - }); - } - - public void rejectDemande(RoutingContext context){ - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - Integer id = body.getInteger("id"); - - - databaseService.pool - .preparedQuery("DELETE FROM deletion_requests WHERE id=?") - .execute(Tuple.of(id)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Demande non trouvé").encode()); - return; - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "La demande à bien été supprimé").encode()); - return; - }); - } - -} diff --git a/Back-end/src/main/java/com/example/starter/QueryObjects.java b/Back-end/src/main/java/com/example/starter/QueryObjects.java deleted file mode 100644 index 6638402..0000000 --- a/Back-end/src/main/java/com/example/starter/QueryObjects.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.example.starter; - -import io.vertx.sqlclient.Row; -import io.vertx.sqlclient.RowSet; -import io.vertx.sqlclient.Tuple; -import io.vertx.core.json.JsonArray; -import io.vertx.core.json.JsonObject; - -import java.time.format.DateTimeFormatter; - -import io.vertx.ext.web.RoutingContext; - -public class QueryObjects { - private DatabaseService databaseService; - - public QueryObjects(DatabaseService dtbS) { - this.databaseService = dtbS; - } - - private SetUser setUser; - - public void setUserHandler(SetUser setUser) { - this.setUser = setUser; - } - - public void getObjects(RoutingContext context) { - databaseService.pool - .query("SELECT * FROM weather_objects;") - .execute() - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - context.response() - .putHeader("content-type", "application/json; charset=UTF-8") - .end(getInfosObjects(rows).encode()); - }); - } - - public void getLocations(RoutingContext context) { - databaseService.pool - .query("SELECT DISTINCT location FROM weather_objects;") - .execute() - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (!rows.iterator().hasNext()) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Aucun lieu trouvé dans la base de données").encode()); - return; - } - - JsonArray types = new JsonArray(); - rows.forEach(row -> types.add(row.getString("location"))); - - context.response() - .putHeader("content-type", "application/json; charset=UTF-8") - .end(types.encode()); - }); - } - - public void getCategories(RoutingContext context) { - databaseService.pool - .query("SELECT name FROM categories;") - .execute() - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (!rows.iterator().hasNext()) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Aucun type trouvé dans la base de données").encode()); - return; - } - - JsonArray types = new JsonArray(); - rows.forEach(row -> types.add(row.getString("name"))); - - context.response() - .putHeader("content-type", "application/json; charset=UTF-8") - .end(types.encode()); - }); - } - - public void getParticularObject(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - String id = body.getString("id"); - - String idUser = body.getString("userId"); - if (id == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Paramètre 'id' manquant").encode()); - return; - } - databaseService.pool - .preparedQuery("SELECT * FROM weather_objects WHERE id=?") - .execute(Tuple.of(Integer.parseInt(id))) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("Erreur", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.size() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - - Boolean shouldUpdatePoints = body.getBoolean("shouldUpdatePoints", false); - - if (Boolean.TRUE.equals(shouldUpdatePoints) && idUser != null) { - setUser.updateUserPoints(Integer.parseInt(idUser), 1); - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(getInfosObjects(rows).encode()); - }); - - } - - private JsonArray getInfosObjects(RowSet rows) { - JsonArray objects = new JsonArray(); - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); - for (Row row : rows) { - JsonObject object = new JsonObject() - .put("id", row.getInteger("id")) - .put("name", row.getString("name")) - .put("description", row.getString("description")) - .put("type", row.getString("type")) - .put("location", row.getString("location")) - .put("last_update", row.getLocalDateTime("last_update").format(formatter)) - .put("status", row.getString("status")) - .put("batterie", row.getInteger("batterie")) - .put("type_batterie", row.getString("type_batterie")) - .put("proprio_id", row.getInteger("proprio_id")); - objects.add(object); - } - return objects; - } -} diff --git a/Back-end/src/main/java/com/example/starter/QueryUsers.java b/Back-end/src/main/java/com/example/starter/QueryUsers.java deleted file mode 100644 index 792f575..0000000 --- a/Back-end/src/main/java/com/example/starter/QueryUsers.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.example.starter; - -import io.vertx.core.json.JsonArray; -import io.vertx.core.json.JsonObject; -import io.vertx.ext.web.RoutingContext; -import io.vertx.sqlclient.Row; -import io.vertx.sqlclient.Tuple; - -public class QueryUsers { - private DatabaseService databaseService; - - public QueryUsers(DatabaseService dtbS) { - this.databaseService = dtbS; - } - - public void getUsers(RoutingContext context) { - databaseService.pool - .query("SELECT * FROM users;") - .execute() - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - JsonArray users = new JsonArray(); - for (Row row : rows) { - int points = row.getInteger("points"); - JsonObject user = new JsonObject() - .put("id", row.getInteger("id")) - .put("name", row.getString("name")) - .put("surname", row.getString("surname")) - .put("email", row.getString("email")) - .put("gender", row.getString("gender")) - .put("pseudo",row.getString("pseudo")) - .put("points", points); - if (points <= 60) { - user.put("role", "user"); - } else if (points <= 100) { - user.put("role", "complexe"); - } else if (points >= 200) { - user.put("role", "admin"); - } - users.add(user); - } - context.response() - .putHeader("content-type", "application/json; charset=UTF-8") - .end(users.encode()); - - }); - } - - public void getUser(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - Integer idUser = body.getInteger("id"); - databaseService.pool - .preparedQuery("SELECT * FROM users WHERE id=?;") - .execute(Tuple.of(idUser)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.size() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Utilisateur non trouvé").encode()); - return; - } - - Row row = rows.iterator().next(); - int points = row.getInteger("points"); - JsonObject user = new JsonObject() - .put("id", row.getInteger("id")) - .put("name", row.getString("name")) - .put("surname", row.getString("surname")) - .put("email", row.getString("email")) - .put("gender", row.getString("gender")) - .put("pseudo",row.getString("pseudo")) - .put("points", points); - - if (points <= 60) { - user.put("role", "user"); - } else if (points <= 100) { - user.put("role", "complexe"); - } else if (points >= 200) { - user.put("role", "admin"); - } - - context.response() - .putHeader("content-type", "application/json; charset=UTF-8") - .end(user.encode()); - }); - } - public void getPublicUser(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - Integer idUser = body.getInteger("id"); - databaseService.pool - .preparedQuery("SELECT * FROM users WHERE id=?;") - .execute(Tuple.of(idUser)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.size() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Utilisateur non trouvé").encode()); - return; - } - - Row row = rows.iterator().next(); - int points = row.getInteger("points"); - JsonObject user = new JsonObject() - .put("id", row.getInteger("id")) - .put("gender", row.getString("gender")) - .put("pseudo",row.getString("pseudo")) - .put("points", points); - - if (points <= 60) { - user.put("role", "user"); - } else if (points <= 100) { - user.put("role", "complexe"); - } else if (points >= 200) { - user.put("role", "admin"); - } - - context.response() - .putHeader("content-type", "application/json; charset=UTF-8") - .end(user.encode()); - }); - } -} diff --git a/Back-end/src/main/java/com/example/starter/QueryWeatherData.java b/Back-end/src/main/java/com/example/starter/QueryWeatherData.java deleted file mode 100644 index 0bc7c31..0000000 --- a/Back-end/src/main/java/com/example/starter/QueryWeatherData.java +++ /dev/null @@ -1,166 +0,0 @@ -package com.example.starter; - -import io.vertx.sqlclient.Row; -import io.vertx.sqlclient.RowSet; -import io.vertx.sqlclient.Tuple; - -import java.time.format.DateTimeFormatter; - -import io.vertx.core.json.JsonArray; -import io.vertx.core.json.JsonObject; - -import io.vertx.ext.web.RoutingContext; - -public class QueryWeatherData { - private DatabaseService databaseService; - - public QueryWeatherData(DatabaseService dtbS) { - this.databaseService = dtbS; - } - - public void getWindInfos(RoutingContext context) { - String id = context.request().getParam("id"); - if (id == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Paramètre 'id' manquant").encode()); - return; - } - - databaseService.pool - .preparedQuery("SELECT wind_speed,wind_direction,timestamp FROM weather_data WHERE station_id=?") - .execute(Tuple.of(Integer.parseInt(id))) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("Erreur", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.size() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end((convertRowsToJson(rows)).encode()); - }); - } - - public void getMeteoInfosHomePage(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - String location = body.getString("location"); - if (location == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Paramètre 'location' manquant").encode()); - return; - } - databaseService.pool - .query("SELECT wd.wind_speed, wd.temperature, wd.humidity, wd.pressure FROM weather_data wd " + - "JOIN weather_objects s ON wd.station_id = s.id WHERE s.location = '" + location + - "' ORDER BY wd.timestamp DESC LIMIT 1;") - .execute() - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD : " + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.size() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Aucune donnée trouvée pour cette location").encode()); - return; - } - - context.response() - .putHeader("content-type", "application/json; charset=UTF-8") - .end(convertRowsToJson(rows).encode()); - }); - } - - public void getMeteoInfos(RoutingContext context) { - String id = context.request().getParam("id"); - if (id == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Paramètre 'id' manquant").encode()); - return; - } - - databaseService.pool - .preparedQuery("SELECT temperature,humidity,pressure,timestamp FROM weather_data WHERE station_id=?") - .execute(Tuple.of(Integer.parseInt(id))) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("Erreur", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.size() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end((convertRowsToJson(rows)).encode()); - }); - } - - public void getRangeData(RoutingContext context) { - String id = context.request().getParam("id"); - if (id == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Paramètre 'id' manquant").encode()); - return; - } - databaseService.pool - .preparedQuery( - "SELECT temperature_min,temperature_max,pressure_min,pressure_max,humidity_min,humidity_max FROM range_data WHERE station_id=?") - .execute(Tuple.of(Integer.parseInt(id))) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD: " + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - return; - }) - .onSuccess(rows -> { - if (rows.size() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - context.response() - .putHeader("content-type", "application/json:charset=UTF-8") - .end((convertRowsToJson(rows)).encode()); - }); - } - - private JsonArray convertRowsToJson(RowSet rows) { - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); - JsonArray jsonArray = new JsonArray(); - for (Row row : rows) { - JsonObject jsonObject = new JsonObject(); - for (int i = 0; i < row.size(); i++) { - String column = row.getColumnName(i); - if (column.compareTo("timestamp") == 0) { - jsonObject.put("timestamp", row.getLocalDateTime("timestamp").format(formatter)); - } else { - jsonObject.put(column, row.getValue(column)); - } - } - jsonArray.add(jsonObject); - } - return jsonArray; - } -} \ No newline at end of file diff --git a/Back-end/src/main/java/com/example/starter/SetObjects.java b/Back-end/src/main/java/com/example/starter/SetObjects.java deleted file mode 100644 index dc13a66..0000000 --- a/Back-end/src/main/java/com/example/starter/SetObjects.java +++ /dev/null @@ -1,207 +0,0 @@ -package com.example.starter; - -import io.vertx.core.json.JsonObject; -import io.vertx.ext.web.RoutingContext; -import io.vertx.sqlclient.Tuple; - -public class SetObjects { - private DatabaseService databaseService; - private SetUser setUser; - - public SetObjects(DatabaseService ddbs) { - this.databaseService = ddbs; - } - - public void setUserHandler(SetUser setUser) { - this.setUser = setUser; - } - - public void setInfoObjet(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - Integer id = body.getInteger("id"); - Integer idUser = body.getInteger("idUser"); - String description = body.getString("description"); - String type = body.getString("type"); - String location = body.getString("location"); - String status = body.getString("status"); - - databaseService.pool - .preparedQuery( - "UPDATE weather_objects SET description=?,type=?,location=?,status=?,last_update=CURRENT_TIMESTAMP WHERE id=?") - .execute(Tuple.of(description, type, location, status, id)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("Erreur", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - Boolean shouldUpdatePoints = body.getBoolean("shouldUpdatePoints", false); - - if (Boolean.TRUE.equals(shouldUpdatePoints) && idUser != null) { - setUser.updateUserPoints(idUser, 1); - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "L'objet à bien été mis à jour").encode()); - return; - }); - } - - public void deleteCategories(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - String name = body.getString("name"); - databaseService.pool - .preparedQuery("DELETE FROM categories WHERE name=?") - .execute(Tuple.of(name)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Catégorie non trouvé").encode()); - return; - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "La catégorie à bien été supprimé").encode()); - return; - }); - } - - public void deleteObject(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - String id = body.getString("id"); - databaseService.pool - .preparedQuery("DELETE FROM weather_objects WHERE id=?") - .execute(Tuple.of(Integer.parseInt(id))) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "L'objet à bien été supprimé").encode()); - return; - }); - - } - - public void newObject(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - Integer idUser = body.getInteger("proprio_id"); - String name = body.getString("nom"); - String description = body.getString("description"); - String type = body.getString("type"); - String location = body.getString("location"); - String status = body.getString("status"); - String batterieType = body.getString("batterieType"); - Integer proprio_id = body.getInteger("proprio_id"); - databaseService.pool - .preparedQuery( - "INSERT INTO weather_objects (name,description,type,location,status,type_batterie,proprio_id) VALUES (?,?,?,?,?,?,?)") - .execute(Tuple.of(name, description, type, location, status, batterieType, proprio_id)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - if (idUser != null) { - setUser.updateUserPoints(idUser, 2); - } - ; - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "L'objet à bien été ajouté").encode()); - return; - }); - } - - public void newCategorie(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - String name = body.getString("name"); - - databaseService.pool - .preparedQuery( - "INSERT INTO categories (name) VALUES (?)") - .execute(Tuple.of(name)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "La catégorie à bien été ajouté").encode()); - return; - }); - } - -} diff --git a/Back-end/src/main/java/com/example/starter/SetRequestDeleteObject.java b/Back-end/src/main/java/com/example/starter/SetRequestDeleteObject.java deleted file mode 100644 index 2767041..0000000 --- a/Back-end/src/main/java/com/example/starter/SetRequestDeleteObject.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.example.starter; - -import io.vertx.core.json.JsonArray; -import io.vertx.core.json.JsonObject; -import io.vertx.ext.web.RoutingContext; -import io.vertx.sqlclient.Row; -import io.vertx.sqlclient.RowSet; - -public class SetRequestDeleteObject { - private final DatabaseService databaseService; - - // Le nom du constructeur doit correspondre au nom de la classe - public SetRequestDeleteObject(DatabaseService dtbS) { - this.databaseService = dtbS; - } - - public void getAllDeletionRequests(RoutingContext context) { - String query = "SELECT * FROM deletion_requests"; - - databaseService.pool.query(query).execute(res -> { - if (res.succeeded()) { - RowSet results = res.result(); - JsonArray jsonArray = new JsonArray(); - - results.forEach(row -> { - JsonObject json = new JsonObject() - .put("id", row.getInteger("id")) - .put("object_id", row.getInteger("object_id")) - .put("requested_by", row.getInteger("requested_by")) - .put("request_date", row.getLocalDateTime("request_date").toString()); // Assurez-vous que le type correspond - jsonArray.add(json); - }); - - context.response() - .putHeader("Content-Type", "application/json") - .end(jsonArray.encode()); - } else { - res.cause().printStackTrace(); - context.response().setStatusCode(500).end(new JsonObject().put("error", "Erreur lors de la récupération des demandes").encode()); - } - }); - } -} diff --git a/Back-end/src/main/java/com/example/starter/SetUser.java b/Back-end/src/main/java/com/example/starter/SetUser.java deleted file mode 100644 index 47aa996..0000000 --- a/Back-end/src/main/java/com/example/starter/SetUser.java +++ /dev/null @@ -1,196 +0,0 @@ -package com.example.starter; - -import at.favre.lib.crypto.bcrypt.BCrypt; -import io.vertx.core.json.JsonObject; -import io.vertx.ext.web.RoutingContext; -import io.vertx.sqlclient.Tuple; - -public class SetUser { - private DatabaseService databaseService; - - public SetUser(DatabaseService ddbs) { - this.databaseService = ddbs; - } - - public void updateUserPoints(Integer userId, Integer points) { - databaseService.pool - .preparedQuery("UPDATE users SET points=points+? WHERE id=?") - .execute(Tuple.of(points, userId)) - .onFailure(e -> { - System.err.println("Erreur de mise à jour des points :" + e.getMessage()); - }) - .onSuccess(rows -> { - if (rows.rowCount() > 0) { - System.out.println("Points de l'utilisateur mis à jour avec succès"); - } else { - System.out.println("Utilisateur non trouvé pour la mise à jour des points"); - } - }); - } - - public void changeUserPassword(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - Integer id = body.getInteger("id"); - String oldPassword = body.getString("oldPassword"); - String newPassword = body.getString("newPassword"); - - databaseService.pool - .preparedQuery("SELECT password FROM users WHERE id=?") - .execute(Tuple.of(id)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Utilisateur non trouvé").encode()); - return; - } - - String currentPassword = rows.iterator().next().getString("password"); - BCrypt.Result verification = BCrypt.verifyer().verify(oldPassword.toCharArray(), currentPassword); - - if (!verification.verified) { - context.response() - .setStatusCode(401) - .end(new JsonObject().put("error", "Ancien mot de passe incorrect").encode()); - return; - } - String hashedPassword = BCrypt.withDefaults().hashToString(12, newPassword.toCharArray()); - - databaseService.pool - .preparedQuery("UPDATE users SET password=? WHERE id=?") - .execute(Tuple.of(hashedPassword, id)) - .onFailure(e -> { - System.err.println("Erreur lors de la mise à jour du mot de passe :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject() - .put("error", "Erreur lors de la mise à jour du mot de passe") - .encode()); - }) - .onSuccess(updateRows -> { - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "Le mot de passe a bien été mis à jour") - .encode()); - }); - }); - } - - public void updateUserProfile(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - Integer id = body.getInteger("id"); - String name = body.getString("name"); - String surname = body.getString("surname"); - String pseudo = body.getString("pseudo"); - - databaseService.pool - .preparedQuery("UPDATE users SET name=?, surname=?, pseudo=? WHERE id=?") - .execute(Tuple.of(name, surname,pseudo, id)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Utilisateur non trouvé").encode()); - return; - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject() - .put("success", "Les informations de l'utilisateur ont bien été mises à jour") - .encode()); - return; - }); - } - - public void setUserPoints(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - Integer id = body.getInteger("id"); - Integer points = body.getInteger("points"); - databaseService.pool - .preparedQuery( - "UPDATE users SET points=? WHERE id=?") - .execute(Tuple.of(points, id)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("Erreur", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Utilisateur non trouvé").encode()); - return; - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "Les points de l'utilisateur ont bien été mis à jour") - .encode()); - return; - }); - } - - public void deleteUser(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - Integer id = body.getInteger("id"); - databaseService.pool - .preparedQuery("DELETE FROM users WHERE id=?") - .execute(Tuple.of(id)) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("error", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Utilisateur non trouvé").encode()); - return; - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "L'utilisateur à bien été supprimé").encode()); - return; - }); - - } -} diff --git a/Back-end/src/main/java/com/example/starter/SetWeatherData.java b/Back-end/src/main/java/com/example/starter/SetWeatherData.java deleted file mode 100644 index 233611f..0000000 --- a/Back-end/src/main/java/com/example/starter/SetWeatherData.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.example.starter; - -import io.vertx.core.json.JsonObject; -import io.vertx.ext.web.RoutingContext; -import io.vertx.sqlclient.Tuple; - -public class SetWeatherData { - private DatabaseService databaseService; - private SetUser setUser; - - - public SetWeatherData(DatabaseService ddbs) { - this.databaseService = ddbs; - } - public void setUserHandler(SetUser setUser) { - this.setUser = setUser; - } - public void setRangeData(RoutingContext context) { - JsonObject body = context.body().asJsonObject(); - if (body == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Corps de la requête manquant").encode()); - return; - } - String id = body.getString("id"); - Double min = body.getDouble("min"); - Double max = body.getDouble("max"); - String type = body.getString("type"); - - if (id == null || min == null || max == null || type == null) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Paramètres manquants ou invalides").encode()); - return; - } - if (!type.matches("^[a-zA-Z_]+$")) { - context.response() - .setStatusCode(400) - .end(new JsonObject().put("error", "Type invalide").encode()); - return; - } - String query = String.format("UPDATE range_data SET %s_min=?, %s_max=? WHERE station_id=?", type, type); - Integer idUser = body.getInteger("idUser"); - databaseService.pool - .preparedQuery( - query) - .execute(Tuple.of(min, max, Integer.parseInt(id))) - .onFailure(e -> { - System.err.println("Erreur de récupération de la BDD :" + e.getMessage()); - context.response() - .setStatusCode(500) - .end(new JsonObject().put("Erreur", "Erreur de récupération de la BDD").encode()); - }) - .onSuccess(rows -> { - if (rows.rowCount() == 0) { - context.response() - .setStatusCode(404) - .end(new JsonObject().put("error", "Objet non trouvé").encode()); - return; - } - if (idUser != null) { - setUser.updateUserPoints(idUser, 1); - } - context.response() - .putHeader("content-type", "application/json: charset=UTF-8") - .end(new JsonObject().put("success", "Les limites ont bien été mis à jour").encode()); - return; - }); - } - -} diff --git a/Back-end/src/test/java/com/example/starter/TestMainVerticle.java b/Back-end/src/test/java/com/example/starter/TestMainVerticle.java deleted file mode 100644 index 333630b..0000000 --- a/Back-end/src/test/java/com/example/starter/TestMainVerticle.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.example.starter; - -import io.vertx.core.Vertx; -import io.vertx.junit5.VertxExtension; -import io.vertx.junit5.VertxTestContext; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.extension.ExtendWith; - -@ExtendWith(VertxExtension.class) -public class TestMainVerticle { - - @BeforeEach - void deploy_verticle(Vertx vertx, VertxTestContext testContext) { - vertx.deployVerticle(new MainVerticle()).onComplete(testContext.succeeding(id -> testContext.completeNow())); - } - - @Test - void verticle_deployed(Vertx vertx, VertxTestContext testContext) throws Throwable { - testContext.completeNow(); - } -} diff --git a/Front-end/.gitignore b/Front-end/.gitignore deleted file mode 100644 index a547bf3..0000000 --- a/Front-end/.gitignore +++ /dev/null @@ -1,24 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -pnpm-debug.log* -lerna-debug.log* - -node_modules -dist -dist-ssr -*.local - -# Editor directories and files -.vscode/* -!.vscode/extensions.json -.idea -.DS_Store -*.suo -*.ntvs* -*.njsproj -*.sln -*.sw? diff --git a/Front-end/.vite/deps/@mui_material_Slider.js b/Front-end/.vite/deps/@mui_material_Slider.js deleted file mode 100644 index 837b465..0000000 --- a/Front-end/.vite/deps/@mui_material_Slider.js +++ /dev/null @@ -1,11295 +0,0 @@ -import { - _extends, - clsx_default, - require_prop_types -} from "./chunk-AG6MXCTY.js"; -import { - require_react -} from "./chunk-TWJRYSII.js"; -import "./chunk-PMYNNG2G.js"; -import { - __commonJS, - __publicField, - __toESM -} from "./chunk-DC5AMYBS.js"; - -// node_modules/react/cjs/react-jsx-runtime.development.js -var require_react_jsx_runtime_development = __commonJS({ - "node_modules/react/cjs/react-jsx-runtime.development.js"(exports) { - "use strict"; - if (true) { - (function() { - "use strict"; - var React44 = require_react(); - var REACT_ELEMENT_TYPE = Symbol.for("react.element"); - var REACT_PORTAL_TYPE = Symbol.for("react.portal"); - var REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"); - var REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"); - var REACT_PROFILER_TYPE = Symbol.for("react.profiler"); - var REACT_PROVIDER_TYPE = Symbol.for("react.provider"); - var REACT_CONTEXT_TYPE = Symbol.for("react.context"); - var REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"); - var REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"); - var REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"); - var REACT_MEMO_TYPE = Symbol.for("react.memo"); - var REACT_LAZY_TYPE = Symbol.for("react.lazy"); - var REACT_OFFSCREEN_TYPE = Symbol.for("react.offscreen"); - var MAYBE_ITERATOR_SYMBOL = Symbol.iterator; - var FAUX_ITERATOR_SYMBOL = "@@iterator"; - function getIteratorFn(maybeIterable) { - if (maybeIterable === null || typeof maybeIterable !== "object") { - return null; - } - var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]; - if (typeof maybeIterator === "function") { - return maybeIterator; - } - return null; - } - var ReactSharedInternals = React44.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; - function error(format) { - { - { - for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { - args[_key2 - 1] = arguments[_key2]; - } - printWarning("error", format, args); - } - } - } - function printWarning(level, format, args) { - { - var ReactDebugCurrentFrame2 = ReactSharedInternals.ReactDebugCurrentFrame; - var stack = ReactDebugCurrentFrame2.getStackAddendum(); - if (stack !== "") { - format += "%s"; - args = args.concat([stack]); - } - var argsWithFormat = args.map(function(item) { - return String(item); - }); - argsWithFormat.unshift("Warning: " + format); - Function.prototype.apply.call(console[level], console, argsWithFormat); - } - } - var enableScopeAPI = false; - var enableCacheElement = false; - var enableTransitionTracing = false; - var enableLegacyHidden = false; - var enableDebugTracing = false; - var REACT_MODULE_REFERENCE; - { - REACT_MODULE_REFERENCE = Symbol.for("react.module.reference"); - } - function isValidElementType2(type) { - if (typeof type === "string" || typeof type === "function") { - return true; - } - if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableCacheElement || enableTransitionTracing) { - return true; - } - if (typeof type === "object" && type !== null) { - if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object - // types supported by any Flight configuration anywhere since - // we don't know which Flight build this will end up being used - // with. - type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== void 0) { - return true; - } - } - return false; - } - function getWrappedName2(outerType, innerType, wrapperName) { - var displayName = outerType.displayName; - if (displayName) { - return displayName; - } - var functionName = innerType.displayName || innerType.name || ""; - return functionName !== "" ? wrapperName + "(" + functionName + ")" : wrapperName; - } - function getContextName(type) { - return type.displayName || "Context"; - } - function getComponentNameFromType(type) { - if (type == null) { - return null; - } - { - if (typeof type.tag === "number") { - error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."); - } - } - if (typeof type === "function") { - return type.displayName || type.name || null; - } - if (typeof type === "string") { - return type; - } - switch (type) { - case REACT_FRAGMENT_TYPE: - return "Fragment"; - case REACT_PORTAL_TYPE: - return "Portal"; - case REACT_PROFILER_TYPE: - return "Profiler"; - case REACT_STRICT_MODE_TYPE: - return "StrictMode"; - case REACT_SUSPENSE_TYPE: - return "Suspense"; - case REACT_SUSPENSE_LIST_TYPE: - return "SuspenseList"; - } - if (typeof type === "object") { - switch (type.$$typeof) { - case REACT_CONTEXT_TYPE: - var context = type; - return getContextName(context) + ".Consumer"; - case REACT_PROVIDER_TYPE: - var provider = type; - return getContextName(provider._context) + ".Provider"; - case REACT_FORWARD_REF_TYPE: - return getWrappedName2(type, type.render, "ForwardRef"); - case REACT_MEMO_TYPE: - var outerName = type.displayName || null; - if (outerName !== null) { - return outerName; - } - return getComponentNameFromType(type.type) || "Memo"; - case REACT_LAZY_TYPE: { - var lazyComponent = type; - var payload = lazyComponent._payload; - var init = lazyComponent._init; - try { - return getComponentNameFromType(init(payload)); - } catch (x) { - return null; - } - } - } - } - return null; - } - var assign2 = Object.assign; - var disabledDepth = 0; - var prevLog; - var prevInfo; - var prevWarn; - var prevError; - var prevGroup; - var prevGroupCollapsed; - var prevGroupEnd; - function disabledLog() { - } - disabledLog.__reactDisabledLog = true; - function disableLogs() { - { - if (disabledDepth === 0) { - prevLog = console.log; - prevInfo = console.info; - prevWarn = console.warn; - prevError = console.error; - prevGroup = console.group; - prevGroupCollapsed = console.groupCollapsed; - prevGroupEnd = console.groupEnd; - var props = { - configurable: true, - enumerable: true, - value: disabledLog, - writable: true - }; - Object.defineProperties(console, { - info: props, - log: props, - warn: props, - error: props, - group: props, - groupCollapsed: props, - groupEnd: props - }); - } - disabledDepth++; - } - } - function reenableLogs() { - { - disabledDepth--; - if (disabledDepth === 0) { - var props = { - configurable: true, - enumerable: true, - writable: true - }; - Object.defineProperties(console, { - log: assign2({}, props, { - value: prevLog - }), - info: assign2({}, props, { - value: prevInfo - }), - warn: assign2({}, props, { - value: prevWarn - }), - error: assign2({}, props, { - value: prevError - }), - group: assign2({}, props, { - value: prevGroup - }), - groupCollapsed: assign2({}, props, { - value: prevGroupCollapsed - }), - groupEnd: assign2({}, props, { - value: prevGroupEnd - }) - }); - } - if (disabledDepth < 0) { - error("disabledDepth fell below zero. This is a bug in React. Please file an issue."); - } - } - } - var ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher; - var prefix3; - function describeBuiltInComponentFrame(name, source, ownerFn) { - { - if (prefix3 === void 0) { - try { - throw Error(); - } catch (x) { - var match2 = x.stack.trim().match(/\n( *(at )?)/); - prefix3 = match2 && match2[1] || ""; - } - } - return "\n" + prefix3 + name; - } - } - var reentry = false; - var componentFrameCache; - { - var PossiblyWeakMap = typeof WeakMap === "function" ? WeakMap : Map; - componentFrameCache = new PossiblyWeakMap(); - } - function describeNativeComponentFrame(fn, construct) { - if (!fn || reentry) { - return ""; - } - { - var frame = componentFrameCache.get(fn); - if (frame !== void 0) { - return frame; - } - } - var control; - reentry = true; - var previousPrepareStackTrace = Error.prepareStackTrace; - Error.prepareStackTrace = void 0; - var previousDispatcher; - { - previousDispatcher = ReactCurrentDispatcher.current; - ReactCurrentDispatcher.current = null; - disableLogs(); - } - try { - if (construct) { - var Fake = function() { - throw Error(); - }; - Object.defineProperty(Fake.prototype, "props", { - set: function() { - throw Error(); - } - }); - if (typeof Reflect === "object" && Reflect.construct) { - try { - Reflect.construct(Fake, []); - } catch (x) { - control = x; - } - Reflect.construct(fn, [], Fake); - } else { - try { - Fake.call(); - } catch (x) { - control = x; - } - fn.call(Fake.prototype); - } - } else { - try { - throw Error(); - } catch (x) { - control = x; - } - fn(); - } - } catch (sample) { - if (sample && control && typeof sample.stack === "string") { - var sampleLines = sample.stack.split("\n"); - var controlLines = control.stack.split("\n"); - var s = sampleLines.length - 1; - var c = controlLines.length - 1; - while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) { - c--; - } - for (; s >= 1 && c >= 0; s--, c--) { - if (sampleLines[s] !== controlLines[c]) { - if (s !== 1 || c !== 1) { - do { - s--; - c--; - if (c < 0 || sampleLines[s] !== controlLines[c]) { - var _frame = "\n" + sampleLines[s].replace(" at new ", " at "); - if (fn.displayName && _frame.includes("")) { - _frame = _frame.replace("", fn.displayName); - } - { - if (typeof fn === "function") { - componentFrameCache.set(fn, _frame); - } - } - return _frame; - } - } while (s >= 1 && c >= 0); - } - break; - } - } - } - } finally { - reentry = false; - { - ReactCurrentDispatcher.current = previousDispatcher; - reenableLogs(); - } - Error.prepareStackTrace = previousPrepareStackTrace; - } - var name = fn ? fn.displayName || fn.name : ""; - var syntheticFrame = name ? describeBuiltInComponentFrame(name) : ""; - { - if (typeof fn === "function") { - componentFrameCache.set(fn, syntheticFrame); - } - } - return syntheticFrame; - } - function describeFunctionComponentFrame(fn, source, ownerFn) { - { - return describeNativeComponentFrame(fn, false); - } - } - function shouldConstruct(Component) { - var prototype = Component.prototype; - return !!(prototype && prototype.isReactComponent); - } - function describeUnknownElementTypeFrameInDEV(type, source, ownerFn) { - if (type == null) { - return ""; - } - if (typeof type === "function") { - { - return describeNativeComponentFrame(type, shouldConstruct(type)); - } - } - if (typeof type === "string") { - return describeBuiltInComponentFrame(type); - } - switch (type) { - case REACT_SUSPENSE_TYPE: - return describeBuiltInComponentFrame("Suspense"); - case REACT_SUSPENSE_LIST_TYPE: - return describeBuiltInComponentFrame("SuspenseList"); - } - if (typeof type === "object") { - switch (type.$$typeof) { - case REACT_FORWARD_REF_TYPE: - return describeFunctionComponentFrame(type.render); - case REACT_MEMO_TYPE: - return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn); - case REACT_LAZY_TYPE: { - var lazyComponent = type; - var payload = lazyComponent._payload; - var init = lazyComponent._init; - try { - return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn); - } catch (x) { - } - } - } - } - return ""; - } - var hasOwnProperty = Object.prototype.hasOwnProperty; - var loggedTypeFailures = {}; - var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame; - function setCurrentlyValidatingElement(element) { - { - if (element) { - var owner = element._owner; - var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null); - ReactDebugCurrentFrame.setExtraStackFrame(stack); - } else { - ReactDebugCurrentFrame.setExtraStackFrame(null); - } - } - } - function checkPropTypes(typeSpecs, values2, location, componentName, element) { - { - var has = Function.call.bind(hasOwnProperty); - for (var typeSpecName in typeSpecs) { - if (has(typeSpecs, typeSpecName)) { - var error$1 = void 0; - try { - if (typeof typeSpecs[typeSpecName] !== "function") { - var err = Error((componentName || "React class") + ": " + location + " type `" + typeSpecName + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof typeSpecs[typeSpecName] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."); - err.name = "Invariant Violation"; - throw err; - } - error$1 = typeSpecs[typeSpecName](values2, typeSpecName, componentName, location, null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"); - } catch (ex) { - error$1 = ex; - } - if (error$1 && !(error$1 instanceof Error)) { - setCurrentlyValidatingElement(element); - error("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).", componentName || "React class", location, typeSpecName, typeof error$1); - setCurrentlyValidatingElement(null); - } - if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) { - loggedTypeFailures[error$1.message] = true; - setCurrentlyValidatingElement(element); - error("Failed %s type: %s", location, error$1.message); - setCurrentlyValidatingElement(null); - } - } - } - } - } - var isArrayImpl = Array.isArray; - function isArray(a) { - return isArrayImpl(a); - } - function typeName(value) { - { - var hasToStringTag = typeof Symbol === "function" && Symbol.toStringTag; - var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || "Object"; - return type; - } - } - function willCoercionThrow(value) { - { - try { - testStringCoercion(value); - return false; - } catch (e) { - return true; - } - } - } - function testStringCoercion(value) { - return "" + value; - } - function checkKeyStringCoercion(value) { - { - if (willCoercionThrow(value)) { - error("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", typeName(value)); - return testStringCoercion(value); - } - } - } - var ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner; - var RESERVED_PROPS = { - key: true, - ref: true, - __self: true, - __source: true - }; - var specialPropKeyWarningShown; - var specialPropRefWarningShown; - var didWarnAboutStringRefs; - { - didWarnAboutStringRefs = {}; - } - function hasValidRef(config) { - { - if (hasOwnProperty.call(config, "ref")) { - var getter = Object.getOwnPropertyDescriptor(config, "ref").get; - if (getter && getter.isReactWarning) { - return false; - } - } - } - return config.ref !== void 0; - } - function hasValidKey(config) { - { - if (hasOwnProperty.call(config, "key")) { - var getter = Object.getOwnPropertyDescriptor(config, "key").get; - if (getter && getter.isReactWarning) { - return false; - } - } - } - return config.key !== void 0; - } - function warnIfStringRefCannotBeAutoConverted(config, self2) { - { - if (typeof config.ref === "string" && ReactCurrentOwner.current && self2 && ReactCurrentOwner.current.stateNode !== self2) { - var componentName = getComponentNameFromType(ReactCurrentOwner.current.type); - if (!didWarnAboutStringRefs[componentName]) { - error('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner.current.type), config.ref); - didWarnAboutStringRefs[componentName] = true; - } - } - } - } - function defineKeyPropWarningGetter(props, displayName) { - { - var warnAboutAccessingKey = function() { - if (!specialPropKeyWarningShown) { - specialPropKeyWarningShown = true; - error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", displayName); - } - }; - warnAboutAccessingKey.isReactWarning = true; - Object.defineProperty(props, "key", { - get: warnAboutAccessingKey, - configurable: true - }); - } - } - function defineRefPropWarningGetter(props, displayName) { - { - var warnAboutAccessingRef = function() { - if (!specialPropRefWarningShown) { - specialPropRefWarningShown = true; - error("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", displayName); - } - }; - warnAboutAccessingRef.isReactWarning = true; - Object.defineProperty(props, "ref", { - get: warnAboutAccessingRef, - configurable: true - }); - } - } - var ReactElement = function(type, key, ref, self2, source, owner, props) { - var element = { - // This tag allows us to uniquely identify this as a React Element - $$typeof: REACT_ELEMENT_TYPE, - // Built-in properties that belong on the element - type, - key, - ref, - props, - // Record the component responsible for creating this element. - _owner: owner - }; - { - element._store = {}; - Object.defineProperty(element._store, "validated", { - configurable: false, - enumerable: false, - writable: true, - value: false - }); - Object.defineProperty(element, "_self", { - configurable: false, - enumerable: false, - writable: false, - value: self2 - }); - Object.defineProperty(element, "_source", { - configurable: false, - enumerable: false, - writable: false, - value: source - }); - if (Object.freeze) { - Object.freeze(element.props); - Object.freeze(element); - } - } - return element; - }; - function jsxDEV(type, config, maybeKey, source, self2) { - { - var propName; - var props = {}; - var key = null; - var ref = null; - if (maybeKey !== void 0) { - { - checkKeyStringCoercion(maybeKey); - } - key = "" + maybeKey; - } - if (hasValidKey(config)) { - { - checkKeyStringCoercion(config.key); - } - key = "" + config.key; - } - if (hasValidRef(config)) { - ref = config.ref; - warnIfStringRefCannotBeAutoConverted(config, self2); - } - for (propName in config) { - if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { - props[propName] = config[propName]; - } - } - if (type && type.defaultProps) { - var defaultProps = type.defaultProps; - for (propName in defaultProps) { - if (props[propName] === void 0) { - props[propName] = defaultProps[propName]; - } - } - } - if (key || ref) { - var displayName = typeof type === "function" ? type.displayName || type.name || "Unknown" : type; - if (key) { - defineKeyPropWarningGetter(props, displayName); - } - if (ref) { - defineRefPropWarningGetter(props, displayName); - } - } - return ReactElement(type, key, ref, self2, source, ReactCurrentOwner.current, props); - } - } - var ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner; - var ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame; - function setCurrentlyValidatingElement$1(element) { - { - if (element) { - var owner = element._owner; - var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null); - ReactDebugCurrentFrame$1.setExtraStackFrame(stack); - } else { - ReactDebugCurrentFrame$1.setExtraStackFrame(null); - } - } - } - var propTypesMisspellWarningShown; - { - propTypesMisspellWarningShown = false; - } - function isValidElement6(object) { - { - return typeof object === "object" && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; - } - } - function getDeclarationErrorAddendum() { - { - if (ReactCurrentOwner$1.current) { - var name = getComponentNameFromType(ReactCurrentOwner$1.current.type); - if (name) { - return "\n\nCheck the render method of `" + name + "`."; - } - } - return ""; - } - } - function getSourceInfoErrorAddendum(source) { - { - if (source !== void 0) { - var fileName = source.fileName.replace(/^.*[\\\/]/, ""); - var lineNumber = source.lineNumber; - return "\n\nCheck your code at " + fileName + ":" + lineNumber + "."; - } - return ""; - } - } - var ownerHasKeyUseWarning = {}; - function getCurrentComponentErrorInfo(parentType) { - { - var info = getDeclarationErrorAddendum(); - if (!info) { - var parentName = typeof parentType === "string" ? parentType : parentType.displayName || parentType.name; - if (parentName) { - info = "\n\nCheck the top-level render call using <" + parentName + ">."; - } - } - return info; - } - } - function validateExplicitKey(element, parentType) { - { - if (!element._store || element._store.validated || element.key != null) { - return; - } - element._store.validated = true; - var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType); - if (ownerHasKeyUseWarning[currentComponentErrorInfo]) { - return; - } - ownerHasKeyUseWarning[currentComponentErrorInfo] = true; - var childOwner = ""; - if (element && element._owner && element._owner !== ReactCurrentOwner$1.current) { - childOwner = " It was passed a child from " + getComponentNameFromType(element._owner.type) + "."; - } - setCurrentlyValidatingElement$1(element); - error('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner); - setCurrentlyValidatingElement$1(null); - } - } - function validateChildKeys(node2, parentType) { - { - if (typeof node2 !== "object") { - return; - } - if (isArray(node2)) { - for (var i = 0; i < node2.length; i++) { - var child = node2[i]; - if (isValidElement6(child)) { - validateExplicitKey(child, parentType); - } - } - } else if (isValidElement6(node2)) { - if (node2._store) { - node2._store.validated = true; - } - } else if (node2) { - var iteratorFn = getIteratorFn(node2); - if (typeof iteratorFn === "function") { - if (iteratorFn !== node2.entries) { - var iterator = iteratorFn.call(node2); - var step; - while (!(step = iterator.next()).done) { - if (isValidElement6(step.value)) { - validateExplicitKey(step.value, parentType); - } - } - } - } - } - } - } - function validatePropTypes(element) { - { - var type = element.type; - if (type === null || type === void 0 || typeof type === "string") { - return; - } - var propTypes; - if (typeof type === "function") { - propTypes = type.propTypes; - } else if (typeof type === "object" && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here. - // Inner props are checked in the reconciler. - type.$$typeof === REACT_MEMO_TYPE)) { - propTypes = type.propTypes; - } else { - return; - } - if (propTypes) { - var name = getComponentNameFromType(type); - checkPropTypes(propTypes, element.props, "prop", name, element); - } else if (type.PropTypes !== void 0 && !propTypesMisspellWarningShown) { - propTypesMisspellWarningShown = true; - var _name = getComponentNameFromType(type); - error("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?", _name || "Unknown"); - } - if (typeof type.getDefaultProps === "function" && !type.getDefaultProps.isReactClassApproved) { - error("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead."); - } - } - } - function validateFragmentProps(fragment) { - { - var keys = Object.keys(fragment.props); - for (var i = 0; i < keys.length; i++) { - var key = keys[i]; - if (key !== "children" && key !== "key") { - setCurrentlyValidatingElement$1(fragment); - error("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.", key); - setCurrentlyValidatingElement$1(null); - break; - } - } - if (fragment.ref !== null) { - setCurrentlyValidatingElement$1(fragment); - error("Invalid attribute `ref` supplied to `React.Fragment`."); - setCurrentlyValidatingElement$1(null); - } - } - } - var didWarnAboutKeySpread = {}; - function jsxWithValidation(type, props, key, isStaticChildren, source, self2) { - { - var validType = isValidElementType2(type); - if (!validType) { - var info = ""; - if (type === void 0 || typeof type === "object" && type !== null && Object.keys(type).length === 0) { - info += " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports."; - } - var sourceInfo = getSourceInfoErrorAddendum(source); - if (sourceInfo) { - info += sourceInfo; - } else { - info += getDeclarationErrorAddendum(); - } - var typeString; - if (type === null) { - typeString = "null"; - } else if (isArray(type)) { - typeString = "array"; - } else if (type !== void 0 && type.$$typeof === REACT_ELEMENT_TYPE) { - typeString = "<" + (getComponentNameFromType(type.type) || "Unknown") + " />"; - info = " Did you accidentally export a JSX literal instead of a component?"; - } else { - typeString = typeof type; - } - error("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s", typeString, info); - } - var element = jsxDEV(type, props, key, source, self2); - if (element == null) { - return element; - } - if (validType) { - var children = props.children; - if (children !== void 0) { - if (isStaticChildren) { - if (isArray(children)) { - for (var i = 0; i < children.length; i++) { - validateChildKeys(children[i], type); - } - if (Object.freeze) { - Object.freeze(children); - } - } else { - error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."); - } - } else { - validateChildKeys(children, type); - } - } - } - { - if (hasOwnProperty.call(props, "key")) { - var componentName = getComponentNameFromType(type); - var keys = Object.keys(props).filter(function(k) { - return k !== "key"; - }); - var beforeExample = keys.length > 0 ? "{key: someKey, " + keys.join(": ..., ") + ": ...}" : "{key: someKey}"; - if (!didWarnAboutKeySpread[componentName + beforeExample]) { - var afterExample = keys.length > 0 ? "{" + keys.join(": ..., ") + ": ...}" : "{}"; - error('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName); - didWarnAboutKeySpread[componentName + beforeExample] = true; - } - } - } - if (type === REACT_FRAGMENT_TYPE) { - validateFragmentProps(element); - } else { - validatePropTypes(element); - } - return element; - } - } - function jsxWithValidationStatic(type, props, key) { - { - return jsxWithValidation(type, props, key, true); - } - } - function jsxWithValidationDynamic(type, props, key) { - { - return jsxWithValidation(type, props, key, false); - } - } - var jsx3 = jsxWithValidationDynamic; - var jsxs = jsxWithValidationStatic; - exports.Fragment = REACT_FRAGMENT_TYPE; - exports.jsx = jsx3; - exports.jsxs = jsxs; - })(); - } - } -}); - -// node_modules/react/jsx-runtime.js -var require_jsx_runtime = __commonJS({ - "node_modules/react/jsx-runtime.js"(exports, module) { - "use strict"; - if (false) { - module.exports = null; - } else { - module.exports = require_react_jsx_runtime_development(); - } - } -}); - -// node_modules/@mui/utils/node_modules/react-is/cjs/react-is.development.js -var require_react_is_development = __commonJS({ - "node_modules/@mui/utils/node_modules/react-is/cjs/react-is.development.js"(exports) { - "use strict"; - (function() { - function typeOf(object) { - if ("object" === typeof object && null !== object) { - var $$typeof = object.$$typeof; - switch ($$typeof) { - case REACT_ELEMENT_TYPE: - switch (object = object.type, object) { - case REACT_FRAGMENT_TYPE: - case REACT_PROFILER_TYPE: - case REACT_STRICT_MODE_TYPE: - case REACT_SUSPENSE_TYPE: - case REACT_SUSPENSE_LIST_TYPE: - case REACT_VIEW_TRANSITION_TYPE: - return object; - default: - switch (object = object && object.$$typeof, object) { - case REACT_CONTEXT_TYPE: - case REACT_FORWARD_REF_TYPE: - case REACT_LAZY_TYPE: - case REACT_MEMO_TYPE: - return object; - case REACT_CONSUMER_TYPE: - return object; - default: - return $$typeof; - } - } - case REACT_PORTAL_TYPE: - return $$typeof; - } - } - } - var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = Symbol.for("react.profiler"); - Symbol.for("react.provider"); - var REACT_CONSUMER_TYPE = Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = Symbol.for("react.memo"), REACT_LAZY_TYPE = Symbol.for("react.lazy"), REACT_VIEW_TRANSITION_TYPE = Symbol.for("react.view_transition"), REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference"); - exports.ContextConsumer = REACT_CONSUMER_TYPE; - exports.ContextProvider = REACT_CONTEXT_TYPE; - exports.Element = REACT_ELEMENT_TYPE; - exports.ForwardRef = REACT_FORWARD_REF_TYPE; - exports.Fragment = REACT_FRAGMENT_TYPE; - exports.Lazy = REACT_LAZY_TYPE; - exports.Memo = REACT_MEMO_TYPE; - exports.Portal = REACT_PORTAL_TYPE; - exports.Profiler = REACT_PROFILER_TYPE; - exports.StrictMode = REACT_STRICT_MODE_TYPE; - exports.Suspense = REACT_SUSPENSE_TYPE; - exports.SuspenseList = REACT_SUSPENSE_LIST_TYPE; - exports.isContextConsumer = function(object) { - return typeOf(object) === REACT_CONSUMER_TYPE; - }; - exports.isContextProvider = function(object) { - return typeOf(object) === REACT_CONTEXT_TYPE; - }; - exports.isElement = function(object) { - return "object" === typeof object && null !== object && object.$$typeof === REACT_ELEMENT_TYPE; - }; - exports.isForwardRef = function(object) { - return typeOf(object) === REACT_FORWARD_REF_TYPE; - }; - exports.isFragment = function(object) { - return typeOf(object) === REACT_FRAGMENT_TYPE; - }; - exports.isLazy = function(object) { - return typeOf(object) === REACT_LAZY_TYPE; - }; - exports.isMemo = function(object) { - return typeOf(object) === REACT_MEMO_TYPE; - }; - exports.isPortal = function(object) { - return typeOf(object) === REACT_PORTAL_TYPE; - }; - exports.isProfiler = function(object) { - return typeOf(object) === REACT_PROFILER_TYPE; - }; - exports.isStrictMode = function(object) { - return typeOf(object) === REACT_STRICT_MODE_TYPE; - }; - exports.isSuspense = function(object) { - return typeOf(object) === REACT_SUSPENSE_TYPE; - }; - exports.isSuspenseList = function(object) { - return typeOf(object) === REACT_SUSPENSE_LIST_TYPE; - }; - exports.isValidElementType = function(type) { - return "string" === typeof type || "function" === typeof type || type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || "object" === typeof type && null !== type && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_CONSUMER_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_CLIENT_REFERENCE || void 0 !== type.getModuleId) ? true : false; - }; - exports.typeOf = typeOf; - })(); - } -}); - -// node_modules/@mui/utils/node_modules/react-is/index.js -var require_react_is = __commonJS({ - "node_modules/@mui/utils/node_modules/react-is/index.js"(exports, module) { - "use strict"; - if (false) { - module.exports = null; - } else { - module.exports = require_react_is_development(); - } - } -}); - -// node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js -var require_react_is_development2 = __commonJS({ - "node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js"(exports) { - "use strict"; - if (true) { - (function() { - "use strict"; - var hasSymbol2 = typeof Symbol === "function" && Symbol.for; - var REACT_ELEMENT_TYPE = hasSymbol2 ? Symbol.for("react.element") : 60103; - var REACT_PORTAL_TYPE = hasSymbol2 ? Symbol.for("react.portal") : 60106; - var REACT_FRAGMENT_TYPE = hasSymbol2 ? Symbol.for("react.fragment") : 60107; - var REACT_STRICT_MODE_TYPE = hasSymbol2 ? Symbol.for("react.strict_mode") : 60108; - var REACT_PROFILER_TYPE = hasSymbol2 ? Symbol.for("react.profiler") : 60114; - var REACT_PROVIDER_TYPE = hasSymbol2 ? Symbol.for("react.provider") : 60109; - var REACT_CONTEXT_TYPE = hasSymbol2 ? Symbol.for("react.context") : 60110; - var REACT_ASYNC_MODE_TYPE = hasSymbol2 ? Symbol.for("react.async_mode") : 60111; - var REACT_CONCURRENT_MODE_TYPE = hasSymbol2 ? Symbol.for("react.concurrent_mode") : 60111; - var REACT_FORWARD_REF_TYPE = hasSymbol2 ? Symbol.for("react.forward_ref") : 60112; - var REACT_SUSPENSE_TYPE = hasSymbol2 ? Symbol.for("react.suspense") : 60113; - var REACT_SUSPENSE_LIST_TYPE = hasSymbol2 ? Symbol.for("react.suspense_list") : 60120; - var REACT_MEMO_TYPE = hasSymbol2 ? Symbol.for("react.memo") : 60115; - var REACT_LAZY_TYPE = hasSymbol2 ? Symbol.for("react.lazy") : 60116; - var REACT_BLOCK_TYPE = hasSymbol2 ? Symbol.for("react.block") : 60121; - var REACT_FUNDAMENTAL_TYPE = hasSymbol2 ? Symbol.for("react.fundamental") : 60117; - var REACT_RESPONDER_TYPE = hasSymbol2 ? Symbol.for("react.responder") : 60118; - var REACT_SCOPE_TYPE = hasSymbol2 ? Symbol.for("react.scope") : 60119; - function isValidElementType2(type) { - return typeof type === "string" || typeof type === "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill. - type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === "object" && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE); - } - function typeOf(object) { - if (typeof object === "object" && object !== null) { - var $$typeof = object.$$typeof; - switch ($$typeof) { - case REACT_ELEMENT_TYPE: - var type = object.type; - switch (type) { - case REACT_ASYNC_MODE_TYPE: - case REACT_CONCURRENT_MODE_TYPE: - case REACT_FRAGMENT_TYPE: - case REACT_PROFILER_TYPE: - case REACT_STRICT_MODE_TYPE: - case REACT_SUSPENSE_TYPE: - return type; - default: - var $$typeofType = type && type.$$typeof; - switch ($$typeofType) { - case REACT_CONTEXT_TYPE: - case REACT_FORWARD_REF_TYPE: - case REACT_LAZY_TYPE: - case REACT_MEMO_TYPE: - case REACT_PROVIDER_TYPE: - return $$typeofType; - default: - return $$typeof; - } - } - case REACT_PORTAL_TYPE: - return $$typeof; - } - } - return void 0; - } - var AsyncMode = REACT_ASYNC_MODE_TYPE; - var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE; - var ContextConsumer = REACT_CONTEXT_TYPE; - var ContextProvider = REACT_PROVIDER_TYPE; - var Element = REACT_ELEMENT_TYPE; - var ForwardRef2 = REACT_FORWARD_REF_TYPE; - var Fragment7 = REACT_FRAGMENT_TYPE; - var Lazy = REACT_LAZY_TYPE; - var Memo2 = REACT_MEMO_TYPE; - var Portal = REACT_PORTAL_TYPE; - var Profiler = REACT_PROFILER_TYPE; - var StrictMode = REACT_STRICT_MODE_TYPE; - var Suspense = REACT_SUSPENSE_TYPE; - var hasWarnedAboutDeprecatedIsAsyncMode = false; - function isAsyncMode(object) { - { - if (!hasWarnedAboutDeprecatedIsAsyncMode) { - hasWarnedAboutDeprecatedIsAsyncMode = true; - console["warn"]("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API."); - } - } - return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE; - } - function isConcurrentMode(object) { - return typeOf(object) === REACT_CONCURRENT_MODE_TYPE; - } - function isContextConsumer(object) { - return typeOf(object) === REACT_CONTEXT_TYPE; - } - function isContextProvider(object) { - return typeOf(object) === REACT_PROVIDER_TYPE; - } - function isElement(object) { - return typeof object === "object" && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; - } - function isForwardRef(object) { - return typeOf(object) === REACT_FORWARD_REF_TYPE; - } - function isFragment(object) { - return typeOf(object) === REACT_FRAGMENT_TYPE; - } - function isLazy(object) { - return typeOf(object) === REACT_LAZY_TYPE; - } - function isMemo(object) { - return typeOf(object) === REACT_MEMO_TYPE; - } - function isPortal(object) { - return typeOf(object) === REACT_PORTAL_TYPE; - } - function isProfiler(object) { - return typeOf(object) === REACT_PROFILER_TYPE; - } - function isStrictMode(object) { - return typeOf(object) === REACT_STRICT_MODE_TYPE; - } - function isSuspense(object) { - return typeOf(object) === REACT_SUSPENSE_TYPE; - } - exports.AsyncMode = AsyncMode; - exports.ConcurrentMode = ConcurrentMode; - exports.ContextConsumer = ContextConsumer; - exports.ContextProvider = ContextProvider; - exports.Element = Element; - exports.ForwardRef = ForwardRef2; - exports.Fragment = Fragment7; - exports.Lazy = Lazy; - exports.Memo = Memo2; - exports.Portal = Portal; - exports.Profiler = Profiler; - exports.StrictMode = StrictMode; - exports.Suspense = Suspense; - exports.isAsyncMode = isAsyncMode; - exports.isConcurrentMode = isConcurrentMode; - exports.isContextConsumer = isContextConsumer; - exports.isContextProvider = isContextProvider; - exports.isElement = isElement; - exports.isForwardRef = isForwardRef; - exports.isFragment = isFragment; - exports.isLazy = isLazy; - exports.isMemo = isMemo; - exports.isPortal = isPortal; - exports.isProfiler = isProfiler; - exports.isStrictMode = isStrictMode; - exports.isSuspense = isSuspense; - exports.isValidElementType = isValidElementType2; - exports.typeOf = typeOf; - })(); - } - } -}); - -// node_modules/hoist-non-react-statics/node_modules/react-is/index.js -var require_react_is2 = __commonJS({ - "node_modules/hoist-non-react-statics/node_modules/react-is/index.js"(exports, module) { - "use strict"; - if (false) { - module.exports = null; - } else { - module.exports = require_react_is_development2(); - } - } -}); - -// node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js -var require_hoist_non_react_statics_cjs = __commonJS({ - "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js"(exports, module) { - "use strict"; - var reactIs = require_react_is2(); - var REACT_STATICS = { - childContextTypes: true, - contextType: true, - contextTypes: true, - defaultProps: true, - displayName: true, - getDefaultProps: true, - getDerivedStateFromError: true, - getDerivedStateFromProps: true, - mixins: true, - propTypes: true, - type: true - }; - var KNOWN_STATICS = { - name: true, - length: true, - prototype: true, - caller: true, - callee: true, - arguments: true, - arity: true - }; - var FORWARD_REF_STATICS = { - "$$typeof": true, - render: true, - defaultProps: true, - displayName: true, - propTypes: true - }; - var MEMO_STATICS = { - "$$typeof": true, - compare: true, - defaultProps: true, - displayName: true, - propTypes: true, - type: true - }; - var TYPE_STATICS = {}; - TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS; - TYPE_STATICS[reactIs.Memo] = MEMO_STATICS; - function getStatics(component) { - if (reactIs.isMemo(component)) { - return MEMO_STATICS; - } - return TYPE_STATICS[component["$$typeof"]] || REACT_STATICS; - } - var defineProperty = Object.defineProperty; - var getOwnPropertyNames = Object.getOwnPropertyNames; - var getOwnPropertySymbols = Object.getOwnPropertySymbols; - var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; - var getPrototypeOf = Object.getPrototypeOf; - var objectPrototype = Object.prototype; - function hoistNonReactStatics2(targetComponent, sourceComponent, blacklist) { - if (typeof sourceComponent !== "string") { - if (objectPrototype) { - var inheritedComponent = getPrototypeOf(sourceComponent); - if (inheritedComponent && inheritedComponent !== objectPrototype) { - hoistNonReactStatics2(targetComponent, inheritedComponent, blacklist); - } - } - var keys = getOwnPropertyNames(sourceComponent); - if (getOwnPropertySymbols) { - keys = keys.concat(getOwnPropertySymbols(sourceComponent)); - } - var targetStatics = getStatics(targetComponent); - var sourceStatics = getStatics(sourceComponent); - for (var i = 0; i < keys.length; ++i) { - var key = keys[i]; - if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) { - var descriptor = getOwnPropertyDescriptor(sourceComponent, key); - try { - defineProperty(targetComponent, key, descriptor); - } catch (e) { - } - } - } - } - return targetComponent; - } - module.exports = hoistNonReactStatics2; - } -}); - -// node_modules/@mui/material/esm/Slider/Slider.js -var React43 = __toESM(require_react(), 1); -var import_prop_types24 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/utils/esm/chainPropTypes/chainPropTypes.js -function chainPropTypes(propType1, propType2) { - if (false) { - return () => null; - } - return function validate(...args) { - return propType1(...args) || propType2(...args); - }; -} - -// node_modules/@mui/utils/esm/composeClasses/composeClasses.js -function composeClasses(slots, getUtilityClass, classes = void 0) { - const output = {}; - for (const slotName in slots) { - const slot = slots[slotName]; - let buffer = ""; - let start = true; - for (let i = 0; i < slot.length; i += 1) { - const value = slot[i]; - if (value) { - buffer += (start === true ? "" : " ") + getUtilityClass(value); - start = false; - if (classes && classes[value]) { - buffer += " " + classes[value]; - } - } - } - output[slotName] = buffer; - } - return output; -} - -// node_modules/@mui/utils/esm/clamp/clamp.js -function clamp(val, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) { - return Math.max(min, Math.min(val, max)); -} -var clamp_default = clamp; - -// node_modules/@mui/system/esm/colorManipulator/colorManipulator.js -function clampWrapper(value, min = 0, max = 1) { - if (true) { - if (value < min || value > max) { - console.error(`MUI: The value provided ${value} is out of range [${min}, ${max}].`); - } - } - return clamp_default(value, min, max); -} -function hexToRgb(color2) { - color2 = color2.slice(1); - const re = new RegExp(`.{1,${color2.length >= 6 ? 2 : 1}}`, "g"); - let colors = color2.match(re); - if (colors && colors[0].length === 1) { - colors = colors.map((n) => n + n); - } - if (true) { - if (color2.length !== color2.trim().length) { - console.error(`MUI: The color: "${color2}" is invalid. Make sure the color input doesn't contain leading/trailing space.`); - } - } - return colors ? `rgb${colors.length === 4 ? "a" : ""}(${colors.map((n, index) => { - return index < 3 ? parseInt(n, 16) : Math.round(parseInt(n, 16) / 255 * 1e3) / 1e3; - }).join(", ")})` : ""; -} -function decomposeColor(color2) { - if (color2.type) { - return color2; - } - if (color2.charAt(0) === "#") { - return decomposeColor(hexToRgb(color2)); - } - const marker = color2.indexOf("("); - const type = color2.substring(0, marker); - if (!["rgb", "rgba", "hsl", "hsla", "color"].includes(type)) { - throw new Error(true ? `MUI: Unsupported \`${color2}\` color. -The following formats are supported: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().` : formatMuiErrorMessage(9, color2)); - } - let values2 = color2.substring(marker + 1, color2.length - 1); - let colorSpace; - if (type === "color") { - values2 = values2.split(" "); - colorSpace = values2.shift(); - if (values2.length === 4 && values2[3].charAt(0) === "/") { - values2[3] = values2[3].slice(1); - } - if (!["srgb", "display-p3", "a98-rgb", "prophoto-rgb", "rec-2020"].includes(colorSpace)) { - throw new Error(true ? `MUI: unsupported \`${colorSpace}\` color space. -The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.` : formatMuiErrorMessage(10, colorSpace)); - } - } else { - values2 = values2.split(","); - } - values2 = values2.map((value) => parseFloat(value)); - return { - type, - values: values2, - colorSpace - }; -} -var colorChannel = (color2) => { - const decomposedColor = decomposeColor(color2); - return decomposedColor.values.slice(0, 3).map((val, idx) => decomposedColor.type.includes("hsl") && idx !== 0 ? `${val}%` : val).join(" "); -}; -var private_safeColorChannel = (color2, warning) => { - try { - return colorChannel(color2); - } catch (error) { - if (warning && true) { - console.warn(warning); - } - return color2; - } -}; -function recomposeColor(color2) { - const { - type, - colorSpace - } = color2; - let { - values: values2 - } = color2; - if (type.includes("rgb")) { - values2 = values2.map((n, i) => i < 3 ? parseInt(n, 10) : n); - } else if (type.includes("hsl")) { - values2[1] = `${values2[1]}%`; - values2[2] = `${values2[2]}%`; - } - if (type.includes("color")) { - values2 = `${colorSpace} ${values2.join(" ")}`; - } else { - values2 = `${values2.join(", ")}`; - } - return `${type}(${values2})`; -} -function hslToRgb(color2) { - color2 = decomposeColor(color2); - const { - values: values2 - } = color2; - const h = values2[0]; - const s = values2[1] / 100; - const l = values2[2] / 100; - const a = s * Math.min(l, 1 - l); - const f = (n, k = (n + h / 30) % 12) => l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1); - let type = "rgb"; - const rgb = [Math.round(f(0) * 255), Math.round(f(8) * 255), Math.round(f(4) * 255)]; - if (color2.type === "hsla") { - type += "a"; - rgb.push(values2[3]); - } - return recomposeColor({ - type, - values: rgb - }); -} -function getLuminance(color2) { - color2 = decomposeColor(color2); - let rgb = color2.type === "hsl" || color2.type === "hsla" ? decomposeColor(hslToRgb(color2)).values : color2.values; - rgb = rgb.map((val) => { - if (color2.type !== "color") { - val /= 255; - } - return val <= 0.03928 ? val / 12.92 : ((val + 0.055) / 1.055) ** 2.4; - }); - return Number((0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2]).toFixed(3)); -} -function getContrastRatio(foreground, background) { - const lumA = getLuminance(foreground); - const lumB = getLuminance(background); - return (Math.max(lumA, lumB) + 0.05) / (Math.min(lumA, lumB) + 0.05); -} -function alpha(color2, value) { - color2 = decomposeColor(color2); - value = clampWrapper(value); - if (color2.type === "rgb" || color2.type === "hsl") { - color2.type += "a"; - } - if (color2.type === "color") { - color2.values[3] = `/${value}`; - } else { - color2.values[3] = value; - } - return recomposeColor(color2); -} -function private_safeAlpha(color2, value, warning) { - try { - return alpha(color2, value); - } catch (error) { - if (warning && true) { - console.warn(warning); - } - return color2; - } -} -function darken(color2, coefficient) { - color2 = decomposeColor(color2); - coefficient = clampWrapper(coefficient); - if (color2.type.includes("hsl")) { - color2.values[2] *= 1 - coefficient; - } else if (color2.type.includes("rgb") || color2.type.includes("color")) { - for (let i = 0; i < 3; i += 1) { - color2.values[i] *= 1 - coefficient; - } - } - return recomposeColor(color2); -} -function private_safeDarken(color2, coefficient, warning) { - try { - return darken(color2, coefficient); - } catch (error) { - if (warning && true) { - console.warn(warning); - } - return color2; - } -} -function lighten(color2, coefficient) { - color2 = decomposeColor(color2); - coefficient = clampWrapper(coefficient); - if (color2.type.includes("hsl")) { - color2.values[2] += (100 - color2.values[2]) * coefficient; - } else if (color2.type.includes("rgb")) { - for (let i = 0; i < 3; i += 1) { - color2.values[i] += (255 - color2.values[i]) * coefficient; - } - } else if (color2.type.includes("color")) { - for (let i = 0; i < 3; i += 1) { - color2.values[i] += (1 - color2.values[i]) * coefficient; - } - } - return recomposeColor(color2); -} -function private_safeLighten(color2, coefficient, warning) { - try { - return lighten(color2, coefficient); - } catch (error) { - if (warning && true) { - console.warn(warning); - } - return color2; - } -} -function emphasize(color2, coefficient = 0.15) { - return getLuminance(color2) > 0.5 ? darken(color2, coefficient) : lighten(color2, coefficient); -} -function private_safeEmphasize(color2, coefficient, warning) { - try { - return emphasize(color2, coefficient); - } catch (error) { - if (warning && true) { - console.warn(warning); - } - return color2; - } -} - -// node_modules/@mui/system/esm/RtlProvider/index.js -var React = __toESM(require_react()); -var import_prop_types = __toESM(require_prop_types()); -var import_jsx_runtime = __toESM(require_jsx_runtime()); -var RtlContext = React.createContext(); -function RtlProvider({ - value, - ...props -}) { - return (0, import_jsx_runtime.jsx)(RtlContext.Provider, { - value: value ?? true, - ...props - }); -} -true ? RtlProvider.propTypes = { - children: import_prop_types.default.node, - value: import_prop_types.default.bool -} : void 0; -var useRtl = () => { - const value = React.useContext(RtlContext); - return value ?? false; -}; -var RtlProvider_default = RtlProvider; - -// node_modules/@mui/utils/esm/useForkRef/useForkRef.js -var React2 = __toESM(require_react(), 1); - -// node_modules/@mui/utils/esm/setRef/setRef.js -function setRef(ref, value) { - if (typeof ref === "function") { - ref(value); - } else if (ref) { - ref.current = value; - } -} - -// node_modules/@mui/utils/esm/useForkRef/useForkRef.js -function useForkRef(...refs) { - return React2.useMemo(() => { - if (refs.every((ref) => ref == null)) { - return null; - } - return (instance) => { - refs.forEach((ref) => { - setRef(ref, instance); - }); - }; - }, refs); -} - -// node_modules/@mui/utils/esm/isHostComponent/isHostComponent.js -function isHostComponent(element) { - return typeof element === "string"; -} -var isHostComponent_default = isHostComponent; - -// node_modules/@mui/utils/esm/appendOwnerState/appendOwnerState.js -function appendOwnerState(elementType, otherProps, ownerState) { - if (elementType === void 0 || isHostComponent_default(elementType)) { - return otherProps; - } - return { - ...otherProps, - ownerState: { - ...otherProps.ownerState, - ...ownerState - } - }; -} -var appendOwnerState_default = appendOwnerState; - -// node_modules/@mui/utils/esm/extractEventHandlers/extractEventHandlers.js -function extractEventHandlers(object, excludeKeys = []) { - if (object === void 0) { - return {}; - } - const result = {}; - Object.keys(object).filter((prop) => prop.match(/^on[A-Z]/) && typeof object[prop] === "function" && !excludeKeys.includes(prop)).forEach((prop) => { - result[prop] = object[prop]; - }); - return result; -} -var extractEventHandlers_default = extractEventHandlers; - -// node_modules/@mui/utils/esm/omitEventHandlers/omitEventHandlers.js -function omitEventHandlers(object) { - if (object === void 0) { - return {}; - } - const result = {}; - Object.keys(object).filter((prop) => !(prop.match(/^on[A-Z]/) && typeof object[prop] === "function")).forEach((prop) => { - result[prop] = object[prop]; - }); - return result; -} -var omitEventHandlers_default = omitEventHandlers; - -// node_modules/@mui/utils/esm/mergeSlotProps/mergeSlotProps.js -function mergeSlotProps(parameters) { - const { - getSlotProps, - additionalProps, - externalSlotProps, - externalForwardedProps, - className - } = parameters; - if (!getSlotProps) { - const joinedClasses2 = clsx_default(additionalProps == null ? void 0 : additionalProps.className, className, externalForwardedProps == null ? void 0 : externalForwardedProps.className, externalSlotProps == null ? void 0 : externalSlotProps.className); - const mergedStyle2 = { - ...additionalProps == null ? void 0 : additionalProps.style, - ...externalForwardedProps == null ? void 0 : externalForwardedProps.style, - ...externalSlotProps == null ? void 0 : externalSlotProps.style - }; - const props2 = { - ...additionalProps, - ...externalForwardedProps, - ...externalSlotProps - }; - if (joinedClasses2.length > 0) { - props2.className = joinedClasses2; - } - if (Object.keys(mergedStyle2).length > 0) { - props2.style = mergedStyle2; - } - return { - props: props2, - internalRef: void 0 - }; - } - const eventHandlers = extractEventHandlers_default({ - ...externalForwardedProps, - ...externalSlotProps - }); - const componentsPropsWithoutEventHandlers = omitEventHandlers_default(externalSlotProps); - const otherPropsWithoutEventHandlers = omitEventHandlers_default(externalForwardedProps); - const internalSlotProps = getSlotProps(eventHandlers); - const joinedClasses = clsx_default(internalSlotProps == null ? void 0 : internalSlotProps.className, additionalProps == null ? void 0 : additionalProps.className, className, externalForwardedProps == null ? void 0 : externalForwardedProps.className, externalSlotProps == null ? void 0 : externalSlotProps.className); - const mergedStyle = { - ...internalSlotProps == null ? void 0 : internalSlotProps.style, - ...additionalProps == null ? void 0 : additionalProps.style, - ...externalForwardedProps == null ? void 0 : externalForwardedProps.style, - ...externalSlotProps == null ? void 0 : externalSlotProps.style - }; - const props = { - ...internalSlotProps, - ...additionalProps, - ...otherPropsWithoutEventHandlers, - ...componentsPropsWithoutEventHandlers - }; - if (joinedClasses.length > 0) { - props.className = joinedClasses; - } - if (Object.keys(mergedStyle).length > 0) { - props.style = mergedStyle; - } - return { - props, - internalRef: internalSlotProps.ref - }; -} -var mergeSlotProps_default = mergeSlotProps; - -// node_modules/@mui/utils/esm/resolveComponentProps/resolveComponentProps.js -function resolveComponentProps(componentProps, ownerState, slotState) { - if (typeof componentProps === "function") { - return componentProps(ownerState, slotState); - } - return componentProps; -} -var resolveComponentProps_default = resolveComponentProps; - -// node_modules/@mui/utils/esm/useSlotProps/useSlotProps.js -function useSlotProps(parameters) { - var _a; - const { - elementType, - externalSlotProps, - ownerState, - skipResolvingSlotProps = false, - ...other - } = parameters; - const resolvedComponentsProps = skipResolvingSlotProps ? {} : resolveComponentProps_default(externalSlotProps, ownerState); - const { - props: mergedProps, - internalRef - } = mergeSlotProps_default({ - ...other, - externalSlotProps: resolvedComponentsProps - }); - const ref = useForkRef(internalRef, resolvedComponentsProps == null ? void 0 : resolvedComponentsProps.ref, (_a = parameters.additionalProps) == null ? void 0 : _a.ref); - const props = appendOwnerState_default(elementType, { - ...mergedProps, - ref - }, ownerState); - return props; -} -var useSlotProps_default = useSlotProps; - -// node_modules/@mui/material/esm/Slider/useSlider.js -var React16 = __toESM(require_react(), 1); - -// node_modules/@mui/utils/esm/deepmerge/deepmerge.js -var React3 = __toESM(require_react(), 1); -var import_react_is = __toESM(require_react_is(), 1); -function isPlainObject(item) { - if (typeof item !== "object" || item === null) { - return false; - } - const prototype = Object.getPrototypeOf(item); - return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in item) && !(Symbol.iterator in item); -} -function deepClone(source) { - if (React3.isValidElement(source) || (0, import_react_is.isValidElementType)(source) || !isPlainObject(source)) { - return source; - } - const output = {}; - Object.keys(source).forEach((key) => { - output[key] = deepClone(source[key]); - }); - return output; -} -function deepmerge(target, source, options = { - clone: true -}) { - const output = options.clone ? { - ...target - } : target; - if (isPlainObject(target) && isPlainObject(source)) { - Object.keys(source).forEach((key) => { - if (React3.isValidElement(source[key]) || (0, import_react_is.isValidElementType)(source[key])) { - output[key] = source[key]; - } else if (isPlainObject(source[key]) && // Avoid prototype pollution - Object.prototype.hasOwnProperty.call(target, key) && isPlainObject(target[key])) { - output[key] = deepmerge(target[key], source[key], options); - } else if (options.clone) { - output[key] = isPlainObject(source[key]) ? deepClone(source[key]) : source[key]; - } else { - output[key] = source[key]; - } - }); - } - return output; -} - -// node_modules/@mui/utils/esm/elementAcceptingRef/elementAcceptingRef.js -var import_prop_types2 = __toESM(require_prop_types(), 1); -function isClassComponent(elementType) { - const { - prototype = {} - } = elementType; - return Boolean(prototype.isReactComponent); -} -function acceptingRef(props, propName, componentName, location, propFullName) { - const element = props[propName]; - const safePropName = propFullName || propName; - if (element == null || // When server-side rendering React doesn't warn either. - // This is not an accurate check for SSR. - // This is only in place for Emotion compat. - // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved. - typeof window === "undefined") { - return null; - } - let warningHint; - const elementType = element.type; - if (typeof elementType === "function" && !isClassComponent(elementType)) { - warningHint = "Did you accidentally use a plain function component for an element instead?"; - } - if (warningHint !== void 0) { - return new Error(`Invalid ${location} \`${safePropName}\` supplied to \`${componentName}\`. Expected an element that can hold a ref. ${warningHint} For more information see https://mui.com/r/caveat-with-refs-guide`); - } - return null; -} -var elementAcceptingRef = chainPropTypes(import_prop_types2.default.element, acceptingRef); -elementAcceptingRef.isRequired = chainPropTypes(import_prop_types2.default.element.isRequired, acceptingRef); - -// node_modules/@mui/utils/esm/elementTypeAcceptingRef/elementTypeAcceptingRef.js -var import_prop_types3 = __toESM(require_prop_types(), 1); -function isClassComponent2(elementType) { - const { - prototype = {} - } = elementType; - return Boolean(prototype.isReactComponent); -} -function elementTypeAcceptingRef(props, propName, componentName, location, propFullName) { - const propValue = props[propName]; - const safePropName = propFullName || propName; - if (propValue == null || // When server-side rendering React doesn't warn either. - // This is not an accurate check for SSR. - // This is only in place for emotion compat. - // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved. - typeof window === "undefined") { - return null; - } - let warningHint; - if (typeof propValue === "function" && !isClassComponent2(propValue)) { - warningHint = "Did you accidentally provide a plain function component instead?"; - } - if (warningHint !== void 0) { - return new Error(`Invalid ${location} \`${safePropName}\` supplied to \`${componentName}\`. Expected an element type that can hold a ref. ${warningHint} For more information see https://mui.com/r/caveat-with-refs-guide`); - } - return null; -} -var elementTypeAcceptingRef_default = chainPropTypes(import_prop_types3.default.elementType, elementTypeAcceptingRef); - -// node_modules/@mui/utils/esm/exactProp/exactProp.js -var specialProperty = "exact-prop: ​"; -function exactProp(propTypes) { - if (false) { - return propTypes; - } - return { - ...propTypes, - [specialProperty]: (props) => { - const unsupportedProps = Object.keys(props).filter((prop) => !propTypes.hasOwnProperty(prop)); - if (unsupportedProps.length > 0) { - return new Error(`The following props are not supported: ${unsupportedProps.map((prop) => `\`${prop}\``).join(", ")}. Please remove them.`); - } - return null; - } - }; -} - -// node_modules/@mui/utils/esm/getDisplayName/getDisplayName.js -var import_react_is2 = __toESM(require_react_is(), 1); -function getFunctionComponentName(Component, fallback = "") { - return Component.displayName || Component.name || fallback; -} -function getWrappedName(outerType, innerType, wrapperName) { - const functionName = getFunctionComponentName(innerType); - return outerType.displayName || (functionName !== "" ? `${wrapperName}(${functionName})` : wrapperName); -} -function getDisplayName(Component) { - if (Component == null) { - return void 0; - } - if (typeof Component === "string") { - return Component; - } - if (typeof Component === "function") { - return getFunctionComponentName(Component, "Component"); - } - if (typeof Component === "object") { - switch (Component.$$typeof) { - case import_react_is2.ForwardRef: - return getWrappedName(Component, Component.render, "ForwardRef"); - case import_react_is2.Memo: - return getWrappedName(Component, Component.type, "memo"); - default: - return void 0; - } - } - return void 0; -} - -// node_modules/@mui/utils/esm/ponyfillGlobal/ponyfillGlobal.js -var ponyfillGlobal_default = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")(); - -// node_modules/@mui/utils/esm/refType/refType.js -var import_prop_types4 = __toESM(require_prop_types(), 1); -var refType = import_prop_types4.default.oneOfType([import_prop_types4.default.func, import_prop_types4.default.object]); - -// node_modules/@mui/utils/esm/capitalize/capitalize.js -function capitalize(string) { - if (typeof string !== "string") { - throw new Error(true ? "MUI: `capitalize(string)` expects a string argument." : formatMuiErrorMessage(7)); - } - return string.charAt(0).toUpperCase() + string.slice(1); -} - -// node_modules/@mui/utils/esm/isMuiElement/isMuiElement.js -var React4 = __toESM(require_react(), 1); -function isMuiElement(element, muiNames) { - var _a, _b, _c; - return React4.isValidElement(element) && muiNames.indexOf( - // For server components `muiName` is avaialble in element.type._payload.value.muiName - // relevant info - https://github.com/facebook/react/blob/2807d781a08db8e9873687fccc25c0f12b4fb3d4/packages/react/src/ReactLazy.js#L45 - // eslint-disable-next-line no-underscore-dangle - element.type.muiName ?? ((_c = (_b = (_a = element.type) == null ? void 0 : _a._payload) == null ? void 0 : _b.value) == null ? void 0 : _c.muiName) - ) !== -1; -} - -// node_modules/@mui/utils/esm/ownerDocument/ownerDocument.js -function ownerDocument(node2) { - return node2 && node2.ownerDocument || document; -} - -// node_modules/@mui/utils/esm/useEnhancedEffect/useEnhancedEffect.js -var React5 = __toESM(require_react(), 1); -var useEnhancedEffect = typeof window !== "undefined" ? React5.useLayoutEffect : React5.useEffect; -var useEnhancedEffect_default = useEnhancedEffect; - -// node_modules/@mui/utils/esm/useId/useId.js -var React6 = __toESM(require_react(), 1); -var safeReact = { - ...React6 -}; -var maybeReactUseId = safeReact.useId; - -// node_modules/@mui/utils/esm/useControlled/useControlled.js -var React7 = __toESM(require_react(), 1); -function useControlled({ - controlled, - default: defaultProp, - name, - state = "value" -}) { - const { - current: isControlled - } = React7.useRef(controlled !== void 0); - const [valueState, setValue] = React7.useState(defaultProp); - const value = isControlled ? controlled : valueState; - if (true) { - React7.useEffect(() => { - if (isControlled !== (controlled !== void 0)) { - console.error([`MUI: A component is changing the ${isControlled ? "" : "un"}controlled ${state} state of ${name} to be ${isControlled ? "un" : ""}controlled.`, "Elements should not switch from uncontrolled to controlled (or vice versa).", `Decide between using a controlled or uncontrolled ${name} element for the lifetime of the component.`, "The nature of the state is determined during the first render. It's considered controlled if the value is not `undefined`.", "More info: https://fb.me/react-controlled-components"].join("\n")); - } - }, [state, name, controlled]); - const { - current: defaultValue - } = React7.useRef(defaultProp); - React7.useEffect(() => { - if (!isControlled && !Object.is(defaultValue, defaultProp)) { - console.error([`MUI: A component is changing the default ${state} state of an uncontrolled ${name} after being initialized. To suppress this warning opt to use a controlled ${name}.`].join("\n")); - } - }, [JSON.stringify(defaultProp)]); - } - const setValueIfUncontrolled = React7.useCallback((newValue) => { - if (!isControlled) { - setValue(newValue); - } - }, []); - return [value, setValueIfUncontrolled]; -} - -// node_modules/@mui/utils/esm/useEventCallback/useEventCallback.js -var React8 = __toESM(require_react(), 1); -function useEventCallback(fn) { - const ref = React8.useRef(fn); - useEnhancedEffect_default(() => { - ref.current = fn; - }); - return React8.useRef((...args) => ( - // @ts-expect-error hide `this` - (0, ref.current)(...args) - )).current; -} -var useEventCallback_default = useEventCallback; - -// node_modules/@mui/utils/esm/useLazyRef/useLazyRef.js -var React9 = __toESM(require_react(), 1); - -// node_modules/@mui/utils/esm/useOnMount/useOnMount.js -var React10 = __toESM(require_react(), 1); - -// node_modules/@mui/utils/esm/useTimeout/useTimeout.js -var Timeout = class _Timeout { - constructor() { - __publicField(this, "currentId", null); - __publicField(this, "clear", () => { - if (this.currentId !== null) { - clearTimeout(this.currentId); - this.currentId = null; - } - }); - __publicField(this, "disposeEffect", () => { - return this.clear; - }); - } - static create() { - return new _Timeout(); - } - /** - * Executes `fn` after `delay`, clearing any previously scheduled call. - */ - start(delay, fn) { - this.clear(); - this.currentId = setTimeout(() => { - this.currentId = null; - fn(); - }, delay); - } -}; - -// node_modules/@mui/utils/esm/useIsFocusVisible/useIsFocusVisible.js -var React11 = __toESM(require_react(), 1); -var hadFocusVisibleRecentlyTimeout = new Timeout(); - -// node_modules/@mui/utils/esm/isFocusVisible/isFocusVisible.js -function isFocusVisible(element) { - try { - return element.matches(":focus-visible"); - } catch (error) { - if (!/jsdom/.test(window.navigator.userAgent)) { - console.warn(["MUI: The `:focus-visible` pseudo class is not supported in this browser.", "Some components rely on this feature to work properly."].join("\n")); - } - } - return false; -} - -// node_modules/@mui/utils/esm/usePreviousProps/usePreviousProps.js -var React12 = __toESM(require_react(), 1); - -// node_modules/@mui/utils/esm/getValidReactChildren/getValidReactChildren.js -var React13 = __toESM(require_react(), 1); - -// node_modules/@mui/utils/esm/visuallyHidden/visuallyHidden.js -var visuallyHidden = { - border: 0, - clip: "rect(0 0 0 0)", - height: "1px", - margin: "-1px", - overflow: "hidden", - padding: 0, - position: "absolute", - whiteSpace: "nowrap", - width: "1px" -}; -var visuallyHidden_default = visuallyHidden; - -// node_modules/@mui/utils/esm/integerPropType/integerPropType.js -function getTypeByValue(value) { - const valueType = typeof value; - switch (valueType) { - case "number": - if (Number.isNaN(value)) { - return "NaN"; - } - if (!Number.isFinite(value)) { - return "Infinity"; - } - if (value !== Math.floor(value)) { - return "float"; - } - return "number"; - case "object": - if (value === null) { - return "null"; - } - return value.constructor.name; - default: - return valueType; - } -} -function requiredInteger(props, propName, componentName, location) { - const propValue = props[propName]; - if (propValue == null || !Number.isInteger(propValue)) { - const propType = getTypeByValue(propValue); - return new RangeError(`Invalid ${location} \`${propName}\` of type \`${propType}\` supplied to \`${componentName}\`, expected \`integer\`.`); - } - return null; -} -function validator(props, propName, ...other) { - const propValue = props[propName]; - if (propValue === void 0) { - return null; - } - return requiredInteger(props, propName, ...other); -} -function validatorNoop() { - return null; -} -validator.isRequired = requiredInteger; -validatorNoop.isRequired = validatorNoop; - -// node_modules/@mui/utils/esm/resolveProps/resolveProps.js -function resolveProps(defaultProps, props) { - const output = { - ...props - }; - for (const key in defaultProps) { - if (Object.prototype.hasOwnProperty.call(defaultProps, key)) { - const propName = key; - if (propName === "components" || propName === "slots") { - output[propName] = { - ...defaultProps[propName], - ...output[propName] - }; - } else if (propName === "componentsProps" || propName === "slotProps") { - const defaultSlotProps = defaultProps[propName]; - const slotProps = props[propName]; - if (!slotProps) { - output[propName] = defaultSlotProps || {}; - } else if (!defaultSlotProps) { - output[propName] = slotProps; - } else { - output[propName] = { - ...slotProps - }; - for (const slotKey in defaultSlotProps) { - if (Object.prototype.hasOwnProperty.call(defaultSlotProps, slotKey)) { - const slotPropName = slotKey; - output[propName][slotPropName] = resolveProps(defaultSlotProps[slotPropName], slotProps[slotPropName]); - } - } - } - } else if (output[propName] === void 0) { - output[propName] = defaultProps[propName]; - } - } - } - return output; -} - -// node_modules/@mui/utils/esm/ClassNameGenerator/ClassNameGenerator.js -var defaultGenerator = (componentName) => componentName; -var createClassNameGenerator = () => { - let generate = defaultGenerator; - return { - configure(generator) { - generate = generator; - }, - generate(componentName) { - return generate(componentName); - }, - reset() { - generate = defaultGenerator; - } - }; -}; -var ClassNameGenerator = createClassNameGenerator(); -var ClassNameGenerator_default = ClassNameGenerator; - -// node_modules/@mui/utils/esm/generateUtilityClass/generateUtilityClass.js -var globalStateClasses = { - active: "active", - checked: "checked", - completed: "completed", - disabled: "disabled", - error: "error", - expanded: "expanded", - focused: "focused", - focusVisible: "focusVisible", - open: "open", - readOnly: "readOnly", - required: "required", - selected: "selected" -}; -function generateUtilityClass(componentName, slot, globalStatePrefix = "Mui") { - const globalStateClass = globalStateClasses[slot]; - return globalStateClass ? `${globalStatePrefix}-${globalStateClass}` : `${ClassNameGenerator_default.generate(componentName)}-${slot}`; -} - -// node_modules/@mui/utils/esm/generateUtilityClasses/generateUtilityClasses.js -function generateUtilityClasses(componentName, slots, globalStatePrefix = "Mui") { - const result = {}; - slots.forEach((slot) => { - result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix); - }); - return result; -} - -// node_modules/@mui/utils/esm/getReactNodeRef/getReactNodeRef.js -var React14 = __toESM(require_react(), 1); - -// node_modules/@mui/utils/esm/getReactElementRef/getReactElementRef.js -var React15 = __toESM(require_react(), 1); - -// node_modules/@mui/material/esm/utils/areArraysEqual.js -function areArraysEqual(array1, array2, itemComparer = (a, b) => a === b) { - return array1.length === array2.length && array1.every((value, index) => itemComparer(value, array2[index])); -} -var areArraysEqual_default = areArraysEqual; - -// node_modules/@mui/material/esm/Slider/useSlider.js -var INTENTIONAL_DRAG_COUNT_THRESHOLD = 2; -function getNewValue(currentValue, step, direction, min, max) { - return direction === 1 ? Math.min(currentValue + step, max) : Math.max(currentValue - step, min); -} -function asc(a, b) { - return a - b; -} -function findClosest(values2, currentValue) { - const { - index: closestIndex - } = values2.reduce((acc, value, index) => { - const distance = Math.abs(currentValue - value); - if (acc === null || distance < acc.distance || distance === acc.distance) { - return { - distance, - index - }; - } - return acc; - }, null) ?? {}; - return closestIndex; -} -function trackFinger(event, touchId) { - if (touchId.current !== void 0 && event.changedTouches) { - const touchEvent = event; - for (let i = 0; i < touchEvent.changedTouches.length; i += 1) { - const touch = touchEvent.changedTouches[i]; - if (touch.identifier === touchId.current) { - return { - x: touch.clientX, - y: touch.clientY - }; - } - } - return false; - } - return { - x: event.clientX, - y: event.clientY - }; -} -function valueToPercent(value, min, max) { - return (value - min) * 100 / (max - min); -} -function percentToValue(percent, min, max) { - return (max - min) * percent + min; -} -function getDecimalPrecision(num) { - if (Math.abs(num) < 1) { - const parts = num.toExponential().split("e-"); - const matissaDecimalPart = parts[0].split(".")[1]; - return (matissaDecimalPart ? matissaDecimalPart.length : 0) + parseInt(parts[1], 10); - } - const decimalPart = num.toString().split(".")[1]; - return decimalPart ? decimalPart.length : 0; -} -function roundValueToStep(value, step, min) { - const nearest = Math.round((value - min) / step) * step + min; - return Number(nearest.toFixed(getDecimalPrecision(step))); -} -function setValueIndex({ - values: values2, - newValue, - index -}) { - const output = values2.slice(); - output[index] = newValue; - return output.sort(asc); -} -function focusThumb({ - sliderRef, - activeIndex, - setActive -}) { - var _a, _b, _c; - const doc = ownerDocument(sliderRef.current); - if (!((_a = sliderRef.current) == null ? void 0 : _a.contains(doc.activeElement)) || Number((_b = doc == null ? void 0 : doc.activeElement) == null ? void 0 : _b.getAttribute("data-index")) !== activeIndex) { - (_c = sliderRef.current) == null ? void 0 : _c.querySelector(`[type="range"][data-index="${activeIndex}"]`).focus(); - } - if (setActive) { - setActive(activeIndex); - } -} -function areValuesEqual(newValue, oldValue) { - if (typeof newValue === "number" && typeof oldValue === "number") { - return newValue === oldValue; - } - if (typeof newValue === "object" && typeof oldValue === "object") { - return areArraysEqual_default(newValue, oldValue); - } - return false; -} -var axisProps = { - horizontal: { - offset: (percent) => ({ - left: `${percent}%` - }), - leap: (percent) => ({ - width: `${percent}%` - }) - }, - "horizontal-reverse": { - offset: (percent) => ({ - right: `${percent}%` - }), - leap: (percent) => ({ - width: `${percent}%` - }) - }, - vertical: { - offset: (percent) => ({ - bottom: `${percent}%` - }), - leap: (percent) => ({ - height: `${percent}%` - }) - } -}; -var Identity = (x) => x; -var cachedSupportsTouchActionNone; -function doesSupportTouchActionNone() { - if (cachedSupportsTouchActionNone === void 0) { - if (typeof CSS !== "undefined" && typeof CSS.supports === "function") { - cachedSupportsTouchActionNone = CSS.supports("touch-action", "none"); - } else { - cachedSupportsTouchActionNone = true; - } - } - return cachedSupportsTouchActionNone; -} -function useSlider(parameters) { - const { - "aria-labelledby": ariaLabelledby, - defaultValue, - disabled = false, - disableSwap = false, - isRtl = false, - marks: marksProp = false, - max = 100, - min = 0, - name, - onChange, - onChangeCommitted, - orientation = "horizontal", - rootRef: ref, - scale = Identity, - step = 1, - shiftStep = 10, - tabIndex, - value: valueProp - } = parameters; - const touchId = React16.useRef(void 0); - const [active, setActive] = React16.useState(-1); - const [open, setOpen] = React16.useState(-1); - const [dragging, setDragging] = React16.useState(false); - const moveCount = React16.useRef(0); - const lastChangedValue = React16.useRef(null); - const [valueDerived, setValueState] = useControlled({ - controlled: valueProp, - default: defaultValue ?? min, - name: "Slider" - }); - const handleChange = onChange && ((event, value, thumbIndex) => { - const nativeEvent = event.nativeEvent || event; - const clonedEvent = new nativeEvent.constructor(nativeEvent.type, nativeEvent); - Object.defineProperty(clonedEvent, "target", { - writable: true, - value: { - value, - name - } - }); - lastChangedValue.current = value; - onChange(clonedEvent, value, thumbIndex); - }); - const range = Array.isArray(valueDerived); - let values2 = range ? valueDerived.slice().sort(asc) : [valueDerived]; - values2 = values2.map((value) => value == null ? min : clamp_default(value, min, max)); - const marks = marksProp === true && step !== null ? [...Array(Math.floor((max - min) / step) + 1)].map((_, index) => ({ - value: min + step * index - })) : marksProp || []; - const marksValues = marks.map((mark) => mark.value); - const [focusedThumbIndex, setFocusedThumbIndex] = React16.useState(-1); - const sliderRef = React16.useRef(null); - const handleRef = useForkRef(ref, sliderRef); - const createHandleHiddenInputFocus = (otherHandlers) => (event) => { - var _a; - const index = Number(event.currentTarget.getAttribute("data-index")); - if (isFocusVisible(event.target)) { - setFocusedThumbIndex(index); - } - setOpen(index); - (_a = otherHandlers == null ? void 0 : otherHandlers.onFocus) == null ? void 0 : _a.call(otherHandlers, event); - }; - const createHandleHiddenInputBlur = (otherHandlers) => (event) => { - var _a; - if (!isFocusVisible(event.target)) { - setFocusedThumbIndex(-1); - } - setOpen(-1); - (_a = otherHandlers == null ? void 0 : otherHandlers.onBlur) == null ? void 0 : _a.call(otherHandlers, event); - }; - const changeValue = (event, valueInput) => { - const index = Number(event.currentTarget.getAttribute("data-index")); - const value = values2[index]; - const marksIndex = marksValues.indexOf(value); - let newValue = valueInput; - if (marks && step == null) { - const maxMarksValue = marksValues[marksValues.length - 1]; - if (newValue >= maxMarksValue) { - newValue = maxMarksValue; - } else if (newValue <= marksValues[0]) { - newValue = marksValues[0]; - } else { - newValue = newValue < value ? marksValues[marksIndex - 1] : marksValues[marksIndex + 1]; - } - } - newValue = clamp_default(newValue, min, max); - if (range) { - if (disableSwap) { - newValue = clamp_default(newValue, values2[index - 1] || -Infinity, values2[index + 1] || Infinity); - } - const previousValue = newValue; - newValue = setValueIndex({ - values: values2, - newValue, - index - }); - let activeIndex = index; - if (!disableSwap) { - activeIndex = newValue.indexOf(previousValue); - } - focusThumb({ - sliderRef, - activeIndex - }); - } - setValueState(newValue); - setFocusedThumbIndex(index); - if (handleChange && !areValuesEqual(newValue, valueDerived)) { - handleChange(event, newValue, index); - } - if (onChangeCommitted) { - onChangeCommitted(event, lastChangedValue.current ?? newValue); - } - }; - const createHandleHiddenInputKeyDown = (otherHandlers) => (event) => { - var _a; - if (["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight", "PageUp", "PageDown", "Home", "End"].includes(event.key)) { - event.preventDefault(); - const index = Number(event.currentTarget.getAttribute("data-index")); - const value = values2[index]; - let newValue = null; - if (step != null) { - const stepSize = event.shiftKey ? shiftStep : step; - switch (event.key) { - case "ArrowUp": - newValue = getNewValue(value, stepSize, 1, min, max); - break; - case "ArrowRight": - newValue = getNewValue(value, stepSize, isRtl ? -1 : 1, min, max); - break; - case "ArrowDown": - newValue = getNewValue(value, stepSize, -1, min, max); - break; - case "ArrowLeft": - newValue = getNewValue(value, stepSize, isRtl ? 1 : -1, min, max); - break; - case "PageUp": - newValue = getNewValue(value, shiftStep, 1, min, max); - break; - case "PageDown": - newValue = getNewValue(value, shiftStep, -1, min, max); - break; - case "Home": - newValue = min; - break; - case "End": - newValue = max; - break; - default: - break; - } - } else if (marks) { - const maxMarksValue = marksValues[marksValues.length - 1]; - const currentMarkIndex = marksValues.indexOf(value); - const decrementKeys = [isRtl ? "ArrowRight" : "ArrowLeft", "ArrowDown", "PageDown", "Home"]; - const incrementKeys = [isRtl ? "ArrowLeft" : "ArrowRight", "ArrowUp", "PageUp", "End"]; - if (decrementKeys.includes(event.key)) { - if (currentMarkIndex === 0) { - newValue = marksValues[0]; - } else { - newValue = marksValues[currentMarkIndex - 1]; - } - } else if (incrementKeys.includes(event.key)) { - if (currentMarkIndex === marksValues.length - 1) { - newValue = maxMarksValue; - } else { - newValue = marksValues[currentMarkIndex + 1]; - } - } - } - if (newValue != null) { - changeValue(event, newValue); - } - } - (_a = otherHandlers == null ? void 0 : otherHandlers.onKeyDown) == null ? void 0 : _a.call(otherHandlers, event); - }; - useEnhancedEffect_default(() => { - var _a; - if (disabled && sliderRef.current.contains(document.activeElement)) { - (_a = document.activeElement) == null ? void 0 : _a.blur(); - } - }, [disabled]); - if (disabled && active !== -1) { - setActive(-1); - } - if (disabled && focusedThumbIndex !== -1) { - setFocusedThumbIndex(-1); - } - const createHandleHiddenInputChange = (otherHandlers) => (event) => { - var _a; - (_a = otherHandlers.onChange) == null ? void 0 : _a.call(otherHandlers, event); - changeValue(event, event.target.valueAsNumber); - }; - const previousIndex = React16.useRef(void 0); - let axis = orientation; - if (isRtl && orientation === "horizontal") { - axis += "-reverse"; - } - const getFingerNewValue = ({ - finger, - move = false - }) => { - const { - current: slider - } = sliderRef; - const { - width: width2, - height: height2, - bottom: bottom2, - left: left2 - } = slider.getBoundingClientRect(); - let percent; - if (axis.startsWith("vertical")) { - percent = (bottom2 - finger.y) / height2; - } else { - percent = (finger.x - left2) / width2; - } - if (axis.includes("-reverse")) { - percent = 1 - percent; - } - let newValue; - newValue = percentToValue(percent, min, max); - if (step) { - newValue = roundValueToStep(newValue, step, min); - } else { - const closestIndex = findClosest(marksValues, newValue); - newValue = marksValues[closestIndex]; - } - newValue = clamp_default(newValue, min, max); - let activeIndex = 0; - if (range) { - if (!move) { - activeIndex = findClosest(values2, newValue); - } else { - activeIndex = previousIndex.current; - } - if (disableSwap) { - newValue = clamp_default(newValue, values2[activeIndex - 1] || -Infinity, values2[activeIndex + 1] || Infinity); - } - const previousValue = newValue; - newValue = setValueIndex({ - values: values2, - newValue, - index: activeIndex - }); - if (!(disableSwap && move)) { - activeIndex = newValue.indexOf(previousValue); - previousIndex.current = activeIndex; - } - } - return { - newValue, - activeIndex - }; - }; - const handleTouchMove = useEventCallback_default((nativeEvent) => { - const finger = trackFinger(nativeEvent, touchId); - if (!finger) { - return; - } - moveCount.current += 1; - if (nativeEvent.type === "mousemove" && nativeEvent.buttons === 0) { - handleTouchEnd(nativeEvent); - return; - } - const { - newValue, - activeIndex - } = getFingerNewValue({ - finger, - move: true - }); - focusThumb({ - sliderRef, - activeIndex, - setActive - }); - setValueState(newValue); - if (!dragging && moveCount.current > INTENTIONAL_DRAG_COUNT_THRESHOLD) { - setDragging(true); - } - if (handleChange && !areValuesEqual(newValue, valueDerived)) { - handleChange(nativeEvent, newValue, activeIndex); - } - }); - const handleTouchEnd = useEventCallback_default((nativeEvent) => { - const finger = trackFinger(nativeEvent, touchId); - setDragging(false); - if (!finger) { - return; - } - const { - newValue - } = getFingerNewValue({ - finger, - move: true - }); - setActive(-1); - if (nativeEvent.type === "touchend") { - setOpen(-1); - } - if (onChangeCommitted) { - onChangeCommitted(nativeEvent, lastChangedValue.current ?? newValue); - } - touchId.current = void 0; - stopListening(); - }); - const handleTouchStart = useEventCallback_default((nativeEvent) => { - if (disabled) { - return; - } - if (!doesSupportTouchActionNone()) { - nativeEvent.preventDefault(); - } - const touch = nativeEvent.changedTouches[0]; - if (touch != null) { - touchId.current = touch.identifier; - } - const finger = trackFinger(nativeEvent, touchId); - if (finger !== false) { - const { - newValue, - activeIndex - } = getFingerNewValue({ - finger - }); - focusThumb({ - sliderRef, - activeIndex, - setActive - }); - setValueState(newValue); - if (handleChange && !areValuesEqual(newValue, valueDerived)) { - handleChange(nativeEvent, newValue, activeIndex); - } - } - moveCount.current = 0; - const doc = ownerDocument(sliderRef.current); - doc.addEventListener("touchmove", handleTouchMove, { - passive: true - }); - doc.addEventListener("touchend", handleTouchEnd, { - passive: true - }); - }); - const stopListening = React16.useCallback(() => { - const doc = ownerDocument(sliderRef.current); - doc.removeEventListener("mousemove", handleTouchMove); - doc.removeEventListener("mouseup", handleTouchEnd); - doc.removeEventListener("touchmove", handleTouchMove); - doc.removeEventListener("touchend", handleTouchEnd); - }, [handleTouchEnd, handleTouchMove]); - React16.useEffect(() => { - const { - current: slider - } = sliderRef; - slider.addEventListener("touchstart", handleTouchStart, { - passive: doesSupportTouchActionNone() - }); - return () => { - slider.removeEventListener("touchstart", handleTouchStart); - stopListening(); - }; - }, [stopListening, handleTouchStart]); - React16.useEffect(() => { - if (disabled) { - stopListening(); - } - }, [disabled, stopListening]); - const createHandleMouseDown = (otherHandlers) => (event) => { - var _a; - (_a = otherHandlers.onMouseDown) == null ? void 0 : _a.call(otherHandlers, event); - if (disabled) { - return; - } - if (event.defaultPrevented) { - return; - } - if (event.button !== 0) { - return; - } - event.preventDefault(); - const finger = trackFinger(event, touchId); - if (finger !== false) { - const { - newValue, - activeIndex - } = getFingerNewValue({ - finger - }); - focusThumb({ - sliderRef, - activeIndex, - setActive - }); - setValueState(newValue); - if (handleChange && !areValuesEqual(newValue, valueDerived)) { - handleChange(event, newValue, activeIndex); - } - } - moveCount.current = 0; - const doc = ownerDocument(sliderRef.current); - doc.addEventListener("mousemove", handleTouchMove, { - passive: true - }); - doc.addEventListener("mouseup", handleTouchEnd); - }; - const trackOffset = valueToPercent(range ? values2[0] : min, min, max); - const trackLeap = valueToPercent(values2[values2.length - 1], min, max) - trackOffset; - const getRootProps = (externalProps = {}) => { - const externalHandlers = extractEventHandlers_default(externalProps); - const ownEventHandlers = { - onMouseDown: createHandleMouseDown(externalHandlers || {}) - }; - const mergedEventHandlers = { - ...externalHandlers, - ...ownEventHandlers - }; - return { - ...externalProps, - ref: handleRef, - ...mergedEventHandlers - }; - }; - const createHandleMouseOver = (otherHandlers) => (event) => { - var _a; - (_a = otherHandlers.onMouseOver) == null ? void 0 : _a.call(otherHandlers, event); - const index = Number(event.currentTarget.getAttribute("data-index")); - setOpen(index); - }; - const createHandleMouseLeave = (otherHandlers) => (event) => { - var _a; - (_a = otherHandlers.onMouseLeave) == null ? void 0 : _a.call(otherHandlers, event); - setOpen(-1); - }; - const getThumbProps = (externalProps = {}) => { - const externalHandlers = extractEventHandlers_default(externalProps); - const ownEventHandlers = { - onMouseOver: createHandleMouseOver(externalHandlers || {}), - onMouseLeave: createHandleMouseLeave(externalHandlers || {}) - }; - return { - ...externalProps, - ...externalHandlers, - ...ownEventHandlers - }; - }; - const getThumbStyle = (index) => { - return { - // So the non active thumb doesn't show its label on hover. - pointerEvents: active !== -1 && active !== index ? "none" : void 0 - }; - }; - let cssWritingMode; - if (orientation === "vertical") { - cssWritingMode = isRtl ? "vertical-rl" : "vertical-lr"; - } - const getHiddenInputProps = (externalProps = {}) => { - const externalHandlers = extractEventHandlers_default(externalProps); - const ownEventHandlers = { - onChange: createHandleHiddenInputChange(externalHandlers || {}), - onFocus: createHandleHiddenInputFocus(externalHandlers || {}), - onBlur: createHandleHiddenInputBlur(externalHandlers || {}), - onKeyDown: createHandleHiddenInputKeyDown(externalHandlers || {}) - }; - const mergedEventHandlers = { - ...externalHandlers, - ...ownEventHandlers - }; - return { - tabIndex, - "aria-labelledby": ariaLabelledby, - "aria-orientation": orientation, - "aria-valuemax": scale(max), - "aria-valuemin": scale(min), - name, - type: "range", - min: parameters.min, - max: parameters.max, - step: parameters.step === null && parameters.marks ? "any" : parameters.step ?? void 0, - disabled, - ...externalProps, - ...mergedEventHandlers, - style: { - ...visuallyHidden_default, - direction: isRtl ? "rtl" : "ltr", - // So that VoiceOver's focus indicator matches the thumb's dimensions - width: "100%", - height: "100%", - writingMode: cssWritingMode - } - }; - }; - return { - active, - axis, - axisProps, - dragging, - focusedThumbIndex, - getHiddenInputProps, - getRootProps, - getThumbProps, - marks, - open, - range, - rootRef: handleRef, - trackLeap, - trackOffset, - values: values2, - getThumbStyle - }; -} - -// node_modules/@mui/material/esm/utils/isHostComponent.js -function isHostComponent2(element) { - return typeof element === "string"; -} -var isHostComponent_default2 = isHostComponent2; - -// node_modules/@mui/material/esm/zero-styled/index.js -var React40 = __toESM(require_react(), 1); - -// node_modules/@mui/system/esm/merge/merge.js -function merge(acc, item) { - if (!item) { - return acc; - } - return deepmerge(acc, item, { - clone: false - // No need to clone deep, it's way faster. - }); -} -var merge_default = merge; - -// node_modules/@mui/system/esm/responsivePropType/responsivePropType.js -var import_prop_types5 = __toESM(require_prop_types(), 1); -var responsivePropType = true ? import_prop_types5.default.oneOfType([import_prop_types5.default.number, import_prop_types5.default.string, import_prop_types5.default.object, import_prop_types5.default.array]) : {}; -var responsivePropType_default = responsivePropType; - -// node_modules/@mui/system/esm/breakpoints/breakpoints.js -var import_prop_types6 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/system/esm/cssContainerQueries/cssContainerQueries.js -function sortContainerQueries(theme, css2) { - if (!theme.containerQueries) { - return css2; - } - const sorted = Object.keys(css2).filter((key) => key.startsWith("@container")).sort((a, b) => { - var _a, _b; - const regex = /min-width:\s*([0-9.]+)/; - return +(((_a = a.match(regex)) == null ? void 0 : _a[1]) || 0) - +(((_b = b.match(regex)) == null ? void 0 : _b[1]) || 0); - }); - if (!sorted.length) { - return css2; - } - return sorted.reduce((acc, key) => { - const value = css2[key]; - delete acc[key]; - acc[key] = value; - return acc; - }, { - ...css2 - }); -} -function isCqShorthand(breakpointKeys, value) { - return value === "@" || value.startsWith("@") && (breakpointKeys.some((key) => value.startsWith(`@${key}`)) || !!value.match(/^@\d/)); -} -function getContainerQuery(theme, shorthand) { - const matches = shorthand.match(/^@([^/]+)?\/?(.+)?$/); - if (!matches) { - if (true) { - throw new Error(true ? `MUI: The provided shorthand ${`(${shorthand})`} is invalid. The format should be \`@\` or \`@/\`. -For example, \`@sm\` or \`@600\` or \`@40rem/sidebar\`.` : formatMuiErrorMessage(18, `(${shorthand})`)); - } - return null; - } - const [, containerQuery, containerName] = matches; - const value = Number.isNaN(+containerQuery) ? containerQuery || 0 : +containerQuery; - return theme.containerQueries(containerName).up(value); -} -function cssContainerQueries(themeInput) { - const toContainerQuery = (mediaQuery, name) => mediaQuery.replace("@media", name ? `@container ${name}` : "@container"); - function attachCq(node3, name) { - node3.up = (...args) => toContainerQuery(themeInput.breakpoints.up(...args), name); - node3.down = (...args) => toContainerQuery(themeInput.breakpoints.down(...args), name); - node3.between = (...args) => toContainerQuery(themeInput.breakpoints.between(...args), name); - node3.only = (...args) => toContainerQuery(themeInput.breakpoints.only(...args), name); - node3.not = (...args) => { - const result = toContainerQuery(themeInput.breakpoints.not(...args), name); - if (result.includes("not all and")) { - return result.replace("not all and ", "").replace("min-width:", "width<").replace("max-width:", "width>").replace("and", "or"); - } - return result; - }; - } - const node2 = {}; - const containerQueries = (name) => { - attachCq(node2, name); - return node2; - }; - attachCq(containerQueries); - return { - ...themeInput, - containerQueries - }; -} - -// node_modules/@mui/system/esm/breakpoints/breakpoints.js -var values = { - xs: 0, - // phone - sm: 600, - // tablet - md: 900, - // small laptop - lg: 1200, - // desktop - xl: 1536 - // large screen -}; -var defaultBreakpoints = { - // Sorted ASC by size. That's important. - // It can't be configured as it's used statically for propTypes. - keys: ["xs", "sm", "md", "lg", "xl"], - up: (key) => `@media (min-width:${values[key]}px)` -}; -var defaultContainerQueries = { - containerQueries: (containerName) => ({ - up: (key) => { - let result = typeof key === "number" ? key : values[key] || key; - if (typeof result === "number") { - result = `${result}px`; - } - return containerName ? `@container ${containerName} (min-width:${result})` : `@container (min-width:${result})`; - } - }) -}; -function handleBreakpoints(props, propValue, styleFromPropValue) { - const theme = props.theme || {}; - if (Array.isArray(propValue)) { - const themeBreakpoints = theme.breakpoints || defaultBreakpoints; - return propValue.reduce((acc, item, index) => { - acc[themeBreakpoints.up(themeBreakpoints.keys[index])] = styleFromPropValue(propValue[index]); - return acc; - }, {}); - } - if (typeof propValue === "object") { - const themeBreakpoints = theme.breakpoints || defaultBreakpoints; - return Object.keys(propValue).reduce((acc, breakpoint) => { - if (isCqShorthand(themeBreakpoints.keys, breakpoint)) { - const containerKey = getContainerQuery(theme.containerQueries ? theme : defaultContainerQueries, breakpoint); - if (containerKey) { - acc[containerKey] = styleFromPropValue(propValue[breakpoint], breakpoint); - } - } else if (Object.keys(themeBreakpoints.values || values).includes(breakpoint)) { - const mediaKey = themeBreakpoints.up(breakpoint); - acc[mediaKey] = styleFromPropValue(propValue[breakpoint], breakpoint); - } else { - const cssKey = breakpoint; - acc[cssKey] = propValue[cssKey]; - } - return acc; - }, {}); - } - const output = styleFromPropValue(propValue); - return output; -} -function createEmptyBreakpointObject(breakpointsInput = {}) { - var _a; - const breakpointsInOrder = (_a = breakpointsInput.keys) == null ? void 0 : _a.reduce((acc, key) => { - const breakpointStyleKey = breakpointsInput.up(key); - acc[breakpointStyleKey] = {}; - return acc; - }, {}); - return breakpointsInOrder || {}; -} -function removeUnusedBreakpoints(breakpointKeys, style4) { - return breakpointKeys.reduce((acc, key) => { - const breakpointOutput = acc[key]; - const isBreakpointUnused = !breakpointOutput || Object.keys(breakpointOutput).length === 0; - if (isBreakpointUnused) { - delete acc[key]; - } - return acc; - }, style4); -} -function mergeBreakpointsInOrder(breakpointsInput, ...styles) { - const emptyBreakpoints = createEmptyBreakpointObject(breakpointsInput); - const mergedOutput = [emptyBreakpoints, ...styles].reduce((prev2, next2) => deepmerge(prev2, next2), {}); - return removeUnusedBreakpoints(Object.keys(emptyBreakpoints), mergedOutput); -} -function computeBreakpointsBase(breakpointValues, themeBreakpoints) { - if (typeof breakpointValues !== "object") { - return {}; - } - const base = {}; - const breakpointsKeys = Object.keys(themeBreakpoints); - if (Array.isArray(breakpointValues)) { - breakpointsKeys.forEach((breakpoint, i) => { - if (i < breakpointValues.length) { - base[breakpoint] = true; - } - }); - } else { - breakpointsKeys.forEach((breakpoint) => { - if (breakpointValues[breakpoint] != null) { - base[breakpoint] = true; - } - }); - } - return base; -} -function resolveBreakpointValues({ - values: breakpointValues, - breakpoints: themeBreakpoints, - base: customBase -}) { - const base = customBase || computeBreakpointsBase(breakpointValues, themeBreakpoints); - const keys = Object.keys(base); - if (keys.length === 0) { - return breakpointValues; - } - let previous; - return keys.reduce((acc, breakpoint, i) => { - if (Array.isArray(breakpointValues)) { - acc[breakpoint] = breakpointValues[i] != null ? breakpointValues[i] : breakpointValues[previous]; - previous = i; - } else if (typeof breakpointValues === "object") { - acc[breakpoint] = breakpointValues[breakpoint] != null ? breakpointValues[breakpoint] : breakpointValues[previous]; - previous = breakpoint; - } else { - acc[breakpoint] = breakpointValues; - } - return acc; - }, {}); -} - -// node_modules/@mui/system/esm/style/style.js -function getPath(obj, path, checkVars = true) { - if (!path || typeof path !== "string") { - return null; - } - if (obj && obj.vars && checkVars) { - const val = `vars.${path}`.split(".").reduce((acc, item) => acc && acc[item] ? acc[item] : null, obj); - if (val != null) { - return val; - } - } - return path.split(".").reduce((acc, item) => { - if (acc && acc[item] != null) { - return acc[item]; - } - return null; - }, obj); -} -function getStyleValue(themeMapping, transform, propValueFinal, userValue = propValueFinal) { - let value; - if (typeof themeMapping === "function") { - value = themeMapping(propValueFinal); - } else if (Array.isArray(themeMapping)) { - value = themeMapping[propValueFinal] || userValue; - } else { - value = getPath(themeMapping, propValueFinal) || userValue; - } - if (transform) { - value = transform(value, userValue, themeMapping); - } - return value; -} -function style(options) { - const { - prop, - cssProperty = options.prop, - themeKey, - transform - } = options; - const fn = (props) => { - if (props[prop] == null) { - return null; - } - const propValue = props[prop]; - const theme = props.theme; - const themeMapping = getPath(theme, themeKey) || {}; - const styleFromPropValue = (propValueFinal) => { - let value = getStyleValue(themeMapping, transform, propValueFinal); - if (propValueFinal === value && typeof propValueFinal === "string") { - value = getStyleValue(themeMapping, transform, `${prop}${propValueFinal === "default" ? "" : capitalize(propValueFinal)}`, propValueFinal); - } - if (cssProperty === false) { - return value; - } - return { - [cssProperty]: value - }; - }; - return handleBreakpoints(props, propValue, styleFromPropValue); - }; - fn.propTypes = true ? { - [prop]: responsivePropType_default - } : {}; - fn.filterProps = [prop]; - return fn; -} -var style_default = style; - -// node_modules/@mui/system/esm/memoize/memoize.js -function memoize(fn) { - const cache = {}; - return (arg2) => { - if (cache[arg2] === void 0) { - cache[arg2] = fn(arg2); - } - return cache[arg2]; - }; -} - -// node_modules/@mui/system/esm/spacing/spacing.js -var properties = { - m: "margin", - p: "padding" -}; -var directions = { - t: "Top", - r: "Right", - b: "Bottom", - l: "Left", - x: ["Left", "Right"], - y: ["Top", "Bottom"] -}; -var aliases = { - marginX: "mx", - marginY: "my", - paddingX: "px", - paddingY: "py" -}; -var getCssProperties = memoize((prop) => { - if (prop.length > 2) { - if (aliases[prop]) { - prop = aliases[prop]; - } else { - return [prop]; - } - } - const [a, b] = prop.split(""); - const property = properties[a]; - const direction = directions[b] || ""; - return Array.isArray(direction) ? direction.map((dir) => property + dir) : [property + direction]; -}); -var marginKeys = ["m", "mt", "mr", "mb", "ml", "mx", "my", "margin", "marginTop", "marginRight", "marginBottom", "marginLeft", "marginX", "marginY", "marginInline", "marginInlineStart", "marginInlineEnd", "marginBlock", "marginBlockStart", "marginBlockEnd"]; -var paddingKeys = ["p", "pt", "pr", "pb", "pl", "px", "py", "padding", "paddingTop", "paddingRight", "paddingBottom", "paddingLeft", "paddingX", "paddingY", "paddingInline", "paddingInlineStart", "paddingInlineEnd", "paddingBlock", "paddingBlockStart", "paddingBlockEnd"]; -var spacingKeys = [...marginKeys, ...paddingKeys]; -function createUnaryUnit(theme, themeKey, defaultValue, propName) { - const themeSpacing = getPath(theme, themeKey, true) ?? defaultValue; - if (typeof themeSpacing === "number" || typeof themeSpacing === "string") { - return (val) => { - if (typeof val === "string") { - return val; - } - if (true) { - if (typeof val !== "number") { - console.error(`MUI: Expected ${propName} argument to be a number or a string, got ${val}.`); - } - } - if (typeof themeSpacing === "string") { - if (themeSpacing.startsWith("var(") && val === 0) { - return 0; - } - if (themeSpacing.startsWith("var(") && val === 1) { - return themeSpacing; - } - return `calc(${val} * ${themeSpacing})`; - } - return themeSpacing * val; - }; - } - if (Array.isArray(themeSpacing)) { - return (val) => { - if (typeof val === "string") { - return val; - } - const abs2 = Math.abs(val); - if (true) { - if (!Number.isInteger(abs2)) { - console.error([`MUI: The \`theme.${themeKey}\` array type cannot be combined with non integer values.You should either use an integer value that can be used as index, or define the \`theme.${themeKey}\` as a number.`].join("\n")); - } else if (abs2 > themeSpacing.length - 1) { - console.error([`MUI: The value provided (${abs2}) overflows.`, `The supported values are: ${JSON.stringify(themeSpacing)}.`, `${abs2} > ${themeSpacing.length - 1}, you need to add the missing values.`].join("\n")); - } - } - const transformed = themeSpacing[abs2]; - if (val >= 0) { - return transformed; - } - if (typeof transformed === "number") { - return -transformed; - } - if (typeof transformed === "string" && transformed.startsWith("var(")) { - return `calc(-1 * ${transformed})`; - } - return `-${transformed}`; - }; - } - if (typeof themeSpacing === "function") { - return themeSpacing; - } - if (true) { - console.error([`MUI: The \`theme.${themeKey}\` value (${themeSpacing}) is invalid.`, "It should be a number, an array or a function."].join("\n")); - } - return () => void 0; -} -function createUnarySpacing(theme) { - return createUnaryUnit(theme, "spacing", 8, "spacing"); -} -function getValue(transformer, propValue) { - if (typeof propValue === "string" || propValue == null) { - return propValue; - } - return transformer(propValue); -} -function getStyleFromPropValue(cssProperties, transformer) { - return (propValue) => cssProperties.reduce((acc, cssProperty) => { - acc[cssProperty] = getValue(transformer, propValue); - return acc; - }, {}); -} -function resolveCssProperty(props, keys, prop, transformer) { - if (!keys.includes(prop)) { - return null; - } - const cssProperties = getCssProperties(prop); - const styleFromPropValue = getStyleFromPropValue(cssProperties, transformer); - const propValue = props[prop]; - return handleBreakpoints(props, propValue, styleFromPropValue); -} -function style2(props, keys) { - const transformer = createUnarySpacing(props.theme); - return Object.keys(props).map((prop) => resolveCssProperty(props, keys, prop, transformer)).reduce(merge_default, {}); -} -function margin(props) { - return style2(props, marginKeys); -} -margin.propTypes = true ? marginKeys.reduce((obj, key) => { - obj[key] = responsivePropType_default; - return obj; -}, {}) : {}; -margin.filterProps = marginKeys; -function padding(props) { - return style2(props, paddingKeys); -} -padding.propTypes = true ? paddingKeys.reduce((obj, key) => { - obj[key] = responsivePropType_default; - return obj; -}, {}) : {}; -padding.filterProps = paddingKeys; -function spacing(props) { - return style2(props, spacingKeys); -} -spacing.propTypes = true ? spacingKeys.reduce((obj, key) => { - obj[key] = responsivePropType_default; - return obj; -}, {}) : {}; -spacing.filterProps = spacingKeys; -var spacing_default = spacing; - -// node_modules/@mui/system/esm/compose/compose.js -function compose(...styles) { - const handlers = styles.reduce((acc, style4) => { - style4.filterProps.forEach((prop) => { - acc[prop] = style4; - }); - return acc; - }, {}); - const fn = (props) => { - return Object.keys(props).reduce((acc, prop) => { - if (handlers[prop]) { - return merge_default(acc, handlers[prop](props)); - } - return acc; - }, {}); - }; - fn.propTypes = true ? styles.reduce((acc, style4) => Object.assign(acc, style4.propTypes), {}) : {}; - fn.filterProps = styles.reduce((acc, style4) => acc.concat(style4.filterProps), []); - return fn; -} -var compose_default = compose; - -// node_modules/@mui/system/esm/borders/borders.js -function borderTransform(value) { - if (typeof value !== "number") { - return value; - } - return `${value}px solid`; -} -function createBorderStyle(prop, transform) { - return style_default({ - prop, - themeKey: "borders", - transform - }); -} -var border = createBorderStyle("border", borderTransform); -var borderTop = createBorderStyle("borderTop", borderTransform); -var borderRight = createBorderStyle("borderRight", borderTransform); -var borderBottom = createBorderStyle("borderBottom", borderTransform); -var borderLeft = createBorderStyle("borderLeft", borderTransform); -var borderColor = createBorderStyle("borderColor"); -var borderTopColor = createBorderStyle("borderTopColor"); -var borderRightColor = createBorderStyle("borderRightColor"); -var borderBottomColor = createBorderStyle("borderBottomColor"); -var borderLeftColor = createBorderStyle("borderLeftColor"); -var outline = createBorderStyle("outline", borderTransform); -var outlineColor = createBorderStyle("outlineColor"); -var borderRadius = (props) => { - if (props.borderRadius !== void 0 && props.borderRadius !== null) { - const transformer = createUnaryUnit(props.theme, "shape.borderRadius", 4, "borderRadius"); - const styleFromPropValue = (propValue) => ({ - borderRadius: getValue(transformer, propValue) - }); - return handleBreakpoints(props, props.borderRadius, styleFromPropValue); - } - return null; -}; -borderRadius.propTypes = true ? { - borderRadius: responsivePropType_default -} : {}; -borderRadius.filterProps = ["borderRadius"]; -var borders = compose_default(border, borderTop, borderRight, borderBottom, borderLeft, borderColor, borderTopColor, borderRightColor, borderBottomColor, borderLeftColor, borderRadius, outline, outlineColor); -var borders_default = borders; - -// node_modules/@mui/system/esm/cssGrid/cssGrid.js -var gap = (props) => { - if (props.gap !== void 0 && props.gap !== null) { - const transformer = createUnaryUnit(props.theme, "spacing", 8, "gap"); - const styleFromPropValue = (propValue) => ({ - gap: getValue(transformer, propValue) - }); - return handleBreakpoints(props, props.gap, styleFromPropValue); - } - return null; -}; -gap.propTypes = true ? { - gap: responsivePropType_default -} : {}; -gap.filterProps = ["gap"]; -var columnGap = (props) => { - if (props.columnGap !== void 0 && props.columnGap !== null) { - const transformer = createUnaryUnit(props.theme, "spacing", 8, "columnGap"); - const styleFromPropValue = (propValue) => ({ - columnGap: getValue(transformer, propValue) - }); - return handleBreakpoints(props, props.columnGap, styleFromPropValue); - } - return null; -}; -columnGap.propTypes = true ? { - columnGap: responsivePropType_default -} : {}; -columnGap.filterProps = ["columnGap"]; -var rowGap = (props) => { - if (props.rowGap !== void 0 && props.rowGap !== null) { - const transformer = createUnaryUnit(props.theme, "spacing", 8, "rowGap"); - const styleFromPropValue = (propValue) => ({ - rowGap: getValue(transformer, propValue) - }); - return handleBreakpoints(props, props.rowGap, styleFromPropValue); - } - return null; -}; -rowGap.propTypes = true ? { - rowGap: responsivePropType_default -} : {}; -rowGap.filterProps = ["rowGap"]; -var gridColumn = style_default({ - prop: "gridColumn" -}); -var gridRow = style_default({ - prop: "gridRow" -}); -var gridAutoFlow = style_default({ - prop: "gridAutoFlow" -}); -var gridAutoColumns = style_default({ - prop: "gridAutoColumns" -}); -var gridAutoRows = style_default({ - prop: "gridAutoRows" -}); -var gridTemplateColumns = style_default({ - prop: "gridTemplateColumns" -}); -var gridTemplateRows = style_default({ - prop: "gridTemplateRows" -}); -var gridTemplateAreas = style_default({ - prop: "gridTemplateAreas" -}); -var gridArea = style_default({ - prop: "gridArea" -}); -var grid = compose_default(gap, columnGap, rowGap, gridColumn, gridRow, gridAutoFlow, gridAutoColumns, gridAutoRows, gridTemplateColumns, gridTemplateRows, gridTemplateAreas, gridArea); -var cssGrid_default = grid; - -// node_modules/@mui/system/esm/palette/palette.js -function paletteTransform(value, userValue) { - if (userValue === "grey") { - return userValue; - } - return value; -} -var color = style_default({ - prop: "color", - themeKey: "palette", - transform: paletteTransform -}); -var bgcolor = style_default({ - prop: "bgcolor", - cssProperty: "backgroundColor", - themeKey: "palette", - transform: paletteTransform -}); -var backgroundColor = style_default({ - prop: "backgroundColor", - themeKey: "palette", - transform: paletteTransform -}); -var palette = compose_default(color, bgcolor, backgroundColor); -var palette_default = palette; - -// node_modules/@mui/system/esm/sizing/sizing.js -function sizingTransform(value) { - return value <= 1 && value !== 0 ? `${value * 100}%` : value; -} -var width = style_default({ - prop: "width", - transform: sizingTransform -}); -var maxWidth = (props) => { - if (props.maxWidth !== void 0 && props.maxWidth !== null) { - const styleFromPropValue = (propValue) => { - var _a, _b, _c, _d, _e; - const breakpoint = ((_c = (_b = (_a = props.theme) == null ? void 0 : _a.breakpoints) == null ? void 0 : _b.values) == null ? void 0 : _c[propValue]) || values[propValue]; - if (!breakpoint) { - return { - maxWidth: sizingTransform(propValue) - }; - } - if (((_e = (_d = props.theme) == null ? void 0 : _d.breakpoints) == null ? void 0 : _e.unit) !== "px") { - return { - maxWidth: `${breakpoint}${props.theme.breakpoints.unit}` - }; - } - return { - maxWidth: breakpoint - }; - }; - return handleBreakpoints(props, props.maxWidth, styleFromPropValue); - } - return null; -}; -maxWidth.filterProps = ["maxWidth"]; -var minWidth = style_default({ - prop: "minWidth", - transform: sizingTransform -}); -var height = style_default({ - prop: "height", - transform: sizingTransform -}); -var maxHeight = style_default({ - prop: "maxHeight", - transform: sizingTransform -}); -var minHeight = style_default({ - prop: "minHeight", - transform: sizingTransform -}); -var sizeWidth = style_default({ - prop: "size", - cssProperty: "width", - transform: sizingTransform -}); -var sizeHeight = style_default({ - prop: "size", - cssProperty: "height", - transform: sizingTransform -}); -var boxSizing = style_default({ - prop: "boxSizing" -}); -var sizing = compose_default(width, maxWidth, minWidth, height, maxHeight, minHeight, boxSizing); -var sizing_default = sizing; - -// node_modules/@mui/system/esm/styleFunctionSx/defaultSxConfig.js -var defaultSxConfig = { - // borders - border: { - themeKey: "borders", - transform: borderTransform - }, - borderTop: { - themeKey: "borders", - transform: borderTransform - }, - borderRight: { - themeKey: "borders", - transform: borderTransform - }, - borderBottom: { - themeKey: "borders", - transform: borderTransform - }, - borderLeft: { - themeKey: "borders", - transform: borderTransform - }, - borderColor: { - themeKey: "palette" - }, - borderTopColor: { - themeKey: "palette" - }, - borderRightColor: { - themeKey: "palette" - }, - borderBottomColor: { - themeKey: "palette" - }, - borderLeftColor: { - themeKey: "palette" - }, - outline: { - themeKey: "borders", - transform: borderTransform - }, - outlineColor: { - themeKey: "palette" - }, - borderRadius: { - themeKey: "shape.borderRadius", - style: borderRadius - }, - // palette - color: { - themeKey: "palette", - transform: paletteTransform - }, - bgcolor: { - themeKey: "palette", - cssProperty: "backgroundColor", - transform: paletteTransform - }, - backgroundColor: { - themeKey: "palette", - transform: paletteTransform - }, - // spacing - p: { - style: padding - }, - pt: { - style: padding - }, - pr: { - style: padding - }, - pb: { - style: padding - }, - pl: { - style: padding - }, - px: { - style: padding - }, - py: { - style: padding - }, - padding: { - style: padding - }, - paddingTop: { - style: padding - }, - paddingRight: { - style: padding - }, - paddingBottom: { - style: padding - }, - paddingLeft: { - style: padding - }, - paddingX: { - style: padding - }, - paddingY: { - style: padding - }, - paddingInline: { - style: padding - }, - paddingInlineStart: { - style: padding - }, - paddingInlineEnd: { - style: padding - }, - paddingBlock: { - style: padding - }, - paddingBlockStart: { - style: padding - }, - paddingBlockEnd: { - style: padding - }, - m: { - style: margin - }, - mt: { - style: margin - }, - mr: { - style: margin - }, - mb: { - style: margin - }, - ml: { - style: margin - }, - mx: { - style: margin - }, - my: { - style: margin - }, - margin: { - style: margin - }, - marginTop: { - style: margin - }, - marginRight: { - style: margin - }, - marginBottom: { - style: margin - }, - marginLeft: { - style: margin - }, - marginX: { - style: margin - }, - marginY: { - style: margin - }, - marginInline: { - style: margin - }, - marginInlineStart: { - style: margin - }, - marginInlineEnd: { - style: margin - }, - marginBlock: { - style: margin - }, - marginBlockStart: { - style: margin - }, - marginBlockEnd: { - style: margin - }, - // display - displayPrint: { - cssProperty: false, - transform: (value) => ({ - "@media print": { - display: value - } - }) - }, - display: {}, - overflow: {}, - textOverflow: {}, - visibility: {}, - whiteSpace: {}, - // flexbox - flexBasis: {}, - flexDirection: {}, - flexWrap: {}, - justifyContent: {}, - alignItems: {}, - alignContent: {}, - order: {}, - flex: {}, - flexGrow: {}, - flexShrink: {}, - alignSelf: {}, - justifyItems: {}, - justifySelf: {}, - // grid - gap: { - style: gap - }, - rowGap: { - style: rowGap - }, - columnGap: { - style: columnGap - }, - gridColumn: {}, - gridRow: {}, - gridAutoFlow: {}, - gridAutoColumns: {}, - gridAutoRows: {}, - gridTemplateColumns: {}, - gridTemplateRows: {}, - gridTemplateAreas: {}, - gridArea: {}, - // positions - position: {}, - zIndex: { - themeKey: "zIndex" - }, - top: {}, - right: {}, - bottom: {}, - left: {}, - // shadows - boxShadow: { - themeKey: "shadows" - }, - // sizing - width: { - transform: sizingTransform - }, - maxWidth: { - style: maxWidth - }, - minWidth: { - transform: sizingTransform - }, - height: { - transform: sizingTransform - }, - maxHeight: { - transform: sizingTransform - }, - minHeight: { - transform: sizingTransform - }, - boxSizing: {}, - // typography - font: { - themeKey: "font" - }, - fontFamily: { - themeKey: "typography" - }, - fontSize: { - themeKey: "typography" - }, - fontStyle: { - themeKey: "typography" - }, - fontWeight: { - themeKey: "typography" - }, - letterSpacing: {}, - textTransform: {}, - lineHeight: {}, - textAlign: {}, - typography: { - cssProperty: false, - themeKey: "typography" - } -}; -var defaultSxConfig_default = defaultSxConfig; - -// node_modules/@mui/system/esm/styleFunctionSx/styleFunctionSx.js -function objectsHaveSameKeys(...objects) { - const allKeys = objects.reduce((keys, object) => keys.concat(Object.keys(object)), []); - const union = new Set(allKeys); - return objects.every((object) => union.size === Object.keys(object).length); -} -function callIfFn(maybeFn, arg2) { - return typeof maybeFn === "function" ? maybeFn(arg2) : maybeFn; -} -function unstable_createStyleFunctionSx() { - function getThemeValue(prop, val, theme, config) { - const props = { - [prop]: val, - theme - }; - const options = config[prop]; - if (!options) { - return { - [prop]: val - }; - } - const { - cssProperty = prop, - themeKey, - transform, - style: style4 - } = options; - if (val == null) { - return null; - } - if (themeKey === "typography" && val === "inherit") { - return { - [prop]: val - }; - } - const themeMapping = getPath(theme, themeKey) || {}; - if (style4) { - return style4(props); - } - const styleFromPropValue = (propValueFinal) => { - let value = getStyleValue(themeMapping, transform, propValueFinal); - if (propValueFinal === value && typeof propValueFinal === "string") { - value = getStyleValue(themeMapping, transform, `${prop}${propValueFinal === "default" ? "" : capitalize(propValueFinal)}`, propValueFinal); - } - if (cssProperty === false) { - return value; - } - return { - [cssProperty]: value - }; - }; - return handleBreakpoints(props, val, styleFromPropValue); - } - function styleFunctionSx2(props) { - const { - sx, - theme = {} - } = props || {}; - if (!sx) { - return null; - } - const config = theme.unstable_sxConfig ?? defaultSxConfig_default; - function traverse(sxInput) { - let sxObject = sxInput; - if (typeof sxInput === "function") { - sxObject = sxInput(theme); - } else if (typeof sxInput !== "object") { - return sxInput; - } - if (!sxObject) { - return null; - } - const emptyBreakpoints = createEmptyBreakpointObject(theme.breakpoints); - const breakpointsKeys = Object.keys(emptyBreakpoints); - let css2 = emptyBreakpoints; - Object.keys(sxObject).forEach((styleKey) => { - const value = callIfFn(sxObject[styleKey], theme); - if (value !== null && value !== void 0) { - if (typeof value === "object") { - if (config[styleKey]) { - css2 = merge_default(css2, getThemeValue(styleKey, value, theme, config)); - } else { - const breakpointsValues = handleBreakpoints({ - theme - }, value, (x) => ({ - [styleKey]: x - })); - if (objectsHaveSameKeys(breakpointsValues, value)) { - css2[styleKey] = styleFunctionSx2({ - sx: value, - theme - }); - } else { - css2 = merge_default(css2, breakpointsValues); - } - } - } else { - css2 = merge_default(css2, getThemeValue(styleKey, value, theme, config)); - } - } - }); - return sortContainerQueries(theme, removeUnusedBreakpoints(breakpointsKeys, css2)); - } - return Array.isArray(sx) ? sx.map(traverse) : traverse(sx); - } - return styleFunctionSx2; -} -var styleFunctionSx = unstable_createStyleFunctionSx(); -styleFunctionSx.filterProps = ["sx"]; -var styleFunctionSx_default = styleFunctionSx; - -// node_modules/@mui/system/esm/styleFunctionSx/extendSxProp.js -var splitProps = (props) => { - var _a; - const result = { - systemProps: {}, - otherProps: {} - }; - const config = ((_a = props == null ? void 0 : props.theme) == null ? void 0 : _a.unstable_sxConfig) ?? defaultSxConfig_default; - Object.keys(props).forEach((prop) => { - if (config[prop]) { - result.systemProps[prop] = props[prop]; - } else { - result.otherProps[prop] = props[prop]; - } - }); - return result; -}; -function extendSxProp(props) { - const { - sx: inSx, - ...other - } = props; - const { - systemProps, - otherProps - } = splitProps(other); - let finalSx; - if (Array.isArray(inSx)) { - finalSx = [systemProps, ...inSx]; - } else if (typeof inSx === "function") { - finalSx = (...args) => { - const result = inSx(...args); - if (!isPlainObject(result)) { - return systemProps; - } - return { - ...systemProps, - ...result - }; - }; - } else { - finalSx = { - ...systemProps, - ...inSx - }; - } - return { - ...otherProps, - sx: finalSx - }; -} - -// node_modules/@mui/material/esm/styles/useTheme.js -var React38 = __toESM(require_react(), 1); - -// node_modules/@emotion/react/dist/emotion-element-489459f2.browser.development.esm.js -var React18 = __toESM(require_react()); -var import_react = __toESM(require_react()); - -// node_modules/@emotion/sheet/dist/emotion-sheet.development.esm.js -var isDevelopment = true; -function sheetForTag(tag) { - if (tag.sheet) { - return tag.sheet; - } - for (var i = 0; i < document.styleSheets.length; i++) { - if (document.styleSheets[i].ownerNode === tag) { - return document.styleSheets[i]; - } - } - return void 0; -} -function createStyleElement(options) { - var tag = document.createElement("style"); - tag.setAttribute("data-emotion", options.key); - if (options.nonce !== void 0) { - tag.setAttribute("nonce", options.nonce); - } - tag.appendChild(document.createTextNode("")); - tag.setAttribute("data-s", ""); - return tag; -} -var StyleSheet = function() { - function StyleSheet2(options) { - var _this = this; - this._insertTag = function(tag) { - var before; - if (_this.tags.length === 0) { - if (_this.insertionPoint) { - before = _this.insertionPoint.nextSibling; - } else if (_this.prepend) { - before = _this.container.firstChild; - } else { - before = _this.before; - } - } else { - before = _this.tags[_this.tags.length - 1].nextSibling; - } - _this.container.insertBefore(tag, before); - _this.tags.push(tag); - }; - this.isSpeedy = options.speedy === void 0 ? !isDevelopment : options.speedy; - this.tags = []; - this.ctr = 0; - this.nonce = options.nonce; - this.key = options.key; - this.container = options.container; - this.prepend = options.prepend; - this.insertionPoint = options.insertionPoint; - this.before = null; - } - var _proto = StyleSheet2.prototype; - _proto.hydrate = function hydrate(nodes) { - nodes.forEach(this._insertTag); - }; - _proto.insert = function insert(rule) { - if (this.ctr % (this.isSpeedy ? 65e3 : 1) === 0) { - this._insertTag(createStyleElement(this)); - } - var tag = this.tags[this.tags.length - 1]; - { - var isImportRule3 = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105; - if (isImportRule3 && this._alreadyInsertedOrderInsensitiveRule) { - console.error("You're attempting to insert the following rule:\n" + rule + "\n\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules."); - } - this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule3; - } - if (this.isSpeedy) { - var sheet = sheetForTag(tag); - try { - sheet.insertRule(rule, sheet.cssRules.length); - } catch (e) { - if (!/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) { - console.error('There was a problem inserting the following rule: "' + rule + '"', e); - } - } - } else { - tag.appendChild(document.createTextNode(rule)); - } - this.ctr++; - }; - _proto.flush = function flush() { - this.tags.forEach(function(tag) { - var _tag$parentNode; - return (_tag$parentNode = tag.parentNode) == null ? void 0 : _tag$parentNode.removeChild(tag); - }); - this.tags = []; - this.ctr = 0; - { - this._alreadyInsertedOrderInsensitiveRule = false; - } - }; - return StyleSheet2; -}(); - -// node_modules/stylis/src/Enum.js -var MS = "-ms-"; -var MOZ = "-moz-"; -var WEBKIT = "-webkit-"; -var COMMENT = "comm"; -var RULESET = "rule"; -var DECLARATION = "decl"; -var IMPORT = "@import"; -var KEYFRAMES = "@keyframes"; -var LAYER = "@layer"; - -// node_modules/stylis/src/Utility.js -var abs = Math.abs; -var from = String.fromCharCode; -var assign = Object.assign; -function hash(value, length2) { - return charat(value, 0) ^ 45 ? (((length2 << 2 ^ charat(value, 0)) << 2 ^ charat(value, 1)) << 2 ^ charat(value, 2)) << 2 ^ charat(value, 3) : 0; -} -function trim(value) { - return value.trim(); -} -function match(value, pattern) { - return (value = pattern.exec(value)) ? value[0] : value; -} -function replace(value, pattern, replacement) { - return value.replace(pattern, replacement); -} -function indexof(value, search) { - return value.indexOf(search); -} -function charat(value, index) { - return value.charCodeAt(index) | 0; -} -function substr(value, begin, end) { - return value.slice(begin, end); -} -function strlen(value) { - return value.length; -} -function sizeof(value) { - return value.length; -} -function append(value, array) { - return array.push(value), value; -} -function combine(array, callback) { - return array.map(callback).join(""); -} - -// node_modules/stylis/src/Tokenizer.js -var line = 1; -var column = 1; -var length = 0; -var position = 0; -var character = 0; -var characters = ""; -function node(value, root, parent, type, props, children, length2) { - return { value, root, parent, type, props, children, line, column, length: length2, return: "" }; -} -function copy(root, props) { - return assign(node("", null, null, "", null, null, 0), root, { length: -root.length }, props); -} -function char() { - return character; -} -function prev() { - character = position > 0 ? charat(characters, --position) : 0; - if (column--, character === 10) - column = 1, line--; - return character; -} -function next() { - character = position < length ? charat(characters, position++) : 0; - if (column++, character === 10) - column = 1, line++; - return character; -} -function peek() { - return charat(characters, position); -} -function caret() { - return position; -} -function slice(begin, end) { - return substr(characters, begin, end); -} -function token(type) { - switch (type) { - case 0: - case 9: - case 10: - case 13: - case 32: - return 5; - case 33: - case 43: - case 44: - case 47: - case 62: - case 64: - case 126: - case 59: - case 123: - case 125: - return 4; - case 58: - return 3; - case 34: - case 39: - case 40: - case 91: - return 2; - case 41: - case 93: - return 1; - } - return 0; -} -function alloc(value) { - return line = column = 1, length = strlen(characters = value), position = 0, []; -} -function dealloc(value) { - return characters = "", value; -} -function delimit(type) { - return trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type))); -} -function whitespace(type) { - while (character = peek()) - if (character < 33) - next(); - else - break; - return token(type) > 2 || token(character) > 3 ? "" : " "; -} -function escaping(index, count) { - while (--count && next()) - if (character < 48 || character > 102 || character > 57 && character < 65 || character > 70 && character < 97) - break; - return slice(index, caret() + (count < 6 && peek() == 32 && next() == 32)); -} -function delimiter(type) { - while (next()) - switch (character) { - case type: - return position; - case 34: - case 39: - if (type !== 34 && type !== 39) - delimiter(character); - break; - case 40: - if (type === 41) - delimiter(type); - break; - case 92: - next(); - break; - } - return position; -} -function commenter(type, index) { - while (next()) - if (type + character === 47 + 10) - break; - else if (type + character === 42 + 42 && peek() === 47) - break; - return "/*" + slice(index, position - 1) + "*" + from(type === 47 ? type : next()); -} -function identifier(index) { - while (!token(peek())) - next(); - return slice(index, position); -} - -// node_modules/stylis/src/Parser.js -function compile(value) { - return dealloc(parse("", null, null, null, [""], value = alloc(value), 0, [0], value)); -} -function parse(value, root, parent, rule, rules, rulesets, pseudo, points, declarations) { - var index = 0; - var offset = 0; - var length2 = pseudo; - var atrule = 0; - var property = 0; - var previous = 0; - var variable = 1; - var scanning = 1; - var ampersand = 1; - var character2 = 0; - var type = ""; - var props = rules; - var children = rulesets; - var reference = rule; - var characters2 = type; - while (scanning) - switch (previous = character2, character2 = next()) { - case 40: - if (previous != 108 && charat(characters2, length2 - 1) == 58) { - if (indexof(characters2 += replace(delimit(character2), "&", "&\f"), "&\f") != -1) - ampersand = -1; - break; - } - case 34: - case 39: - case 91: - characters2 += delimit(character2); - break; - case 9: - case 10: - case 13: - case 32: - characters2 += whitespace(previous); - break; - case 92: - characters2 += escaping(caret() - 1, 7); - continue; - case 47: - switch (peek()) { - case 42: - case 47: - append(comment(commenter(next(), caret()), root, parent), declarations); - break; - default: - characters2 += "/"; - } - break; - case 123 * variable: - points[index++] = strlen(characters2) * ampersand; - case 125 * variable: - case 59: - case 0: - switch (character2) { - case 0: - case 125: - scanning = 0; - case 59 + offset: - if (ampersand == -1) characters2 = replace(characters2, /\f/g, ""); - if (property > 0 && strlen(characters2) - length2) - append(property > 32 ? declaration(characters2 + ";", rule, parent, length2 - 1) : declaration(replace(characters2, " ", "") + ";", rule, parent, length2 - 2), declarations); - break; - case 59: - characters2 += ";"; - default: - append(reference = ruleset(characters2, root, parent, index, offset, rules, points, type, props = [], children = [], length2), rulesets); - if (character2 === 123) - if (offset === 0) - parse(characters2, root, reference, reference, props, rulesets, length2, points, children); - else - switch (atrule === 99 && charat(characters2, 3) === 110 ? 100 : atrule) { - case 100: - case 108: - case 109: - case 115: - parse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length2), children), rules, children, length2, points, rule ? props : children); - break; - default: - parse(characters2, reference, reference, reference, [""], children, 0, points, children); - } - } - index = offset = property = 0, variable = ampersand = 1, type = characters2 = "", length2 = pseudo; - break; - case 58: - length2 = 1 + strlen(characters2), property = previous; - default: - if (variable < 1) { - if (character2 == 123) - --variable; - else if (character2 == 125 && variable++ == 0 && prev() == 125) - continue; - } - switch (characters2 += from(character2), character2 * variable) { - case 38: - ampersand = offset > 0 ? 1 : (characters2 += "\f", -1); - break; - case 44: - points[index++] = (strlen(characters2) - 1) * ampersand, ampersand = 1; - break; - case 64: - if (peek() === 45) - characters2 += delimit(next()); - atrule = peek(), offset = length2 = strlen(type = characters2 += identifier(caret())), character2++; - break; - case 45: - if (previous === 45 && strlen(characters2) == 2) - variable = 0; - } - } - return rulesets; -} -function ruleset(value, root, parent, index, offset, rules, points, type, props, children, length2) { - var post = offset - 1; - var rule = offset === 0 ? rules : [""]; - var size = sizeof(rule); - for (var i = 0, j = 0, k = 0; i < index; ++i) - for (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x) - if (z = trim(j > 0 ? rule[x] + " " + y : replace(y, /&\f/g, rule[x]))) - props[k++] = z; - return node(value, root, parent, offset === 0 ? RULESET : type, props, children, length2); -} -function comment(value, root, parent) { - return node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0); -} -function declaration(value, root, parent, length2) { - return node(value, root, parent, DECLARATION, substr(value, 0, length2), substr(value, length2 + 1, -1), length2); -} - -// node_modules/stylis/src/Serializer.js -function serialize(children, callback) { - var output = ""; - var length2 = sizeof(children); - for (var i = 0; i < length2; i++) - output += callback(children[i], i, children, callback) || ""; - return output; -} -function stringify(element, index, children, callback) { - switch (element.type) { - case LAYER: - if (element.children.length) break; - case IMPORT: - case DECLARATION: - return element.return = element.return || element.value; - case COMMENT: - return ""; - case KEYFRAMES: - return element.return = element.value + "{" + serialize(element.children, callback) + "}"; - case RULESET: - element.value = element.props.join(","); - } - return strlen(children = serialize(element.children, callback)) ? element.return = element.value + "{" + children + "}" : ""; -} - -// node_modules/stylis/src/Middleware.js -function middleware(collection) { - var length2 = sizeof(collection); - return function(element, index, children, callback) { - var output = ""; - for (var i = 0; i < length2; i++) - output += collection[i](element, index, children, callback) || ""; - return output; - }; -} - -// node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js -var weakMemoize = function weakMemoize2(func) { - var cache = /* @__PURE__ */ new WeakMap(); - return function(arg2) { - if (cache.has(arg2)) { - return cache.get(arg2); - } - var ret = func(arg2); - cache.set(arg2, ret); - return ret; - }; -}; - -// node_modules/@emotion/memoize/dist/emotion-memoize.esm.js -function memoize2(fn) { - var cache = /* @__PURE__ */ Object.create(null); - return function(arg2) { - if (cache[arg2] === void 0) cache[arg2] = fn(arg2); - return cache[arg2]; - }; -} - -// node_modules/@emotion/cache/dist/emotion-cache.browser.development.esm.js -var identifierWithPointTracking = function identifierWithPointTracking2(begin, points, index) { - var previous = 0; - var character2 = 0; - while (true) { - previous = character2; - character2 = peek(); - if (previous === 38 && character2 === 12) { - points[index] = 1; - } - if (token(character2)) { - break; - } - next(); - } - return slice(begin, position); -}; -var toRules = function toRules2(parsed, points) { - var index = -1; - var character2 = 44; - do { - switch (token(character2)) { - case 0: - if (character2 === 38 && peek() === 12) { - points[index] = 1; - } - parsed[index] += identifierWithPointTracking(position - 1, points, index); - break; - case 2: - parsed[index] += delimit(character2); - break; - case 4: - if (character2 === 44) { - parsed[++index] = peek() === 58 ? "&\f" : ""; - points[index] = parsed[index].length; - break; - } - default: - parsed[index] += from(character2); - } - } while (character2 = next()); - return parsed; -}; -var getRules = function getRules2(value, points) { - return dealloc(toRules(alloc(value), points)); -}; -var fixedElements = /* @__PURE__ */ new WeakMap(); -var compat = function compat2(element) { - if (element.type !== "rule" || !element.parent || // positive .length indicates that this rule contains pseudo - // negative .length indicates that this rule has been already prefixed - element.length < 1) { - return; - } - var value = element.value; - var parent = element.parent; - var isImplicitRule = element.column === parent.column && element.line === parent.line; - while (parent.type !== "rule") { - parent = parent.parent; - if (!parent) return; - } - if (element.props.length === 1 && value.charCodeAt(0) !== 58 && !fixedElements.get(parent)) { - return; - } - if (isImplicitRule) { - return; - } - fixedElements.set(element, true); - var points = []; - var rules = getRules(value, points); - var parentRules = parent.props; - for (var i = 0, k = 0; i < rules.length; i++) { - for (var j = 0; j < parentRules.length; j++, k++) { - element.props[k] = points[i] ? rules[i].replace(/&\f/g, parentRules[j]) : parentRules[j] + " " + rules[i]; - } - } -}; -var removeLabel = function removeLabel2(element) { - if (element.type === "decl") { - var value = element.value; - if ( - // charcode for l - value.charCodeAt(0) === 108 && // charcode for b - value.charCodeAt(2) === 98 - ) { - element["return"] = ""; - element.value = ""; - } - } -}; -var ignoreFlag = "emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason"; -var isIgnoringComment = function isIgnoringComment2(element) { - return element.type === "comm" && element.children.indexOf(ignoreFlag) > -1; -}; -var createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm2(cache) { - return function(element, index, children) { - if (element.type !== "rule" || cache.compat) return; - var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g); - if (unsafePseudoClasses) { - var isNested = !!element.parent; - var commentContainer = isNested ? element.parent.children : ( - // global rule at the root level - children - ); - for (var i = commentContainer.length - 1; i >= 0; i--) { - var node2 = commentContainer[i]; - if (node2.line < element.line) { - break; - } - if (node2.column < element.column) { - if (isIgnoringComment(node2)) { - return; - } - break; - } - } - unsafePseudoClasses.forEach(function(unsafePseudoClass) { - console.error('The pseudo class "' + unsafePseudoClass + '" is potentially unsafe when doing server-side rendering. Try changing it to "' + unsafePseudoClass.split("-child")[0] + '-of-type".'); - }); - } - }; -}; -var isImportRule = function isImportRule2(element) { - return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64; -}; -var isPrependedWithRegularRules = function isPrependedWithRegularRules2(index, children) { - for (var i = index - 1; i >= 0; i--) { - if (!isImportRule(children[i])) { - return true; - } - } - return false; -}; -var nullifyElement = function nullifyElement2(element) { - element.type = ""; - element.value = ""; - element["return"] = ""; - element.children = ""; - element.props = ""; -}; -var incorrectImportAlarm = function incorrectImportAlarm2(element, index, children) { - if (!isImportRule(element)) { - return; - } - if (element.parent) { - console.error("`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles."); - nullifyElement(element); - } else if (isPrependedWithRegularRules(index, children)) { - console.error("`@import` rules can't be after other rules. Please put your `@import` rules before your other rules."); - nullifyElement(element); - } -}; -function prefix2(value, length2) { - switch (hash(value, length2)) { - case 5103: - return WEBKIT + "print-" + value + value; - case 5737: - case 4201: - case 3177: - case 3433: - case 1641: - case 4457: - case 2921: - case 5572: - case 6356: - case 5844: - case 3191: - case 6645: - case 3005: - case 6391: - case 5879: - case 5623: - case 6135: - case 4599: - case 4855: - case 4215: - case 6389: - case 5109: - case 5365: - case 5621: - case 3829: - return WEBKIT + value + value; - case 5349: - case 4246: - case 4810: - case 6968: - case 2756: - return WEBKIT + value + MOZ + value + MS + value + value; - case 6828: - case 4268: - return WEBKIT + value + MS + value + value; - case 6165: - return WEBKIT + value + MS + "flex-" + value + value; - case 5187: - return WEBKIT + value + replace(value, /(\w+).+(:[^]+)/, WEBKIT + "box-$1$2" + MS + "flex-$1$2") + value; - case 5443: - return WEBKIT + value + MS + "flex-item-" + replace(value, /flex-|-self/, "") + value; - case 4675: - return WEBKIT + value + MS + "flex-line-pack" + replace(value, /align-content|flex-|-self/, "") + value; - case 5548: - return WEBKIT + value + MS + replace(value, "shrink", "negative") + value; - case 5292: - return WEBKIT + value + MS + replace(value, "basis", "preferred-size") + value; - case 6060: - return WEBKIT + "box-" + replace(value, "-grow", "") + WEBKIT + value + MS + replace(value, "grow", "positive") + value; - case 4554: - return WEBKIT + replace(value, /([^-])(transform)/g, "$1" + WEBKIT + "$2") + value; - case 6187: - return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + "$1"), /(image-set)/, WEBKIT + "$1"), value, "") + value; - case 5495: - case 3959: - return replace(value, /(image-set\([^]*)/, WEBKIT + "$1$`$1"); - case 4968: - return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + "box-pack:$3" + MS + "flex-pack:$3"), /s.+-b[^;]+/, "justify") + WEBKIT + value + value; - case 4095: - case 3583: - case 4068: - case 2532: - return replace(value, /(.+)-inline(.+)/, WEBKIT + "$1$2") + value; - case 8116: - case 7059: - case 5753: - case 5535: - case 5445: - case 5701: - case 4933: - case 4677: - case 5533: - case 5789: - case 5021: - case 4765: - if (strlen(value) - 1 - length2 > 6) switch (charat(value, length2 + 1)) { - case 109: - if (charat(value, length2 + 4) !== 45) break; - case 102: - return replace(value, /(.+:)(.+)-([^]+)/, "$1" + WEBKIT + "$2-$3$1" + MOZ + (charat(value, length2 + 3) == 108 ? "$3" : "$2-$3")) + value; - case 115: - return ~indexof(value, "stretch") ? prefix2(replace(value, "stretch", "fill-available"), length2) + value : value; - } - break; - case 4949: - if (charat(value, length2 + 1) !== 115) break; - case 6444: - switch (charat(value, strlen(value) - 3 - (~indexof(value, "!important") && 10))) { - case 107: - return replace(value, ":", ":" + WEBKIT) + value; - case 101: - return replace(value, /(.+:)([^;!]+)(;|!.+)?/, "$1" + WEBKIT + (charat(value, 14) === 45 ? "inline-" : "") + "box$3$1" + WEBKIT + "$2$3$1" + MS + "$2box$3") + value; - } - break; - case 5936: - switch (charat(value, length2 + 11)) { - case 114: - return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb") + value; - case 108: - return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb-rl") + value; - case 45: - return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "lr") + value; - } - return WEBKIT + value + MS + value + value; - } - return value; -} -var prefixer = function prefixer2(element, index, children, callback) { - if (element.length > -1) { - if (!element["return"]) switch (element.type) { - case DECLARATION: - element["return"] = prefix2(element.value, element.length); - break; - case KEYFRAMES: - return serialize([copy(element, { - value: replace(element.value, "@", "@" + WEBKIT) - })], callback); - case RULESET: - if (element.length) return combine(element.props, function(value) { - switch (match(value, /(::plac\w+|:read-\w+)/)) { - case ":read-only": - case ":read-write": - return serialize([copy(element, { - props: [replace(value, /:(read-\w+)/, ":" + MOZ + "$1")] - })], callback); - case "::placeholder": - return serialize([copy(element, { - props: [replace(value, /:(plac\w+)/, ":" + WEBKIT + "input-$1")] - }), copy(element, { - props: [replace(value, /:(plac\w+)/, ":" + MOZ + "$1")] - }), copy(element, { - props: [replace(value, /:(plac\w+)/, MS + "input-$1")] - })], callback); - } - return ""; - }); - } - } -}; -var defaultStylisPlugins = [prefixer]; -var getSourceMap; -{ - sourceMapPattern = /\/\*#\ssourceMappingURL=data:application\/json;\S+\s+\*\//g; - getSourceMap = function getSourceMap2(styles) { - var matches = styles.match(sourceMapPattern); - if (!matches) return; - return matches[matches.length - 1]; - }; -} -var sourceMapPattern; -var createCache = function createCache2(options) { - var key = options.key; - if (!key) { - throw new Error("You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\nIf multiple caches share the same key they might \"fight\" for each other's style elements."); - } - if (key === "css") { - var ssrStyles = document.querySelectorAll("style[data-emotion]:not([data-s])"); - Array.prototype.forEach.call(ssrStyles, function(node2) { - var dataEmotionAttribute = node2.getAttribute("data-emotion"); - if (dataEmotionAttribute.indexOf(" ") === -1) { - return; - } - document.head.appendChild(node2); - node2.setAttribute("data-s", ""); - }); - } - var stylisPlugins = options.stylisPlugins || defaultStylisPlugins; - { - if (/[^a-z-]/.test(key)) { - throw new Error('Emotion key must only contain lower case alphabetical characters and - but "' + key + '" was passed'); - } - } - var inserted = {}; - var container; - var nodesToHydrate = []; - { - container = options.container || document.head; - Array.prototype.forEach.call( - // this means we will ignore elements which don't have a space in them which - // means that the style elements we're looking at are only Emotion 11 server-rendered style elements - document.querySelectorAll('style[data-emotion^="' + key + ' "]'), - function(node2) { - var attrib = node2.getAttribute("data-emotion").split(" "); - for (var i = 1; i < attrib.length; i++) { - inserted[attrib[i]] = true; - } - nodesToHydrate.push(node2); - } - ); - } - var _insert; - var omnipresentPlugins = [compat, removeLabel]; - { - omnipresentPlugins.push(createUnsafeSelectorsAlarm({ - get compat() { - return cache.compat; - } - }), incorrectImportAlarm); - } - { - var currentSheet; - var finalizingPlugins = [stringify, function(element) { - if (!element.root) { - if (element["return"]) { - currentSheet.insert(element["return"]); - } else if (element.value && element.type !== COMMENT) { - currentSheet.insert(element.value + "{}"); - } - } - }]; - var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins)); - var stylis = function stylis2(styles) { - return serialize(compile(styles), serializer); - }; - _insert = function insert(selector, serialized, sheet, shouldCache) { - currentSheet = sheet; - if (getSourceMap) { - var sourceMap = getSourceMap(serialized.styles); - if (sourceMap) { - currentSheet = { - insert: function insert2(rule) { - sheet.insert(rule + sourceMap); - } - }; - } - } - stylis(selector ? selector + "{" + serialized.styles + "}" : serialized.styles); - if (shouldCache) { - cache.inserted[serialized.name] = true; - } - }; - } - var cache = { - key, - sheet: new StyleSheet({ - key, - container, - nonce: options.nonce, - speedy: options.speedy, - prepend: options.prepend, - insertionPoint: options.insertionPoint - }), - nonce: options.nonce, - inserted, - registered: {}, - insert: _insert - }; - cache.sheet.hydrate(nodesToHydrate); - return cache; -}; - -// node_modules/@emotion/react/_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.esm.js -var import_hoist_non_react_statics = __toESM(require_hoist_non_react_statics_cjs()); - -// node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js -var isBrowser = true; -function getRegisteredStyles(registered, registeredStyles, classNames) { - var rawClassName = ""; - classNames.split(" ").forEach(function(className) { - if (registered[className] !== void 0) { - registeredStyles.push(registered[className] + ";"); - } else if (className) { - rawClassName += className + " "; - } - }); - return rawClassName; -} -var registerStyles = function registerStyles2(cache, serialized, isStringTag2) { - var className = cache.key + "-" + serialized.name; - if ( - // we only need to add the styles to the registered cache if the - // class name could be used further down - // the tree but if it's a string tag, we know it won't - // so we don't have to add it to registered cache. - // this improves memory usage since we can avoid storing the whole style string - (isStringTag2 === false || // we need to always store it if we're in compat mode and - // in node since emotion-server relies on whether a style is in - // the registered cache to know whether a style is global or not - // also, note that this check will be dead code eliminated in the browser - isBrowser === false) && cache.registered[className] === void 0 - ) { - cache.registered[className] = serialized.styles; - } -}; -var insertStyles = function insertStyles2(cache, serialized, isStringTag2) { - registerStyles(cache, serialized, isStringTag2); - var className = cache.key + "-" + serialized.name; - if (cache.inserted[serialized.name] === void 0) { - var current = serialized; - do { - cache.insert(serialized === current ? "." + className : "", current, cache.sheet, true); - current = current.next; - } while (current !== void 0); - } -}; - -// node_modules/@emotion/hash/dist/emotion-hash.esm.js -function murmur2(str) { - var h = 0; - var k, i = 0, len = str.length; - for (; len >= 4; ++i, len -= 4) { - k = str.charCodeAt(i) & 255 | (str.charCodeAt(++i) & 255) << 8 | (str.charCodeAt(++i) & 255) << 16 | (str.charCodeAt(++i) & 255) << 24; - k = /* Math.imul(k, m): */ - (k & 65535) * 1540483477 + ((k >>> 16) * 59797 << 16); - k ^= /* k >>> r: */ - k >>> 24; - h = /* Math.imul(k, m): */ - (k & 65535) * 1540483477 + ((k >>> 16) * 59797 << 16) ^ /* Math.imul(h, m): */ - (h & 65535) * 1540483477 + ((h >>> 16) * 59797 << 16); - } - switch (len) { - case 3: - h ^= (str.charCodeAt(i + 2) & 255) << 16; - case 2: - h ^= (str.charCodeAt(i + 1) & 255) << 8; - case 1: - h ^= str.charCodeAt(i) & 255; - h = /* Math.imul(h, m): */ - (h & 65535) * 1540483477 + ((h >>> 16) * 59797 << 16); - } - h ^= h >>> 13; - h = /* Math.imul(h, m): */ - (h & 65535) * 1540483477 + ((h >>> 16) * 59797 << 16); - return ((h ^ h >>> 15) >>> 0).toString(36); -} - -// node_modules/@emotion/unitless/dist/emotion-unitless.esm.js -var unitlessKeys = { - animationIterationCount: 1, - aspectRatio: 1, - borderImageOutset: 1, - borderImageSlice: 1, - borderImageWidth: 1, - boxFlex: 1, - boxFlexGroup: 1, - boxOrdinalGroup: 1, - columnCount: 1, - columns: 1, - flex: 1, - flexGrow: 1, - flexPositive: 1, - flexShrink: 1, - flexNegative: 1, - flexOrder: 1, - gridRow: 1, - gridRowEnd: 1, - gridRowSpan: 1, - gridRowStart: 1, - gridColumn: 1, - gridColumnEnd: 1, - gridColumnSpan: 1, - gridColumnStart: 1, - msGridRow: 1, - msGridRowSpan: 1, - msGridColumn: 1, - msGridColumnSpan: 1, - fontWeight: 1, - lineHeight: 1, - opacity: 1, - order: 1, - orphans: 1, - scale: 1, - tabSize: 1, - widows: 1, - zIndex: 1, - zoom: 1, - WebkitLineClamp: 1, - // SVG-related properties - fillOpacity: 1, - floodOpacity: 1, - stopOpacity: 1, - strokeDasharray: 1, - strokeDashoffset: 1, - strokeMiterlimit: 1, - strokeOpacity: 1, - strokeWidth: 1 -}; - -// node_modules/@emotion/serialize/dist/emotion-serialize.development.esm.js -var isDevelopment2 = true; -var ILLEGAL_ESCAPE_SEQUENCE_ERROR = `You have illegal escape sequence in your template literal, most likely inside content's property value. -Because you write your CSS inside a JavaScript string you actually have to do double escaping, so for example "content: '\\00d7';" should become "content: '\\\\00d7';". -You can read more about this here: -https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences`; -var UNDEFINED_AS_OBJECT_KEY_ERROR = "You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key)."; -var hyphenateRegex = /[A-Z]|^ms/g; -var animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g; -var isCustomProperty = function isCustomProperty2(property) { - return property.charCodeAt(1) === 45; -}; -var isProcessableValue = function isProcessableValue2(value) { - return value != null && typeof value !== "boolean"; -}; -var processStyleName = memoize2(function(styleName) { - return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, "-$&").toLowerCase(); -}); -var processStyleValue = function processStyleValue2(key, value) { - switch (key) { - case "animation": - case "animationName": { - if (typeof value === "string") { - return value.replace(animationRegex, function(match2, p1, p2) { - cursor = { - name: p1, - styles: p2, - next: cursor - }; - return p1; - }); - } - } - } - if (unitlessKeys[key] !== 1 && !isCustomProperty(key) && typeof value === "number" && value !== 0) { - return value + "px"; - } - return value; -}; -{ - contentValuePattern = /(var|attr|counters?|url|element|(((repeating-)?(linear|radial))|conic)-gradient)\(|(no-)?(open|close)-quote/; - contentValues = ["normal", "none", "initial", "inherit", "unset"]; - oldProcessStyleValue = processStyleValue; - msPattern = /^-ms-/; - hyphenPattern = /-(.)/g; - hyphenatedCache = {}; - processStyleValue = function processStyleValue3(key, value) { - if (key === "content") { - if (typeof value !== "string" || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '"' && value.charAt(0) !== "'")) { - throw new Error("You seem to be using a value for 'content' without quotes, try replacing it with `content: '\"" + value + "\"'`"); - } - } - var processed = oldProcessStyleValue(key, value); - if (processed !== "" && !isCustomProperty(key) && key.indexOf("-") !== -1 && hyphenatedCache[key] === void 0) { - hyphenatedCache[key] = true; - console.error("Using kebab-case for css properties in objects is not supported. Did you mean " + key.replace(msPattern, "ms-").replace(hyphenPattern, function(str, _char) { - return _char.toUpperCase(); - }) + "?"); - } - return processed; - }; -} -var contentValuePattern; -var contentValues; -var oldProcessStyleValue; -var msPattern; -var hyphenPattern; -var hyphenatedCache; -var noComponentSelectorMessage = "Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform."; -function handleInterpolation(mergedProps, registered, interpolation) { - if (interpolation == null) { - return ""; - } - var componentSelector = interpolation; - if (componentSelector.__emotion_styles !== void 0) { - if (String(componentSelector) === "NO_COMPONENT_SELECTOR") { - throw new Error(noComponentSelectorMessage); - } - return componentSelector; - } - switch (typeof interpolation) { - case "boolean": { - return ""; - } - case "object": { - var keyframes2 = interpolation; - if (keyframes2.anim === 1) { - cursor = { - name: keyframes2.name, - styles: keyframes2.styles, - next: cursor - }; - return keyframes2.name; - } - var serializedStyles = interpolation; - if (serializedStyles.styles !== void 0) { - var next2 = serializedStyles.next; - if (next2 !== void 0) { - while (next2 !== void 0) { - cursor = { - name: next2.name, - styles: next2.styles, - next: cursor - }; - next2 = next2.next; - } - } - var styles = serializedStyles.styles + ";"; - return styles; - } - return createStringFromObject(mergedProps, registered, interpolation); - } - case "function": { - if (mergedProps !== void 0) { - var previousCursor = cursor; - var result = interpolation(mergedProps); - cursor = previousCursor; - return handleInterpolation(mergedProps, registered, result); - } else { - console.error("Functions that are interpolated in css calls will be stringified.\nIf you want to have a css call based on props, create a function that returns a css call like this\nlet dynamicStyle = (props) => css`color: ${props.color}`\nIt can be called directly with props or interpolated in a styled call like this\nlet SomeComponent = styled('div')`${dynamicStyle}`"); - } - break; - } - case "string": - { - var matched = []; - var replaced = interpolation.replace(animationRegex, function(_match, _p1, p2) { - var fakeVarName = "animation" + matched.length; - matched.push("const " + fakeVarName + " = keyframes`" + p2.replace(/^@keyframes animation-\w+/, "") + "`"); - return "${" + fakeVarName + "}"; - }); - if (matched.length) { - console.error("`keyframes` output got interpolated into plain string, please wrap it with `css`.\n\nInstead of doing this:\n\n" + [].concat(matched, ["`" + replaced + "`"]).join("\n") + "\n\nYou should wrap it with `css` like this:\n\ncss`" + replaced + "`"); - } - } - break; - } - var asString = interpolation; - if (registered == null) { - return asString; - } - var cached = registered[asString]; - return cached !== void 0 ? cached : asString; -} -function createStringFromObject(mergedProps, registered, obj) { - var string = ""; - if (Array.isArray(obj)) { - for (var i = 0; i < obj.length; i++) { - string += handleInterpolation(mergedProps, registered, obj[i]) + ";"; - } - } else { - for (var key in obj) { - var value = obj[key]; - if (typeof value !== "object") { - var asString = value; - if (registered != null && registered[asString] !== void 0) { - string += key + "{" + registered[asString] + "}"; - } else if (isProcessableValue(asString)) { - string += processStyleName(key) + ":" + processStyleValue(key, asString) + ";"; - } - } else { - if (key === "NO_COMPONENT_SELECTOR" && isDevelopment2) { - throw new Error(noComponentSelectorMessage); - } - if (Array.isArray(value) && typeof value[0] === "string" && (registered == null || registered[value[0]] === void 0)) { - for (var _i = 0; _i < value.length; _i++) { - if (isProcessableValue(value[_i])) { - string += processStyleName(key) + ":" + processStyleValue(key, value[_i]) + ";"; - } - } - } else { - var interpolated = handleInterpolation(mergedProps, registered, value); - switch (key) { - case "animation": - case "animationName": { - string += processStyleName(key) + ":" + interpolated + ";"; - break; - } - default: { - if (key === "undefined") { - console.error(UNDEFINED_AS_OBJECT_KEY_ERROR); - } - string += key + "{" + interpolated + "}"; - } - } - } - } - } - } - return string; -} -var labelPattern = /label:\s*([^\s;{]+)\s*(;|$)/g; -var cursor; -function serializeStyles(args, registered, mergedProps) { - if (args.length === 1 && typeof args[0] === "object" && args[0] !== null && args[0].styles !== void 0) { - return args[0]; - } - var stringMode = true; - var styles = ""; - cursor = void 0; - var strings = args[0]; - if (strings == null || strings.raw === void 0) { - stringMode = false; - styles += handleInterpolation(mergedProps, registered, strings); - } else { - var asTemplateStringsArr = strings; - if (asTemplateStringsArr[0] === void 0) { - console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR); - } - styles += asTemplateStringsArr[0]; - } - for (var i = 1; i < args.length; i++) { - styles += handleInterpolation(mergedProps, registered, args[i]); - if (stringMode) { - var templateStringsArr = strings; - if (templateStringsArr[i] === void 0) { - console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR); - } - styles += templateStringsArr[i]; - } - } - labelPattern.lastIndex = 0; - var identifierName = ""; - var match2; - while ((match2 = labelPattern.exec(styles)) !== null) { - identifierName += "-" + match2[1]; - } - var name = murmur2(styles) + identifierName; - { - var devStyles = { - name, - styles, - next: cursor, - toString: function toString() { - return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; - } - }; - return devStyles; - } -} - -// node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js -var React17 = __toESM(require_react()); -var syncFallback = function syncFallback2(create) { - return create(); -}; -var useInsertionEffect2 = React17["useInsertionEffect"] ? React17["useInsertionEffect"] : false; -var useInsertionEffectAlwaysWithSyncFallback = useInsertionEffect2 || syncFallback; -var useInsertionEffectWithLayoutFallback = useInsertionEffect2 || React17.useLayoutEffect; - -// node_modules/@emotion/react/dist/emotion-element-489459f2.browser.development.esm.js -var EmotionCacheContext = React18.createContext( - // we're doing this to avoid preconstruct's dead code elimination in this one case - // because this module is primarily intended for the browser and node - // but it's also required in react native and similar environments sometimes - // and we could have a special build just for that - // but this is much easier and the native packages - // might use a different theme context in the future anyway - typeof HTMLElement !== "undefined" ? createCache({ - key: "css" - }) : null -); -{ - EmotionCacheContext.displayName = "EmotionCacheContext"; -} -var CacheProvider = EmotionCacheContext.Provider; -var withEmotionCache = function withEmotionCache2(func) { - return (0, import_react.forwardRef)(function(props, ref) { - var cache = (0, import_react.useContext)(EmotionCacheContext); - return func(props, cache, ref); - }); -}; -var ThemeContext = React18.createContext({}); -{ - ThemeContext.displayName = "EmotionThemeContext"; -} -var getTheme = function getTheme2(outerTheme, theme) { - if (typeof theme === "function") { - var mergedTheme = theme(outerTheme); - if (mergedTheme == null || typeof mergedTheme !== "object" || Array.isArray(mergedTheme)) { - throw new Error("[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!"); - } - return mergedTheme; - } - if (theme == null || typeof theme !== "object" || Array.isArray(theme)) { - throw new Error("[ThemeProvider] Please make your theme prop a plain object"); - } - return _extends({}, outerTheme, theme); -}; -var createCacheWithTheme = weakMemoize(function(outerTheme) { - return weakMemoize(function(theme) { - return getTheme(outerTheme, theme); - }); -}); -var hasOwn = {}.hasOwnProperty; -var getLastPart = function getLastPart2(functionName) { - var parts = functionName.split("."); - return parts[parts.length - 1]; -}; -var getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine2(line2) { - var match2 = /^\s+at\s+([A-Za-z0-9$.]+)\s/.exec(line2); - if (match2) return getLastPart(match2[1]); - match2 = /^([A-Za-z0-9$.]+)@/.exec(line2); - if (match2) return getLastPart(match2[1]); - return void 0; -}; -var internalReactFunctionNames = /* @__PURE__ */ new Set(["renderWithHooks", "processChild", "finishClassComponent", "renderToString"]); -var sanitizeIdentifier = function sanitizeIdentifier2(identifier2) { - return identifier2.replace(/\$/g, "-"); -}; -var getLabelFromStackTrace = function getLabelFromStackTrace2(stackTrace) { - if (!stackTrace) return void 0; - var lines = stackTrace.split("\n"); - for (var i = 0; i < lines.length; i++) { - var functionName = getFunctionNameFromStackTraceLine(lines[i]); - if (!functionName) continue; - if (internalReactFunctionNames.has(functionName)) break; - if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName); - } - return void 0; -}; -var typePropName = "__EMOTION_TYPE_PLEASE_DO_NOT_USE__"; -var labelPropName = "__EMOTION_LABEL_PLEASE_DO_NOT_USE__"; -var createEmotionProps = function createEmotionProps2(type, props) { - if (typeof props.css === "string" && // check if there is a css declaration - props.css.indexOf(":") !== -1) { - throw new Error("Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`" + props.css + "`"); - } - var newProps = {}; - for (var _key in props) { - if (hasOwn.call(props, _key)) { - newProps[_key] = props[_key]; - } - } - newProps[typePropName] = type; - if (typeof globalThis !== "undefined" && !!globalThis.EMOTION_RUNTIME_AUTO_LABEL && !!props.css && (typeof props.css !== "object" || !("name" in props.css) || typeof props.css.name !== "string" || props.css.name.indexOf("-") === -1)) { - var label = getLabelFromStackTrace(new Error().stack); - if (label) newProps[labelPropName] = label; - } - return newProps; -}; -var Insertion = function Insertion2(_ref) { - var cache = _ref.cache, serialized = _ref.serialized, isStringTag2 = _ref.isStringTag; - registerStyles(cache, serialized, isStringTag2); - useInsertionEffectAlwaysWithSyncFallback(function() { - return insertStyles(cache, serialized, isStringTag2); - }); - return null; -}; -var Emotion = withEmotionCache(function(props, cache, ref) { - var cssProp = props.css; - if (typeof cssProp === "string" && cache.registered[cssProp] !== void 0) { - cssProp = cache.registered[cssProp]; - } - var WrappedComponent = props[typePropName]; - var registeredStyles = [cssProp]; - var className = ""; - if (typeof props.className === "string") { - className = getRegisteredStyles(cache.registered, registeredStyles, props.className); - } else if (props.className != null) { - className = props.className + " "; - } - var serialized = serializeStyles(registeredStyles, void 0, React18.useContext(ThemeContext)); - if (serialized.name.indexOf("-") === -1) { - var labelFromStack = props[labelPropName]; - if (labelFromStack) { - serialized = serializeStyles([serialized, "label:" + labelFromStack + ";"]); - } - } - className += cache.key + "-" + serialized.name; - var newProps = {}; - for (var _key2 in props) { - if (hasOwn.call(props, _key2) && _key2 !== "css" && _key2 !== typePropName && _key2 !== labelPropName) { - newProps[_key2] = props[_key2]; - } - } - newProps.className = className; - if (ref) { - newProps.ref = ref; - } - return React18.createElement(React18.Fragment, null, React18.createElement(Insertion, { - cache, - serialized, - isStringTag: typeof WrappedComponent === "string" - }), React18.createElement(WrappedComponent, newProps)); -}); -{ - Emotion.displayName = "EmotionCssPropInternal"; -} -var Emotion$1 = Emotion; - -// node_modules/@emotion/react/dist/emotion-react.browser.development.esm.js -var React19 = __toESM(require_react()); -var import_hoist_non_react_statics2 = __toESM(require_hoist_non_react_statics_cjs()); -var isDevelopment3 = true; -var pkg = { - name: "@emotion/react", - version: "11.14.0", - main: "dist/emotion-react.cjs.js", - module: "dist/emotion-react.esm.js", - types: "dist/emotion-react.cjs.d.ts", - exports: { - ".": { - types: { - "import": "./dist/emotion-react.cjs.mjs", - "default": "./dist/emotion-react.cjs.js" - }, - development: { - "edge-light": { - module: "./dist/emotion-react.development.edge-light.esm.js", - "import": "./dist/emotion-react.development.edge-light.cjs.mjs", - "default": "./dist/emotion-react.development.edge-light.cjs.js" - }, - worker: { - module: "./dist/emotion-react.development.edge-light.esm.js", - "import": "./dist/emotion-react.development.edge-light.cjs.mjs", - "default": "./dist/emotion-react.development.edge-light.cjs.js" - }, - workerd: { - module: "./dist/emotion-react.development.edge-light.esm.js", - "import": "./dist/emotion-react.development.edge-light.cjs.mjs", - "default": "./dist/emotion-react.development.edge-light.cjs.js" - }, - browser: { - module: "./dist/emotion-react.browser.development.esm.js", - "import": "./dist/emotion-react.browser.development.cjs.mjs", - "default": "./dist/emotion-react.browser.development.cjs.js" - }, - module: "./dist/emotion-react.development.esm.js", - "import": "./dist/emotion-react.development.cjs.mjs", - "default": "./dist/emotion-react.development.cjs.js" - }, - "edge-light": { - module: "./dist/emotion-react.edge-light.esm.js", - "import": "./dist/emotion-react.edge-light.cjs.mjs", - "default": "./dist/emotion-react.edge-light.cjs.js" - }, - worker: { - module: "./dist/emotion-react.edge-light.esm.js", - "import": "./dist/emotion-react.edge-light.cjs.mjs", - "default": "./dist/emotion-react.edge-light.cjs.js" - }, - workerd: { - module: "./dist/emotion-react.edge-light.esm.js", - "import": "./dist/emotion-react.edge-light.cjs.mjs", - "default": "./dist/emotion-react.edge-light.cjs.js" - }, - browser: { - module: "./dist/emotion-react.browser.esm.js", - "import": "./dist/emotion-react.browser.cjs.mjs", - "default": "./dist/emotion-react.browser.cjs.js" - }, - module: "./dist/emotion-react.esm.js", - "import": "./dist/emotion-react.cjs.mjs", - "default": "./dist/emotion-react.cjs.js" - }, - "./jsx-runtime": { - types: { - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js" - }, - development: { - "edge-light": { - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.js" - }, - worker: { - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.js" - }, - workerd: { - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.js" - }, - browser: { - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.browser.development.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.browser.development.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.browser.development.cjs.js" - }, - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.development.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.development.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.development.cjs.js" - }, - "edge-light": { - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.js" - }, - worker: { - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.js" - }, - workerd: { - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.js" - }, - browser: { - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.browser.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.browser.cjs.js" - }, - module: "./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js", - "import": "./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs", - "default": "./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js" - }, - "./_isolated-hnrs": { - types: { - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js" - }, - development: { - "edge-light": { - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.js" - }, - worker: { - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.js" - }, - workerd: { - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.js" - }, - browser: { - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.cjs.js" - }, - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.cjs.js" - }, - "edge-light": { - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.js" - }, - worker: { - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.js" - }, - workerd: { - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.js" - }, - browser: { - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.cjs.js" - }, - module: "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js", - "import": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs", - "default": "./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js" - }, - "./jsx-dev-runtime": { - types: { - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js" - }, - development: { - "edge-light": { - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.js" - }, - worker: { - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.js" - }, - workerd: { - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.js" - }, - browser: { - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.development.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.development.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.development.cjs.js" - }, - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.cjs.js" - }, - "edge-light": { - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.js" - }, - worker: { - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.js" - }, - workerd: { - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.js" - }, - browser: { - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.cjs.js" - }, - module: "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js", - "import": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs", - "default": "./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js" - }, - "./package.json": "./package.json", - "./types/css-prop": "./types/css-prop.d.ts", - "./macro": { - types: { - "import": "./macro.d.mts", - "default": "./macro.d.ts" - }, - "default": "./macro.js" - } - }, - imports: { - "#is-development": { - development: "./src/conditions/true.ts", - "default": "./src/conditions/false.ts" - }, - "#is-browser": { - "edge-light": "./src/conditions/false.ts", - workerd: "./src/conditions/false.ts", - worker: "./src/conditions/false.ts", - browser: "./src/conditions/true.ts", - "default": "./src/conditions/is-browser.ts" - } - }, - files: [ - "src", - "dist", - "jsx-runtime", - "jsx-dev-runtime", - "_isolated-hnrs", - "types/css-prop.d.ts", - "macro.*" - ], - sideEffects: false, - author: "Emotion Contributors", - license: "MIT", - scripts: { - "test:typescript": "dtslint types" - }, - dependencies: { - "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.13.5", - "@emotion/cache": "^11.14.0", - "@emotion/serialize": "^1.3.3", - "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", - "@emotion/utils": "^1.4.2", - "@emotion/weak-memoize": "^0.4.0", - "hoist-non-react-statics": "^3.3.1" - }, - peerDependencies: { - react: ">=16.8.0" - }, - peerDependenciesMeta: { - "@types/react": { - optional: true - } - }, - devDependencies: { - "@definitelytyped/dtslint": "0.0.112", - "@emotion/css": "11.13.5", - "@emotion/css-prettifier": "1.2.0", - "@emotion/server": "11.11.0", - "@emotion/styled": "11.14.0", - "@types/hoist-non-react-statics": "^3.3.5", - "html-tag-names": "^1.1.2", - react: "16.14.0", - "svg-tag-names": "^1.1.1", - typescript: "^5.4.5" - }, - repository: "https://github.com/emotion-js/emotion/tree/main/packages/react", - publishConfig: { - access: "public" - }, - "umd:main": "dist/emotion-react.umd.min.js", - preconstruct: { - entrypoints: [ - "./index.ts", - "./jsx-runtime.ts", - "./jsx-dev-runtime.ts", - "./_isolated-hnrs.ts" - ], - umdName: "emotionReact", - exports: { - extra: { - "./types/css-prop": "./types/css-prop.d.ts", - "./macro": { - types: { - "import": "./macro.d.mts", - "default": "./macro.d.ts" - }, - "default": "./macro.js" - } - } - } - } -}; -var jsx = function jsx2(type, props) { - var args = arguments; - if (props == null || !hasOwn.call(props, "css")) { - return React19.createElement.apply(void 0, args); - } - var argsLength = args.length; - var createElementArgArray = new Array(argsLength); - createElementArgArray[0] = Emotion$1; - createElementArgArray[1] = createEmotionProps(type, props); - for (var i = 2; i < argsLength; i++) { - createElementArgArray[i] = args[i]; - } - return React19.createElement.apply(null, createElementArgArray); -}; -(function(_jsx19) { - var JSX; - /* @__PURE__ */ (function(_JSX) { - })(JSX || (JSX = _jsx19.JSX || (_jsx19.JSX = {}))); -})(jsx || (jsx = {})); -var warnedAboutCssPropForGlobal = false; -var Global = withEmotionCache(function(props, cache) { - if (!warnedAboutCssPropForGlobal && // check for className as well since the user is - // probably using the custom createElement which - // means it will be turned into a className prop - // I don't really want to add it to the type since it shouldn't be used - ("className" in props && props.className || "css" in props && props.css)) { - console.error("It looks like you're using the css prop on Global, did you mean to use the styles prop instead?"); - warnedAboutCssPropForGlobal = true; - } - var styles = props.styles; - var serialized = serializeStyles([styles], void 0, React19.useContext(ThemeContext)); - var sheetRef = React19.useRef(); - useInsertionEffectWithLayoutFallback(function() { - var key = cache.key + "-global"; - var sheet = new cache.sheet.constructor({ - key, - nonce: cache.sheet.nonce, - container: cache.sheet.container, - speedy: cache.sheet.isSpeedy - }); - var rehydrating = false; - var node2 = document.querySelector('style[data-emotion="' + key + " " + serialized.name + '"]'); - if (cache.sheet.tags.length) { - sheet.before = cache.sheet.tags[0]; - } - if (node2 !== null) { - rehydrating = true; - node2.setAttribute("data-emotion", key); - sheet.hydrate([node2]); - } - sheetRef.current = [sheet, rehydrating]; - return function() { - sheet.flush(); - }; - }, [cache]); - useInsertionEffectWithLayoutFallback(function() { - var sheetRefCurrent = sheetRef.current; - var sheet = sheetRefCurrent[0], rehydrating = sheetRefCurrent[1]; - if (rehydrating) { - sheetRefCurrent[1] = false; - return; - } - if (serialized.next !== void 0) { - insertStyles(cache, serialized.next, true); - } - if (sheet.tags.length) { - var element = sheet.tags[sheet.tags.length - 1].nextElementSibling; - sheet.before = element; - sheet.flush(); - } - cache.insert("", serialized, sheet, false); - }, [cache, serialized.name]); - return null; -}); -{ - Global.displayName = "EmotionGlobal"; -} -var classnames = function classnames2(args) { - var len = args.length; - var i = 0; - var cls = ""; - for (; i < len; i++) { - var arg2 = args[i]; - if (arg2 == null) continue; - var toAdd = void 0; - switch (typeof arg2) { - case "boolean": - break; - case "object": { - if (Array.isArray(arg2)) { - toAdd = classnames2(arg2); - } else { - if (arg2.styles !== void 0 && arg2.name !== void 0) { - console.error("You have passed styles created with `css` from `@emotion/react` package to the `cx`.\n`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component."); - } - toAdd = ""; - for (var k in arg2) { - if (arg2[k] && k) { - toAdd && (toAdd += " "); - toAdd += k; - } - } - } - break; - } - default: { - toAdd = arg2; - } - } - if (toAdd) { - cls && (cls += " "); - cls += toAdd; - } - } - return cls; -}; -function merge2(registered, css2, className) { - var registeredStyles = []; - var rawClassName = getRegisteredStyles(registered, registeredStyles, className); - if (registeredStyles.length < 2) { - return className; - } - return rawClassName + css2(registeredStyles); -} -var Insertion3 = function Insertion4(_ref) { - var cache = _ref.cache, serializedArr = _ref.serializedArr; - useInsertionEffectAlwaysWithSyncFallback(function() { - for (var i = 0; i < serializedArr.length; i++) { - insertStyles(cache, serializedArr[i], false); - } - }); - return null; -}; -var ClassNames = withEmotionCache(function(props, cache) { - var hasRendered = false; - var serializedArr = []; - var css2 = function css3() { - if (hasRendered && isDevelopment3) { - throw new Error("css can only be used during render"); - } - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - var serialized = serializeStyles(args, cache.registered); - serializedArr.push(serialized); - registerStyles(cache, serialized, false); - return cache.key + "-" + serialized.name; - }; - var cx = function cx2() { - if (hasRendered && isDevelopment3) { - throw new Error("cx can only be used during render"); - } - for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { - args[_key2] = arguments[_key2]; - } - return merge2(cache.registered, css2, classnames(args)); - }; - var content = { - css: css2, - cx, - theme: React19.useContext(ThemeContext) - }; - var ele = props.children(content); - hasRendered = true; - return React19.createElement(React19.Fragment, null, React19.createElement(Insertion3, { - cache, - serializedArr - }), ele); -}); -{ - ClassNames.displayName = "EmotionClassNames"; -} -{ - isBrowser2 = typeof document !== "undefined"; - isTestEnv = typeof jest !== "undefined" || typeof vi !== "undefined"; - if (isBrowser2 && !isTestEnv) { - globalContext = typeof globalThis !== "undefined" ? globalThis : isBrowser2 ? window : global; - globalKey = "__EMOTION_REACT_" + pkg.version.split(".")[0] + "__"; - if (globalContext[globalKey]) { - console.warn("You are loading @emotion/react when it is already loaded. Running multiple instances may cause problems. This can happen if multiple versions are used, or if multiple builds of the same version are used."); - } - globalContext[globalKey] = true; - } -} -var isBrowser2; -var isTestEnv; -var globalContext; -var globalKey; - -// node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.development.esm.js -var React20 = __toESM(require_react()); - -// node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js -var reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; -var isPropValid = memoize2( - function(prop) { - return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111 && prop.charCodeAt(1) === 110 && prop.charCodeAt(2) < 91; - } - /* Z+1 */ -); - -// node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.development.esm.js -var isDevelopment4 = true; -var testOmitPropsOnStringTag = isPropValid; -var testOmitPropsOnComponent = function testOmitPropsOnComponent2(key) { - return key !== "theme"; -}; -var getDefaultShouldForwardProp = function getDefaultShouldForwardProp2(tag) { - return typeof tag === "string" && // 96 is one less than the char code - // for "a" so this is checking that - // it's a lowercase character - tag.charCodeAt(0) > 96 ? testOmitPropsOnStringTag : testOmitPropsOnComponent; -}; -var composeShouldForwardProps = function composeShouldForwardProps2(tag, options, isReal) { - var shouldForwardProp2; - if (options) { - var optionsShouldForwardProp = options.shouldForwardProp; - shouldForwardProp2 = tag.__emotion_forwardProp && optionsShouldForwardProp ? function(propName) { - return tag.__emotion_forwardProp(propName) && optionsShouldForwardProp(propName); - } : optionsShouldForwardProp; - } - if (typeof shouldForwardProp2 !== "function" && isReal) { - shouldForwardProp2 = tag.__emotion_forwardProp; - } - return shouldForwardProp2; -}; -var ILLEGAL_ESCAPE_SEQUENCE_ERROR2 = `You have illegal escape sequence in your template literal, most likely inside content's property value. -Because you write your CSS inside a JavaScript string you actually have to do double escaping, so for example "content: '\\00d7';" should become "content: '\\\\00d7';". -You can read more about this here: -https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences`; -var Insertion5 = function Insertion6(_ref) { - var cache = _ref.cache, serialized = _ref.serialized, isStringTag2 = _ref.isStringTag; - registerStyles(cache, serialized, isStringTag2); - useInsertionEffectAlwaysWithSyncFallback(function() { - return insertStyles(cache, serialized, isStringTag2); - }); - return null; -}; -var createStyled = function createStyled2(tag, options) { - { - if (tag === void 0) { - throw new Error("You are trying to create a styled element with an undefined component.\nYou may have forgotten to import it."); - } - } - var isReal = tag.__emotion_real === tag; - var baseTag = isReal && tag.__emotion_base || tag; - var identifierName; - var targetClassName; - if (options !== void 0) { - identifierName = options.label; - targetClassName = options.target; - } - var shouldForwardProp2 = composeShouldForwardProps(tag, options, isReal); - var defaultShouldForwardProp = shouldForwardProp2 || getDefaultShouldForwardProp(baseTag); - var shouldUseAs = !defaultShouldForwardProp("as"); - return function() { - var args = arguments; - var styles = isReal && tag.__emotion_styles !== void 0 ? tag.__emotion_styles.slice(0) : []; - if (identifierName !== void 0) { - styles.push("label:" + identifierName + ";"); - } - if (args[0] == null || args[0].raw === void 0) { - styles.push.apply(styles, args); - } else { - var templateStringsArr = args[0]; - if (templateStringsArr[0] === void 0) { - console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR2); - } - styles.push(templateStringsArr[0]); - var len = args.length; - var i = 1; - for (; i < len; i++) { - if (templateStringsArr[i] === void 0) { - console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR2); - } - styles.push(args[i], templateStringsArr[i]); - } - } - var Styled = withEmotionCache(function(props, cache, ref) { - var FinalTag = shouldUseAs && props.as || baseTag; - var className = ""; - var classInterpolations = []; - var mergedProps = props; - if (props.theme == null) { - mergedProps = {}; - for (var key in props) { - mergedProps[key] = props[key]; - } - mergedProps.theme = React20.useContext(ThemeContext); - } - if (typeof props.className === "string") { - className = getRegisteredStyles(cache.registered, classInterpolations, props.className); - } else if (props.className != null) { - className = props.className + " "; - } - var serialized = serializeStyles(styles.concat(classInterpolations), cache.registered, mergedProps); - className += cache.key + "-" + serialized.name; - if (targetClassName !== void 0) { - className += " " + targetClassName; - } - var finalShouldForwardProp = shouldUseAs && shouldForwardProp2 === void 0 ? getDefaultShouldForwardProp(FinalTag) : defaultShouldForwardProp; - var newProps = {}; - for (var _key in props) { - if (shouldUseAs && _key === "as") continue; - if (finalShouldForwardProp(_key)) { - newProps[_key] = props[_key]; - } - } - newProps.className = className; - if (ref) { - newProps.ref = ref; - } - return React20.createElement(React20.Fragment, null, React20.createElement(Insertion5, { - cache, - serialized, - isStringTag: typeof FinalTag === "string" - }), React20.createElement(FinalTag, newProps)); - }); - Styled.displayName = identifierName !== void 0 ? identifierName : "Styled(" + (typeof baseTag === "string" ? baseTag : baseTag.displayName || baseTag.name || "Component") + ")"; - Styled.defaultProps = tag.defaultProps; - Styled.__emotion_real = Styled; - Styled.__emotion_base = baseTag; - Styled.__emotion_styles = styles; - Styled.__emotion_forwardProp = shouldForwardProp2; - Object.defineProperty(Styled, "toString", { - value: function value() { - if (targetClassName === void 0 && isDevelopment4) { - return "NO_COMPONENT_SELECTOR"; - } - return "." + targetClassName; - } - }); - Styled.withComponent = function(nextTag, nextOptions) { - var newStyled2 = createStyled2(nextTag, _extends({}, options, nextOptions, { - shouldForwardProp: composeShouldForwardProps(Styled, nextOptions, true) - })); - return newStyled2.apply(void 0, styles); - }; - return Styled; - }; -}; - -// node_modules/@emotion/styled/dist/emotion-styled.browser.development.esm.js -var import_react4 = __toESM(require_react()); -var tags = [ - "a", - "abbr", - "address", - "area", - "article", - "aside", - "audio", - "b", - "base", - "bdi", - "bdo", - "big", - "blockquote", - "body", - "br", - "button", - "canvas", - "caption", - "cite", - "code", - "col", - "colgroup", - "data", - "datalist", - "dd", - "del", - "details", - "dfn", - "dialog", - "div", - "dl", - "dt", - "em", - "embed", - "fieldset", - "figcaption", - "figure", - "footer", - "form", - "h1", - "h2", - "h3", - "h4", - "h5", - "h6", - "head", - "header", - "hgroup", - "hr", - "html", - "i", - "iframe", - "img", - "input", - "ins", - "kbd", - "keygen", - "label", - "legend", - "li", - "link", - "main", - "map", - "mark", - "marquee", - "menu", - "menuitem", - "meta", - "meter", - "nav", - "noscript", - "object", - "ol", - "optgroup", - "option", - "output", - "p", - "param", - "picture", - "pre", - "progress", - "q", - "rp", - "rt", - "ruby", - "s", - "samp", - "script", - "section", - "select", - "small", - "source", - "span", - "strong", - "style", - "sub", - "summary", - "sup", - "table", - "tbody", - "td", - "textarea", - "tfoot", - "th", - "thead", - "time", - "title", - "tr", - "track", - "u", - "ul", - "var", - "video", - "wbr", - // SVG - "circle", - "clipPath", - "defs", - "ellipse", - "foreignObject", - "g", - "image", - "line", - "linearGradient", - "mask", - "path", - "pattern", - "polygon", - "polyline", - "radialGradient", - "rect", - "stop", - "svg", - "text", - "tspan" -]; -var newStyled = createStyled.bind(null); -tags.forEach(function(tagName) { - newStyled[tagName] = newStyled(tagName); -}); - -// node_modules/@mui/styled-engine/esm/StyledEngineProvider/StyledEngineProvider.js -var React21 = __toESM(require_react(), 1); -var import_prop_types7 = __toESM(require_prop_types(), 1); -var import_jsx_runtime2 = __toESM(require_jsx_runtime(), 1); -var TEST_INTERNALS_DO_NOT_USE = { - /** - * to intercept the generated CSS before inserting to the style tag, so that we can check the generated CSS. - * - * let rule; - * TEST_INTERNALS_DO_NOT_USE.insert = (...args) => { - * rule = args[0]; - * }; - * - * expect(rule).to.equal(...); - */ - insert: void 0 -}; -var createEmotionCache = (options, CustomSheet) => { - const cache = createCache(options); - cache.sheet = new CustomSheet({ - key: cache.key, - nonce: cache.sheet.nonce, - container: cache.sheet.container, - speedy: cache.sheet.isSpeedy, - prepend: cache.sheet.prepend, - insertionPoint: cache.sheet.insertionPoint - }); - return cache; -}; -var insertionPoint; -if (typeof document === "object") { - insertionPoint = document.querySelector('[name="emotion-insertion-point"]'); - if (!insertionPoint) { - insertionPoint = document.createElement("meta"); - insertionPoint.setAttribute("name", "emotion-insertion-point"); - insertionPoint.setAttribute("content", ""); - const head = document.querySelector("head"); - if (head) { - head.prepend(insertionPoint); - } - } -} -function getCache(injectFirst, enableCssLayer) { - if (injectFirst || enableCssLayer) { - class MyStyleSheet extends StyleSheet { - insert(rule, options) { - if (TEST_INTERNALS_DO_NOT_USE.insert) { - return TEST_INTERNALS_DO_NOT_USE.insert(rule, options); - } - if (this.key && this.key.endsWith("global")) { - this.before = insertionPoint; - } - return super.insert(rule, options); - } - } - const emotionCache = createEmotionCache({ - key: "css", - insertionPoint: injectFirst ? insertionPoint : void 0 - }, MyStyleSheet); - if (enableCssLayer) { - const prevInsert = emotionCache.insert; - emotionCache.insert = (...args) => { - if (!args[1].styles.startsWith("@layer")) { - args[1].styles = `@layer mui {${args[1].styles}}`; - } - return prevInsert(...args); - }; - } - return emotionCache; - } - return void 0; -} -function StyledEngineProvider(props) { - const { - injectFirst, - enableCssLayer, - children - } = props; - const cache = React21.useMemo(() => getCache(injectFirst, enableCssLayer), [injectFirst, enableCssLayer]); - return cache ? (0, import_jsx_runtime2.jsx)(CacheProvider, { - value: cache, - children - }) : children; -} -true ? StyledEngineProvider.propTypes = { - /** - * Your component tree. - */ - children: import_prop_types7.default.node, - /** - * If `true`, the styles are wrapped in `@layer mui`. - * Learn more about [Cascade layers](https://developer.mozilla.org/en-US/docs/Learn_web_development/Core/Styling_basics/Cascade_layers). - */ - enableCssLayer: import_prop_types7.default.bool, - /** - * By default, the styles are injected last in the element of the page. - * As a result, they gain more specificity than any other style sheet. - * If you want to override MUI's styles, set this prop. - */ - injectFirst: import_prop_types7.default.bool -} : void 0; - -// node_modules/@mui/styled-engine/esm/GlobalStyles/GlobalStyles.js -var React22 = __toESM(require_react(), 1); -var import_prop_types8 = __toESM(require_prop_types(), 1); -var import_jsx_runtime3 = __toESM(require_jsx_runtime(), 1); -function isEmpty(obj) { - return obj === void 0 || obj === null || Object.keys(obj).length === 0; -} -function GlobalStyles(props) { - const { - styles, - defaultTheme: defaultTheme5 = {} - } = props; - const globalStyles = typeof styles === "function" ? (themeInput) => styles(isEmpty(themeInput) ? defaultTheme5 : themeInput) : styles; - return (0, import_jsx_runtime3.jsx)(Global, { - styles: globalStyles - }); -} -true ? GlobalStyles.propTypes = { - defaultTheme: import_prop_types8.default.object, - styles: import_prop_types8.default.oneOfType([import_prop_types8.default.array, import_prop_types8.default.string, import_prop_types8.default.object, import_prop_types8.default.func]) -} : void 0; - -// node_modules/@mui/styled-engine/esm/index.js -function styled(tag, options) { - const stylesFactory = newStyled(tag, options); - if (true) { - return (...styles) => { - const component = typeof tag === "string" ? `"${tag}"` : "component"; - if (styles.length === 0) { - console.error([`MUI: Seems like you called \`styled(${component})()\` without a \`style\` argument.`, 'You must provide a `styles` argument: `styled("div")(styleYouForgotToPass)`.'].join("\n")); - } else if (styles.some((style4) => style4 === void 0)) { - console.error(`MUI: the styled(${component})(...args) API requires all its args to be defined.`); - } - return stylesFactory(...styles); - }; - } - return stylesFactory; -} -function internal_mutateStyles(tag, processor) { - if (Array.isArray(tag.__emotion_styles)) { - tag.__emotion_styles = processor(tag.__emotion_styles); - } -} -var wrapper = []; -function internal_serializeStyles(styles) { - wrapper[0] = styles; - return serializeStyles(wrapper); -} - -// node_modules/@mui/system/esm/GlobalStyles/GlobalStyles.js -var React24 = __toESM(require_react(), 1); -var import_prop_types9 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/system/esm/createBreakpoints/createBreakpoints.js -var sortBreakpointsValues = (values2) => { - const breakpointsAsArray = Object.keys(values2).map((key) => ({ - key, - val: values2[key] - })) || []; - breakpointsAsArray.sort((breakpoint1, breakpoint2) => breakpoint1.val - breakpoint2.val); - return breakpointsAsArray.reduce((acc, obj) => { - return { - ...acc, - [obj.key]: obj.val - }; - }, {}); -}; -function createBreakpoints(breakpoints) { - const { - // The breakpoint **start** at this value. - // For instance with the first breakpoint xs: [xs, sm). - values: values2 = { - xs: 0, - // phone - sm: 600, - // tablet - md: 900, - // small laptop - lg: 1200, - // desktop - xl: 1536 - // large screen - }, - unit = "px", - step = 5, - ...other - } = breakpoints; - const sortedValues = sortBreakpointsValues(values2); - const keys = Object.keys(sortedValues); - function up(key) { - const value = typeof values2[key] === "number" ? values2[key] : key; - return `@media (min-width:${value}${unit})`; - } - function down(key) { - const value = typeof values2[key] === "number" ? values2[key] : key; - return `@media (max-width:${value - step / 100}${unit})`; - } - function between(start, end) { - const endIndex = keys.indexOf(end); - return `@media (min-width:${typeof values2[start] === "number" ? values2[start] : start}${unit}) and (max-width:${(endIndex !== -1 && typeof values2[keys[endIndex]] === "number" ? values2[keys[endIndex]] : end) - step / 100}${unit})`; - } - function only(key) { - if (keys.indexOf(key) + 1 < keys.length) { - return between(key, keys[keys.indexOf(key) + 1]); - } - return up(key); - } - function not(key) { - const keyIndex = keys.indexOf(key); - if (keyIndex === 0) { - return up(keys[1]); - } - if (keyIndex === keys.length - 1) { - return down(keys[keyIndex]); - } - return between(key, keys[keys.indexOf(key) + 1]).replace("@media", "@media not all and"); - } - return { - keys, - values: sortedValues, - up, - down, - between, - only, - not, - unit, - ...other - }; -} - -// node_modules/@mui/system/esm/createTheme/shape.js -var shape = { - borderRadius: 4 -}; -var shape_default = shape; - -// node_modules/@mui/system/esm/createTheme/createSpacing.js -function createSpacing(spacingInput = 8, transform = createUnarySpacing({ - spacing: spacingInput -})) { - if (spacingInput.mui) { - return spacingInput; - } - const spacing2 = (...argsInput) => { - if (true) { - if (!(argsInput.length <= 4)) { - console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${argsInput.length}`); - } - } - const args = argsInput.length === 0 ? [1] : argsInput; - return args.map((argument) => { - const output = transform(argument); - return typeof output === "number" ? `${output}px` : output; - }).join(" "); - }; - spacing2.mui = true; - return spacing2; -} - -// node_modules/@mui/system/esm/createTheme/applyStyles.js -function applyStyles(key, styles) { - var _a; - const theme = this; - if (theme.vars) { - if (!((_a = theme.colorSchemes) == null ? void 0 : _a[key]) || typeof theme.getColorSchemeSelector !== "function") { - return {}; - } - let selector = theme.getColorSchemeSelector(key); - if (selector === "&") { - return styles; - } - if (selector.includes("data-") || selector.includes(".")) { - selector = `*:where(${selector.replace(/\s*&$/, "")}) &`; - } - return { - [selector]: styles - }; - } - if (theme.palette.mode === key) { - return styles; - } - return {}; -} - -// node_modules/@mui/system/esm/createTheme/createTheme.js -function createTheme(options = {}, ...args) { - const { - breakpoints: breakpointsInput = {}, - palette: paletteInput = {}, - spacing: spacingInput, - shape: shapeInput = {}, - ...other - } = options; - const breakpoints = createBreakpoints(breakpointsInput); - const spacing2 = createSpacing(spacingInput); - let muiTheme = deepmerge({ - breakpoints, - direction: "ltr", - components: {}, - // Inject component definitions. - palette: { - mode: "light", - ...paletteInput - }, - spacing: spacing2, - shape: { - ...shape_default, - ...shapeInput - } - }, other); - muiTheme = cssContainerQueries(muiTheme); - muiTheme.applyStyles = applyStyles; - muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme); - muiTheme.unstable_sxConfig = { - ...defaultSxConfig_default, - ...other == null ? void 0 : other.unstable_sxConfig - }; - muiTheme.unstable_sx = function sx(props) { - return styleFunctionSx_default({ - sx: props, - theme: this - }); - }; - return muiTheme; -} -var createTheme_default = createTheme; - -// node_modules/@mui/system/esm/useThemeWithoutDefault/useThemeWithoutDefault.js -var React23 = __toESM(require_react(), 1); -function isObjectEmpty(obj) { - return Object.keys(obj).length === 0; -} -function useTheme2(defaultTheme5 = null) { - const contextTheme = React23.useContext(ThemeContext); - return !contextTheme || isObjectEmpty(contextTheme) ? defaultTheme5 : contextTheme; -} -var useThemeWithoutDefault_default = useTheme2; - -// node_modules/@mui/system/esm/useTheme/useTheme.js -var systemDefaultTheme = createTheme_default(); -function useTheme3(defaultTheme5 = systemDefaultTheme) { - return useThemeWithoutDefault_default(defaultTheme5); -} -var useTheme_default = useTheme3; - -// node_modules/@mui/system/esm/GlobalStyles/GlobalStyles.js -var import_jsx_runtime4 = __toESM(require_jsx_runtime(), 1); -function GlobalStyles2({ - styles, - themeId, - defaultTheme: defaultTheme5 = {} -}) { - const upperTheme = useTheme_default(defaultTheme5); - const globalStyles = typeof styles === "function" ? styles(themeId ? upperTheme[themeId] || upperTheme : upperTheme) : styles; - return (0, import_jsx_runtime4.jsx)(GlobalStyles, { - styles: globalStyles - }); -} -true ? GlobalStyles2.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * @ignore - */ - defaultTheme: import_prop_types9.default.object, - /** - * @ignore - */ - styles: import_prop_types9.default.oneOfType([import_prop_types9.default.array, import_prop_types9.default.func, import_prop_types9.default.number, import_prop_types9.default.object, import_prop_types9.default.string, import_prop_types9.default.bool]), - /** - * @ignore - */ - themeId: import_prop_types9.default.string -} : void 0; -var GlobalStyles_default = GlobalStyles2; - -// node_modules/@mui/system/esm/display/display.js -var displayPrint = style_default({ - prop: "displayPrint", - cssProperty: false, - transform: (value) => ({ - "@media print": { - display: value - } - }) -}); -var displayRaw = style_default({ - prop: "display" -}); -var overflow = style_default({ - prop: "overflow" -}); -var textOverflow = style_default({ - prop: "textOverflow" -}); -var visibility = style_default({ - prop: "visibility" -}); -var whiteSpace = style_default({ - prop: "whiteSpace" -}); -var display_default = compose_default(displayPrint, displayRaw, overflow, textOverflow, visibility, whiteSpace); - -// node_modules/@mui/system/esm/flexbox/flexbox.js -var flexBasis = style_default({ - prop: "flexBasis" -}); -var flexDirection = style_default({ - prop: "flexDirection" -}); -var flexWrap = style_default({ - prop: "flexWrap" -}); -var justifyContent = style_default({ - prop: "justifyContent" -}); -var alignItems = style_default({ - prop: "alignItems" -}); -var alignContent = style_default({ - prop: "alignContent" -}); -var order = style_default({ - prop: "order" -}); -var flex = style_default({ - prop: "flex" -}); -var flexGrow = style_default({ - prop: "flexGrow" -}); -var flexShrink = style_default({ - prop: "flexShrink" -}); -var alignSelf = style_default({ - prop: "alignSelf" -}); -var justifyItems = style_default({ - prop: "justifyItems" -}); -var justifySelf = style_default({ - prop: "justifySelf" -}); -var flexbox = compose_default(flexBasis, flexDirection, flexWrap, justifyContent, alignItems, alignContent, order, flex, flexGrow, flexShrink, alignSelf, justifyItems, justifySelf); -var flexbox_default = flexbox; - -// node_modules/@mui/system/esm/positions/positions.js -var position2 = style_default({ - prop: "position" -}); -var zIndex = style_default({ - prop: "zIndex", - themeKey: "zIndex" -}); -var top = style_default({ - prop: "top" -}); -var right = style_default({ - prop: "right" -}); -var bottom = style_default({ - prop: "bottom" -}); -var left = style_default({ - prop: "left" -}); -var positions_default = compose_default(position2, zIndex, top, right, bottom, left); - -// node_modules/@mui/system/esm/shadows/shadows.js -var boxShadow = style_default({ - prop: "boxShadow", - themeKey: "shadows" -}); -var shadows_default = boxShadow; - -// node_modules/@mui/system/esm/typography/typography.js -var fontFamily = style_default({ - prop: "fontFamily", - themeKey: "typography" -}); -var fontSize = style_default({ - prop: "fontSize", - themeKey: "typography" -}); -var fontStyle = style_default({ - prop: "fontStyle", - themeKey: "typography" -}); -var fontWeight = style_default({ - prop: "fontWeight", - themeKey: "typography" -}); -var letterSpacing = style_default({ - prop: "letterSpacing" -}); -var textTransform = style_default({ - prop: "textTransform" -}); -var lineHeight = style_default({ - prop: "lineHeight" -}); -var textAlign = style_default({ - prop: "textAlign" -}); -var typographyVariant = style_default({ - prop: "typography", - cssProperty: false, - themeKey: "typography" -}); -var typography = compose_default(typographyVariant, fontFamily, fontSize, fontStyle, fontWeight, letterSpacing, lineHeight, textAlign, textTransform); -var typography_default = typography; - -// node_modules/@mui/system/esm/getThemeValue/getThemeValue.js -var filterPropsMapping = { - borders: borders_default.filterProps, - display: display_default.filterProps, - flexbox: flexbox_default.filterProps, - grid: cssGrid_default.filterProps, - positions: positions_default.filterProps, - palette: palette_default.filterProps, - shadows: shadows_default.filterProps, - sizing: sizing_default.filterProps, - spacing: spacing_default.filterProps, - typography: typography_default.filterProps -}; -var styleFunctionMapping = { - borders: borders_default, - display: display_default, - flexbox: flexbox_default, - grid: cssGrid_default, - positions: positions_default, - palette: palette_default, - shadows: shadows_default, - sizing: sizing_default, - spacing: spacing_default, - typography: typography_default -}; -var propToStyleFunction = Object.keys(filterPropsMapping).reduce((acc, styleFnName) => { - filterPropsMapping[styleFnName].forEach((propName) => { - acc[propName] = styleFunctionMapping[styleFnName]; - }); - return acc; -}, {}); - -// node_modules/@mui/system/esm/Box/Box.js -var import_prop_types10 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/system/esm/createBox/createBox.js -var React25 = __toESM(require_react(), 1); -var import_jsx_runtime5 = __toESM(require_jsx_runtime(), 1); -function createBox(options = {}) { - const { - themeId, - defaultTheme: defaultTheme5, - defaultClassName = "MuiBox-root", - generateClassName - } = options; - const BoxRoot = styled("div", { - shouldForwardProp: (prop) => prop !== "theme" && prop !== "sx" && prop !== "as" - })(styleFunctionSx_default); - const Box2 = React25.forwardRef(function Box3(inProps, ref) { - const theme = useTheme_default(defaultTheme5); - const { - className, - component = "div", - ...other - } = extendSxProp(inProps); - return (0, import_jsx_runtime5.jsx)(BoxRoot, { - as: component, - ref, - className: clsx_default(className, generateClassName ? generateClassName(defaultClassName) : defaultClassName), - theme: themeId ? theme[themeId] || theme : theme, - ...other - }); - }); - return Box2; -} - -// node_modules/@mui/system/esm/Box/boxClasses.js -var boxClasses = generateUtilityClasses("MuiBox", ["root"]); -var boxClasses_default = boxClasses; - -// node_modules/@mui/system/esm/Box/Box.js -var Box = createBox({ - defaultClassName: boxClasses_default.root, - generateClassName: ClassNameGenerator_default.generate -}); -true ? Box.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the d.ts file and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * @ignore - */ - children: import_prop_types10.default.node, - /** - * The component used for the root node. - * Either a string to use a HTML element or a component. - */ - component: import_prop_types10.default.elementType, - /** - * The system prop that allows defining system overrides as well as additional CSS styles. - */ - sx: import_prop_types10.default.oneOfType([import_prop_types10.default.arrayOf(import_prop_types10.default.oneOfType([import_prop_types10.default.func, import_prop_types10.default.object, import_prop_types10.default.bool])), import_prop_types10.default.func, import_prop_types10.default.object]) -} : void 0; - -// node_modules/@mui/system/esm/preprocessStyles.js -function preprocessStyles(input) { - const { - variants, - ...style4 - } = input; - const result = { - variants, - style: internal_serializeStyles(style4), - isProcessed: true - }; - if (result.style === style4) { - return result; - } - if (variants) { - variants.forEach((variant) => { - if (typeof variant.style !== "function") { - variant.style = internal_serializeStyles(variant.style); - } - }); - } - return result; -} - -// node_modules/@mui/system/esm/createStyled/createStyled.js -var systemDefaultTheme2 = createTheme_default(); -function shouldForwardProp(prop) { - return prop !== "ownerState" && prop !== "theme" && prop !== "sx" && prop !== "as"; -} -function defaultOverridesResolver(slot) { - if (!slot) { - return null; - } - return (_props, styles) => styles[slot]; -} -function attachTheme(props, themeId, defaultTheme5) { - props.theme = isObjectEmpty2(props.theme) ? defaultTheme5 : props.theme[themeId] || props.theme; -} -function processStyle(props, style4) { - const resolvedStyle = typeof style4 === "function" ? style4(props) : style4; - if (Array.isArray(resolvedStyle)) { - return resolvedStyle.flatMap((subStyle) => processStyle(props, subStyle)); - } - if (Array.isArray(resolvedStyle == null ? void 0 : resolvedStyle.variants)) { - let rootStyle; - if (resolvedStyle.isProcessed) { - rootStyle = resolvedStyle.style; - } else { - const { - variants, - ...otherStyles - } = resolvedStyle; - rootStyle = otherStyles; - } - return processStyleVariants(props, resolvedStyle.variants, [rootStyle]); - } - if (resolvedStyle == null ? void 0 : resolvedStyle.isProcessed) { - return resolvedStyle.style; - } - return resolvedStyle; -} -function processStyleVariants(props, variants, results = []) { - var _a; - let mergedState; - variantLoop: for (let i = 0; i < variants.length; i += 1) { - const variant = variants[i]; - if (typeof variant.props === "function") { - mergedState ?? (mergedState = { - ...props, - ...props.ownerState, - ownerState: props.ownerState - }); - if (!variant.props(mergedState)) { - continue; - } - } else { - for (const key in variant.props) { - if (props[key] !== variant.props[key] && ((_a = props.ownerState) == null ? void 0 : _a[key]) !== variant.props[key]) { - continue variantLoop; - } - } - } - if (typeof variant.style === "function") { - mergedState ?? (mergedState = { - ...props, - ...props.ownerState, - ownerState: props.ownerState - }); - results.push(variant.style(mergedState)); - } else { - results.push(variant.style); - } - } - return results; -} -function createStyled3(input = {}) { - const { - themeId, - defaultTheme: defaultTheme5 = systemDefaultTheme2, - rootShouldForwardProp: rootShouldForwardProp2 = shouldForwardProp, - slotShouldForwardProp: slotShouldForwardProp2 = shouldForwardProp - } = input; - function styleAttachTheme(props) { - attachTheme(props, themeId, defaultTheme5); - } - const styled4 = (tag, inputOptions = {}) => { - internal_mutateStyles(tag, (styles) => styles.filter((style4) => style4 !== styleFunctionSx_default)); - const { - name: componentName, - slot: componentSlot, - skipVariantsResolver: inputSkipVariantsResolver, - skipSx: inputSkipSx, - // TODO v6: remove `lowercaseFirstLetter()` in the next major release - // For more details: https://github.com/mui/material-ui/pull/37908 - overridesResolver = defaultOverridesResolver(lowercaseFirstLetter(componentSlot)), - ...options - } = inputOptions; - const skipVariantsResolver = inputSkipVariantsResolver !== void 0 ? inputSkipVariantsResolver : ( - // TODO v6: remove `Root` in the next major release - // For more details: https://github.com/mui/material-ui/pull/37908 - componentSlot && componentSlot !== "Root" && componentSlot !== "root" || false - ); - const skipSx = inputSkipSx || false; - let shouldForwardPropOption = shouldForwardProp; - if (componentSlot === "Root" || componentSlot === "root") { - shouldForwardPropOption = rootShouldForwardProp2; - } else if (componentSlot) { - shouldForwardPropOption = slotShouldForwardProp2; - } else if (isStringTag(tag)) { - shouldForwardPropOption = void 0; - } - const defaultStyledResolver = styled(tag, { - shouldForwardProp: shouldForwardPropOption, - label: generateStyledLabel(componentName, componentSlot), - ...options - }); - const transformStyle = (style4) => { - if (typeof style4 === "function" && style4.__emotion_real !== style4) { - return function styleFunctionProcessor(props) { - return processStyle(props, style4); - }; - } - if (isPlainObject(style4)) { - const serialized = preprocessStyles(style4); - if (!serialized.variants) { - return serialized.style; - } - return function styleObjectProcessor(props) { - return processStyle(props, serialized); - }; - } - return style4; - }; - const muiStyledResolver = (...expressionsInput) => { - const expressionsHead = []; - const expressionsBody = expressionsInput.map(transformStyle); - const expressionsTail = []; - expressionsHead.push(styleAttachTheme); - if (componentName && overridesResolver) { - expressionsTail.push(function styleThemeOverrides(props) { - var _a, _b; - const theme = props.theme; - const styleOverrides = (_b = (_a = theme.components) == null ? void 0 : _a[componentName]) == null ? void 0 : _b.styleOverrides; - if (!styleOverrides) { - return null; - } - const resolvedStyleOverrides = {}; - for (const slotKey in styleOverrides) { - resolvedStyleOverrides[slotKey] = processStyle(props, styleOverrides[slotKey]); - } - return overridesResolver(props, resolvedStyleOverrides); - }); - } - if (componentName && !skipVariantsResolver) { - expressionsTail.push(function styleThemeVariants(props) { - var _a, _b; - const theme = props.theme; - const themeVariants = (_b = (_a = theme == null ? void 0 : theme.components) == null ? void 0 : _a[componentName]) == null ? void 0 : _b.variants; - if (!themeVariants) { - return null; - } - return processStyleVariants(props, themeVariants); - }); - } - if (!skipSx) { - expressionsTail.push(styleFunctionSx_default); - } - if (Array.isArray(expressionsBody[0])) { - const inputStrings = expressionsBody.shift(); - const placeholdersHead = new Array(expressionsHead.length).fill(""); - const placeholdersTail = new Array(expressionsTail.length).fill(""); - let outputStrings; - { - outputStrings = [...placeholdersHead, ...inputStrings, ...placeholdersTail]; - outputStrings.raw = [...placeholdersHead, ...inputStrings.raw, ...placeholdersTail]; - } - expressionsHead.unshift(outputStrings); - } - const expressions = [...expressionsHead, ...expressionsBody, ...expressionsTail]; - const Component = defaultStyledResolver(...expressions); - if (tag.muiName) { - Component.muiName = tag.muiName; - } - if (true) { - Component.displayName = generateDisplayName(componentName, componentSlot, tag); - } - return Component; - }; - if (defaultStyledResolver.withConfig) { - muiStyledResolver.withConfig = defaultStyledResolver.withConfig; - } - return muiStyledResolver; - }; - return styled4; -} -function generateDisplayName(componentName, componentSlot, tag) { - if (componentName) { - return `${componentName}${capitalize(componentSlot || "")}`; - } - return `Styled(${getDisplayName(tag)})`; -} -function generateStyledLabel(componentName, componentSlot) { - let label; - if (true) { - if (componentName) { - label = `${componentName}-${lowercaseFirstLetter(componentSlot || "Root")}`; - } - } - return label; -} -function isObjectEmpty2(object) { - for (const _ in object) { - return false; - } - return true; -} -function isStringTag(tag) { - return typeof tag === "string" && // 96 is one less than the char code - // for "a" so this is checking that - // it's a lowercase character - tag.charCodeAt(0) > 96; -} -function lowercaseFirstLetter(string) { - if (!string) { - return string; - } - return string.charAt(0).toLowerCase() + string.slice(1); -} - -// node_modules/@mui/system/esm/styled/styled.js -var styled2 = createStyled3(); -var styled_default = styled2; - -// node_modules/@mui/system/esm/useThemeProps/getThemeProps.js -function getThemeProps(params) { - const { - theme, - name, - props - } = params; - if (!theme || !theme.components || !theme.components[name] || !theme.components[name].defaultProps) { - return props; - } - return resolveProps(theme.components[name].defaultProps, props); -} - -// node_modules/@mui/system/esm/useThemeProps/useThemeProps.js -function useThemeProps({ - props, - name, - defaultTheme: defaultTheme5, - themeId -}) { - let theme = useTheme_default(defaultTheme5); - if (themeId) { - theme = theme[themeId] || theme; - } - return getThemeProps({ - theme, - name, - props - }); -} - -// node_modules/@mui/system/esm/useMediaQuery/useMediaQuery.js -var React26 = __toESM(require_react(), 1); -function useMediaQueryOld(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) { - const [match2, setMatch] = React26.useState(() => { - if (noSsr && matchMedia) { - return matchMedia(query).matches; - } - if (ssrMatchMedia) { - return ssrMatchMedia(query).matches; - } - return defaultMatches; - }); - useEnhancedEffect_default(() => { - if (!matchMedia) { - return void 0; - } - const queryList = matchMedia(query); - const updateMatch = () => { - setMatch(queryList.matches); - }; - updateMatch(); - queryList.addEventListener("change", updateMatch); - return () => { - queryList.removeEventListener("change", updateMatch); - }; - }, [query, matchMedia]); - return match2; -} -var safeReact2 = { - ...React26 -}; -var maybeReactUseSyncExternalStore = safeReact2.useSyncExternalStore; -function useMediaQueryNew(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) { - const getDefaultSnapshot = React26.useCallback(() => defaultMatches, [defaultMatches]); - const getServerSnapshot = React26.useMemo(() => { - if (noSsr && matchMedia) { - return () => matchMedia(query).matches; - } - if (ssrMatchMedia !== null) { - const { - matches - } = ssrMatchMedia(query); - return () => matches; - } - return getDefaultSnapshot; - }, [getDefaultSnapshot, query, ssrMatchMedia, noSsr, matchMedia]); - const [getSnapshot, subscribe] = React26.useMemo(() => { - if (matchMedia === null) { - return [getDefaultSnapshot, () => () => { - }]; - } - const mediaQueryList = matchMedia(query); - return [() => mediaQueryList.matches, (notify) => { - mediaQueryList.addEventListener("change", notify); - return () => { - mediaQueryList.removeEventListener("change", notify); - }; - }]; - }, [getDefaultSnapshot, matchMedia, query]); - const match2 = maybeReactUseSyncExternalStore(subscribe, getSnapshot, getServerSnapshot); - return match2; -} -function unstable_createUseMediaQuery(params = {}) { - const { - themeId - } = params; - return function useMediaQuery2(queryInput, options = {}) { - let theme = useThemeWithoutDefault_default(); - if (theme && themeId) { - theme = theme[themeId] || theme; - } - const supportMatchMedia = typeof window !== "undefined" && typeof window.matchMedia !== "undefined"; - const { - defaultMatches = false, - matchMedia = supportMatchMedia ? window.matchMedia : null, - ssrMatchMedia = null, - noSsr = false - } = getThemeProps({ - name: "MuiUseMediaQuery", - props: options, - theme - }); - if (true) { - if (typeof queryInput === "function" && theme === null) { - console.error(["MUI: The `query` argument provided is invalid.", "You are providing a function without a theme in the context.", "One of the parent elements needs to use a ThemeProvider."].join("\n")); - } - } - let query = typeof queryInput === "function" ? queryInput(theme) : queryInput; - query = query.replace(/^@media( ?)/m, ""); - const useMediaQueryImplementation = maybeReactUseSyncExternalStore !== void 0 ? useMediaQueryNew : useMediaQueryOld; - const match2 = useMediaQueryImplementation(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr); - if (true) { - React26.useDebugValue({ - query, - match: match2 - }); - } - return match2; - }; -} -var useMediaQuery = unstable_createUseMediaQuery(); - -// node_modules/@mui/system/esm/ThemeProvider/ThemeProvider.js -var React31 = __toESM(require_react(), 1); -var import_prop_types13 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/private-theming/esm/ThemeProvider/ThemeProvider.js -var React29 = __toESM(require_react(), 1); -var import_prop_types11 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/private-theming/esm/useTheme/ThemeContext.js -var React27 = __toESM(require_react(), 1); -var ThemeContext2 = React27.createContext(null); -if (true) { - ThemeContext2.displayName = "ThemeContext"; -} -var ThemeContext_default = ThemeContext2; - -// node_modules/@mui/private-theming/esm/useTheme/useTheme.js -var React28 = __toESM(require_react(), 1); -function useTheme4() { - const theme = React28.useContext(ThemeContext_default); - if (true) { - React28.useDebugValue(theme); - } - return theme; -} - -// node_modules/@mui/private-theming/esm/ThemeProvider/nested.js -var hasSymbol = typeof Symbol === "function" && Symbol.for; -var nested_default = hasSymbol ? Symbol.for("mui.nested") : "__THEME_NESTED__"; - -// node_modules/@mui/private-theming/esm/ThemeProvider/ThemeProvider.js -var import_jsx_runtime6 = __toESM(require_jsx_runtime(), 1); -function mergeOuterLocalTheme(outerTheme, localTheme) { - if (typeof localTheme === "function") { - const mergedTheme = localTheme(outerTheme); - if (true) { - if (!mergedTheme) { - console.error(["MUI: You should return an object from your theme function, i.e.", " ({})} />"].join("\n")); - } - } - return mergedTheme; - } - return { - ...outerTheme, - ...localTheme - }; -} -function ThemeProvider2(props) { - const { - children, - theme: localTheme - } = props; - const outerTheme = useTheme4(); - if (true) { - if (outerTheme === null && typeof localTheme === "function") { - console.error(["MUI: You are providing a theme function prop to the ThemeProvider component:", " outerTheme} />", "", "However, no outer theme is present.", "Make sure a theme is already injected higher in the React tree or provide a theme object."].join("\n")); - } - } - const theme = React29.useMemo(() => { - const output = outerTheme === null ? { - ...localTheme - } : mergeOuterLocalTheme(outerTheme, localTheme); - if (output != null) { - output[nested_default] = outerTheme !== null; - } - return output; - }, [localTheme, outerTheme]); - return (0, import_jsx_runtime6.jsx)(ThemeContext_default.Provider, { - value: theme, - children - }); -} -true ? ThemeProvider2.propTypes = { - /** - * Your component tree. - */ - children: import_prop_types11.default.node, - /** - * A theme object. You can provide a function to extend the outer theme. - */ - theme: import_prop_types11.default.oneOfType([import_prop_types11.default.object, import_prop_types11.default.func]).isRequired -} : void 0; -if (true) { - true ? ThemeProvider2.propTypes = exactProp(ThemeProvider2.propTypes) : void 0; -} -var ThemeProvider_default = ThemeProvider2; - -// node_modules/@mui/system/esm/DefaultPropsProvider/DefaultPropsProvider.js -var React30 = __toESM(require_react(), 1); -var import_prop_types12 = __toESM(require_prop_types(), 1); -var import_jsx_runtime7 = __toESM(require_jsx_runtime(), 1); -var PropsContext = React30.createContext(void 0); -function DefaultPropsProvider({ - value, - children -}) { - return (0, import_jsx_runtime7.jsx)(PropsContext.Provider, { - value, - children - }); -} -true ? DefaultPropsProvider.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * @ignore - */ - children: import_prop_types12.default.node, - /** - * @ignore - */ - value: import_prop_types12.default.object -} : void 0; -function getThemeProps2(params) { - const { - theme, - name, - props - } = params; - if (!theme || !theme.components || !theme.components[name]) { - return props; - } - const config = theme.components[name]; - if (config.defaultProps) { - return resolveProps(config.defaultProps, props); - } - if (!config.styleOverrides && !config.variants) { - return resolveProps(config, props); - } - return props; -} -function useDefaultProps({ - props, - name -}) { - const ctx = React30.useContext(PropsContext); - return getThemeProps2({ - props, - name, - theme: { - components: ctx - } - }); -} -var DefaultPropsProvider_default = DefaultPropsProvider; - -// node_modules/@mui/system/esm/ThemeProvider/ThemeProvider.js -var import_jsx_runtime8 = __toESM(require_jsx_runtime(), 1); -var EMPTY_THEME = {}; -function useThemeScoping(themeId, upperTheme, localTheme, isPrivate = false) { - return React31.useMemo(() => { - const resolvedTheme = themeId ? upperTheme[themeId] || upperTheme : upperTheme; - if (typeof localTheme === "function") { - const mergedTheme = localTheme(resolvedTheme); - const result = themeId ? { - ...upperTheme, - [themeId]: mergedTheme - } : mergedTheme; - if (isPrivate) { - return () => result; - } - return result; - } - return themeId ? { - ...upperTheme, - [themeId]: localTheme - } : { - ...upperTheme, - ...localTheme - }; - }, [themeId, upperTheme, localTheme, isPrivate]); -} -function ThemeProvider3(props) { - const { - children, - theme: localTheme, - themeId - } = props; - const upperTheme = useThemeWithoutDefault_default(EMPTY_THEME); - const upperPrivateTheme = useTheme4() || EMPTY_THEME; - if (true) { - if (upperTheme === null && typeof localTheme === "function" || themeId && upperTheme && !upperTheme[themeId] && typeof localTheme === "function") { - console.error(["MUI: You are providing a theme function prop to the ThemeProvider component:", " outerTheme} />", "", "However, no outer theme is present.", "Make sure a theme is already injected higher in the React tree or provide a theme object."].join("\n")); - } - } - const engineTheme = useThemeScoping(themeId, upperTheme, localTheme); - const privateTheme = useThemeScoping(themeId, upperPrivateTheme, localTheme, true); - const rtlValue = (themeId ? engineTheme[themeId] : engineTheme).direction === "rtl"; - return (0, import_jsx_runtime8.jsx)(ThemeProvider_default, { - theme: privateTheme, - children: (0, import_jsx_runtime8.jsx)(ThemeContext.Provider, { - value: engineTheme, - children: (0, import_jsx_runtime8.jsx)(RtlProvider_default, { - value: rtlValue, - children: (0, import_jsx_runtime8.jsx)(DefaultPropsProvider_default, { - value: themeId ? engineTheme[themeId].components : engineTheme.components, - children - }) - }) - }) - }); -} -true ? ThemeProvider3.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the d.ts file and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * Your component tree. - */ - children: import_prop_types13.default.node, - /** - * A theme object. You can provide a function to extend the outer theme. - */ - theme: import_prop_types13.default.oneOfType([import_prop_types13.default.func, import_prop_types13.default.object]).isRequired, - /** - * The design system's unique id for getting the corresponded theme when there are multiple design systems. - */ - themeId: import_prop_types13.default.string -} : void 0; -if (true) { - true ? ThemeProvider3.propTypes = exactProp(ThemeProvider3.propTypes) : void 0; -} - -// node_modules/@mui/system/esm/memoTheme.js -var arg = { - theme: void 0 -}; -function unstable_memoTheme(styleFn) { - let lastValue; - let lastTheme; - return function styleMemoized(props) { - let value = lastValue; - if (value === void 0 || props.theme !== lastTheme) { - arg.theme = props.theme; - value = preprocessStyles(styleFn(arg)); - lastValue = value; - lastTheme = props.theme; - } - return value; - }; -} - -// node_modules/@mui/system/esm/cssVars/createCssVarsProvider.js -var React34 = __toESM(require_react(), 1); -var import_prop_types14 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/system/esm/InitColorSchemeScript/InitColorSchemeScript.js -var React32 = __toESM(require_react(), 1); -var import_jsx_runtime9 = __toESM(require_jsx_runtime(), 1); - -// node_modules/@mui/system/esm/cssVars/useCurrentColorScheme.js -var React33 = __toESM(require_react(), 1); - -// node_modules/@mui/system/esm/cssVars/createCssVarsProvider.js -var import_jsx_runtime10 = __toESM(require_jsx_runtime(), 1); - -// node_modules/@mui/system/esm/cssVars/createGetCssVar.js -function createGetCssVar(prefix3 = "") { - function appendVar(...vars) { - if (!vars.length) { - return ""; - } - const value = vars[0]; - if (typeof value === "string" && !value.match(/(#|\(|\)|(-?(\d*\.)?\d+)(px|em|%|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc))|^(-?(\d*\.)?\d+)$|(\d+ \d+ \d+)/)) { - return `, var(--${prefix3 ? `${prefix3}-` : ""}${value}${appendVar(...vars.slice(1))})`; - } - return `, ${value}`; - } - const getCssVar = (field, ...fallbacks) => { - return `var(--${prefix3 ? `${prefix3}-` : ""}${field}${appendVar(...fallbacks)})`; - }; - return getCssVar; -} - -// node_modules/@mui/system/esm/cssVars/cssVarsParser.js -var assignNestedKeys = (obj, keys, value, arrayKeys = []) => { - let temp = obj; - keys.forEach((k, index) => { - if (index === keys.length - 1) { - if (Array.isArray(temp)) { - temp[Number(k)] = value; - } else if (temp && typeof temp === "object") { - temp[k] = value; - } - } else if (temp && typeof temp === "object") { - if (!temp[k]) { - temp[k] = arrayKeys.includes(k) ? [] : {}; - } - temp = temp[k]; - } - }); -}; -var walkObjectDeep = (obj, callback, shouldSkipPaths) => { - function recurse(object, parentKeys = [], arrayKeys = []) { - Object.entries(object).forEach(([key, value]) => { - if (!shouldSkipPaths || shouldSkipPaths && !shouldSkipPaths([...parentKeys, key])) { - if (value !== void 0 && value !== null) { - if (typeof value === "object" && Object.keys(value).length > 0) { - recurse(value, [...parentKeys, key], Array.isArray(value) ? [...arrayKeys, key] : arrayKeys); - } else { - callback([...parentKeys, key], value, arrayKeys); - } - } - } - }); - } - recurse(obj); -}; -var getCssValue = (keys, value) => { - if (typeof value === "number") { - if (["lineHeight", "fontWeight", "opacity", "zIndex"].some((prop) => keys.includes(prop))) { - return value; - } - const lastKey = keys[keys.length - 1]; - if (lastKey.toLowerCase().includes("opacity")) { - return value; - } - return `${value}px`; - } - return value; -}; -function cssVarsParser(theme, options) { - const { - prefix: prefix3, - shouldSkipGeneratingVar: shouldSkipGeneratingVar2 - } = options || {}; - const css2 = {}; - const vars = {}; - const varsWithDefaults = {}; - walkObjectDeep( - theme, - (keys, value, arrayKeys) => { - if (typeof value === "string" || typeof value === "number") { - if (!shouldSkipGeneratingVar2 || !shouldSkipGeneratingVar2(keys, value)) { - const cssVar = `--${prefix3 ? `${prefix3}-` : ""}${keys.join("-")}`; - const resolvedValue = getCssValue(keys, value); - Object.assign(css2, { - [cssVar]: resolvedValue - }); - assignNestedKeys(vars, keys, `var(${cssVar})`, arrayKeys); - assignNestedKeys(varsWithDefaults, keys, `var(${cssVar}, ${resolvedValue})`, arrayKeys); - } - } - }, - (keys) => keys[0] === "vars" - // skip 'vars/*' paths - ); - return { - css: css2, - vars, - varsWithDefaults - }; -} - -// node_modules/@mui/system/esm/cssVars/prepareCssVars.js -function prepareCssVars(theme, parserConfig = {}) { - const { - getSelector = defaultGetSelector, - disableCssColorScheme, - colorSchemeSelector: selector - } = parserConfig; - const { - colorSchemes = {}, - components, - defaultColorScheme = "light", - ...otherTheme - } = theme; - const { - vars: rootVars, - css: rootCss, - varsWithDefaults: rootVarsWithDefaults - } = cssVarsParser(otherTheme, parserConfig); - let themeVars = rootVarsWithDefaults; - const colorSchemesMap = {}; - const { - [defaultColorScheme]: defaultScheme, - ...otherColorSchemes - } = colorSchemes; - Object.entries(otherColorSchemes || {}).forEach(([key, scheme]) => { - const { - vars, - css: css2, - varsWithDefaults - } = cssVarsParser(scheme, parserConfig); - themeVars = deepmerge(themeVars, varsWithDefaults); - colorSchemesMap[key] = { - css: css2, - vars - }; - }); - if (defaultScheme) { - const { - css: css2, - vars, - varsWithDefaults - } = cssVarsParser(defaultScheme, parserConfig); - themeVars = deepmerge(themeVars, varsWithDefaults); - colorSchemesMap[defaultColorScheme] = { - css: css2, - vars - }; - } - function defaultGetSelector(colorScheme, cssObject) { - var _a, _b; - let rule = selector; - if (selector === "class") { - rule = ".%s"; - } - if (selector === "data") { - rule = "[data-%s]"; - } - if ((selector == null ? void 0 : selector.startsWith("data-")) && !selector.includes("%s")) { - rule = `[${selector}="%s"]`; - } - if (colorScheme) { - if (rule === "media") { - if (theme.defaultColorScheme === colorScheme) { - return ":root"; - } - const mode = ((_b = (_a = colorSchemes[colorScheme]) == null ? void 0 : _a.palette) == null ? void 0 : _b.mode) || colorScheme; - return { - [`@media (prefers-color-scheme: ${mode})`]: { - ":root": cssObject - } - }; - } - if (rule) { - if (theme.defaultColorScheme === colorScheme) { - return `:root, ${rule.replace("%s", String(colorScheme))}`; - } - return rule.replace("%s", String(colorScheme)); - } - } - return ":root"; - } - const generateThemeVars = () => { - let vars = { - ...rootVars - }; - Object.entries(colorSchemesMap).forEach(([, { - vars: schemeVars - }]) => { - vars = deepmerge(vars, schemeVars); - }); - return vars; - }; - const generateStyleSheets = () => { - var _a, _b; - const stylesheets = []; - const colorScheme = theme.defaultColorScheme || "light"; - function insertStyleSheet(key, css2) { - if (Object.keys(css2).length) { - stylesheets.push(typeof key === "string" ? { - [key]: { - ...css2 - } - } : key); - } - } - insertStyleSheet(getSelector(void 0, { - ...rootCss - }), rootCss); - const { - [colorScheme]: defaultSchemeVal, - ...other - } = colorSchemesMap; - if (defaultSchemeVal) { - const { - css: css2 - } = defaultSchemeVal; - const cssColorSheme = (_b = (_a = colorSchemes[colorScheme]) == null ? void 0 : _a.palette) == null ? void 0 : _b.mode; - const finalCss = !disableCssColorScheme && cssColorSheme ? { - colorScheme: cssColorSheme, - ...css2 - } : { - ...css2 - }; - insertStyleSheet(getSelector(colorScheme, { - ...finalCss - }), finalCss); - } - Object.entries(other).forEach(([key, { - css: css2 - }]) => { - var _a2, _b2; - const cssColorSheme = (_b2 = (_a2 = colorSchemes[key]) == null ? void 0 : _a2.palette) == null ? void 0 : _b2.mode; - const finalCss = !disableCssColorScheme && cssColorSheme ? { - colorScheme: cssColorSheme, - ...css2 - } : { - ...css2 - }; - insertStyleSheet(getSelector(key, { - ...finalCss - }), finalCss); - }); - return stylesheets; - }; - return { - vars: themeVars, - generateThemeVars, - generateStyleSheets - }; -} -var prepareCssVars_default = prepareCssVars; - -// node_modules/@mui/system/esm/cssVars/getColorSchemeSelector.js -function createGetColorSchemeSelector(selector) { - return function getColorSchemeSelector(colorScheme) { - if (selector === "media") { - if (true) { - if (colorScheme !== "light" && colorScheme !== "dark") { - console.error(`MUI: @media (prefers-color-scheme) supports only 'light' or 'dark', but receive '${colorScheme}'.`); - } - } - return `@media (prefers-color-scheme: ${colorScheme})`; - } - if (selector) { - if (selector.startsWith("data-") && !selector.includes("%s")) { - return `[${selector}="${colorScheme}"] &`; - } - if (selector === "class") { - return `.${colorScheme} &`; - } - if (selector === "data") { - return `[data-${colorScheme}] &`; - } - return `${selector.replace("%s", colorScheme)} &`; - } - return "&"; - }; -} - -// node_modules/@mui/system/esm/version/index.js -var major = Number("7"); -var minor = Number("0"); -var patch = Number("1"); - -// node_modules/@mui/system/esm/Container/createContainer.js -var React35 = __toESM(require_react(), 1); -var import_prop_types15 = __toESM(require_prop_types(), 1); -var import_jsx_runtime11 = __toESM(require_jsx_runtime(), 1); -var defaultTheme = createTheme_default(); -var defaultCreateStyledComponent = styled_default("div", { - name: "MuiContainer", - slot: "Root", - overridesResolver: (props, styles) => { - const { - ownerState - } = props; - return [styles.root, styles[`maxWidth${capitalize(String(ownerState.maxWidth))}`], ownerState.fixed && styles.fixed, ownerState.disableGutters && styles.disableGutters]; - } -}); -var useThemePropsDefault = (inProps) => useThemeProps({ - props: inProps, - name: "MuiContainer", - defaultTheme -}); -var useUtilityClasses = (ownerState, componentName) => { - const getContainerUtilityClass = (slot) => { - return generateUtilityClass(componentName, slot); - }; - const { - classes, - fixed, - disableGutters, - maxWidth: maxWidth2 - } = ownerState; - const slots = { - root: ["root", maxWidth2 && `maxWidth${capitalize(String(maxWidth2))}`, fixed && "fixed", disableGutters && "disableGutters"] - }; - return composeClasses(slots, getContainerUtilityClass, classes); -}; -function createContainer(options = {}) { - const { - // This will allow adding custom styled fn (for example for custom sx style function) - createStyledComponent = defaultCreateStyledComponent, - useThemeProps: useThemeProps2 = useThemePropsDefault, - componentName = "MuiContainer" - } = options; - const ContainerRoot = createStyledComponent(({ - theme, - ownerState - }) => ({ - width: "100%", - marginLeft: "auto", - boxSizing: "border-box", - marginRight: "auto", - ...!ownerState.disableGutters && { - paddingLeft: theme.spacing(2), - paddingRight: theme.spacing(2), - // @ts-ignore module augmentation fails if custom breakpoints are used - [theme.breakpoints.up("sm")]: { - paddingLeft: theme.spacing(3), - paddingRight: theme.spacing(3) - } - } - }), ({ - theme, - ownerState - }) => ownerState.fixed && Object.keys(theme.breakpoints.values).reduce((acc, breakpointValueKey) => { - const breakpoint = breakpointValueKey; - const value = theme.breakpoints.values[breakpoint]; - if (value !== 0) { - acc[theme.breakpoints.up(breakpoint)] = { - maxWidth: `${value}${theme.breakpoints.unit}` - }; - } - return acc; - }, {}), ({ - theme, - ownerState - }) => ({ - // @ts-ignore module augmentation fails if custom breakpoints are used - ...ownerState.maxWidth === "xs" && { - // @ts-ignore module augmentation fails if custom breakpoints are used - [theme.breakpoints.up("xs")]: { - // @ts-ignore module augmentation fails if custom breakpoints are used - maxWidth: Math.max(theme.breakpoints.values.xs, 444) - } - }, - ...ownerState.maxWidth && // @ts-ignore module augmentation fails if custom breakpoints are used - ownerState.maxWidth !== "xs" && { - // @ts-ignore module augmentation fails if custom breakpoints are used - [theme.breakpoints.up(ownerState.maxWidth)]: { - // @ts-ignore module augmentation fails if custom breakpoints are used - maxWidth: `${theme.breakpoints.values[ownerState.maxWidth]}${theme.breakpoints.unit}` - } - } - })); - const Container2 = React35.forwardRef(function Container3(inProps, ref) { - const props = useThemeProps2(inProps); - const { - className, - component = "div", - disableGutters = false, - fixed = false, - maxWidth: maxWidth2 = "lg", - classes: classesProp, - ...other - } = props; - const ownerState = { - ...props, - component, - disableGutters, - fixed, - maxWidth: maxWidth2 - }; - const classes = useUtilityClasses(ownerState, componentName); - return ( - // @ts-ignore theme is injected by the styled util - (0, import_jsx_runtime11.jsx)(ContainerRoot, { - as: component, - ownerState, - className: clsx_default(classes.root, className), - ref, - ...other - }) - ); - }); - true ? Container2.propTypes = { - children: import_prop_types15.default.node, - classes: import_prop_types15.default.object, - className: import_prop_types15.default.string, - component: import_prop_types15.default.elementType, - disableGutters: import_prop_types15.default.bool, - fixed: import_prop_types15.default.bool, - maxWidth: import_prop_types15.default.oneOfType([import_prop_types15.default.oneOf(["xs", "sm", "md", "lg", "xl", false]), import_prop_types15.default.string]), - sx: import_prop_types15.default.oneOfType([import_prop_types15.default.arrayOf(import_prop_types15.default.oneOfType([import_prop_types15.default.func, import_prop_types15.default.object, import_prop_types15.default.bool])), import_prop_types15.default.func, import_prop_types15.default.object]) - } : void 0; - return Container2; -} - -// node_modules/@mui/system/esm/Container/Container.js -var import_prop_types16 = __toESM(require_prop_types(), 1); -var Container = createContainer(); -true ? Container.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * @ignore - */ - children: import_prop_types16.default.node, - /** - * Override or extend the styles applied to the component. - */ - classes: import_prop_types16.default.object, - /** - * The component used for the root node. - * Either a string to use a HTML element or a component. - */ - component: import_prop_types16.default.elementType, - /** - * If `true`, the left and right padding is removed. - * @default false - */ - disableGutters: import_prop_types16.default.bool, - /** - * Set the max-width to match the min-width of the current breakpoint. - * This is useful if you'd prefer to design for a fixed set of sizes - * instead of trying to accommodate a fully fluid viewport. - * It's fluid by default. - * @default false - */ - fixed: import_prop_types16.default.bool, - /** - * Determine the max-width of the container. - * The container width grows with the size of the screen. - * Set to `false` to disable `maxWidth`. - * @default 'lg' - */ - maxWidth: import_prop_types16.default.oneOfType([import_prop_types16.default.oneOf(["xs", "sm", "md", "lg", "xl", false]), import_prop_types16.default.string]), - /** - * The system prop that allows defining system overrides as well as additional CSS styles. - */ - sx: import_prop_types16.default.oneOfType([import_prop_types16.default.arrayOf(import_prop_types16.default.oneOfType([import_prop_types16.default.func, import_prop_types16.default.object, import_prop_types16.default.bool])), import_prop_types16.default.func, import_prop_types16.default.object]) -} : void 0; - -// node_modules/@mui/system/esm/Container/containerClasses.js -var containerClasses = generateUtilityClasses("MuiContainer", ["root", "disableGutters", "fixed", "maxWidthXs", "maxWidthSm", "maxWidthMd", "maxWidthLg", "maxWidthXl"]); - -// node_modules/@mui/system/esm/Grid/Grid.js -var import_prop_types18 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/system/esm/Grid/createGrid.js -var React36 = __toESM(require_react(), 1); -var import_prop_types17 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/system/esm/Grid/traverseBreakpoints.js -var filterBreakpointKeys = (breakpointsKeys, responsiveKeys) => breakpointsKeys.filter((key) => responsiveKeys.includes(key)); -var traverseBreakpoints = (breakpoints, responsive, iterator) => { - const smallestBreakpoint = breakpoints.keys[0]; - if (Array.isArray(responsive)) { - responsive.forEach((breakpointValue, index) => { - iterator((responsiveStyles, style4) => { - if (index <= breakpoints.keys.length - 1) { - if (index === 0) { - Object.assign(responsiveStyles, style4); - } else { - responsiveStyles[breakpoints.up(breakpoints.keys[index])] = style4; - } - } - }, breakpointValue); - }); - } else if (responsive && typeof responsive === "object") { - const keys = Object.keys(responsive).length > breakpoints.keys.length ? breakpoints.keys : filterBreakpointKeys(breakpoints.keys, Object.keys(responsive)); - keys.forEach((key) => { - if (breakpoints.keys.includes(key)) { - const breakpointValue = responsive[key]; - if (breakpointValue !== void 0) { - iterator((responsiveStyles, style4) => { - if (smallestBreakpoint === key) { - Object.assign(responsiveStyles, style4); - } else { - responsiveStyles[breakpoints.up(key)] = style4; - } - }, breakpointValue); - } - } - }); - } else if (typeof responsive === "number" || typeof responsive === "string") { - iterator((responsiveStyles, style4) => { - Object.assign(responsiveStyles, style4); - }, responsive); - } -}; - -// node_modules/@mui/system/esm/Grid/gridGenerator.js -function getSelfSpacingVar(axis) { - return `--Grid-${axis}Spacing`; -} -function getParentSpacingVar(axis) { - return `--Grid-parent-${axis}Spacing`; -} -var selfColumnsVar = "--Grid-columns"; -var parentColumnsVar = "--Grid-parent-columns"; -var generateGridSizeStyles = ({ - theme, - ownerState -}) => { - const styles = {}; - traverseBreakpoints(theme.breakpoints, ownerState.size, (appendStyle, value) => { - let style4 = {}; - if (value === "grow") { - style4 = { - flexBasis: 0, - flexGrow: 1, - maxWidth: "100%" - }; - } - if (value === "auto") { - style4 = { - flexBasis: "auto", - flexGrow: 0, - flexShrink: 0, - maxWidth: "none", - width: "auto" - }; - } - if (typeof value === "number") { - style4 = { - flexGrow: 0, - flexBasis: "auto", - width: `calc(100% * ${value} / var(${parentColumnsVar}) - (var(${parentColumnsVar}) - ${value}) * (var(${getParentSpacingVar("column")}) / var(${parentColumnsVar})))` - }; - } - appendStyle(styles, style4); - }); - return styles; -}; -var generateGridOffsetStyles = ({ - theme, - ownerState -}) => { - const styles = {}; - traverseBreakpoints(theme.breakpoints, ownerState.offset, (appendStyle, value) => { - let style4 = {}; - if (value === "auto") { - style4 = { - marginLeft: "auto" - }; - } - if (typeof value === "number") { - style4 = { - marginLeft: value === 0 ? "0px" : `calc(100% * ${value} / var(${parentColumnsVar}) + var(${getParentSpacingVar("column")}) * ${value} / var(${parentColumnsVar}))` - }; - } - appendStyle(styles, style4); - }); - return styles; -}; -var generateGridColumnsStyles = ({ - theme, - ownerState -}) => { - if (!ownerState.container) { - return {}; - } - const styles = { - [selfColumnsVar]: 12 - }; - traverseBreakpoints(theme.breakpoints, ownerState.columns, (appendStyle, value) => { - const columns = value ?? 12; - appendStyle(styles, { - [selfColumnsVar]: columns, - "> *": { - [parentColumnsVar]: columns - } - }); - }); - return styles; -}; -var generateGridRowSpacingStyles = ({ - theme, - ownerState -}) => { - if (!ownerState.container) { - return {}; - } - const styles = {}; - traverseBreakpoints(theme.breakpoints, ownerState.rowSpacing, (appendStyle, value) => { - var _a; - const spacing2 = typeof value === "string" ? value : (_a = theme.spacing) == null ? void 0 : _a.call(theme, value); - appendStyle(styles, { - [getSelfSpacingVar("row")]: spacing2, - "> *": { - [getParentSpacingVar("row")]: spacing2 - } - }); - }); - return styles; -}; -var generateGridColumnSpacingStyles = ({ - theme, - ownerState -}) => { - if (!ownerState.container) { - return {}; - } - const styles = {}; - traverseBreakpoints(theme.breakpoints, ownerState.columnSpacing, (appendStyle, value) => { - var _a; - const spacing2 = typeof value === "string" ? value : (_a = theme.spacing) == null ? void 0 : _a.call(theme, value); - appendStyle(styles, { - [getSelfSpacingVar("column")]: spacing2, - "> *": { - [getParentSpacingVar("column")]: spacing2 - } - }); - }); - return styles; -}; -var generateGridDirectionStyles = ({ - theme, - ownerState -}) => { - if (!ownerState.container) { - return {}; - } - const styles = {}; - traverseBreakpoints(theme.breakpoints, ownerState.direction, (appendStyle, value) => { - appendStyle(styles, { - flexDirection: value - }); - }); - return styles; -}; -var generateGridStyles = ({ - ownerState -}) => { - return { - minWidth: 0, - boxSizing: "border-box", - ...ownerState.container && { - display: "flex", - flexWrap: "wrap", - ...ownerState.wrap && ownerState.wrap !== "wrap" && { - flexWrap: ownerState.wrap - }, - gap: `var(${getSelfSpacingVar("row")}) var(${getSelfSpacingVar("column")})` - } - }; -}; -var generateSizeClassNames = (size) => { - const classNames = []; - Object.entries(size).forEach(([key, value]) => { - if (value !== false && value !== void 0) { - classNames.push(`grid-${key}-${String(value)}`); - } - }); - return classNames; -}; -var generateSpacingClassNames = (spacing2, smallestBreakpoint = "xs") => { - function isValidSpacing(val) { - if (val === void 0) { - return false; - } - return typeof val === "string" && !Number.isNaN(Number(val)) || typeof val === "number" && val > 0; - } - if (isValidSpacing(spacing2)) { - return [`spacing-${smallestBreakpoint}-${String(spacing2)}`]; - } - if (typeof spacing2 === "object" && !Array.isArray(spacing2)) { - const classNames = []; - Object.entries(spacing2).forEach(([key, value]) => { - if (isValidSpacing(value)) { - classNames.push(`spacing-${key}-${String(value)}`); - } - }); - return classNames; - } - return []; -}; -var generateDirectionClasses = (direction) => { - if (direction === void 0) { - return []; - } - if (typeof direction === "object") { - return Object.entries(direction).map(([key, value]) => `direction-${key}-${value}`); - } - return [`direction-xs-${String(direction)}`]; -}; - -// node_modules/@mui/system/esm/Grid/deleteLegacyGridProps.js -var getLegacyGridWarning = (propName) => { - if (["item", "zeroMinWidth"].includes(propName)) { - return `The \`${propName}\` prop has been removed and is no longer necessary. You can safely remove it.`; - } - return `The \`${propName}\` prop has been removed. See https://mui.com/material-ui/migration/upgrade-to-grid-v2/ for migration instructions.`; -}; -var warnedAboutProps = []; -function deleteLegacyGridProps(props, breakpoints) { - const propsToWarn = []; - if (props.item !== void 0) { - delete props.item; - propsToWarn.push("item"); - } - if (props.zeroMinWidth !== void 0) { - delete props.zeroMinWidth; - propsToWarn.push("zeroMinWidth"); - } - breakpoints.keys.forEach((breakpoint) => { - if (props[breakpoint] !== void 0) { - propsToWarn.push(breakpoint); - delete props[breakpoint]; - } - }); - if (true) { - propsToWarn.forEach((prop) => { - if (!warnedAboutProps.includes(prop)) { - warnedAboutProps.push(prop); - console.warn(`MUI Grid: ${getLegacyGridWarning(prop)} -`); - } - }); - } -} - -// node_modules/@mui/system/esm/Grid/createGrid.js -var import_jsx_runtime12 = __toESM(require_jsx_runtime(), 1); -var defaultTheme2 = createTheme_default(); -var defaultCreateStyledComponent2 = styled_default("div", { - name: "MuiGrid", - slot: "Root", - overridesResolver: (props, styles) => styles.root -}); -function useThemePropsDefault2(props) { - return useThemeProps({ - props, - name: "MuiGrid", - defaultTheme: defaultTheme2 - }); -} -function createGrid(options = {}) { - const { - // This will allow adding custom styled fn (for example for custom sx style function) - createStyledComponent = defaultCreateStyledComponent2, - useThemeProps: useThemeProps2 = useThemePropsDefault2, - useTheme: useTheme6 = useTheme_default, - componentName = "MuiGrid" - } = options; - const useUtilityClasses3 = (ownerState, theme) => { - const { - container, - direction, - spacing: spacing2, - wrap, - size - } = ownerState; - const slots = { - root: ["root", container && "container", wrap !== "wrap" && `wrap-xs-${String(wrap)}`, ...generateDirectionClasses(direction), ...generateSizeClassNames(size), ...container ? generateSpacingClassNames(spacing2, theme.breakpoints.keys[0]) : []] - }; - return composeClasses(slots, (slot) => generateUtilityClass(componentName, slot), {}); - }; - function parseResponsiveProp(propValue, breakpoints, shouldUseValue = () => true) { - const parsedProp = {}; - if (propValue === null) { - return parsedProp; - } - if (Array.isArray(propValue)) { - propValue.forEach((value, index) => { - if (value !== null && shouldUseValue(value) && breakpoints.keys[index]) { - parsedProp[breakpoints.keys[index]] = value; - } - }); - } else if (typeof propValue === "object") { - Object.keys(propValue).forEach((key) => { - const value = propValue[key]; - if (value !== null && value !== void 0 && shouldUseValue(value)) { - parsedProp[key] = value; - } - }); - } else { - parsedProp[breakpoints.keys[0]] = propValue; - } - return parsedProp; - } - const GridRoot = createStyledComponent(generateGridColumnsStyles, generateGridColumnSpacingStyles, generateGridRowSpacingStyles, generateGridSizeStyles, generateGridDirectionStyles, generateGridStyles, generateGridOffsetStyles); - const Grid2 = React36.forwardRef(function Grid3(inProps, ref) { - const theme = useTheme6(); - const themeProps = useThemeProps2(inProps); - const props = extendSxProp(themeProps); - deleteLegacyGridProps(props, theme.breakpoints); - const { - className, - children, - columns: columnsProp = 12, - container = false, - component = "div", - direction = "row", - wrap = "wrap", - size: sizeProp = {}, - offset: offsetProp = {}, - spacing: spacingProp = 0, - rowSpacing: rowSpacingProp = spacingProp, - columnSpacing: columnSpacingProp = spacingProp, - unstable_level: level = 0, - ...other - } = props; - const size = parseResponsiveProp(sizeProp, theme.breakpoints, (val) => val !== false); - const offset = parseResponsiveProp(offsetProp, theme.breakpoints); - const columns = inProps.columns ?? (level ? void 0 : columnsProp); - const spacing2 = inProps.spacing ?? (level ? void 0 : spacingProp); - const rowSpacing = inProps.rowSpacing ?? inProps.spacing ?? (level ? void 0 : rowSpacingProp); - const columnSpacing = inProps.columnSpacing ?? inProps.spacing ?? (level ? void 0 : columnSpacingProp); - const ownerState = { - ...props, - level, - columns, - container, - direction, - wrap, - spacing: spacing2, - rowSpacing, - columnSpacing, - size, - offset - }; - const classes = useUtilityClasses3(ownerState, theme); - return (0, import_jsx_runtime12.jsx)(GridRoot, { - ref, - as: component, - ownerState, - className: clsx_default(classes.root, className), - ...other, - children: React36.Children.map(children, (child) => { - var _a; - if (React36.isValidElement(child) && isMuiElement(child, ["Grid"]) && container && child.props.container) { - return React36.cloneElement(child, { - unstable_level: ((_a = child.props) == null ? void 0 : _a.unstable_level) ?? level + 1 - }); - } - return child; - }) - }); - }); - true ? Grid2.propTypes = { - children: import_prop_types17.default.node, - className: import_prop_types17.default.string, - columns: import_prop_types17.default.oneOfType([import_prop_types17.default.arrayOf(import_prop_types17.default.number), import_prop_types17.default.number, import_prop_types17.default.object]), - columnSpacing: import_prop_types17.default.oneOfType([import_prop_types17.default.arrayOf(import_prop_types17.default.oneOfType([import_prop_types17.default.number, import_prop_types17.default.string])), import_prop_types17.default.number, import_prop_types17.default.object, import_prop_types17.default.string]), - component: import_prop_types17.default.elementType, - container: import_prop_types17.default.bool, - direction: import_prop_types17.default.oneOfType([import_prop_types17.default.oneOf(["column-reverse", "column", "row-reverse", "row"]), import_prop_types17.default.arrayOf(import_prop_types17.default.oneOf(["column-reverse", "column", "row-reverse", "row"])), import_prop_types17.default.object]), - offset: import_prop_types17.default.oneOfType([import_prop_types17.default.string, import_prop_types17.default.number, import_prop_types17.default.arrayOf(import_prop_types17.default.oneOfType([import_prop_types17.default.string, import_prop_types17.default.number])), import_prop_types17.default.object]), - rowSpacing: import_prop_types17.default.oneOfType([import_prop_types17.default.arrayOf(import_prop_types17.default.oneOfType([import_prop_types17.default.number, import_prop_types17.default.string])), import_prop_types17.default.number, import_prop_types17.default.object, import_prop_types17.default.string]), - size: import_prop_types17.default.oneOfType([import_prop_types17.default.string, import_prop_types17.default.bool, import_prop_types17.default.number, import_prop_types17.default.arrayOf(import_prop_types17.default.oneOfType([import_prop_types17.default.string, import_prop_types17.default.bool, import_prop_types17.default.number])), import_prop_types17.default.object]), - spacing: import_prop_types17.default.oneOfType([import_prop_types17.default.arrayOf(import_prop_types17.default.oneOfType([import_prop_types17.default.number, import_prop_types17.default.string])), import_prop_types17.default.number, import_prop_types17.default.object, import_prop_types17.default.string]), - sx: import_prop_types17.default.oneOfType([import_prop_types17.default.arrayOf(import_prop_types17.default.oneOfType([import_prop_types17.default.func, import_prop_types17.default.object, import_prop_types17.default.bool])), import_prop_types17.default.func, import_prop_types17.default.object]), - wrap: import_prop_types17.default.oneOf(["nowrap", "wrap-reverse", "wrap"]) - } : void 0; - Grid2.muiName = "Grid"; - return Grid2; -} - -// node_modules/@mui/system/esm/Grid/Grid.js -var Grid = createGrid(); -true ? Grid.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * The content of the component. - */ - children: import_prop_types18.default.node, - /** - * The number of columns. - * @default 12 - */ - columns: import_prop_types18.default.oneOfType([import_prop_types18.default.arrayOf(import_prop_types18.default.number), import_prop_types18.default.number, import_prop_types18.default.object]), - /** - * Defines the horizontal space between the type `item` components. - * It overrides the value of the `spacing` prop. - */ - columnSpacing: import_prop_types18.default.oneOfType([import_prop_types18.default.arrayOf(import_prop_types18.default.oneOfType([import_prop_types18.default.number, import_prop_types18.default.string])), import_prop_types18.default.number, import_prop_types18.default.object, import_prop_types18.default.string]), - /** - * If `true`, the component will have the flex *container* behavior. - * You should be wrapping *items* with a *container*. - * @default false - */ - container: import_prop_types18.default.bool, - /** - * Defines the `flex-direction` style property. - * It is applied for all screen sizes. - * @default 'row' - */ - direction: import_prop_types18.default.oneOfType([import_prop_types18.default.oneOf(["column-reverse", "column", "row-reverse", "row"]), import_prop_types18.default.arrayOf(import_prop_types18.default.oneOf(["column-reverse", "column", "row-reverse", "row"])), import_prop_types18.default.object]), - /** - * Defines the offset value for the type `item` components. - */ - offset: import_prop_types18.default.oneOfType([import_prop_types18.default.string, import_prop_types18.default.number, import_prop_types18.default.arrayOf(import_prop_types18.default.oneOfType([import_prop_types18.default.string, import_prop_types18.default.number])), import_prop_types18.default.object]), - /** - * Defines the vertical space between the type `item` components. - * It overrides the value of the `spacing` prop. - */ - rowSpacing: import_prop_types18.default.oneOfType([import_prop_types18.default.arrayOf(import_prop_types18.default.oneOfType([import_prop_types18.default.number, import_prop_types18.default.string])), import_prop_types18.default.number, import_prop_types18.default.object, import_prop_types18.default.string]), - /** - * Defines the size of the the type `item` components. - */ - size: import_prop_types18.default.oneOfType([import_prop_types18.default.string, import_prop_types18.default.bool, import_prop_types18.default.number, import_prop_types18.default.arrayOf(import_prop_types18.default.oneOfType([import_prop_types18.default.string, import_prop_types18.default.bool, import_prop_types18.default.number])), import_prop_types18.default.object]), - /** - * Defines the space between the type `item` components. - * It can only be used on a type `container` component. - * @default 0 - */ - spacing: import_prop_types18.default.oneOfType([import_prop_types18.default.arrayOf(import_prop_types18.default.oneOfType([import_prop_types18.default.number, import_prop_types18.default.string])), import_prop_types18.default.number, import_prop_types18.default.object, import_prop_types18.default.string]), - /** - * @ignore - */ - sx: import_prop_types18.default.oneOfType([import_prop_types18.default.arrayOf(import_prop_types18.default.oneOfType([import_prop_types18.default.func, import_prop_types18.default.object, import_prop_types18.default.bool])), import_prop_types18.default.func, import_prop_types18.default.object]), - /** - * @internal - * The level of the grid starts from `0` and increases when the grid nests - * inside another grid. Nesting is defined as a container Grid being a direct - * child of a container Grid. - * - * ```js - * // level 0 - * // level 1 - * // level 2 - * ``` - * - * Only consecutive grid is considered nesting. A grid container will start at - * `0` if there are non-Grid container element above it. - * - * ```js - * // level 0 - *
- * // level 0 - * ``` - * - * ```js - * // level 0 - * - * // level 0 - * ``` - */ - unstable_level: import_prop_types18.default.number, - /** - * Defines the `flex-wrap` style property. - * It's applied for all screen sizes. - * @default 'wrap' - */ - wrap: import_prop_types18.default.oneOf(["nowrap", "wrap-reverse", "wrap"]) -} : void 0; - -// node_modules/@mui/system/esm/Grid/gridClasses.js -var SPACINGS = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; -var DIRECTIONS = ["column-reverse", "column", "row-reverse", "row"]; -var WRAPS = ["nowrap", "wrap-reverse", "wrap"]; -var GRID_SIZES = ["auto", "grow", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; -var gridClasses = generateUtilityClasses("MuiGrid", [ - "root", - "container", - "item", - // spacings - ...SPACINGS.map((spacing2) => `spacing-xs-${spacing2}`), - // direction values - ...DIRECTIONS.map((direction) => `direction-xs-${direction}`), - // wrap values - ...WRAPS.map((wrap) => `wrap-xs-${wrap}`), - // grid sizes for all breakpoints - ...GRID_SIZES.map((size) => `grid-xs-${size}`), - ...GRID_SIZES.map((size) => `grid-sm-${size}`), - ...GRID_SIZES.map((size) => `grid-md-${size}`), - ...GRID_SIZES.map((size) => `grid-lg-${size}`), - ...GRID_SIZES.map((size) => `grid-xl-${size}`) -]); - -// node_modules/@mui/system/esm/Stack/Stack.js -var import_prop_types20 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/system/esm/Stack/createStack.js -var React37 = __toESM(require_react(), 1); -var import_prop_types19 = __toESM(require_prop_types(), 1); -var import_jsx_runtime13 = __toESM(require_jsx_runtime(), 1); -var defaultTheme3 = createTheme_default(); -var defaultCreateStyledComponent3 = styled_default("div", { - name: "MuiStack", - slot: "Root", - overridesResolver: (props, styles) => styles.root -}); -function useThemePropsDefault3(props) { - return useThemeProps({ - props, - name: "MuiStack", - defaultTheme: defaultTheme3 - }); -} -function joinChildren(children, separator) { - const childrenArray = React37.Children.toArray(children).filter(Boolean); - return childrenArray.reduce((output, child, index) => { - output.push(child); - if (index < childrenArray.length - 1) { - output.push(React37.cloneElement(separator, { - key: `separator-${index}` - })); - } - return output; - }, []); -} -var getSideFromDirection = (direction) => { - return { - row: "Left", - "row-reverse": "Right", - column: "Top", - "column-reverse": "Bottom" - }[direction]; -}; -var style3 = ({ - ownerState, - theme -}) => { - let styles = { - display: "flex", - flexDirection: "column", - ...handleBreakpoints({ - theme - }, resolveBreakpointValues({ - values: ownerState.direction, - breakpoints: theme.breakpoints.values - }), (propValue) => ({ - flexDirection: propValue - })) - }; - if (ownerState.spacing) { - const transformer = createUnarySpacing(theme); - const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => { - if (typeof ownerState.spacing === "object" && ownerState.spacing[breakpoint] != null || typeof ownerState.direction === "object" && ownerState.direction[breakpoint] != null) { - acc[breakpoint] = true; - } - return acc; - }, {}); - const directionValues = resolveBreakpointValues({ - values: ownerState.direction, - base - }); - const spacingValues = resolveBreakpointValues({ - values: ownerState.spacing, - base - }); - if (typeof directionValues === "object") { - Object.keys(directionValues).forEach((breakpoint, index, breakpoints) => { - const directionValue = directionValues[breakpoint]; - if (!directionValue) { - const previousDirectionValue = index > 0 ? directionValues[breakpoints[index - 1]] : "column"; - directionValues[breakpoint] = previousDirectionValue; - } - }); - } - const styleFromPropValue = (propValue, breakpoint) => { - if (ownerState.useFlexGap) { - return { - gap: getValue(transformer, propValue) - }; - } - return { - // The useFlexGap={false} implement relies on each child to give up control of the margin. - // We need to reset the margin to avoid double spacing. - "& > :not(style):not(style)": { - margin: 0 - }, - "& > :not(style) ~ :not(style)": { - [`margin${getSideFromDirection(breakpoint ? directionValues[breakpoint] : ownerState.direction)}`]: getValue(transformer, propValue) - } - }; - }; - styles = deepmerge(styles, handleBreakpoints({ - theme - }, spacingValues, styleFromPropValue)); - } - styles = mergeBreakpointsInOrder(theme.breakpoints, styles); - return styles; -}; -function createStack(options = {}) { - const { - // This will allow adding custom styled fn (for example for custom sx style function) - createStyledComponent = defaultCreateStyledComponent3, - useThemeProps: useThemeProps2 = useThemePropsDefault3, - componentName = "MuiStack" - } = options; - const useUtilityClasses3 = () => { - const slots = { - root: ["root"] - }; - return composeClasses(slots, (slot) => generateUtilityClass(componentName, slot), {}); - }; - const StackRoot = createStyledComponent(style3); - const Stack2 = React37.forwardRef(function Grid2(inProps, ref) { - const themeProps = useThemeProps2(inProps); - const props = extendSxProp(themeProps); - const { - component = "div", - direction = "column", - spacing: spacing2 = 0, - divider, - children, - className, - useFlexGap = false, - ...other - } = props; - const ownerState = { - direction, - spacing: spacing2, - useFlexGap - }; - const classes = useUtilityClasses3(); - return (0, import_jsx_runtime13.jsx)(StackRoot, { - as: component, - ownerState, - ref, - className: clsx_default(classes.root, className), - ...other, - children: divider ? joinChildren(children, divider) : children - }); - }); - true ? Stack2.propTypes = { - children: import_prop_types19.default.node, - direction: import_prop_types19.default.oneOfType([import_prop_types19.default.oneOf(["column-reverse", "column", "row-reverse", "row"]), import_prop_types19.default.arrayOf(import_prop_types19.default.oneOf(["column-reverse", "column", "row-reverse", "row"])), import_prop_types19.default.object]), - divider: import_prop_types19.default.node, - spacing: import_prop_types19.default.oneOfType([import_prop_types19.default.arrayOf(import_prop_types19.default.oneOfType([import_prop_types19.default.number, import_prop_types19.default.string])), import_prop_types19.default.number, import_prop_types19.default.object, import_prop_types19.default.string]), - sx: import_prop_types19.default.oneOfType([import_prop_types19.default.arrayOf(import_prop_types19.default.oneOfType([import_prop_types19.default.func, import_prop_types19.default.object, import_prop_types19.default.bool])), import_prop_types19.default.func, import_prop_types19.default.object]) - } : void 0; - return Stack2; -} - -// node_modules/@mui/system/esm/Stack/Stack.js -var Stack = createStack(); -true ? Stack.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * The content of the component. - */ - children: import_prop_types20.default.node, - /** - * The component used for the root node. - * Either a string to use a HTML element or a component. - */ - component: import_prop_types20.default.elementType, - /** - * Defines the `flex-direction` style property. - * It is applied for all screen sizes. - * @default 'column' - */ - direction: import_prop_types20.default.oneOfType([import_prop_types20.default.oneOf(["column-reverse", "column", "row-reverse", "row"]), import_prop_types20.default.arrayOf(import_prop_types20.default.oneOf(["column-reverse", "column", "row-reverse", "row"])), import_prop_types20.default.object]), - /** - * Add an element between each child. - */ - divider: import_prop_types20.default.node, - /** - * Defines the space between immediate children. - * @default 0 - */ - spacing: import_prop_types20.default.oneOfType([import_prop_types20.default.arrayOf(import_prop_types20.default.oneOfType([import_prop_types20.default.number, import_prop_types20.default.string])), import_prop_types20.default.number, import_prop_types20.default.object, import_prop_types20.default.string]), - /** - * The system prop, which allows defining system overrides as well as additional CSS styles. - */ - sx: import_prop_types20.default.oneOfType([import_prop_types20.default.arrayOf(import_prop_types20.default.oneOfType([import_prop_types20.default.func, import_prop_types20.default.object, import_prop_types20.default.bool])), import_prop_types20.default.func, import_prop_types20.default.object]), - /** - * If `true`, the CSS flexbox `gap` is used instead of applying `margin` to children. - * - * While CSS `gap` removes the [known limitations](https://mui.com/joy-ui/react-stack/#limitations), - * it is not fully supported in some browsers. We recommend checking https://caniuse.com/?search=flex%20gap before using this flag. - * - * To enable this flag globally, follow the theme's default props configuration. - * @default false - */ - useFlexGap: import_prop_types20.default.bool -} : void 0; - -// node_modules/@mui/system/esm/Stack/stackClasses.js -var stackClasses = generateUtilityClasses("MuiStack", ["root"]); - -// node_modules/@mui/material/esm/colors/common.js -var common = { - black: "#000", - white: "#fff" -}; -var common_default = common; - -// node_modules/@mui/material/esm/colors/grey.js -var grey = { - 50: "#fafafa", - 100: "#f5f5f5", - 200: "#eeeeee", - 300: "#e0e0e0", - 400: "#bdbdbd", - 500: "#9e9e9e", - 600: "#757575", - 700: "#616161", - 800: "#424242", - 900: "#212121", - A100: "#f5f5f5", - A200: "#eeeeee", - A400: "#bdbdbd", - A700: "#616161" -}; -var grey_default = grey; - -// node_modules/@mui/material/esm/colors/purple.js -var purple = { - 50: "#f3e5f5", - 100: "#e1bee7", - 200: "#ce93d8", - 300: "#ba68c8", - 400: "#ab47bc", - 500: "#9c27b0", - 600: "#8e24aa", - 700: "#7b1fa2", - 800: "#6a1b9a", - 900: "#4a148c", - A100: "#ea80fc", - A200: "#e040fb", - A400: "#d500f9", - A700: "#aa00ff" -}; -var purple_default = purple; - -// node_modules/@mui/material/esm/colors/red.js -var red = { - 50: "#ffebee", - 100: "#ffcdd2", - 200: "#ef9a9a", - 300: "#e57373", - 400: "#ef5350", - 500: "#f44336", - 600: "#e53935", - 700: "#d32f2f", - 800: "#c62828", - 900: "#b71c1c", - A100: "#ff8a80", - A200: "#ff5252", - A400: "#ff1744", - A700: "#d50000" -}; -var red_default = red; - -// node_modules/@mui/material/esm/colors/orange.js -var orange = { - 50: "#fff3e0", - 100: "#ffe0b2", - 200: "#ffcc80", - 300: "#ffb74d", - 400: "#ffa726", - 500: "#ff9800", - 600: "#fb8c00", - 700: "#f57c00", - 800: "#ef6c00", - 900: "#e65100", - A100: "#ffd180", - A200: "#ffab40", - A400: "#ff9100", - A700: "#ff6d00" -}; -var orange_default = orange; - -// node_modules/@mui/material/esm/colors/blue.js -var blue = { - 50: "#e3f2fd", - 100: "#bbdefb", - 200: "#90caf9", - 300: "#64b5f6", - 400: "#42a5f5", - 500: "#2196f3", - 600: "#1e88e5", - 700: "#1976d2", - 800: "#1565c0", - 900: "#0d47a1", - A100: "#82b1ff", - A200: "#448aff", - A400: "#2979ff", - A700: "#2962ff" -}; -var blue_default = blue; - -// node_modules/@mui/material/esm/colors/lightBlue.js -var lightBlue = { - 50: "#e1f5fe", - 100: "#b3e5fc", - 200: "#81d4fa", - 300: "#4fc3f7", - 400: "#29b6f6", - 500: "#03a9f4", - 600: "#039be5", - 700: "#0288d1", - 800: "#0277bd", - 900: "#01579b", - A100: "#80d8ff", - A200: "#40c4ff", - A400: "#00b0ff", - A700: "#0091ea" -}; -var lightBlue_default = lightBlue; - -// node_modules/@mui/material/esm/colors/green.js -var green = { - 50: "#e8f5e9", - 100: "#c8e6c9", - 200: "#a5d6a7", - 300: "#81c784", - 400: "#66bb6a", - 500: "#4caf50", - 600: "#43a047", - 700: "#388e3c", - 800: "#2e7d32", - 900: "#1b5e20", - A100: "#b9f6ca", - A200: "#69f0ae", - A400: "#00e676", - A700: "#00c853" -}; -var green_default = green; - -// node_modules/@mui/material/esm/styles/createPalette.js -function getLight() { - return { - // The colors used to style the text. - text: { - // The most important text. - primary: "rgba(0, 0, 0, 0.87)", - // Secondary text. - secondary: "rgba(0, 0, 0, 0.6)", - // Disabled text have even lower visual prominence. - disabled: "rgba(0, 0, 0, 0.38)" - }, - // The color used to divide different elements. - divider: "rgba(0, 0, 0, 0.12)", - // The background colors used to style the surfaces. - // Consistency between these values is important. - background: { - paper: common_default.white, - default: common_default.white - }, - // The colors used to style the action elements. - action: { - // The color of an active action like an icon button. - active: "rgba(0, 0, 0, 0.54)", - // The color of an hovered action. - hover: "rgba(0, 0, 0, 0.04)", - hoverOpacity: 0.04, - // The color of a selected action. - selected: "rgba(0, 0, 0, 0.08)", - selectedOpacity: 0.08, - // The color of a disabled action. - disabled: "rgba(0, 0, 0, 0.26)", - // The background color of a disabled action. - disabledBackground: "rgba(0, 0, 0, 0.12)", - disabledOpacity: 0.38, - focus: "rgba(0, 0, 0, 0.12)", - focusOpacity: 0.12, - activatedOpacity: 0.12 - } - }; -} -var light = getLight(); -function getDark() { - return { - text: { - primary: common_default.white, - secondary: "rgba(255, 255, 255, 0.7)", - disabled: "rgba(255, 255, 255, 0.5)", - icon: "rgba(255, 255, 255, 0.5)" - }, - divider: "rgba(255, 255, 255, 0.12)", - background: { - paper: "#121212", - default: "#121212" - }, - action: { - active: common_default.white, - hover: "rgba(255, 255, 255, 0.08)", - hoverOpacity: 0.08, - selected: "rgba(255, 255, 255, 0.16)", - selectedOpacity: 0.16, - disabled: "rgba(255, 255, 255, 0.3)", - disabledBackground: "rgba(255, 255, 255, 0.12)", - disabledOpacity: 0.38, - focus: "rgba(255, 255, 255, 0.12)", - focusOpacity: 0.12, - activatedOpacity: 0.24 - } - }; -} -var dark = getDark(); -function addLightOrDark(intent, direction, shade, tonalOffset) { - const tonalOffsetLight = tonalOffset.light || tonalOffset; - const tonalOffsetDark = tonalOffset.dark || tonalOffset * 1.5; - if (!intent[direction]) { - if (intent.hasOwnProperty(shade)) { - intent[direction] = intent[shade]; - } else if (direction === "light") { - intent.light = lighten(intent.main, tonalOffsetLight); - } else if (direction === "dark") { - intent.dark = darken(intent.main, tonalOffsetDark); - } - } -} -function getDefaultPrimary(mode = "light") { - if (mode === "dark") { - return { - main: blue_default[200], - light: blue_default[50], - dark: blue_default[400] - }; - } - return { - main: blue_default[700], - light: blue_default[400], - dark: blue_default[800] - }; -} -function getDefaultSecondary(mode = "light") { - if (mode === "dark") { - return { - main: purple_default[200], - light: purple_default[50], - dark: purple_default[400] - }; - } - return { - main: purple_default[500], - light: purple_default[300], - dark: purple_default[700] - }; -} -function getDefaultError(mode = "light") { - if (mode === "dark") { - return { - main: red_default[500], - light: red_default[300], - dark: red_default[700] - }; - } - return { - main: red_default[700], - light: red_default[400], - dark: red_default[800] - }; -} -function getDefaultInfo(mode = "light") { - if (mode === "dark") { - return { - main: lightBlue_default[400], - light: lightBlue_default[300], - dark: lightBlue_default[700] - }; - } - return { - main: lightBlue_default[700], - light: lightBlue_default[500], - dark: lightBlue_default[900] - }; -} -function getDefaultSuccess(mode = "light") { - if (mode === "dark") { - return { - main: green_default[400], - light: green_default[300], - dark: green_default[700] - }; - } - return { - main: green_default[800], - light: green_default[500], - dark: green_default[900] - }; -} -function getDefaultWarning(mode = "light") { - if (mode === "dark") { - return { - main: orange_default[400], - light: orange_default[300], - dark: orange_default[700] - }; - } - return { - main: "#ed6c02", - // closest to orange[800] that pass 3:1. - light: orange_default[500], - dark: orange_default[900] - }; -} -function createPalette(palette2) { - const { - mode = "light", - contrastThreshold = 3, - tonalOffset = 0.2, - ...other - } = palette2; - const primary = palette2.primary || getDefaultPrimary(mode); - const secondary = palette2.secondary || getDefaultSecondary(mode); - const error = palette2.error || getDefaultError(mode); - const info = palette2.info || getDefaultInfo(mode); - const success = palette2.success || getDefaultSuccess(mode); - const warning = palette2.warning || getDefaultWarning(mode); - function getContrastText(background) { - const contrastText = getContrastRatio(background, dark.text.primary) >= contrastThreshold ? dark.text.primary : light.text.primary; - if (true) { - const contrast = getContrastRatio(background, contrastText); - if (contrast < 3) { - console.error([`MUI: The contrast ratio of ${contrast}:1 for ${contrastText} on ${background}`, "falls below the WCAG recommended absolute minimum contrast ratio of 3:1.", "https://www.w3.org/TR/2008/REC-WCAG20-20081211/#visual-audio-contrast-contrast"].join("\n")); - } - } - return contrastText; - } - const augmentColor = ({ - color: color2, - name, - mainShade = 500, - lightShade = 300, - darkShade = 700 - }) => { - color2 = { - ...color2 - }; - if (!color2.main && color2[mainShade]) { - color2.main = color2[mainShade]; - } - if (!color2.hasOwnProperty("main")) { - throw new Error(true ? `MUI: The color${name ? ` (${name})` : ""} provided to augmentColor(color) is invalid. -The color object needs to have a \`main\` property or a \`${mainShade}\` property.` : formatMuiErrorMessage(11, name ? ` (${name})` : "", mainShade)); - } - if (typeof color2.main !== "string") { - throw new Error(true ? `MUI: The color${name ? ` (${name})` : ""} provided to augmentColor(color) is invalid. -\`color.main\` should be a string, but \`${JSON.stringify(color2.main)}\` was provided instead. - -Did you intend to use one of the following approaches? - -import { green } from "@mui/material/colors"; - -const theme1 = createTheme({ palette: { - primary: green, -} }); - -const theme2 = createTheme({ palette: { - primary: { main: green[500] }, -} });` : formatMuiErrorMessage(12, name ? ` (${name})` : "", JSON.stringify(color2.main))); - } - addLightOrDark(color2, "light", lightShade, tonalOffset); - addLightOrDark(color2, "dark", darkShade, tonalOffset); - if (!color2.contrastText) { - color2.contrastText = getContrastText(color2.main); - } - return color2; - }; - let modeHydrated; - if (mode === "light") { - modeHydrated = getLight(); - } else if (mode === "dark") { - modeHydrated = getDark(); - } - if (true) { - if (!modeHydrated) { - console.error(`MUI: The palette mode \`${mode}\` is not supported.`); - } - } - const paletteOutput = deepmerge({ - // A collection of common colors. - common: { - ...common_default - }, - // prevent mutable object. - // The palette mode, can be light or dark. - mode, - // The colors used to represent primary interface elements for a user. - primary: augmentColor({ - color: primary, - name: "primary" - }), - // The colors used to represent secondary interface elements for a user. - secondary: augmentColor({ - color: secondary, - name: "secondary", - mainShade: "A400", - lightShade: "A200", - darkShade: "A700" - }), - // The colors used to represent interface elements that the user should be made aware of. - error: augmentColor({ - color: error, - name: "error" - }), - // The colors used to represent potentially dangerous actions or important messages. - warning: augmentColor({ - color: warning, - name: "warning" - }), - // The colors used to present information to the user that is neutral and not necessarily important. - info: augmentColor({ - color: info, - name: "info" - }), - // The colors used to indicate the successful completion of an action that user triggered. - success: augmentColor({ - color: success, - name: "success" - }), - // The grey colors. - grey: grey_default, - // Used by `getContrastText()` to maximize the contrast between - // the background and the text. - contrastThreshold, - // Takes a background color and returns the text color that maximizes the contrast. - getContrastText, - // Generate a rich color object. - augmentColor, - // Used by the functions below to shift a color's luminance by approximately - // two indexes within its tonal palette. - // E.g., shift from Red 500 to Red 300 or Red 700. - tonalOffset, - // The light and dark mode object. - ...modeHydrated - }, other); - return paletteOutput; -} - -// node_modules/@mui/system/esm/cssVars/prepareTypographyVars.js -function prepareTypographyVars(typography2) { - const vars = {}; - const entries = Object.entries(typography2); - entries.forEach((entry) => { - const [key, value] = entry; - if (typeof value === "object") { - vars[key] = `${value.fontStyle ? `${value.fontStyle} ` : ""}${value.fontVariant ? `${value.fontVariant} ` : ""}${value.fontWeight ? `${value.fontWeight} ` : ""}${value.fontStretch ? `${value.fontStretch} ` : ""}${value.fontSize || ""}${value.lineHeight ? `/${value.lineHeight} ` : ""}${value.fontFamily || ""}`; - } - }); - return vars; -} - -// node_modules/@mui/material/esm/styles/createMixins.js -function createMixins(breakpoints, mixins) { - return { - toolbar: { - minHeight: 56, - [breakpoints.up("xs")]: { - "@media (orientation: landscape)": { - minHeight: 48 - } - }, - [breakpoints.up("sm")]: { - minHeight: 64 - } - }, - ...mixins - }; -} - -// node_modules/@mui/material/esm/styles/createTypography.js -function round(value) { - return Math.round(value * 1e5) / 1e5; -} -var caseAllCaps = { - textTransform: "uppercase" -}; -var defaultFontFamily = '"Roboto", "Helvetica", "Arial", sans-serif'; -function createTypography(palette2, typography2) { - const { - fontFamily: fontFamily2 = defaultFontFamily, - // The default font size of the Material Specification. - fontSize: fontSize2 = 14, - // px - fontWeightLight = 300, - fontWeightRegular = 400, - fontWeightMedium = 500, - fontWeightBold = 700, - // Tell MUI what's the font-size on the html element. - // 16px is the default font-size used by browsers. - htmlFontSize = 16, - // Apply the CSS properties to all the variants. - allVariants, - pxToRem: pxToRem2, - ...other - } = typeof typography2 === "function" ? typography2(palette2) : typography2; - if (true) { - if (typeof fontSize2 !== "number") { - console.error("MUI: `fontSize` is required to be a number."); - } - if (typeof htmlFontSize !== "number") { - console.error("MUI: `htmlFontSize` is required to be a number."); - } - } - const coef = fontSize2 / 14; - const pxToRem = pxToRem2 || ((size) => `${size / htmlFontSize * coef}rem`); - const buildVariant = (fontWeight2, size, lineHeight2, letterSpacing2, casing) => ({ - fontFamily: fontFamily2, - fontWeight: fontWeight2, - fontSize: pxToRem(size), - // Unitless following https://meyerweb.com/eric/thoughts/2006/02/08/unitless-line-heights/ - lineHeight: lineHeight2, - // The letter spacing was designed for the Roboto font-family. Using the same letter-spacing - // across font-families can cause issues with the kerning. - ...fontFamily2 === defaultFontFamily ? { - letterSpacing: `${round(letterSpacing2 / size)}em` - } : {}, - ...casing, - ...allVariants - }); - const variants = { - h1: buildVariant(fontWeightLight, 96, 1.167, -1.5), - h2: buildVariant(fontWeightLight, 60, 1.2, -0.5), - h3: buildVariant(fontWeightRegular, 48, 1.167, 0), - h4: buildVariant(fontWeightRegular, 34, 1.235, 0.25), - h5: buildVariant(fontWeightRegular, 24, 1.334, 0), - h6: buildVariant(fontWeightMedium, 20, 1.6, 0.15), - subtitle1: buildVariant(fontWeightRegular, 16, 1.75, 0.15), - subtitle2: buildVariant(fontWeightMedium, 14, 1.57, 0.1), - body1: buildVariant(fontWeightRegular, 16, 1.5, 0.15), - body2: buildVariant(fontWeightRegular, 14, 1.43, 0.15), - button: buildVariant(fontWeightMedium, 14, 1.75, 0.4, caseAllCaps), - caption: buildVariant(fontWeightRegular, 12, 1.66, 0.4), - overline: buildVariant(fontWeightRegular, 12, 2.66, 1, caseAllCaps), - // TODO v6: Remove handling of 'inherit' variant from the theme as it is already handled in Material UI's Typography component. Also, remember to remove the associated types. - inherit: { - fontFamily: "inherit", - fontWeight: "inherit", - fontSize: "inherit", - lineHeight: "inherit", - letterSpacing: "inherit" - } - }; - return deepmerge({ - htmlFontSize, - pxToRem, - fontFamily: fontFamily2, - fontSize: fontSize2, - fontWeightLight, - fontWeightRegular, - fontWeightMedium, - fontWeightBold, - ...variants - }, other, { - clone: false - // No need to clone deep - }); -} - -// node_modules/@mui/material/esm/styles/shadows.js -var shadowKeyUmbraOpacity = 0.2; -var shadowKeyPenumbraOpacity = 0.14; -var shadowAmbientShadowOpacity = 0.12; -function createShadow(...px) { - return [`${px[0]}px ${px[1]}px ${px[2]}px ${px[3]}px rgba(0,0,0,${shadowKeyUmbraOpacity})`, `${px[4]}px ${px[5]}px ${px[6]}px ${px[7]}px rgba(0,0,0,${shadowKeyPenumbraOpacity})`, `${px[8]}px ${px[9]}px ${px[10]}px ${px[11]}px rgba(0,0,0,${shadowAmbientShadowOpacity})`].join(","); -} -var shadows = ["none", createShadow(0, 2, 1, -1, 0, 1, 1, 0, 0, 1, 3, 0), createShadow(0, 3, 1, -2, 0, 2, 2, 0, 0, 1, 5, 0), createShadow(0, 3, 3, -2, 0, 3, 4, 0, 0, 1, 8, 0), createShadow(0, 2, 4, -1, 0, 4, 5, 0, 0, 1, 10, 0), createShadow(0, 3, 5, -1, 0, 5, 8, 0, 0, 1, 14, 0), createShadow(0, 3, 5, -1, 0, 6, 10, 0, 0, 1, 18, 0), createShadow(0, 4, 5, -2, 0, 7, 10, 1, 0, 2, 16, 1), createShadow(0, 5, 5, -3, 0, 8, 10, 1, 0, 3, 14, 2), createShadow(0, 5, 6, -3, 0, 9, 12, 1, 0, 3, 16, 2), createShadow(0, 6, 6, -3, 0, 10, 14, 1, 0, 4, 18, 3), createShadow(0, 6, 7, -4, 0, 11, 15, 1, 0, 4, 20, 3), createShadow(0, 7, 8, -4, 0, 12, 17, 2, 0, 5, 22, 4), createShadow(0, 7, 8, -4, 0, 13, 19, 2, 0, 5, 24, 4), createShadow(0, 7, 9, -4, 0, 14, 21, 2, 0, 5, 26, 4), createShadow(0, 8, 9, -5, 0, 15, 22, 2, 0, 6, 28, 5), createShadow(0, 8, 10, -5, 0, 16, 24, 2, 0, 6, 30, 5), createShadow(0, 8, 11, -5, 0, 17, 26, 2, 0, 6, 32, 5), createShadow(0, 9, 11, -5, 0, 18, 28, 2, 0, 7, 34, 6), createShadow(0, 9, 12, -6, 0, 19, 29, 2, 0, 7, 36, 6), createShadow(0, 10, 13, -6, 0, 20, 31, 3, 0, 8, 38, 7), createShadow(0, 10, 13, -6, 0, 21, 33, 3, 0, 8, 40, 7), createShadow(0, 10, 14, -6, 0, 22, 35, 3, 0, 8, 42, 7), createShadow(0, 11, 14, -7, 0, 23, 36, 3, 0, 9, 44, 8), createShadow(0, 11, 15, -7, 0, 24, 38, 3, 0, 9, 46, 8)]; -var shadows_default2 = shadows; - -// node_modules/@mui/material/esm/styles/createTransitions.js -var easing = { - // This is the most common easing curve. - easeInOut: "cubic-bezier(0.4, 0, 0.2, 1)", - // Objects enter the screen at full velocity from off-screen and - // slowly decelerate to a resting point. - easeOut: "cubic-bezier(0.0, 0, 0.2, 1)", - // Objects leave the screen at full velocity. They do not decelerate when off-screen. - easeIn: "cubic-bezier(0.4, 0, 1, 1)", - // The sharp curve is used by objects that may return to the screen at any time. - sharp: "cubic-bezier(0.4, 0, 0.6, 1)" -}; -var duration = { - shortest: 150, - shorter: 200, - short: 250, - // most basic recommended timing - standard: 300, - // this is to be used in complex animations - complex: 375, - // recommended when something is entering screen - enteringScreen: 225, - // recommended when something is leaving screen - leavingScreen: 195 -}; -function formatMs(milliseconds) { - return `${Math.round(milliseconds)}ms`; -} -function getAutoHeightDuration(height2) { - if (!height2) { - return 0; - } - const constant = height2 / 36; - return Math.min(Math.round((4 + 15 * constant ** 0.25 + constant / 5) * 10), 3e3); -} -function createTransitions(inputTransitions) { - const mergedEasing = { - ...easing, - ...inputTransitions.easing - }; - const mergedDuration = { - ...duration, - ...inputTransitions.duration - }; - const create = (props = ["all"], options = {}) => { - const { - duration: durationOption = mergedDuration.standard, - easing: easingOption = mergedEasing.easeInOut, - delay = 0, - ...other - } = options; - if (true) { - const isString = (value) => typeof value === "string"; - const isNumber = (value) => !Number.isNaN(parseFloat(value)); - if (!isString(props) && !Array.isArray(props)) { - console.error('MUI: Argument "props" must be a string or Array.'); - } - if (!isNumber(durationOption) && !isString(durationOption)) { - console.error(`MUI: Argument "duration" must be a number or a string but found ${durationOption}.`); - } - if (!isString(easingOption)) { - console.error('MUI: Argument "easing" must be a string.'); - } - if (!isNumber(delay) && !isString(delay)) { - console.error('MUI: Argument "delay" must be a number or a string.'); - } - if (typeof options !== "object") { - console.error(["MUI: Secong argument of transition.create must be an object.", "Arguments should be either `create('prop1', options)` or `create(['prop1', 'prop2'], options)`"].join("\n")); - } - if (Object.keys(other).length !== 0) { - console.error(`MUI: Unrecognized argument(s) [${Object.keys(other).join(",")}].`); - } - } - return (Array.isArray(props) ? props : [props]).map((animatedProp) => `${animatedProp} ${typeof durationOption === "string" ? durationOption : formatMs(durationOption)} ${easingOption} ${typeof delay === "string" ? delay : formatMs(delay)}`).join(","); - }; - return { - getAutoHeightDuration, - create, - ...inputTransitions, - easing: mergedEasing, - duration: mergedDuration - }; -} - -// node_modules/@mui/material/esm/styles/zIndex.js -var zIndex2 = { - mobileStepper: 1e3, - fab: 1050, - speedDial: 1050, - appBar: 1100, - drawer: 1200, - modal: 1300, - snackbar: 1400, - tooltip: 1500 -}; -var zIndex_default = zIndex2; - -// node_modules/@mui/material/esm/styles/stringifyTheme.js -function isSerializable(val) { - return isPlainObject(val) || typeof val === "undefined" || typeof val === "string" || typeof val === "boolean" || typeof val === "number" || Array.isArray(val); -} -function stringifyTheme(baseTheme = {}) { - const serializableTheme = { - ...baseTheme - }; - function serializeTheme(object) { - const array = Object.entries(object); - for (let index = 0; index < array.length; index++) { - const [key, value] = array[index]; - if (!isSerializable(value) || key.startsWith("unstable_")) { - delete object[key]; - } else if (isPlainObject(value)) { - object[key] = { - ...value - }; - serializeTheme(object[key]); - } - } - } - serializeTheme(serializableTheme); - return `import { unstable_createBreakpoints as createBreakpoints, createTransitions } from '@mui/material/styles'; - -const theme = ${JSON.stringify(serializableTheme, null, 2)}; - -theme.breakpoints = createBreakpoints(theme.breakpoints || {}); -theme.transitions = createTransitions(theme.transitions || {}); - -export default theme;`; -} - -// node_modules/@mui/material/esm/styles/createThemeNoVars.js -function createThemeNoVars(options = {}, ...args) { - const { - breakpoints: breakpointsInput, - mixins: mixinsInput = {}, - spacing: spacingInput, - palette: paletteInput = {}, - transitions: transitionsInput = {}, - typography: typographyInput = {}, - shape: shapeInput, - ...other - } = options; - if (options.vars && // The error should throw only for the root theme creation because user is not allowed to use a custom node `vars`. - // `generateThemeVars` is the closest identifier for checking that the `options` is a result of `createTheme` with CSS variables so that user can create new theme for nested ThemeProvider. - options.generateThemeVars === void 0) { - throw new Error(true ? "MUI: `vars` is a private field used for CSS variables support.\nPlease use another name or follow the [docs](https://mui.com/material-ui/customization/css-theme-variables/usage/) to enable the feature." : formatMuiErrorMessage(20)); - } - const palette2 = createPalette(paletteInput); - const systemTheme = createTheme_default(options); - let muiTheme = deepmerge(systemTheme, { - mixins: createMixins(systemTheme.breakpoints, mixinsInput), - palette: palette2, - // Don't use [...shadows] until you've verified its transpiled code is not invoking the iterator protocol. - shadows: shadows_default2.slice(), - typography: createTypography(palette2, typographyInput), - transitions: createTransitions(transitionsInput), - zIndex: { - ...zIndex_default - } - }); - muiTheme = deepmerge(muiTheme, other); - muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme); - if (true) { - const stateClasses = ["active", "checked", "completed", "disabled", "error", "expanded", "focused", "focusVisible", "required", "selected"]; - const traverse = (node2, component) => { - let key; - for (key in node2) { - const child = node2[key]; - if (stateClasses.includes(key) && Object.keys(child).length > 0) { - if (true) { - const stateClass = generateUtilityClass("", key); - console.error([`MUI: The \`${component}\` component increases the CSS specificity of the \`${key}\` internal state.`, "You can not override it like this: ", JSON.stringify(node2, null, 2), "", `Instead, you need to use the '&.${stateClass}' syntax:`, JSON.stringify({ - root: { - [`&.${stateClass}`]: child - } - }, null, 2), "", "https://mui.com/r/state-classes-guide"].join("\n")); - } - node2[key] = {}; - } - } - }; - Object.keys(muiTheme.components).forEach((component) => { - const styleOverrides = muiTheme.components[component].styleOverrides; - if (styleOverrides && component.startsWith("Mui")) { - traverse(styleOverrides, component); - } - }); - } - muiTheme.unstable_sxConfig = { - ...defaultSxConfig_default, - ...other == null ? void 0 : other.unstable_sxConfig - }; - muiTheme.unstable_sx = function sx(props) { - return styleFunctionSx_default({ - sx: props, - theme: this - }); - }; - muiTheme.toRuntimeSource = stringifyTheme; - return muiTheme; -} -var createThemeNoVars_default = createThemeNoVars; - -// node_modules/@mui/material/esm/styles/getOverlayAlpha.js -function getOverlayAlpha(elevation) { - let alphaValue; - if (elevation < 1) { - alphaValue = 5.11916 * elevation ** 2; - } else { - alphaValue = 4.5 * Math.log(elevation + 1) + 2; - } - return Math.round(alphaValue * 10) / 1e3; -} - -// node_modules/@mui/material/esm/styles/createColorScheme.js -var defaultDarkOverlays = [...Array(25)].map((_, index) => { - if (index === 0) { - return "none"; - } - const overlay = getOverlayAlpha(index); - return `linear-gradient(rgba(255 255 255 / ${overlay}), rgba(255 255 255 / ${overlay}))`; -}); -function getOpacity(mode) { - return { - inputPlaceholder: mode === "dark" ? 0.5 : 0.42, - inputUnderline: mode === "dark" ? 0.7 : 0.42, - switchTrackDisabled: mode === "dark" ? 0.2 : 0.12, - switchTrack: mode === "dark" ? 0.3 : 0.38 - }; -} -function getOverlays(mode) { - return mode === "dark" ? defaultDarkOverlays : []; -} -function createColorScheme(options) { - const { - palette: paletteInput = { - mode: "light" - }, - // need to cast to avoid module augmentation test - opacity, - overlays, - ...rest - } = options; - const palette2 = createPalette(paletteInput); - return { - palette: palette2, - opacity: { - ...getOpacity(palette2.mode), - ...opacity - }, - overlays: overlays || getOverlays(palette2.mode), - ...rest - }; -} - -// node_modules/@mui/material/esm/styles/shouldSkipGeneratingVar.js -function shouldSkipGeneratingVar(keys) { - var _a; - return !!keys[0].match(/(cssVarPrefix|colorSchemeSelector|rootSelector|typography|mixins|breakpoints|direction|transitions)/) || !!keys[0].match(/sxConfig$/) || // ends with sxConfig - keys[0] === "palette" && !!((_a = keys[1]) == null ? void 0 : _a.match(/(mode|contrastThreshold|tonalOffset)/)); -} - -// node_modules/@mui/material/esm/styles/excludeVariablesFromRoot.js -var excludeVariablesFromRoot = (cssVarPrefix) => [...[...Array(25)].map((_, index) => `--${cssVarPrefix ? `${cssVarPrefix}-` : ""}overlays-${index}`), `--${cssVarPrefix ? `${cssVarPrefix}-` : ""}palette-AppBar-darkBg`, `--${cssVarPrefix ? `${cssVarPrefix}-` : ""}palette-AppBar-darkColor`]; -var excludeVariablesFromRoot_default = excludeVariablesFromRoot; - -// node_modules/@mui/material/esm/styles/createGetSelector.js -var createGetSelector_default = (theme) => (colorScheme, css2) => { - const root = theme.rootSelector || ":root"; - const selector = theme.colorSchemeSelector; - let rule = selector; - if (selector === "class") { - rule = ".%s"; - } - if (selector === "data") { - rule = "[data-%s]"; - } - if ((selector == null ? void 0 : selector.startsWith("data-")) && !selector.includes("%s")) { - rule = `[${selector}="%s"]`; - } - if (theme.defaultColorScheme === colorScheme) { - if (colorScheme === "dark") { - const excludedVariables = {}; - excludeVariablesFromRoot_default(theme.cssVarPrefix).forEach((cssVar) => { - excludedVariables[cssVar] = css2[cssVar]; - delete css2[cssVar]; - }); - if (rule === "media") { - return { - [root]: css2, - [`@media (prefers-color-scheme: dark)`]: { - [root]: excludedVariables - } - }; - } - if (rule) { - return { - [rule.replace("%s", colorScheme)]: excludedVariables, - [`${root}, ${rule.replace("%s", colorScheme)}`]: css2 - }; - } - return { - [root]: { - ...css2, - ...excludedVariables - } - }; - } - if (rule && rule !== "media") { - return `${root}, ${rule.replace("%s", String(colorScheme))}`; - } - } else if (colorScheme) { - if (rule === "media") { - return { - [`@media (prefers-color-scheme: ${String(colorScheme)})`]: { - [root]: css2 - } - }; - } - if (rule) { - return rule.replace("%s", String(colorScheme)); - } - } - return root; -}; - -// node_modules/@mui/material/esm/styles/createThemeWithVars.js -function assignNode(obj, keys) { - keys.forEach((k) => { - if (!obj[k]) { - obj[k] = {}; - } - }); -} -function setColor(obj, key, defaultValue) { - if (!obj[key] && defaultValue) { - obj[key] = defaultValue; - } -} -function toRgb(color2) { - if (typeof color2 !== "string" || !color2.startsWith("hsl")) { - return color2; - } - return hslToRgb(color2); -} -function setColorChannel(obj, key) { - if (!(`${key}Channel` in obj)) { - obj[`${key}Channel`] = private_safeColorChannel(toRgb(obj[key]), `MUI: Can't create \`palette.${key}Channel\` because \`palette.${key}\` is not one of these formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color(). -To suppress this warning, you need to explicitly provide the \`palette.${key}Channel\` as a string (in rgb format, for example "12 12 12") or undefined if you want to remove the channel token.`); - } -} -function getSpacingVal(spacingInput) { - if (typeof spacingInput === "number") { - return `${spacingInput}px`; - } - if (typeof spacingInput === "string" || typeof spacingInput === "function" || Array.isArray(spacingInput)) { - return spacingInput; - } - return "8px"; -} -var silent = (fn) => { - try { - return fn(); - } catch (error) { - } - return void 0; -}; -var createGetCssVar2 = (cssVarPrefix = "mui") => createGetCssVar(cssVarPrefix); -function attachColorScheme(colorSchemes, scheme, restTheme, colorScheme) { - if (!scheme) { - return void 0; - } - scheme = scheme === true ? {} : scheme; - const mode = colorScheme === "dark" ? "dark" : "light"; - if (!restTheme) { - colorSchemes[colorScheme] = createColorScheme({ - ...scheme, - palette: { - mode, - ...scheme == null ? void 0 : scheme.palette - } - }); - return void 0; - } - const { - palette: palette2, - ...muiTheme - } = createThemeNoVars_default({ - ...restTheme, - palette: { - mode, - ...scheme == null ? void 0 : scheme.palette - } - }); - colorSchemes[colorScheme] = { - ...scheme, - palette: palette2, - opacity: { - ...getOpacity(mode), - ...scheme == null ? void 0 : scheme.opacity - }, - overlays: (scheme == null ? void 0 : scheme.overlays) || getOverlays(mode) - }; - return muiTheme; -} -function createThemeWithVars(options = {}, ...args) { - const { - colorSchemes: colorSchemesInput = { - light: true - }, - defaultColorScheme: defaultColorSchemeInput, - disableCssColorScheme = false, - cssVarPrefix = "mui", - shouldSkipGeneratingVar: shouldSkipGeneratingVar2 = shouldSkipGeneratingVar, - colorSchemeSelector: selector = colorSchemesInput.light && colorSchemesInput.dark ? "media" : void 0, - rootSelector = ":root", - ...input - } = options; - const firstColorScheme = Object.keys(colorSchemesInput)[0]; - const defaultColorScheme = defaultColorSchemeInput || (colorSchemesInput.light && firstColorScheme !== "light" ? "light" : firstColorScheme); - const getCssVar = createGetCssVar2(cssVarPrefix); - const { - [defaultColorScheme]: defaultSchemeInput, - light: builtInLight, - dark: builtInDark, - ...customColorSchemes - } = colorSchemesInput; - const colorSchemes = { - ...customColorSchemes - }; - let defaultScheme = defaultSchemeInput; - if (defaultColorScheme === "dark" && !("dark" in colorSchemesInput) || defaultColorScheme === "light" && !("light" in colorSchemesInput)) { - defaultScheme = true; - } - if (!defaultScheme) { - throw new Error(true ? `MUI: The \`colorSchemes.${defaultColorScheme}\` option is either missing or invalid.` : formatMuiErrorMessage(21, defaultColorScheme)); - } - const muiTheme = attachColorScheme(colorSchemes, defaultScheme, input, defaultColorScheme); - if (builtInLight && !colorSchemes.light) { - attachColorScheme(colorSchemes, builtInLight, void 0, "light"); - } - if (builtInDark && !colorSchemes.dark) { - attachColorScheme(colorSchemes, builtInDark, void 0, "dark"); - } - let theme = { - defaultColorScheme, - ...muiTheme, - cssVarPrefix, - colorSchemeSelector: selector, - rootSelector, - getCssVar, - colorSchemes, - font: { - ...prepareTypographyVars(muiTheme.typography), - ...muiTheme.font - }, - spacing: getSpacingVal(input.spacing) - }; - Object.keys(theme.colorSchemes).forEach((key) => { - const palette2 = theme.colorSchemes[key].palette; - const setCssVarColor = (cssVar) => { - const tokens = cssVar.split("-"); - const color2 = tokens[1]; - const colorToken = tokens[2]; - return getCssVar(cssVar, palette2[color2][colorToken]); - }; - if (palette2.mode === "light") { - setColor(palette2.common, "background", "#fff"); - setColor(palette2.common, "onBackground", "#000"); - } - if (palette2.mode === "dark") { - setColor(palette2.common, "background", "#000"); - setColor(palette2.common, "onBackground", "#fff"); - } - assignNode(palette2, ["Alert", "AppBar", "Avatar", "Button", "Chip", "FilledInput", "LinearProgress", "Skeleton", "Slider", "SnackbarContent", "SpeedDialAction", "StepConnector", "StepContent", "Switch", "TableCell", "Tooltip"]); - if (palette2.mode === "light") { - setColor(palette2.Alert, "errorColor", private_safeDarken(palette2.error.light, 0.6)); - setColor(palette2.Alert, "infoColor", private_safeDarken(palette2.info.light, 0.6)); - setColor(palette2.Alert, "successColor", private_safeDarken(palette2.success.light, 0.6)); - setColor(palette2.Alert, "warningColor", private_safeDarken(palette2.warning.light, 0.6)); - setColor(palette2.Alert, "errorFilledBg", setCssVarColor("palette-error-main")); - setColor(palette2.Alert, "infoFilledBg", setCssVarColor("palette-info-main")); - setColor(palette2.Alert, "successFilledBg", setCssVarColor("palette-success-main")); - setColor(palette2.Alert, "warningFilledBg", setCssVarColor("palette-warning-main")); - setColor(palette2.Alert, "errorFilledColor", silent(() => palette2.getContrastText(palette2.error.main))); - setColor(palette2.Alert, "infoFilledColor", silent(() => palette2.getContrastText(palette2.info.main))); - setColor(palette2.Alert, "successFilledColor", silent(() => palette2.getContrastText(palette2.success.main))); - setColor(palette2.Alert, "warningFilledColor", silent(() => palette2.getContrastText(palette2.warning.main))); - setColor(palette2.Alert, "errorStandardBg", private_safeLighten(palette2.error.light, 0.9)); - setColor(palette2.Alert, "infoStandardBg", private_safeLighten(palette2.info.light, 0.9)); - setColor(palette2.Alert, "successStandardBg", private_safeLighten(palette2.success.light, 0.9)); - setColor(palette2.Alert, "warningStandardBg", private_safeLighten(palette2.warning.light, 0.9)); - setColor(palette2.Alert, "errorIconColor", setCssVarColor("palette-error-main")); - setColor(palette2.Alert, "infoIconColor", setCssVarColor("palette-info-main")); - setColor(palette2.Alert, "successIconColor", setCssVarColor("palette-success-main")); - setColor(palette2.Alert, "warningIconColor", setCssVarColor("palette-warning-main")); - setColor(palette2.AppBar, "defaultBg", setCssVarColor("palette-grey-100")); - setColor(palette2.Avatar, "defaultBg", setCssVarColor("palette-grey-400")); - setColor(palette2.Button, "inheritContainedBg", setCssVarColor("palette-grey-300")); - setColor(palette2.Button, "inheritContainedHoverBg", setCssVarColor("palette-grey-A100")); - setColor(palette2.Chip, "defaultBorder", setCssVarColor("palette-grey-400")); - setColor(palette2.Chip, "defaultAvatarColor", setCssVarColor("palette-grey-700")); - setColor(palette2.Chip, "defaultIconColor", setCssVarColor("palette-grey-700")); - setColor(palette2.FilledInput, "bg", "rgba(0, 0, 0, 0.06)"); - setColor(palette2.FilledInput, "hoverBg", "rgba(0, 0, 0, 0.09)"); - setColor(palette2.FilledInput, "disabledBg", "rgba(0, 0, 0, 0.12)"); - setColor(palette2.LinearProgress, "primaryBg", private_safeLighten(palette2.primary.main, 0.62)); - setColor(palette2.LinearProgress, "secondaryBg", private_safeLighten(palette2.secondary.main, 0.62)); - setColor(palette2.LinearProgress, "errorBg", private_safeLighten(palette2.error.main, 0.62)); - setColor(palette2.LinearProgress, "infoBg", private_safeLighten(palette2.info.main, 0.62)); - setColor(palette2.LinearProgress, "successBg", private_safeLighten(palette2.success.main, 0.62)); - setColor(palette2.LinearProgress, "warningBg", private_safeLighten(palette2.warning.main, 0.62)); - setColor(palette2.Skeleton, "bg", `rgba(${setCssVarColor("palette-text-primaryChannel")} / 0.11)`); - setColor(palette2.Slider, "primaryTrack", private_safeLighten(palette2.primary.main, 0.62)); - setColor(palette2.Slider, "secondaryTrack", private_safeLighten(palette2.secondary.main, 0.62)); - setColor(palette2.Slider, "errorTrack", private_safeLighten(palette2.error.main, 0.62)); - setColor(palette2.Slider, "infoTrack", private_safeLighten(palette2.info.main, 0.62)); - setColor(palette2.Slider, "successTrack", private_safeLighten(palette2.success.main, 0.62)); - setColor(palette2.Slider, "warningTrack", private_safeLighten(palette2.warning.main, 0.62)); - const snackbarContentBackground = private_safeEmphasize(palette2.background.default, 0.8); - setColor(palette2.SnackbarContent, "bg", snackbarContentBackground); - setColor(palette2.SnackbarContent, "color", silent(() => palette2.getContrastText(snackbarContentBackground))); - setColor(palette2.SpeedDialAction, "fabHoverBg", private_safeEmphasize(palette2.background.paper, 0.15)); - setColor(palette2.StepConnector, "border", setCssVarColor("palette-grey-400")); - setColor(palette2.StepContent, "border", setCssVarColor("palette-grey-400")); - setColor(palette2.Switch, "defaultColor", setCssVarColor("palette-common-white")); - setColor(palette2.Switch, "defaultDisabledColor", setCssVarColor("palette-grey-100")); - setColor(palette2.Switch, "primaryDisabledColor", private_safeLighten(palette2.primary.main, 0.62)); - setColor(palette2.Switch, "secondaryDisabledColor", private_safeLighten(palette2.secondary.main, 0.62)); - setColor(palette2.Switch, "errorDisabledColor", private_safeLighten(palette2.error.main, 0.62)); - setColor(palette2.Switch, "infoDisabledColor", private_safeLighten(palette2.info.main, 0.62)); - setColor(palette2.Switch, "successDisabledColor", private_safeLighten(palette2.success.main, 0.62)); - setColor(palette2.Switch, "warningDisabledColor", private_safeLighten(palette2.warning.main, 0.62)); - setColor(palette2.TableCell, "border", private_safeLighten(private_safeAlpha(palette2.divider, 1), 0.88)); - setColor(palette2.Tooltip, "bg", private_safeAlpha(palette2.grey[700], 0.92)); - } - if (palette2.mode === "dark") { - setColor(palette2.Alert, "errorColor", private_safeLighten(palette2.error.light, 0.6)); - setColor(palette2.Alert, "infoColor", private_safeLighten(palette2.info.light, 0.6)); - setColor(palette2.Alert, "successColor", private_safeLighten(palette2.success.light, 0.6)); - setColor(palette2.Alert, "warningColor", private_safeLighten(palette2.warning.light, 0.6)); - setColor(palette2.Alert, "errorFilledBg", setCssVarColor("palette-error-dark")); - setColor(palette2.Alert, "infoFilledBg", setCssVarColor("palette-info-dark")); - setColor(palette2.Alert, "successFilledBg", setCssVarColor("palette-success-dark")); - setColor(palette2.Alert, "warningFilledBg", setCssVarColor("palette-warning-dark")); - setColor(palette2.Alert, "errorFilledColor", silent(() => palette2.getContrastText(palette2.error.dark))); - setColor(palette2.Alert, "infoFilledColor", silent(() => palette2.getContrastText(palette2.info.dark))); - setColor(palette2.Alert, "successFilledColor", silent(() => palette2.getContrastText(palette2.success.dark))); - setColor(palette2.Alert, "warningFilledColor", silent(() => palette2.getContrastText(palette2.warning.dark))); - setColor(palette2.Alert, "errorStandardBg", private_safeDarken(palette2.error.light, 0.9)); - setColor(palette2.Alert, "infoStandardBg", private_safeDarken(palette2.info.light, 0.9)); - setColor(palette2.Alert, "successStandardBg", private_safeDarken(palette2.success.light, 0.9)); - setColor(palette2.Alert, "warningStandardBg", private_safeDarken(palette2.warning.light, 0.9)); - setColor(palette2.Alert, "errorIconColor", setCssVarColor("palette-error-main")); - setColor(palette2.Alert, "infoIconColor", setCssVarColor("palette-info-main")); - setColor(palette2.Alert, "successIconColor", setCssVarColor("palette-success-main")); - setColor(palette2.Alert, "warningIconColor", setCssVarColor("palette-warning-main")); - setColor(palette2.AppBar, "defaultBg", setCssVarColor("palette-grey-900")); - setColor(palette2.AppBar, "darkBg", setCssVarColor("palette-background-paper")); - setColor(palette2.AppBar, "darkColor", setCssVarColor("palette-text-primary")); - setColor(palette2.Avatar, "defaultBg", setCssVarColor("palette-grey-600")); - setColor(palette2.Button, "inheritContainedBg", setCssVarColor("palette-grey-800")); - setColor(palette2.Button, "inheritContainedHoverBg", setCssVarColor("palette-grey-700")); - setColor(palette2.Chip, "defaultBorder", setCssVarColor("palette-grey-700")); - setColor(palette2.Chip, "defaultAvatarColor", setCssVarColor("palette-grey-300")); - setColor(palette2.Chip, "defaultIconColor", setCssVarColor("palette-grey-300")); - setColor(palette2.FilledInput, "bg", "rgba(255, 255, 255, 0.09)"); - setColor(palette2.FilledInput, "hoverBg", "rgba(255, 255, 255, 0.13)"); - setColor(palette2.FilledInput, "disabledBg", "rgba(255, 255, 255, 0.12)"); - setColor(palette2.LinearProgress, "primaryBg", private_safeDarken(palette2.primary.main, 0.5)); - setColor(palette2.LinearProgress, "secondaryBg", private_safeDarken(palette2.secondary.main, 0.5)); - setColor(palette2.LinearProgress, "errorBg", private_safeDarken(palette2.error.main, 0.5)); - setColor(palette2.LinearProgress, "infoBg", private_safeDarken(palette2.info.main, 0.5)); - setColor(palette2.LinearProgress, "successBg", private_safeDarken(palette2.success.main, 0.5)); - setColor(palette2.LinearProgress, "warningBg", private_safeDarken(palette2.warning.main, 0.5)); - setColor(palette2.Skeleton, "bg", `rgba(${setCssVarColor("palette-text-primaryChannel")} / 0.13)`); - setColor(palette2.Slider, "primaryTrack", private_safeDarken(palette2.primary.main, 0.5)); - setColor(palette2.Slider, "secondaryTrack", private_safeDarken(palette2.secondary.main, 0.5)); - setColor(palette2.Slider, "errorTrack", private_safeDarken(palette2.error.main, 0.5)); - setColor(palette2.Slider, "infoTrack", private_safeDarken(palette2.info.main, 0.5)); - setColor(palette2.Slider, "successTrack", private_safeDarken(palette2.success.main, 0.5)); - setColor(palette2.Slider, "warningTrack", private_safeDarken(palette2.warning.main, 0.5)); - const snackbarContentBackground = private_safeEmphasize(palette2.background.default, 0.98); - setColor(palette2.SnackbarContent, "bg", snackbarContentBackground); - setColor(palette2.SnackbarContent, "color", silent(() => palette2.getContrastText(snackbarContentBackground))); - setColor(palette2.SpeedDialAction, "fabHoverBg", private_safeEmphasize(palette2.background.paper, 0.15)); - setColor(palette2.StepConnector, "border", setCssVarColor("palette-grey-600")); - setColor(palette2.StepContent, "border", setCssVarColor("palette-grey-600")); - setColor(palette2.Switch, "defaultColor", setCssVarColor("palette-grey-300")); - setColor(palette2.Switch, "defaultDisabledColor", setCssVarColor("palette-grey-600")); - setColor(palette2.Switch, "primaryDisabledColor", private_safeDarken(palette2.primary.main, 0.55)); - setColor(palette2.Switch, "secondaryDisabledColor", private_safeDarken(palette2.secondary.main, 0.55)); - setColor(palette2.Switch, "errorDisabledColor", private_safeDarken(palette2.error.main, 0.55)); - setColor(palette2.Switch, "infoDisabledColor", private_safeDarken(palette2.info.main, 0.55)); - setColor(palette2.Switch, "successDisabledColor", private_safeDarken(palette2.success.main, 0.55)); - setColor(palette2.Switch, "warningDisabledColor", private_safeDarken(palette2.warning.main, 0.55)); - setColor(palette2.TableCell, "border", private_safeDarken(private_safeAlpha(palette2.divider, 1), 0.68)); - setColor(palette2.Tooltip, "bg", private_safeAlpha(palette2.grey[700], 0.92)); - } - setColorChannel(palette2.background, "default"); - setColorChannel(palette2.background, "paper"); - setColorChannel(palette2.common, "background"); - setColorChannel(palette2.common, "onBackground"); - setColorChannel(palette2, "divider"); - Object.keys(palette2).forEach((color2) => { - const colors = palette2[color2]; - if (color2 !== "tonalOffset" && colors && typeof colors === "object") { - if (colors.main) { - setColor(palette2[color2], "mainChannel", private_safeColorChannel(toRgb(colors.main))); - } - if (colors.light) { - setColor(palette2[color2], "lightChannel", private_safeColorChannel(toRgb(colors.light))); - } - if (colors.dark) { - setColor(palette2[color2], "darkChannel", private_safeColorChannel(toRgb(colors.dark))); - } - if (colors.contrastText) { - setColor(palette2[color2], "contrastTextChannel", private_safeColorChannel(toRgb(colors.contrastText))); - } - if (color2 === "text") { - setColorChannel(palette2[color2], "primary"); - setColorChannel(palette2[color2], "secondary"); - } - if (color2 === "action") { - if (colors.active) { - setColorChannel(palette2[color2], "active"); - } - if (colors.selected) { - setColorChannel(palette2[color2], "selected"); - } - } - } - }); - }); - theme = args.reduce((acc, argument) => deepmerge(acc, argument), theme); - const parserConfig = { - prefix: cssVarPrefix, - disableCssColorScheme, - shouldSkipGeneratingVar: shouldSkipGeneratingVar2, - getSelector: createGetSelector_default(theme) - }; - const { - vars, - generateThemeVars, - generateStyleSheets - } = prepareCssVars_default(theme, parserConfig); - theme.vars = vars; - Object.entries(theme.colorSchemes[theme.defaultColorScheme]).forEach(([key, value]) => { - theme[key] = value; - }); - theme.generateThemeVars = generateThemeVars; - theme.generateStyleSheets = generateStyleSheets; - theme.generateSpacing = function generateSpacing() { - return createSpacing(input.spacing, createUnarySpacing(this)); - }; - theme.getColorSchemeSelector = createGetColorSchemeSelector(selector); - theme.spacing = theme.generateSpacing(); - theme.shouldSkipGeneratingVar = shouldSkipGeneratingVar2; - theme.unstable_sxConfig = { - ...defaultSxConfig_default, - ...input == null ? void 0 : input.unstable_sxConfig - }; - theme.unstable_sx = function sx(props) { - return styleFunctionSx_default({ - sx: props, - theme: this - }); - }; - theme.toRuntimeSource = stringifyTheme; - return theme; -} - -// node_modules/@mui/material/esm/styles/createTheme.js -function attachColorScheme2(theme, scheme, colorScheme) { - if (!theme.colorSchemes) { - return void 0; - } - if (colorScheme) { - theme.colorSchemes[scheme] = { - ...colorScheme !== true && colorScheme, - palette: createPalette({ - ...colorScheme === true ? {} : colorScheme.palette, - mode: scheme - }) - // cast type to skip module augmentation test - }; - } -} -function createTheme2(options = {}, ...args) { - const { - palette: palette2, - cssVariables = false, - colorSchemes: initialColorSchemes = !palette2 ? { - light: true - } : void 0, - defaultColorScheme: initialDefaultColorScheme = palette2 == null ? void 0 : palette2.mode, - ...rest - } = options; - const defaultColorSchemeInput = initialDefaultColorScheme || "light"; - const defaultScheme = initialColorSchemes == null ? void 0 : initialColorSchemes[defaultColorSchemeInput]; - const colorSchemesInput = { - ...initialColorSchemes, - ...palette2 ? { - [defaultColorSchemeInput]: { - ...typeof defaultScheme !== "boolean" && defaultScheme, - palette: palette2 - } - } : void 0 - }; - if (cssVariables === false) { - if (!("colorSchemes" in options)) { - return createThemeNoVars_default(options, ...args); - } - let paletteOptions = palette2; - if (!("palette" in options)) { - if (colorSchemesInput[defaultColorSchemeInput]) { - if (colorSchemesInput[defaultColorSchemeInput] !== true) { - paletteOptions = colorSchemesInput[defaultColorSchemeInput].palette; - } else if (defaultColorSchemeInput === "dark") { - paletteOptions = { - mode: "dark" - }; - } - } - } - const theme = createThemeNoVars_default({ - ...options, - palette: paletteOptions - }, ...args); - theme.defaultColorScheme = defaultColorSchemeInput; - theme.colorSchemes = colorSchemesInput; - if (theme.palette.mode === "light") { - theme.colorSchemes.light = { - ...colorSchemesInput.light !== true && colorSchemesInput.light, - palette: theme.palette - }; - attachColorScheme2(theme, "dark", colorSchemesInput.dark); - } - if (theme.palette.mode === "dark") { - theme.colorSchemes.dark = { - ...colorSchemesInput.dark !== true && colorSchemesInput.dark, - palette: theme.palette - }; - attachColorScheme2(theme, "light", colorSchemesInput.light); - } - return theme; - } - if (!palette2 && !("light" in colorSchemesInput) && defaultColorSchemeInput === "light") { - colorSchemesInput.light = true; - } - return createThemeWithVars({ - ...rest, - colorSchemes: colorSchemesInput, - defaultColorScheme: defaultColorSchemeInput, - ...typeof cssVariables !== "boolean" && cssVariables - }, ...args); -} - -// node_modules/@mui/material/esm/styles/defaultTheme.js -var defaultTheme4 = createTheme2(); -var defaultTheme_default = defaultTheme4; - -// node_modules/@mui/material/esm/styles/identifier.js -var identifier_default = "$$material"; - -// node_modules/@mui/material/esm/GlobalStyles/GlobalStyles.js -var React39 = __toESM(require_react(), 1); -var import_prop_types21 = __toESM(require_prop_types(), 1); -var import_jsx_runtime14 = __toESM(require_jsx_runtime(), 1); -function GlobalStyles3(props) { - return (0, import_jsx_runtime14.jsx)(GlobalStyles_default, { - ...props, - defaultTheme: defaultTheme_default, - themeId: identifier_default - }); -} -true ? GlobalStyles3.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the d.ts file and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * The styles you want to apply globally. - */ - styles: import_prop_types21.default.oneOfType([import_prop_types21.default.array, import_prop_types21.default.func, import_prop_types21.default.number, import_prop_types21.default.object, import_prop_types21.default.string, import_prop_types21.default.bool]) -} : void 0; - -// node_modules/@mui/material/esm/zero-styled/index.js -var import_jsx_runtime15 = __toESM(require_jsx_runtime(), 1); - -// node_modules/@mui/material/esm/styles/slotShouldForwardProp.js -function slotShouldForwardProp(prop) { - return prop !== "ownerState" && prop !== "theme" && prop !== "sx" && prop !== "as"; -} -var slotShouldForwardProp_default = slotShouldForwardProp; - -// node_modules/@mui/material/esm/styles/rootShouldForwardProp.js -var rootShouldForwardProp = (prop) => slotShouldForwardProp_default(prop) && prop !== "classes"; -var rootShouldForwardProp_default = rootShouldForwardProp; - -// node_modules/@mui/material/esm/styles/styled.js -var styled3 = createStyled3({ - themeId: identifier_default, - defaultTheme: defaultTheme_default, - rootShouldForwardProp: rootShouldForwardProp_default -}); -var styled_default2 = styled3; - -// node_modules/@mui/material/esm/utils/memoTheme.js -var memoTheme = unstable_memoTheme; -var memoTheme_default = memoTheme; - -// node_modules/@mui/material/esm/DefaultPropsProvider/DefaultPropsProvider.js -var React41 = __toESM(require_react(), 1); -var import_prop_types22 = __toESM(require_prop_types(), 1); -var import_jsx_runtime16 = __toESM(require_jsx_runtime(), 1); -function DefaultPropsProvider2(props) { - return (0, import_jsx_runtime16.jsx)(DefaultPropsProvider_default, { - ...props - }); -} -true ? DefaultPropsProvider2.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * @ignore - */ - children: import_prop_types22.default.node, - /** - * @ignore - */ - value: import_prop_types22.default.object.isRequired -} : void 0; -function useDefaultProps2(params) { - return useDefaultProps(params); -} - -// node_modules/@mui/material/esm/utils/shouldSpreadAdditionalProps.js -var shouldSpreadAdditionalProps = (Slot) => { - return !Slot || !isHostComponent_default2(Slot); -}; -var shouldSpreadAdditionalProps_default = shouldSpreadAdditionalProps; - -// node_modules/@mui/material/esm/utils/capitalize.js -var capitalize_default = capitalize; - -// node_modules/@mui/material/esm/utils/createSimplePaletteValueFilter.js -function hasCorrectMainProperty(obj) { - return typeof obj.main === "string"; -} -function checkSimplePaletteColorValues(obj, additionalPropertiesToCheck = []) { - if (!hasCorrectMainProperty(obj)) { - return false; - } - for (const value of additionalPropertiesToCheck) { - if (!obj.hasOwnProperty(value) || typeof obj[value] !== "string") { - return false; - } - } - return true; -} -function createSimplePaletteValueFilter(additionalPropertiesToCheck = []) { - return ([, value]) => value && checkSimplePaletteColorValues(value, additionalPropertiesToCheck); -} - -// node_modules/@mui/material/esm/Slider/SliderValueLabel.js -var React42 = __toESM(require_react(), 1); -var import_prop_types23 = __toESM(require_prop_types(), 1); - -// node_modules/@mui/material/esm/Slider/sliderClasses.js -function getSliderUtilityClass(slot) { - return generateUtilityClass("MuiSlider", slot); -} -var sliderClasses = generateUtilityClasses("MuiSlider", ["root", "active", "colorPrimary", "colorSecondary", "colorError", "colorInfo", "colorSuccess", "colorWarning", "disabled", "dragging", "focusVisible", "mark", "markActive", "marked", "markLabel", "markLabelActive", "rail", "sizeSmall", "thumb", "thumbColorPrimary", "thumbColorSecondary", "thumbColorError", "thumbColorSuccess", "thumbColorInfo", "thumbColorWarning", "track", "trackInverted", "trackFalse", "thumbSizeSmall", "valueLabel", "valueLabelOpen", "valueLabelCircle", "valueLabelLabel", "vertical"]); -var sliderClasses_default = sliderClasses; - -// node_modules/@mui/material/esm/Slider/SliderValueLabel.js -var import_jsx_runtime17 = __toESM(require_jsx_runtime(), 1); -var useValueLabelClasses = (props) => { - const { - open - } = props; - const utilityClasses = { - offset: clsx_default(open && sliderClasses_default.valueLabelOpen), - circle: sliderClasses_default.valueLabelCircle, - label: sliderClasses_default.valueLabelLabel - }; - return utilityClasses; -}; -function SliderValueLabel(props) { - const { - children, - className, - value - } = props; - const classes = useValueLabelClasses(props); - if (!children) { - return null; - } - return React42.cloneElement(children, { - className: clsx_default(children.props.className) - }, (0, import_jsx_runtime17.jsxs)(React42.Fragment, { - children: [children.props.children, (0, import_jsx_runtime17.jsx)("span", { - className: clsx_default(classes.offset, className), - "aria-hidden": true, - children: (0, import_jsx_runtime17.jsx)("span", { - className: classes.circle, - children: (0, import_jsx_runtime17.jsx)("span", { - className: classes.label, - children: value - }) - }) - })] - })); -} -true ? SliderValueLabel.propTypes = { - children: import_prop_types23.default.element.isRequired, - className: import_prop_types23.default.string, - value: import_prop_types23.default.node -} : void 0; - -// node_modules/@mui/material/esm/Slider/Slider.js -var import_jsx_runtime18 = __toESM(require_jsx_runtime(), 1); -function Identity2(x) { - return x; -} -var SliderRoot = styled_default2("span", { - name: "MuiSlider", - slot: "Root", - overridesResolver: (props, styles) => { - const { - ownerState - } = props; - return [styles.root, styles[`color${capitalize_default(ownerState.color)}`], ownerState.size !== "medium" && styles[`size${capitalize_default(ownerState.size)}`], ownerState.marked && styles.marked, ownerState.orientation === "vertical" && styles.vertical, ownerState.track === "inverted" && styles.trackInverted, ownerState.track === false && styles.trackFalse]; - } -})(memoTheme_default(({ - theme -}) => ({ - borderRadius: 12, - boxSizing: "content-box", - display: "inline-block", - position: "relative", - cursor: "pointer", - touchAction: "none", - WebkitTapHighlightColor: "transparent", - "@media print": { - colorAdjust: "exact" - }, - [`&.${sliderClasses_default.disabled}`]: { - pointerEvents: "none", - cursor: "default", - color: (theme.vars || theme).palette.grey[400] - }, - [`&.${sliderClasses_default.dragging}`]: { - [`& .${sliderClasses_default.thumb}, & .${sliderClasses_default.track}`]: { - transition: "none" - } - }, - variants: [...Object.entries(theme.palette).filter(createSimplePaletteValueFilter()).map(([color2]) => ({ - props: { - color: color2 - }, - style: { - color: (theme.vars || theme).palette[color2].main - } - })), { - props: { - orientation: "horizontal" - }, - style: { - height: 4, - width: "100%", - padding: "13px 0", - // The primary input mechanism of the device includes a pointing device of limited accuracy. - "@media (pointer: coarse)": { - // Reach 42px touch target, about ~8mm on screen. - padding: "20px 0" - } - } - }, { - props: { - orientation: "horizontal", - size: "small" - }, - style: { - height: 2 - } - }, { - props: { - orientation: "horizontal", - marked: true - }, - style: { - marginBottom: 20 - } - }, { - props: { - orientation: "vertical" - }, - style: { - height: "100%", - width: 4, - padding: "0 13px", - // The primary input mechanism of the device includes a pointing device of limited accuracy. - "@media (pointer: coarse)": { - // Reach 42px touch target, about ~8mm on screen. - padding: "0 20px" - } - } - }, { - props: { - orientation: "vertical", - size: "small" - }, - style: { - width: 2 - } - }, { - props: { - orientation: "vertical", - marked: true - }, - style: { - marginRight: 44 - } - }] -}))); -var SliderRail = styled_default2("span", { - name: "MuiSlider", - slot: "Rail", - overridesResolver: (props, styles) => styles.rail -})({ - display: "block", - position: "absolute", - borderRadius: "inherit", - backgroundColor: "currentColor", - opacity: 0.38, - variants: [{ - props: { - orientation: "horizontal" - }, - style: { - width: "100%", - height: "inherit", - top: "50%", - transform: "translateY(-50%)" - } - }, { - props: { - orientation: "vertical" - }, - style: { - height: "100%", - width: "inherit", - left: "50%", - transform: "translateX(-50%)" - } - }, { - props: { - track: "inverted" - }, - style: { - opacity: 1 - } - }] -}); -var SliderTrack = styled_default2("span", { - name: "MuiSlider", - slot: "Track", - overridesResolver: (props, styles) => styles.track -})(memoTheme_default(({ - theme -}) => { - return { - display: "block", - position: "absolute", - borderRadius: "inherit", - border: "1px solid currentColor", - backgroundColor: "currentColor", - transition: theme.transitions.create(["left", "width", "bottom", "height"], { - duration: theme.transitions.duration.shortest - }), - variants: [{ - props: { - size: "small" - }, - style: { - border: "none" - } - }, { - props: { - orientation: "horizontal" - }, - style: { - height: "inherit", - top: "50%", - transform: "translateY(-50%)" - } - }, { - props: { - orientation: "vertical" - }, - style: { - width: "inherit", - left: "50%", - transform: "translateX(-50%)" - } - }, { - props: { - track: false - }, - style: { - display: "none" - } - }, ...Object.entries(theme.palette).filter(createSimplePaletteValueFilter()).map(([color2]) => ({ - props: { - color: color2, - track: "inverted" - }, - style: { - ...theme.vars ? { - backgroundColor: theme.vars.palette.Slider[`${color2}Track`], - borderColor: theme.vars.palette.Slider[`${color2}Track`] - } : { - backgroundColor: lighten(theme.palette[color2].main, 0.62), - borderColor: lighten(theme.palette[color2].main, 0.62), - ...theme.applyStyles("dark", { - backgroundColor: darken(theme.palette[color2].main, 0.5) - }), - ...theme.applyStyles("dark", { - borderColor: darken(theme.palette[color2].main, 0.5) - }) - } - } - }))] - }; -})); -var SliderThumb = styled_default2("span", { - name: "MuiSlider", - slot: "Thumb", - overridesResolver: (props, styles) => { - const { - ownerState - } = props; - return [styles.thumb, styles[`thumbColor${capitalize_default(ownerState.color)}`], ownerState.size !== "medium" && styles[`thumbSize${capitalize_default(ownerState.size)}`]]; - } -})(memoTheme_default(({ - theme -}) => ({ - position: "absolute", - width: 20, - height: 20, - boxSizing: "border-box", - borderRadius: "50%", - outline: 0, - backgroundColor: "currentColor", - display: "flex", - alignItems: "center", - justifyContent: "center", - transition: theme.transitions.create(["box-shadow", "left", "bottom"], { - duration: theme.transitions.duration.shortest - }), - "&::before": { - position: "absolute", - content: '""', - borderRadius: "inherit", - width: "100%", - height: "100%", - boxShadow: (theme.vars || theme).shadows[2] - }, - "&::after": { - position: "absolute", - content: '""', - borderRadius: "50%", - // 42px is the hit target - width: 42, - height: 42, - top: "50%", - left: "50%", - transform: "translate(-50%, -50%)" - }, - [`&.${sliderClasses_default.disabled}`]: { - "&:hover": { - boxShadow: "none" - } - }, - variants: [{ - props: { - size: "small" - }, - style: { - width: 12, - height: 12, - "&::before": { - boxShadow: "none" - } - } - }, { - props: { - orientation: "horizontal" - }, - style: { - top: "50%", - transform: "translate(-50%, -50%)" - } - }, { - props: { - orientation: "vertical" - }, - style: { - left: "50%", - transform: "translate(-50%, 50%)" - } - }, ...Object.entries(theme.palette).filter(createSimplePaletteValueFilter()).map(([color2]) => ({ - props: { - color: color2 - }, - style: { - [`&:hover, &.${sliderClasses_default.focusVisible}`]: { - ...theme.vars ? { - boxShadow: `0px 0px 0px 8px rgba(${theme.vars.palette[color2].mainChannel} / 0.16)` - } : { - boxShadow: `0px 0px 0px 8px ${alpha(theme.palette[color2].main, 0.16)}` - }, - "@media (hover: none)": { - boxShadow: "none" - } - }, - [`&.${sliderClasses_default.active}`]: { - ...theme.vars ? { - boxShadow: `0px 0px 0px 14px rgba(${theme.vars.palette[color2].mainChannel} / 0.16)` - } : { - boxShadow: `0px 0px 0px 14px ${alpha(theme.palette[color2].main, 0.16)}` - } - } - } - }))] -}))); -var SliderValueLabel2 = styled_default2(SliderValueLabel, { - name: "MuiSlider", - slot: "ValueLabel", - overridesResolver: (props, styles) => styles.valueLabel -})(memoTheme_default(({ - theme -}) => ({ - zIndex: 1, - whiteSpace: "nowrap", - ...theme.typography.body2, - fontWeight: 500, - transition: theme.transitions.create(["transform"], { - duration: theme.transitions.duration.shortest - }), - position: "absolute", - backgroundColor: (theme.vars || theme).palette.grey[600], - borderRadius: 2, - color: (theme.vars || theme).palette.common.white, - display: "flex", - alignItems: "center", - justifyContent: "center", - padding: "0.25rem 0.75rem", - variants: [{ - props: { - orientation: "horizontal" - }, - style: { - transform: "translateY(-100%) scale(0)", - top: "-10px", - transformOrigin: "bottom center", - "&::before": { - position: "absolute", - content: '""', - width: 8, - height: 8, - transform: "translate(-50%, 50%) rotate(45deg)", - backgroundColor: "inherit", - bottom: 0, - left: "50%" - }, - [`&.${sliderClasses_default.valueLabelOpen}`]: { - transform: "translateY(-100%) scale(1)" - } - } - }, { - props: { - orientation: "vertical" - }, - style: { - transform: "translateY(-50%) scale(0)", - right: "30px", - top: "50%", - transformOrigin: "right center", - "&::before": { - position: "absolute", - content: '""', - width: 8, - height: 8, - transform: "translate(-50%, -50%) rotate(45deg)", - backgroundColor: "inherit", - right: -8, - top: "50%" - }, - [`&.${sliderClasses_default.valueLabelOpen}`]: { - transform: "translateY(-50%) scale(1)" - } - } - }, { - props: { - size: "small" - }, - style: { - fontSize: theme.typography.pxToRem(12), - padding: "0.25rem 0.5rem" - } - }, { - props: { - orientation: "vertical", - size: "small" - }, - style: { - right: "20px" - } - }] -}))); -true ? SliderValueLabel2.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the d.ts file and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * @ignore - */ - children: import_prop_types24.default.element.isRequired, - /** - * @ignore - */ - index: import_prop_types24.default.number.isRequired, - /** - * @ignore - */ - open: import_prop_types24.default.bool.isRequired, - /** - * @ignore - */ - value: import_prop_types24.default.node -} : void 0; -var SliderMark = styled_default2("span", { - name: "MuiSlider", - slot: "Mark", - shouldForwardProp: (prop) => slotShouldForwardProp_default(prop) && prop !== "markActive", - overridesResolver: (props, styles) => { - const { - markActive - } = props; - return [styles.mark, markActive && styles.markActive]; - } -})(memoTheme_default(({ - theme -}) => ({ - position: "absolute", - width: 2, - height: 2, - borderRadius: 1, - backgroundColor: "currentColor", - variants: [{ - props: { - orientation: "horizontal" - }, - style: { - top: "50%", - transform: "translate(-1px, -50%)" - } - }, { - props: { - orientation: "vertical" - }, - style: { - left: "50%", - transform: "translate(-50%, 1px)" - } - }, { - props: { - markActive: true - }, - style: { - backgroundColor: (theme.vars || theme).palette.background.paper, - opacity: 0.8 - } - }] -}))); -var SliderMarkLabel = styled_default2("span", { - name: "MuiSlider", - slot: "MarkLabel", - shouldForwardProp: (prop) => slotShouldForwardProp_default(prop) && prop !== "markLabelActive", - overridesResolver: (props, styles) => styles.markLabel -})(memoTheme_default(({ - theme -}) => ({ - ...theme.typography.body2, - color: (theme.vars || theme).palette.text.secondary, - position: "absolute", - whiteSpace: "nowrap", - variants: [{ - props: { - orientation: "horizontal" - }, - style: { - top: 30, - transform: "translateX(-50%)", - "@media (pointer: coarse)": { - top: 40 - } - } - }, { - props: { - orientation: "vertical" - }, - style: { - left: 36, - transform: "translateY(50%)", - "@media (pointer: coarse)": { - left: 44 - } - } - }, { - props: { - markLabelActive: true - }, - style: { - color: (theme.vars || theme).palette.text.primary - } - }] -}))); -var useUtilityClasses2 = (ownerState) => { - const { - disabled, - dragging, - marked, - orientation, - track, - classes, - color: color2, - size - } = ownerState; - const slots = { - root: ["root", disabled && "disabled", dragging && "dragging", marked && "marked", orientation === "vertical" && "vertical", track === "inverted" && "trackInverted", track === false && "trackFalse", color2 && `color${capitalize_default(color2)}`, size && `size${capitalize_default(size)}`], - rail: ["rail"], - track: ["track"], - mark: ["mark"], - markActive: ["markActive"], - markLabel: ["markLabel"], - markLabelActive: ["markLabelActive"], - valueLabel: ["valueLabel"], - thumb: ["thumb", disabled && "disabled", size && `thumbSize${capitalize_default(size)}`, color2 && `thumbColor${capitalize_default(color2)}`], - active: ["active"], - disabled: ["disabled"], - focusVisible: ["focusVisible"] - }; - return composeClasses(slots, getSliderUtilityClass, classes); -}; -var Forward = ({ - children -}) => children; -var Slider = React43.forwardRef(function Slider2(inputProps, ref) { - const props = useDefaultProps2({ - props: inputProps, - name: "MuiSlider" - }); - const isRtl = useRtl(); - const { - "aria-label": ariaLabel, - "aria-valuetext": ariaValuetext, - "aria-labelledby": ariaLabelledby, - // eslint-disable-next-line react/prop-types - component = "span", - components = {}, - componentsProps = {}, - color: color2 = "primary", - classes: classesProp, - className, - disableSwap = false, - disabled = false, - getAriaLabel, - getAriaValueText, - marks: marksProp = false, - max = 100, - min = 0, - name, - onChange, - onChangeCommitted, - orientation = "horizontal", - shiftStep = 10, - size = "medium", - step = 1, - scale = Identity2, - slotProps, - slots, - tabIndex, - track = "normal", - value: valueProp, - valueLabelDisplay = "off", - valueLabelFormat = Identity2, - ...other - } = props; - const ownerState = { - ...props, - isRtl, - max, - min, - classes: classesProp, - disabled, - disableSwap, - orientation, - marks: marksProp, - color: color2, - size, - step, - shiftStep, - scale, - track, - valueLabelDisplay, - valueLabelFormat - }; - const { - axisProps: axisProps2, - getRootProps, - getHiddenInputProps, - getThumbProps, - open, - active, - axis, - focusedThumbIndex, - range, - dragging, - marks, - values: values2, - trackOffset, - trackLeap, - getThumbStyle - } = useSlider({ - ...ownerState, - rootRef: ref - }); - ownerState.marked = marks.length > 0 && marks.some((mark) => mark.label); - ownerState.dragging = dragging; - ownerState.focusedThumbIndex = focusedThumbIndex; - const classes = useUtilityClasses2(ownerState); - const RootSlot = (slots == null ? void 0 : slots.root) ?? components.Root ?? SliderRoot; - const RailSlot = (slots == null ? void 0 : slots.rail) ?? components.Rail ?? SliderRail; - const TrackSlot = (slots == null ? void 0 : slots.track) ?? components.Track ?? SliderTrack; - const ThumbSlot = (slots == null ? void 0 : slots.thumb) ?? components.Thumb ?? SliderThumb; - const ValueLabelSlot = (slots == null ? void 0 : slots.valueLabel) ?? components.ValueLabel ?? SliderValueLabel2; - const MarkSlot = (slots == null ? void 0 : slots.mark) ?? components.Mark ?? SliderMark; - const MarkLabelSlot = (slots == null ? void 0 : slots.markLabel) ?? components.MarkLabel ?? SliderMarkLabel; - const InputSlot = (slots == null ? void 0 : slots.input) ?? components.Input ?? "input"; - const rootSlotProps = (slotProps == null ? void 0 : slotProps.root) ?? componentsProps.root; - const railSlotProps = (slotProps == null ? void 0 : slotProps.rail) ?? componentsProps.rail; - const trackSlotProps = (slotProps == null ? void 0 : slotProps.track) ?? componentsProps.track; - const thumbSlotProps = (slotProps == null ? void 0 : slotProps.thumb) ?? componentsProps.thumb; - const valueLabelSlotProps = (slotProps == null ? void 0 : slotProps.valueLabel) ?? componentsProps.valueLabel; - const markSlotProps = (slotProps == null ? void 0 : slotProps.mark) ?? componentsProps.mark; - const markLabelSlotProps = (slotProps == null ? void 0 : slotProps.markLabel) ?? componentsProps.markLabel; - const inputSlotProps = (slotProps == null ? void 0 : slotProps.input) ?? componentsProps.input; - const rootProps = useSlotProps_default({ - elementType: RootSlot, - getSlotProps: getRootProps, - externalSlotProps: rootSlotProps, - externalForwardedProps: other, - additionalProps: { - ...shouldSpreadAdditionalProps_default(RootSlot) && { - as: component - } - }, - ownerState: { - ...ownerState, - ...rootSlotProps == null ? void 0 : rootSlotProps.ownerState - }, - className: [classes.root, className] - }); - const railProps = useSlotProps_default({ - elementType: RailSlot, - externalSlotProps: railSlotProps, - ownerState, - className: classes.rail - }); - const trackProps = useSlotProps_default({ - elementType: TrackSlot, - externalSlotProps: trackSlotProps, - additionalProps: { - style: { - ...axisProps2[axis].offset(trackOffset), - ...axisProps2[axis].leap(trackLeap) - } - }, - ownerState: { - ...ownerState, - ...trackSlotProps == null ? void 0 : trackSlotProps.ownerState - }, - className: classes.track - }); - const thumbProps = useSlotProps_default({ - elementType: ThumbSlot, - getSlotProps: getThumbProps, - externalSlotProps: thumbSlotProps, - ownerState: { - ...ownerState, - ...thumbSlotProps == null ? void 0 : thumbSlotProps.ownerState - }, - className: classes.thumb - }); - const valueLabelProps = useSlotProps_default({ - elementType: ValueLabelSlot, - externalSlotProps: valueLabelSlotProps, - ownerState: { - ...ownerState, - ...valueLabelSlotProps == null ? void 0 : valueLabelSlotProps.ownerState - }, - className: classes.valueLabel - }); - const markProps = useSlotProps_default({ - elementType: MarkSlot, - externalSlotProps: markSlotProps, - ownerState, - className: classes.mark - }); - const markLabelProps = useSlotProps_default({ - elementType: MarkLabelSlot, - externalSlotProps: markLabelSlotProps, - ownerState, - className: classes.markLabel - }); - const inputSliderProps = useSlotProps_default({ - elementType: InputSlot, - getSlotProps: getHiddenInputProps, - externalSlotProps: inputSlotProps, - ownerState - }); - return (0, import_jsx_runtime18.jsxs)(RootSlot, { - ...rootProps, - children: [(0, import_jsx_runtime18.jsx)(RailSlot, { - ...railProps - }), (0, import_jsx_runtime18.jsx)(TrackSlot, { - ...trackProps - }), marks.filter((mark) => mark.value >= min && mark.value <= max).map((mark, index) => { - const percent = valueToPercent(mark.value, min, max); - const style4 = axisProps2[axis].offset(percent); - let markActive; - if (track === false) { - markActive = values2.includes(mark.value); - } else { - markActive = track === "normal" && (range ? mark.value >= values2[0] && mark.value <= values2[values2.length - 1] : mark.value <= values2[0]) || track === "inverted" && (range ? mark.value <= values2[0] || mark.value >= values2[values2.length - 1] : mark.value >= values2[0]); - } - return (0, import_jsx_runtime18.jsxs)(React43.Fragment, { - children: [(0, import_jsx_runtime18.jsx)(MarkSlot, { - "data-index": index, - ...markProps, - ...!isHostComponent_default2(MarkSlot) && { - markActive - }, - style: { - ...style4, - ...markProps.style - }, - className: clsx_default(markProps.className, markActive && classes.markActive) - }), mark.label != null ? (0, import_jsx_runtime18.jsx)(MarkLabelSlot, { - "aria-hidden": true, - "data-index": index, - ...markLabelProps, - ...!isHostComponent_default2(MarkLabelSlot) && { - markLabelActive: markActive - }, - style: { - ...style4, - ...markLabelProps.style - }, - className: clsx_default(classes.markLabel, markLabelProps.className, markActive && classes.markLabelActive), - children: mark.label - }) : null] - }, index); - }), values2.map((value, index) => { - const percent = valueToPercent(value, min, max); - const style4 = axisProps2[axis].offset(percent); - const ValueLabelComponent = valueLabelDisplay === "off" ? Forward : ValueLabelSlot; - return ( - /* TODO v6: Change component structure. It will help in avoiding the complicated React.cloneElement API added in SliderValueLabel component. Should be: Thumb -> Input, ValueLabel. Follow Joy UI's Slider structure. */ - (0, import_jsx_runtime18.jsx)(ValueLabelComponent, { - ...!isHostComponent_default2(ValueLabelComponent) && { - valueLabelFormat, - valueLabelDisplay, - value: typeof valueLabelFormat === "function" ? valueLabelFormat(scale(value), index) : valueLabelFormat, - index, - open: open === index || active === index || valueLabelDisplay === "on", - disabled - }, - ...valueLabelProps, - children: (0, import_jsx_runtime18.jsx)(ThumbSlot, { - "data-index": index, - ...thumbProps, - className: clsx_default(classes.thumb, thumbProps.className, active === index && classes.active, focusedThumbIndex === index && classes.focusVisible), - style: { - ...style4, - ...getThumbStyle(index), - ...thumbProps.style - }, - children: (0, import_jsx_runtime18.jsx)(InputSlot, { - "data-index": index, - "aria-label": getAriaLabel ? getAriaLabel(index) : ariaLabel, - "aria-valuenow": scale(value), - "aria-labelledby": ariaLabelledby, - "aria-valuetext": getAriaValueText ? getAriaValueText(scale(value), index) : ariaValuetext, - value: values2[index], - ...inputSliderProps - }) - }) - }, index) - ); - })] - }); -}); -true ? Slider.propTypes = { - // ┌────────────────────────────── Warning ──────────────────────────────┐ - // │ These PropTypes are generated from the TypeScript type definitions. │ - // │ To update them, edit the d.ts file and run `pnpm proptypes`. │ - // └─────────────────────────────────────────────────────────────────────┘ - /** - * The label of the slider. - */ - "aria-label": chainPropTypes(import_prop_types24.default.string, (props) => { - const range = Array.isArray(props.value || props.defaultValue); - if (range && props["aria-label"] != null) { - return new Error("MUI: You need to use the `getAriaLabel` prop instead of `aria-label` when using a range slider."); - } - return null; - }), - /** - * The id of the element containing a label for the slider. - */ - "aria-labelledby": import_prop_types24.default.string, - /** - * A string value that provides a user-friendly name for the current value of the slider. - */ - "aria-valuetext": chainPropTypes(import_prop_types24.default.string, (props) => { - const range = Array.isArray(props.value || props.defaultValue); - if (range && props["aria-valuetext"] != null) { - return new Error("MUI: You need to use the `getAriaValueText` prop instead of `aria-valuetext` when using a range slider."); - } - return null; - }), - /** - * @ignore - */ - children: import_prop_types24.default.node, - /** - * Override or extend the styles applied to the component. - */ - classes: import_prop_types24.default.object, - /** - * @ignore - */ - className: import_prop_types24.default.string, - /** - * The color of the component. - * It supports both default and custom theme colors, which can be added as shown in the - * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors). - * @default 'primary' - */ - color: import_prop_types24.default.oneOfType([import_prop_types24.default.oneOf(["primary", "secondary", "error", "info", "success", "warning"]), import_prop_types24.default.string]), - /** - * The components used for each slot inside. - * - * @deprecated use the `slots` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details. - * - * @default {} - */ - components: import_prop_types24.default.shape({ - Input: import_prop_types24.default.elementType, - Mark: import_prop_types24.default.elementType, - MarkLabel: import_prop_types24.default.elementType, - Rail: import_prop_types24.default.elementType, - Root: import_prop_types24.default.elementType, - Thumb: import_prop_types24.default.elementType, - Track: import_prop_types24.default.elementType, - ValueLabel: import_prop_types24.default.elementType - }), - /** - * The extra props for the slot components. - * You can override the existing props or add new ones. - * - * @deprecated use the `slotProps` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details. - * - * @default {} - */ - componentsProps: import_prop_types24.default.shape({ - input: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - mark: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - markLabel: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - rail: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - root: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - thumb: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - track: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - valueLabel: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.shape({ - children: import_prop_types24.default.element, - className: import_prop_types24.default.string, - open: import_prop_types24.default.bool, - style: import_prop_types24.default.object, - value: import_prop_types24.default.node, - valueLabelDisplay: import_prop_types24.default.oneOf(["auto", "off", "on"]) - })]) - }), - /** - * The default value. Use when the component is not controlled. - */ - defaultValue: import_prop_types24.default.oneOfType([import_prop_types24.default.arrayOf(import_prop_types24.default.number), import_prop_types24.default.number]), - /** - * If `true`, the component is disabled. - * @default false - */ - disabled: import_prop_types24.default.bool, - /** - * If `true`, the active thumb doesn't swap when moving pointer over a thumb while dragging another thumb. - * @default false - */ - disableSwap: import_prop_types24.default.bool, - /** - * Accepts a function which returns a string value that provides a user-friendly name for the thumb labels of the slider. - * This is important for screen reader users. - * @param {number} index The thumb label's index to format. - * @returns {string} - */ - getAriaLabel: import_prop_types24.default.func, - /** - * Accepts a function which returns a string value that provides a user-friendly name for the current value of the slider. - * This is important for screen reader users. - * @param {number} value The thumb label's value to format. - * @param {number} index The thumb label's index to format. - * @returns {string} - */ - getAriaValueText: import_prop_types24.default.func, - /** - * Marks indicate predetermined values to which the user can move the slider. - * If `true` the marks are spaced according the value of the `step` prop. - * If an array, it should contain objects with `value` and an optional `label` keys. - * @default false - */ - marks: import_prop_types24.default.oneOfType([import_prop_types24.default.arrayOf(import_prop_types24.default.shape({ - label: import_prop_types24.default.node, - value: import_prop_types24.default.number.isRequired - })), import_prop_types24.default.bool]), - /** - * The maximum allowed value of the slider. - * Should not be equal to min. - * @default 100 - */ - max: import_prop_types24.default.number, - /** - * The minimum allowed value of the slider. - * Should not be equal to max. - * @default 0 - */ - min: import_prop_types24.default.number, - /** - * Name attribute of the hidden `input` element. - */ - name: import_prop_types24.default.string, - /** - * Callback function that is fired when the slider's value changed. - * - * @param {Event} event The event source of the callback. - * You can pull out the new value by accessing `event.target.value` (any). - * **Warning**: This is a generic event not a change event. - * @param {Value} value The new value. - * @param {number} activeThumb Index of the currently moved thumb. - */ - onChange: import_prop_types24.default.func, - /** - * Callback function that is fired when the `mouseup` is triggered. - * - * @param {React.SyntheticEvent | Event} event The event source of the callback. **Warning**: This is a generic event not a change event. - * @param {Value} value The new value. - */ - onChangeCommitted: import_prop_types24.default.func, - /** - * The component orientation. - * @default 'horizontal' - */ - orientation: import_prop_types24.default.oneOf(["horizontal", "vertical"]), - /** - * A transformation function, to change the scale of the slider. - * @param {any} x - * @returns {any} - * @default function Identity(x) { - * return x; - * } - */ - scale: import_prop_types24.default.func, - /** - * The granularity with which the slider can step through values when using Page Up/Page Down or Shift + Arrow Up/Arrow Down. - * @default 10 - */ - shiftStep: import_prop_types24.default.number, - /** - * The size of the slider. - * @default 'medium' - */ - size: import_prop_types24.default.oneOfType([import_prop_types24.default.oneOf(["small", "medium"]), import_prop_types24.default.string]), - /** - * The props used for each slot inside the Slider. - * @default {} - */ - slotProps: import_prop_types24.default.shape({ - input: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - mark: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - markLabel: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - rail: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - root: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - thumb: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - track: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object]), - valueLabel: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.shape({ - children: import_prop_types24.default.element, - className: import_prop_types24.default.string, - open: import_prop_types24.default.bool, - style: import_prop_types24.default.object, - value: import_prop_types24.default.node, - valueLabelDisplay: import_prop_types24.default.oneOf(["auto", "off", "on"]) - })]) - }), - /** - * The components used for each slot inside the Slider. - * Either a string to use a HTML element or a component. - * @default {} - */ - slots: import_prop_types24.default.shape({ - input: import_prop_types24.default.elementType, - mark: import_prop_types24.default.elementType, - markLabel: import_prop_types24.default.elementType, - rail: import_prop_types24.default.elementType, - root: import_prop_types24.default.elementType, - thumb: import_prop_types24.default.elementType, - track: import_prop_types24.default.elementType, - valueLabel: import_prop_types24.default.elementType - }), - /** - * The granularity with which the slider can step through values. (A "discrete" slider.) - * The `min` prop serves as the origin for the valid values. - * We recommend (max - min) to be evenly divisible by the step. - * - * When step is `null`, the thumb can only be slid onto marks provided with the `marks` prop. - * @default 1 - */ - step: import_prop_types24.default.number, - /** - * The system prop that allows defining system overrides as well as additional CSS styles. - */ - sx: import_prop_types24.default.oneOfType([import_prop_types24.default.arrayOf(import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.object, import_prop_types24.default.bool])), import_prop_types24.default.func, import_prop_types24.default.object]), - /** - * Tab index attribute of the hidden `input` element. - */ - tabIndex: import_prop_types24.default.number, - /** - * The track presentation: - * - * - `normal` the track will render a bar representing the slider value. - * - `inverted` the track will render a bar representing the remaining slider value. - * - `false` the track will render without a bar. - * @default 'normal' - */ - track: import_prop_types24.default.oneOf(["inverted", "normal", false]), - /** - * The value of the slider. - * For ranged sliders, provide an array with two values. - */ - value: import_prop_types24.default.oneOfType([import_prop_types24.default.arrayOf(import_prop_types24.default.number), import_prop_types24.default.number]), - /** - * Controls when the value label is displayed: - * - * - `auto` the value label will display when the thumb is hovered or focused. - * - `on` will display persistently. - * - `off` will never display. - * @default 'off' - */ - valueLabelDisplay: import_prop_types24.default.oneOf(["auto", "off", "on"]), - /** - * The format function the value label's value. - * - * When a function is provided, it should have the following signature: - * - * - {number} value The value label's value to format - * - {number} index The value label's index to format - * @param {any} x - * @returns {any} - * @default function Identity(x) { - * return x; - * } - */ - valueLabelFormat: import_prop_types24.default.oneOfType([import_prop_types24.default.func, import_prop_types24.default.string]) -} : void 0; -var Slider_default = Slider; -export { - SliderMark, - SliderMarkLabel, - SliderRail, - SliderRoot, - SliderThumb, - SliderTrack, - SliderValueLabel2 as SliderValueLabel, - Slider_default as default, - getSliderUtilityClass, - sliderClasses_default as sliderClasses -}; -/*! Bundled license information: - -react/cjs/react-jsx-runtime.development.js: - (** - * @license React - * react-jsx-runtime.development.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -react-is/cjs/react-is.development.js: - (** - * @license React - * react-is.development.js - * - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -react-is/cjs/react-is.development.js: - (** @license React v16.13.1 - * react-is.development.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -@mui/utils/esm/index.js: - (** - * @mui/utils v7.0.1 - * - * @license MIT - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -@mui/styled-engine/esm/index.js: - (** - * @mui/styled-engine v7.0.1 - * - * @license MIT - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -@mui/private-theming/esm/index.js: - (** - * @mui/private-theming v7.0.1 - * - * @license MIT - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) - -@mui/system/esm/index.js: - (** - * @mui/system v7.0.1 - * - * @license MIT - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) -*/ -//# sourceMappingURL=@mui_material_Slider.js.map diff --git a/Front-end/.vite/deps/@mui_material_Slider.js.map b/Front-end/.vite/deps/@mui_material_Slider.js.map deleted file mode 100644 index efd8e5c..0000000 --- a/Front-end/.vite/deps/@mui_material_Slider.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../node_modules/react/cjs/react-jsx-runtime.development.js", "../../node_modules/react/jsx-runtime.js", "../../node_modules/@mui/utils/node_modules/react-is/cjs/react-is.development.js", "../../node_modules/@mui/utils/node_modules/react-is/index.js", "../../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js", "../../node_modules/hoist-non-react-statics/node_modules/react-is/index.js", "../../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js", "../../node_modules/@mui/material/esm/Slider/Slider.js", "../../node_modules/@mui/utils/esm/chainPropTypes/chainPropTypes.js", "../../node_modules/@mui/utils/esm/composeClasses/composeClasses.js", "../../node_modules/@mui/utils/esm/clamp/clamp.js", "../../node_modules/@mui/system/esm/colorManipulator/colorManipulator.js", "../../node_modules/@mui/system/esm/RtlProvider/index.js", "../../node_modules/@mui/utils/esm/useForkRef/useForkRef.js", "../../node_modules/@mui/utils/esm/setRef/setRef.js", "../../node_modules/@mui/utils/esm/isHostComponent/isHostComponent.js", "../../node_modules/@mui/utils/esm/appendOwnerState/appendOwnerState.js", "../../node_modules/@mui/utils/esm/extractEventHandlers/extractEventHandlers.js", "../../node_modules/@mui/utils/esm/omitEventHandlers/omitEventHandlers.js", "../../node_modules/@mui/utils/esm/mergeSlotProps/mergeSlotProps.js", "../../node_modules/@mui/utils/esm/resolveComponentProps/resolveComponentProps.js", "../../node_modules/@mui/utils/esm/useSlotProps/useSlotProps.js", "../../node_modules/@mui/material/esm/Slider/useSlider.js", "../../node_modules/@mui/utils/esm/deepmerge/deepmerge.js", "../../node_modules/@mui/utils/esm/elementAcceptingRef/elementAcceptingRef.js", "../../node_modules/@mui/utils/esm/elementTypeAcceptingRef/elementTypeAcceptingRef.js", "../../node_modules/@mui/utils/esm/exactProp/exactProp.js", "../../node_modules/@mui/utils/esm/getDisplayName/getDisplayName.js", "../../node_modules/@mui/utils/esm/ponyfillGlobal/ponyfillGlobal.js", "../../node_modules/@mui/utils/esm/refType/refType.js", "../../node_modules/@mui/utils/esm/capitalize/capitalize.js", "../../node_modules/@mui/utils/esm/isMuiElement/isMuiElement.js", "../../node_modules/@mui/utils/esm/ownerDocument/ownerDocument.js", "../../node_modules/@mui/utils/esm/useEnhancedEffect/useEnhancedEffect.js", "../../node_modules/@mui/utils/esm/useId/useId.js", "../../node_modules/@mui/utils/esm/useControlled/useControlled.js", "../../node_modules/@mui/utils/esm/useEventCallback/useEventCallback.js", "../../node_modules/@mui/utils/esm/useLazyRef/useLazyRef.js", "../../node_modules/@mui/utils/esm/useOnMount/useOnMount.js", "../../node_modules/@mui/utils/esm/useTimeout/useTimeout.js", "../../node_modules/@mui/utils/esm/useIsFocusVisible/useIsFocusVisible.js", "../../node_modules/@mui/utils/esm/isFocusVisible/isFocusVisible.js", "../../node_modules/@mui/utils/esm/usePreviousProps/usePreviousProps.js", "../../node_modules/@mui/utils/esm/getValidReactChildren/getValidReactChildren.js", "../../node_modules/@mui/utils/esm/visuallyHidden/visuallyHidden.js", "../../node_modules/@mui/utils/esm/integerPropType/integerPropType.js", "../../node_modules/@mui/utils/esm/resolveProps/resolveProps.js", "../../node_modules/@mui/utils/esm/ClassNameGenerator/ClassNameGenerator.js", "../../node_modules/@mui/utils/esm/generateUtilityClass/generateUtilityClass.js", "../../node_modules/@mui/utils/esm/generateUtilityClasses/generateUtilityClasses.js", "../../node_modules/@mui/utils/esm/getReactNodeRef/getReactNodeRef.js", "../../node_modules/@mui/utils/esm/getReactElementRef/getReactElementRef.js", "../../node_modules/@mui/material/esm/utils/areArraysEqual.js", "../../node_modules/@mui/material/esm/utils/isHostComponent.js", "../../node_modules/@mui/material/esm/zero-styled/index.js", "../../node_modules/@mui/system/esm/merge/merge.js", "../../node_modules/@mui/system/esm/responsivePropType/responsivePropType.js", "../../node_modules/@mui/system/esm/breakpoints/breakpoints.js", "../../node_modules/@mui/system/esm/cssContainerQueries/cssContainerQueries.js", "../../node_modules/@mui/system/esm/style/style.js", "../../node_modules/@mui/system/esm/memoize/memoize.js", "../../node_modules/@mui/system/esm/spacing/spacing.js", "../../node_modules/@mui/system/esm/compose/compose.js", "../../node_modules/@mui/system/esm/borders/borders.js", "../../node_modules/@mui/system/esm/cssGrid/cssGrid.js", "../../node_modules/@mui/system/esm/palette/palette.js", "../../node_modules/@mui/system/esm/sizing/sizing.js", "../../node_modules/@mui/system/esm/styleFunctionSx/defaultSxConfig.js", "../../node_modules/@mui/system/esm/styleFunctionSx/styleFunctionSx.js", "../../node_modules/@mui/system/esm/styleFunctionSx/extendSxProp.js", "../../node_modules/@mui/material/esm/styles/useTheme.js", "../../node_modules/@emotion/react/dist/emotion-element-489459f2.browser.development.esm.js", "../../node_modules/@emotion/sheet/dist/emotion-sheet.development.esm.js", "../../node_modules/stylis/src/Enum.js", "../../node_modules/stylis/src/Utility.js", "../../node_modules/stylis/src/Tokenizer.js", "../../node_modules/stylis/src/Parser.js", "../../node_modules/stylis/src/Serializer.js", "../../node_modules/stylis/src/Middleware.js", "../../node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js", "../../node_modules/@emotion/memoize/dist/emotion-memoize.esm.js", "../../node_modules/@emotion/cache/dist/emotion-cache.browser.development.esm.js", "../../node_modules/@emotion/react/_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.esm.js", "../../node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js", "../../node_modules/@emotion/hash/dist/emotion-hash.esm.js", "../../node_modules/@emotion/unitless/dist/emotion-unitless.esm.js", "../../node_modules/@emotion/serialize/dist/emotion-serialize.development.esm.js", "../../node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js", "../../node_modules/@emotion/react/dist/emotion-react.browser.development.esm.js", "../../node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.development.esm.js", "../../node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js", "../../node_modules/@emotion/styled/dist/emotion-styled.browser.development.esm.js", "../../node_modules/@mui/styled-engine/esm/StyledEngineProvider/StyledEngineProvider.js", "../../node_modules/@mui/styled-engine/esm/GlobalStyles/GlobalStyles.js", "../../node_modules/@mui/styled-engine/esm/index.js", "../../node_modules/@mui/system/esm/GlobalStyles/GlobalStyles.js", "../../node_modules/@mui/system/esm/createBreakpoints/createBreakpoints.js", "../../node_modules/@mui/system/esm/createTheme/shape.js", "../../node_modules/@mui/system/esm/createTheme/createSpacing.js", "../../node_modules/@mui/system/esm/createTheme/applyStyles.js", "../../node_modules/@mui/system/esm/createTheme/createTheme.js", "../../node_modules/@mui/system/esm/useThemeWithoutDefault/useThemeWithoutDefault.js", "../../node_modules/@mui/system/esm/useTheme/useTheme.js", "../../node_modules/@mui/system/esm/display/display.js", "../../node_modules/@mui/system/esm/flexbox/flexbox.js", "../../node_modules/@mui/system/esm/positions/positions.js", "../../node_modules/@mui/system/esm/shadows/shadows.js", "../../node_modules/@mui/system/esm/typography/typography.js", "../../node_modules/@mui/system/esm/getThemeValue/getThemeValue.js", "../../node_modules/@mui/system/esm/Box/Box.js", "../../node_modules/@mui/system/esm/createBox/createBox.js", "../../node_modules/@mui/system/esm/Box/boxClasses.js", "../../node_modules/@mui/system/esm/preprocessStyles.js", "../../node_modules/@mui/system/esm/createStyled/createStyled.js", "../../node_modules/@mui/system/esm/styled/styled.js", "../../node_modules/@mui/system/esm/useThemeProps/getThemeProps.js", "../../node_modules/@mui/system/esm/useThemeProps/useThemeProps.js", "../../node_modules/@mui/system/esm/useMediaQuery/useMediaQuery.js", "../../node_modules/@mui/system/esm/ThemeProvider/ThemeProvider.js", "../../node_modules/@mui/private-theming/esm/ThemeProvider/ThemeProvider.js", "../../node_modules/@mui/private-theming/esm/useTheme/ThemeContext.js", "../../node_modules/@mui/private-theming/esm/useTheme/useTheme.js", "../../node_modules/@mui/private-theming/esm/ThemeProvider/nested.js", "../../node_modules/@mui/system/esm/DefaultPropsProvider/DefaultPropsProvider.js", "../../node_modules/@mui/system/esm/memoTheme.js", "../../node_modules/@mui/system/esm/cssVars/createCssVarsProvider.js", "../../node_modules/@mui/system/esm/InitColorSchemeScript/InitColorSchemeScript.js", "../../node_modules/@mui/system/esm/cssVars/useCurrentColorScheme.js", "../../node_modules/@mui/system/esm/cssVars/createGetCssVar.js", "../../node_modules/@mui/system/esm/cssVars/cssVarsParser.js", "../../node_modules/@mui/system/esm/cssVars/prepareCssVars.js", "../../node_modules/@mui/system/esm/cssVars/getColorSchemeSelector.js", "../../node_modules/@mui/system/esm/version/index.js", "../../node_modules/@mui/system/esm/Container/createContainer.js", "../../node_modules/@mui/system/esm/Container/Container.js", "../../node_modules/@mui/system/esm/Container/containerClasses.js", "../../node_modules/@mui/system/esm/Grid/Grid.js", "../../node_modules/@mui/system/esm/Grid/createGrid.js", "../../node_modules/@mui/system/esm/Grid/traverseBreakpoints.js", "../../node_modules/@mui/system/esm/Grid/gridGenerator.js", "../../node_modules/@mui/system/esm/Grid/deleteLegacyGridProps.js", "../../node_modules/@mui/system/esm/Grid/gridClasses.js", "../../node_modules/@mui/system/esm/Stack/Stack.js", "../../node_modules/@mui/system/esm/Stack/createStack.js", "../../node_modules/@mui/system/esm/Stack/stackClasses.js", "../../node_modules/@mui/material/esm/colors/common.js", "../../node_modules/@mui/material/esm/colors/grey.js", "../../node_modules/@mui/material/esm/colors/purple.js", "../../node_modules/@mui/material/esm/colors/red.js", "../../node_modules/@mui/material/esm/colors/orange.js", "../../node_modules/@mui/material/esm/colors/blue.js", "../../node_modules/@mui/material/esm/colors/lightBlue.js", "../../node_modules/@mui/material/esm/colors/green.js", "../../node_modules/@mui/material/esm/styles/createPalette.js", "../../node_modules/@mui/system/esm/cssVars/prepareTypographyVars.js", "../../node_modules/@mui/material/esm/styles/createMixins.js", "../../node_modules/@mui/material/esm/styles/createTypography.js", "../../node_modules/@mui/material/esm/styles/shadows.js", "../../node_modules/@mui/material/esm/styles/createTransitions.js", "../../node_modules/@mui/material/esm/styles/zIndex.js", "../../node_modules/@mui/material/esm/styles/stringifyTheme.js", "../../node_modules/@mui/material/esm/styles/createThemeNoVars.js", "../../node_modules/@mui/material/esm/styles/getOverlayAlpha.js", "../../node_modules/@mui/material/esm/styles/createColorScheme.js", "../../node_modules/@mui/material/esm/styles/shouldSkipGeneratingVar.js", "../../node_modules/@mui/material/esm/styles/excludeVariablesFromRoot.js", "../../node_modules/@mui/material/esm/styles/createGetSelector.js", "../../node_modules/@mui/material/esm/styles/createThemeWithVars.js", "../../node_modules/@mui/material/esm/styles/createTheme.js", "../../node_modules/@mui/material/esm/styles/defaultTheme.js", "../../node_modules/@mui/material/esm/styles/identifier.js", "../../node_modules/@mui/material/esm/GlobalStyles/GlobalStyles.js", "../../node_modules/@mui/material/esm/styles/slotShouldForwardProp.js", "../../node_modules/@mui/material/esm/styles/rootShouldForwardProp.js", "../../node_modules/@mui/material/esm/styles/styled.js", "../../node_modules/@mui/material/esm/utils/memoTheme.js", "../../node_modules/@mui/material/esm/DefaultPropsProvider/DefaultPropsProvider.js", "../../node_modules/@mui/material/esm/utils/shouldSpreadAdditionalProps.js", "../../node_modules/@mui/material/esm/utils/capitalize.js", "../../node_modules/@mui/material/esm/utils/createSimplePaletteValueFilter.js", "../../node_modules/@mui/material/esm/Slider/SliderValueLabel.js", "../../node_modules/@mui/material/esm/Slider/sliderClasses.js"], - "sourcesContent": ["/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\nvar React = require('react');\n\n// ATTENTION\n// When adding new symbols to this file,\n// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'\n// The Symbol used to tag the ReactElement-like types.\nvar REACT_ELEMENT_TYPE = Symbol.for('react.element');\nvar REACT_PORTAL_TYPE = Symbol.for('react.portal');\nvar REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');\nvar REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');\nvar REACT_PROFILER_TYPE = Symbol.for('react.profiler');\nvar REACT_PROVIDER_TYPE = Symbol.for('react.provider');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');\nvar REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');\nvar REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');\nvar REACT_MEMO_TYPE = Symbol.for('react.memo');\nvar REACT_LAZY_TYPE = Symbol.for('react.lazy');\nvar REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');\nvar MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nvar FAUX_ITERATOR_SYMBOL = '@@iterator';\nfunction getIteratorFn(maybeIterable) {\n if (maybeIterable === null || typeof maybeIterable !== 'object') {\n return null;\n }\n\n var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];\n\n if (typeof maybeIterator === 'function') {\n return maybeIterator;\n }\n\n return null;\n}\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nfunction error(format) {\n {\n {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n printWarning('error', format, args);\n }\n }\n}\n\nfunction printWarning(level, format, args) {\n // When changing this logic, you might want to also\n // update consoleWithStackDev.www.js as well.\n {\n var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n if (stack !== '') {\n format += '%s';\n args = args.concat([stack]);\n } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n var argsWithFormat = args.map(function (item) {\n return String(item);\n }); // Careful: RN currently depends on this prefix\n\n argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n // breaks IE9: https://github.com/facebook/react/issues/13610\n // eslint-disable-next-line react-internal/no-production-logging\n\n Function.prototype.apply.call(console[level], console, argsWithFormat);\n }\n}\n\n// -----------------------------------------------------------------------------\n\nvar enableScopeAPI = false; // Experimental Create Event Handle API.\nvar enableCacheElement = false;\nvar enableTransitionTracing = false; // No known bugs, but needs performance testing\n\nvar enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber\n// stuff. Intended to enable React core members to more easily debug scheduling\n// issues in DEV builds.\n\nvar enableDebugTracing = false; // Track which Fiber(s) schedule render work.\n\nvar REACT_MODULE_REFERENCE;\n\n{\n REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');\n}\n\nfunction isValidElementType(type) {\n if (typeof type === 'string' || typeof type === 'function') {\n return true;\n } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).\n\n\n if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableCacheElement || enableTransitionTracing ) {\n return true;\n }\n\n if (typeof type === 'object' && type !== null) {\n if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object\n // types supported by any Flight configuration anywhere since\n // we don't know which Flight build this will end up being used\n // with.\n type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction getWrappedName(outerType, innerType, wrapperName) {\n var displayName = outerType.displayName;\n\n if (displayName) {\n return displayName;\n }\n\n var functionName = innerType.displayName || innerType.name || '';\n return functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName;\n} // Keep in sync with react-reconciler/getComponentNameFromFiber\n\n\nfunction getContextName(type) {\n return type.displayName || 'Context';\n} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n if (type == null) {\n // Host root, text node or just invalid type.\n return null;\n }\n\n {\n if (typeof type.tag === 'number') {\n error('Received an unexpected object in getComponentNameFromType(). ' + 'This is likely a bug in React. Please file an issue.');\n }\n }\n\n if (typeof type === 'function') {\n return type.displayName || type.name || null;\n }\n\n if (typeof type === 'string') {\n return type;\n }\n\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return 'Fragment';\n\n case REACT_PORTAL_TYPE:\n return 'Portal';\n\n case REACT_PROFILER_TYPE:\n return 'Profiler';\n\n case REACT_STRICT_MODE_TYPE:\n return 'StrictMode';\n\n case REACT_SUSPENSE_TYPE:\n return 'Suspense';\n\n case REACT_SUSPENSE_LIST_TYPE:\n return 'SuspenseList';\n\n }\n\n if (typeof type === 'object') {\n switch (type.$$typeof) {\n case REACT_CONTEXT_TYPE:\n var context = type;\n return getContextName(context) + '.Consumer';\n\n case REACT_PROVIDER_TYPE:\n var provider = type;\n return getContextName(provider._context) + '.Provider';\n\n case REACT_FORWARD_REF_TYPE:\n return getWrappedName(type, type.render, 'ForwardRef');\n\n case REACT_MEMO_TYPE:\n var outerName = type.displayName || null;\n\n if (outerName !== null) {\n return outerName;\n }\n\n return getComponentNameFromType(type.type) || 'Memo';\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n return getComponentNameFromType(init(payload));\n } catch (x) {\n return null;\n }\n }\n\n // eslint-disable-next-line no-fallthrough\n }\n }\n\n return null;\n}\n\nvar assign = Object.assign;\n\n// Helpers to patch console.logs to avoid logging during side-effect free\n// replaying on render function. This currently only patches the object\n// lazily which won't cover if the log function was extracted eagerly.\n// We could also eagerly patch the method.\nvar disabledDepth = 0;\nvar prevLog;\nvar prevInfo;\nvar prevWarn;\nvar prevError;\nvar prevGroup;\nvar prevGroupCollapsed;\nvar prevGroupEnd;\n\nfunction disabledLog() {}\n\ndisabledLog.__reactDisabledLog = true;\nfunction disableLogs() {\n {\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n prevLog = console.log;\n prevInfo = console.info;\n prevWarn = console.warn;\n prevError = console.error;\n prevGroup = console.group;\n prevGroupCollapsed = console.groupCollapsed;\n prevGroupEnd = console.groupEnd; // https://github.com/facebook/react/issues/19099\n\n var props = {\n configurable: true,\n enumerable: true,\n value: disabledLog,\n writable: true\n }; // $FlowFixMe Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n info: props,\n log: props,\n warn: props,\n error: props,\n group: props,\n groupCollapsed: props,\n groupEnd: props\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n disabledDepth++;\n }\n}\nfunction reenableLogs() {\n {\n disabledDepth--;\n\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n var props = {\n configurable: true,\n enumerable: true,\n writable: true\n }; // $FlowFixMe Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n log: assign({}, props, {\n value: prevLog\n }),\n info: assign({}, props, {\n value: prevInfo\n }),\n warn: assign({}, props, {\n value: prevWarn\n }),\n error: assign({}, props, {\n value: prevError\n }),\n group: assign({}, props, {\n value: prevGroup\n }),\n groupCollapsed: assign({}, props, {\n value: prevGroupCollapsed\n }),\n groupEnd: assign({}, props, {\n value: prevGroupEnd\n })\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n if (disabledDepth < 0) {\n error('disabledDepth fell below zero. ' + 'This is a bug in React. Please file an issue.');\n }\n }\n}\n\nvar ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;\nvar prefix;\nfunction describeBuiltInComponentFrame(name, source, ownerFn) {\n {\n if (prefix === undefined) {\n // Extract the VM specific prefix used by each line.\n try {\n throw Error();\n } catch (x) {\n var match = x.stack.trim().match(/\\n( *(at )?)/);\n prefix = match && match[1] || '';\n }\n } // We use the prefix to ensure our stacks line up with native stack frames.\n\n\n return '\\n' + prefix + name;\n }\n}\nvar reentry = false;\nvar componentFrameCache;\n\n{\n var PossiblyWeakMap = typeof WeakMap === 'function' ? WeakMap : Map;\n componentFrameCache = new PossiblyWeakMap();\n}\n\nfunction describeNativeComponentFrame(fn, construct) {\n // If something asked for a stack inside a fake render, it should get ignored.\n if ( !fn || reentry) {\n return '';\n }\n\n {\n var frame = componentFrameCache.get(fn);\n\n if (frame !== undefined) {\n return frame;\n }\n }\n\n var control;\n reentry = true;\n var previousPrepareStackTrace = Error.prepareStackTrace; // $FlowFixMe It does accept undefined.\n\n Error.prepareStackTrace = undefined;\n var previousDispatcher;\n\n {\n previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function\n // for warnings.\n\n ReactCurrentDispatcher.current = null;\n disableLogs();\n }\n\n try {\n // This should throw.\n if (construct) {\n // Something should be setting the props in the constructor.\n var Fake = function () {\n throw Error();\n }; // $FlowFixMe\n\n\n Object.defineProperty(Fake.prototype, 'props', {\n set: function () {\n // We use a throwing setter instead of frozen or non-writable props\n // because that won't throw in a non-strict mode function.\n throw Error();\n }\n });\n\n if (typeof Reflect === 'object' && Reflect.construct) {\n // We construct a different control for this case to include any extra\n // frames added by the construct call.\n try {\n Reflect.construct(Fake, []);\n } catch (x) {\n control = x;\n }\n\n Reflect.construct(fn, [], Fake);\n } else {\n try {\n Fake.call();\n } catch (x) {\n control = x;\n }\n\n fn.call(Fake.prototype);\n }\n } else {\n try {\n throw Error();\n } catch (x) {\n control = x;\n }\n\n fn();\n }\n } catch (sample) {\n // This is inlined manually because closure doesn't do it for us.\n if (sample && control && typeof sample.stack === 'string') {\n // This extracts the first frame from the sample that isn't also in the control.\n // Skipping one frame that we assume is the frame that calls the two.\n var sampleLines = sample.stack.split('\\n');\n var controlLines = control.stack.split('\\n');\n var s = sampleLines.length - 1;\n var c = controlLines.length - 1;\n\n while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) {\n // We expect at least one stack frame to be shared.\n // Typically this will be the root most one. However, stack frames may be\n // cut off due to maximum stack limits. In this case, one maybe cut off\n // earlier than the other. We assume that the sample is longer or the same\n // and there for cut off earlier. So we should find the root most frame in\n // the sample somewhere in the control.\n c--;\n }\n\n for (; s >= 1 && c >= 0; s--, c--) {\n // Next we find the first one that isn't the same which should be the\n // frame that called our sample function and the control.\n if (sampleLines[s] !== controlLines[c]) {\n // In V8, the first line is describing the message but other VMs don't.\n // If we're about to return the first line, and the control is also on the same\n // line, that's a pretty good indicator that our sample threw at same line as\n // the control. I.e. before we entered the sample frame. So we ignore this result.\n // This can happen if you passed a class to function component, or non-function.\n if (s !== 1 || c !== 1) {\n do {\n s--;\n c--; // We may still have similar intermediate frames from the construct call.\n // The next one that isn't the same should be our match though.\n\n if (c < 0 || sampleLines[s] !== controlLines[c]) {\n // V8 adds a \"new\" prefix for native classes. Let's remove it to make it prettier.\n var _frame = '\\n' + sampleLines[s].replace(' at new ', ' at '); // If our component frame is labeled \"\"\n // but we have a user-provided \"displayName\"\n // splice it in to make the stack more readable.\n\n\n if (fn.displayName && _frame.includes('')) {\n _frame = _frame.replace('', fn.displayName);\n }\n\n {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, _frame);\n }\n } // Return the line we found.\n\n\n return _frame;\n }\n } while (s >= 1 && c >= 0);\n }\n\n break;\n }\n }\n }\n } finally {\n reentry = false;\n\n {\n ReactCurrentDispatcher.current = previousDispatcher;\n reenableLogs();\n }\n\n Error.prepareStackTrace = previousPrepareStackTrace;\n } // Fallback to just using the name if we couldn't make it throw.\n\n\n var name = fn ? fn.displayName || fn.name : '';\n var syntheticFrame = name ? describeBuiltInComponentFrame(name) : '';\n\n {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, syntheticFrame);\n }\n }\n\n return syntheticFrame;\n}\nfunction describeFunctionComponentFrame(fn, source, ownerFn) {\n {\n return describeNativeComponentFrame(fn, false);\n }\n}\n\nfunction shouldConstruct(Component) {\n var prototype = Component.prototype;\n return !!(prototype && prototype.isReactComponent);\n}\n\nfunction describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {\n\n if (type == null) {\n return '';\n }\n\n if (typeof type === 'function') {\n {\n return describeNativeComponentFrame(type, shouldConstruct(type));\n }\n }\n\n if (typeof type === 'string') {\n return describeBuiltInComponentFrame(type);\n }\n\n switch (type) {\n case REACT_SUSPENSE_TYPE:\n return describeBuiltInComponentFrame('Suspense');\n\n case REACT_SUSPENSE_LIST_TYPE:\n return describeBuiltInComponentFrame('SuspenseList');\n }\n\n if (typeof type === 'object') {\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n return describeFunctionComponentFrame(type.render);\n\n case REACT_MEMO_TYPE:\n // Memo may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn);\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n // Lazy may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn);\n } catch (x) {}\n }\n }\n }\n\n return '';\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar loggedTypeFailures = {};\nvar ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n ReactDebugCurrentFrame.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame.setExtraStackFrame(null);\n }\n }\n}\n\nfunction checkPropTypes(typeSpecs, values, location, componentName, element) {\n {\n // $FlowFixMe This is okay but Flow doesn't know it.\n var has = Function.call.bind(hasOwnProperty);\n\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n // eslint-disable-next-line react-internal/prod-error-codes\n var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.');\n err.name = 'Invariant Violation';\n throw err;\n }\n\n error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED');\n } catch (ex) {\n error$1 = ex;\n }\n\n if (error$1 && !(error$1 instanceof Error)) {\n setCurrentlyValidatingElement(element);\n\n error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1);\n\n setCurrentlyValidatingElement(null);\n }\n\n if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error$1.message] = true;\n setCurrentlyValidatingElement(element);\n\n error('Failed %s type: %s', location, error$1.message);\n\n setCurrentlyValidatingElement(null);\n }\n }\n }\n }\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n return isArrayImpl(a);\n}\n\n/*\n * The `'' + value` pattern (used in in perf-sensitive code) throws for Symbol\n * and Temporal.* types. See https://github.com/facebook/react/pull/22064.\n *\n * The functions in this module will throw an easier-to-understand,\n * easier-to-debug exception with a clear errors message message explaining the\n * problem. (Instead of a confusing exception thrown inside the implementation\n * of the `value` object).\n */\n// $FlowFixMe only called in DEV, so void return is not possible.\nfunction typeName(value) {\n {\n // toStringTag is needed for namespaced types like Temporal.Instant\n var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag;\n var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object';\n return type;\n }\n} // $FlowFixMe only called in DEV, so void return is not possible.\n\n\nfunction willCoercionThrow(value) {\n {\n try {\n testStringCoercion(value);\n return false;\n } catch (e) {\n return true;\n }\n }\n}\n\nfunction testStringCoercion(value) {\n // If you ended up here by following an exception call stack, here's what's\n // happened: you supplied an object or symbol value to React (as a prop, key,\n // DOM attribute, CSS property, string ref, etc.) and when React tried to\n // coerce it to a string using `'' + value`, an exception was thrown.\n //\n // The most common types that will cause this exception are `Symbol` instances\n // and Temporal objects like `Temporal.Instant`. But any object that has a\n // `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this\n // exception. (Library authors do this to prevent users from using built-in\n // numeric operators like `+` or comparison operators like `>=` because custom\n // methods are needed to perform accurate arithmetic or comparison.)\n //\n // To fix the problem, coerce this object or symbol value to a string before\n // passing it to React. The most reliable way is usually `String(value)`.\n //\n // To find which value is throwing, check the browser or debugger console.\n // Before this exception was thrown, there should be `console.error` output\n // that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the\n // problem and how that type was used: key, atrribute, input value prop, etc.\n // In most cases, this console output also shows the component and its\n // ancestor components where the exception happened.\n //\n // eslint-disable-next-line react-internal/safe-string-coercion\n return '' + value;\n}\nfunction checkKeyStringCoercion(value) {\n {\n if (willCoercionThrow(value)) {\n error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\n\nvar ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;\nvar RESERVED_PROPS = {\n key: true,\n ref: true,\n __self: true,\n __source: true\n};\nvar specialPropKeyWarningShown;\nvar specialPropRefWarningShown;\nvar didWarnAboutStringRefs;\n\n{\n didWarnAboutStringRefs = {};\n}\n\nfunction hasValidRef(config) {\n {\n if (hasOwnProperty.call(config, 'ref')) {\n var getter = Object.getOwnPropertyDescriptor(config, 'ref').get;\n\n if (getter && getter.isReactWarning) {\n return false;\n }\n }\n }\n\n return config.ref !== undefined;\n}\n\nfunction hasValidKey(config) {\n {\n if (hasOwnProperty.call(config, 'key')) {\n var getter = Object.getOwnPropertyDescriptor(config, 'key').get;\n\n if (getter && getter.isReactWarning) {\n return false;\n }\n }\n }\n\n return config.key !== undefined;\n}\n\nfunction warnIfStringRefCannotBeAutoConverted(config, self) {\n {\n if (typeof config.ref === 'string' && ReactCurrentOwner.current && self && ReactCurrentOwner.current.stateNode !== self) {\n var componentName = getComponentNameFromType(ReactCurrentOwner.current.type);\n\n if (!didWarnAboutStringRefs[componentName]) {\n error('Component \"%s\" contains the string ref \"%s\". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner.current.type), config.ref);\n\n didWarnAboutStringRefs[componentName] = true;\n }\n }\n }\n}\n\nfunction defineKeyPropWarningGetter(props, displayName) {\n {\n var warnAboutAccessingKey = function () {\n if (!specialPropKeyWarningShown) {\n specialPropKeyWarningShown = true;\n\n error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n }\n };\n\n warnAboutAccessingKey.isReactWarning = true;\n Object.defineProperty(props, 'key', {\n get: warnAboutAccessingKey,\n configurable: true\n });\n }\n}\n\nfunction defineRefPropWarningGetter(props, displayName) {\n {\n var warnAboutAccessingRef = function () {\n if (!specialPropRefWarningShown) {\n specialPropRefWarningShown = true;\n\n error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n }\n };\n\n warnAboutAccessingRef.isReactWarning = true;\n Object.defineProperty(props, 'ref', {\n get: warnAboutAccessingRef,\n configurable: true\n });\n }\n}\n/**\n * Factory method to create a new React element. This no longer adheres to\n * the class pattern, so do not use new to call it. Also, instanceof check\n * will not work. Instead test $$typeof field against Symbol.for('react.element') to check\n * if something is a React Element.\n *\n * @param {*} type\n * @param {*} props\n * @param {*} key\n * @param {string|object} ref\n * @param {*} owner\n * @param {*} self A *temporary* helper to detect places where `this` is\n * different from the `owner` when React.createElement is called, so that we\n * can warn. We want to get rid of owner and replace string `ref`s with arrow\n * functions, and as long as `this` and owner are the same, there will be no\n * change in behavior.\n * @param {*} source An annotation object (added by a transpiler or otherwise)\n * indicating filename, line number, and/or other information.\n * @internal\n */\n\n\nvar ReactElement = function (type, key, ref, self, source, owner, props) {\n var element = {\n // This tag allows us to uniquely identify this as a React Element\n $$typeof: REACT_ELEMENT_TYPE,\n // Built-in properties that belong on the element\n type: type,\n key: key,\n ref: ref,\n props: props,\n // Record the component responsible for creating this element.\n _owner: owner\n };\n\n {\n // The validation flag is currently mutative. We put it on\n // an external backing store so that we can freeze the whole object.\n // This can be replaced with a WeakMap once they are implemented in\n // commonly used development environments.\n element._store = {}; // To make comparing ReactElements easier for testing purposes, we make\n // the validation flag non-enumerable (where possible, which should\n // include every environment we run tests in), so the test framework\n // ignores it.\n\n Object.defineProperty(element._store, 'validated', {\n configurable: false,\n enumerable: false,\n writable: true,\n value: false\n }); // self and source are DEV only properties.\n\n Object.defineProperty(element, '_self', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: self\n }); // Two elements created in two different places should be considered\n // equal for testing purposes and therefore we hide it from enumeration.\n\n Object.defineProperty(element, '_source', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: source\n });\n\n if (Object.freeze) {\n Object.freeze(element.props);\n Object.freeze(element);\n }\n }\n\n return element;\n};\n/**\n * https://github.com/reactjs/rfcs/pull/107\n * @param {*} type\n * @param {object} props\n * @param {string} key\n */\n\nfunction jsxDEV(type, config, maybeKey, source, self) {\n {\n var propName; // Reserved names are extracted\n\n var props = {};\n var key = null;\n var ref = null; // Currently, key can be spread in as a prop. This causes a potential\n // issue if key is also explicitly declared (ie.
\n // or
). We want to deprecate key spread,\n // but as an intermediary step, we will use jsxDEV for everything except\n //
, because we aren't currently able to tell if\n // key is explicitly declared to be undefined or not.\n\n if (maybeKey !== undefined) {\n {\n checkKeyStringCoercion(maybeKey);\n }\n\n key = '' + maybeKey;\n }\n\n if (hasValidKey(config)) {\n {\n checkKeyStringCoercion(config.key);\n }\n\n key = '' + config.key;\n }\n\n if (hasValidRef(config)) {\n ref = config.ref;\n warnIfStringRefCannotBeAutoConverted(config, self);\n } // Remaining properties are added to a new props object\n\n\n for (propName in config) {\n if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {\n props[propName] = config[propName];\n }\n } // Resolve default props\n\n\n if (type && type.defaultProps) {\n var defaultProps = type.defaultProps;\n\n for (propName in defaultProps) {\n if (props[propName] === undefined) {\n props[propName] = defaultProps[propName];\n }\n }\n }\n\n if (key || ref) {\n var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type;\n\n if (key) {\n defineKeyPropWarningGetter(props, displayName);\n }\n\n if (ref) {\n defineRefPropWarningGetter(props, displayName);\n }\n }\n\n return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);\n }\n}\n\nvar ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner;\nvar ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement$1(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n ReactDebugCurrentFrame$1.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame$1.setExtraStackFrame(null);\n }\n }\n}\n\nvar propTypesMisspellWarningShown;\n\n{\n propTypesMisspellWarningShown = false;\n}\n/**\n * Verifies the object is a ReactElement.\n * See https://reactjs.org/docs/react-api.html#isvalidelement\n * @param {?object} object\n * @return {boolean} True if `object` is a ReactElement.\n * @final\n */\n\n\nfunction isValidElement(object) {\n {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n }\n}\n\nfunction getDeclarationErrorAddendum() {\n {\n if (ReactCurrentOwner$1.current) {\n var name = getComponentNameFromType(ReactCurrentOwner$1.current.type);\n\n if (name) {\n return '\\n\\nCheck the render method of `' + name + '`.';\n }\n }\n\n return '';\n }\n}\n\nfunction getSourceInfoErrorAddendum(source) {\n {\n if (source !== undefined) {\n var fileName = source.fileName.replace(/^.*[\\\\\\/]/, '');\n var lineNumber = source.lineNumber;\n return '\\n\\nCheck your code at ' + fileName + ':' + lineNumber + '.';\n }\n\n return '';\n }\n}\n/**\n * Warn if there's no key explicitly set on dynamic arrays of children or\n * object keys are not valid. This allows us to keep track of children between\n * updates.\n */\n\n\nvar ownerHasKeyUseWarning = {};\n\nfunction getCurrentComponentErrorInfo(parentType) {\n {\n var info = getDeclarationErrorAddendum();\n\n if (!info) {\n var parentName = typeof parentType === 'string' ? parentType : parentType.displayName || parentType.name;\n\n if (parentName) {\n info = \"\\n\\nCheck the top-level render call using <\" + parentName + \">.\";\n }\n }\n\n return info;\n }\n}\n/**\n * Warn if the element doesn't have an explicit key assigned to it.\n * This element is in an array. The array could grow and shrink or be\n * reordered. All children that haven't already been validated are required to\n * have a \"key\" property assigned to it. Error statuses are cached so a warning\n * will only be shown once.\n *\n * @internal\n * @param {ReactElement} element Element that requires a key.\n * @param {*} parentType element's parent's type.\n */\n\n\nfunction validateExplicitKey(element, parentType) {\n {\n if (!element._store || element._store.validated || element.key != null) {\n return;\n }\n\n element._store.validated = true;\n var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType);\n\n if (ownerHasKeyUseWarning[currentComponentErrorInfo]) {\n return;\n }\n\n ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a\n // property, it may be the creator of the child that's responsible for\n // assigning it a key.\n\n var childOwner = '';\n\n if (element && element._owner && element._owner !== ReactCurrentOwner$1.current) {\n // Give the component that originally created this child.\n childOwner = \" It was passed a child from \" + getComponentNameFromType(element._owner.type) + \".\";\n }\n\n setCurrentlyValidatingElement$1(element);\n\n error('Each child in a list should have a unique \"key\" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner);\n\n setCurrentlyValidatingElement$1(null);\n }\n}\n/**\n * Ensure that every element either is passed in a static location, in an\n * array with an explicit keys property defined, or in an object literal\n * with valid key property.\n *\n * @internal\n * @param {ReactNode} node Statically passed child of any type.\n * @param {*} parentType node's parent's type.\n */\n\n\nfunction validateChildKeys(node, parentType) {\n {\n if (typeof node !== 'object') {\n return;\n }\n\n if (isArray(node)) {\n for (var i = 0; i < node.length; i++) {\n var child = node[i];\n\n if (isValidElement(child)) {\n validateExplicitKey(child, parentType);\n }\n }\n } else if (isValidElement(node)) {\n // This element was passed in a valid location.\n if (node._store) {\n node._store.validated = true;\n }\n } else if (node) {\n var iteratorFn = getIteratorFn(node);\n\n if (typeof iteratorFn === 'function') {\n // Entry iterators used to provide implicit keys,\n // but now we print a separate warning for them later.\n if (iteratorFn !== node.entries) {\n var iterator = iteratorFn.call(node);\n var step;\n\n while (!(step = iterator.next()).done) {\n if (isValidElement(step.value)) {\n validateExplicitKey(step.value, parentType);\n }\n }\n }\n }\n }\n }\n}\n/**\n * Given an element, validate that its props follow the propTypes definition,\n * provided by the type.\n *\n * @param {ReactElement} element\n */\n\n\nfunction validatePropTypes(element) {\n {\n var type = element.type;\n\n if (type === null || type === undefined || typeof type === 'string') {\n return;\n }\n\n var propTypes;\n\n if (typeof type === 'function') {\n propTypes = type.propTypes;\n } else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here.\n // Inner props are checked in the reconciler.\n type.$$typeof === REACT_MEMO_TYPE)) {\n propTypes = type.propTypes;\n } else {\n return;\n }\n\n if (propTypes) {\n // Intentionally inside to avoid triggering lazy initializers:\n var name = getComponentNameFromType(type);\n checkPropTypes(propTypes, element.props, 'prop', name, element);\n } else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) {\n propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers:\n\n var _name = getComponentNameFromType(type);\n\n error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown');\n }\n\n if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) {\n error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.');\n }\n }\n}\n/**\n * Given a fragment, validate that it can only be provided with fragment props\n * @param {ReactElement} fragment\n */\n\n\nfunction validateFragmentProps(fragment) {\n {\n var keys = Object.keys(fragment.props);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n\n if (key !== 'children' && key !== 'key') {\n setCurrentlyValidatingElement$1(fragment);\n\n error('Invalid prop `%s` supplied to `React.Fragment`. ' + 'React.Fragment can only have `key` and `children` props.', key);\n\n setCurrentlyValidatingElement$1(null);\n break;\n }\n }\n\n if (fragment.ref !== null) {\n setCurrentlyValidatingElement$1(fragment);\n\n error('Invalid attribute `ref` supplied to `React.Fragment`.');\n\n setCurrentlyValidatingElement$1(null);\n }\n }\n}\n\nvar didWarnAboutKeySpread = {};\nfunction jsxWithValidation(type, props, key, isStaticChildren, source, self) {\n {\n var validType = isValidElementType(type); // We warn in this case but don't throw. We expect the element creation to\n // succeed and there will likely be errors in render.\n\n if (!validType) {\n var info = '';\n\n if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) {\n info += ' You likely forgot to export your component from the file ' + \"it's defined in, or you might have mixed up default and named imports.\";\n }\n\n var sourceInfo = getSourceInfoErrorAddendum(source);\n\n if (sourceInfo) {\n info += sourceInfo;\n } else {\n info += getDeclarationErrorAddendum();\n }\n\n var typeString;\n\n if (type === null) {\n typeString = 'null';\n } else if (isArray(type)) {\n typeString = 'array';\n } else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) {\n typeString = \"<\" + (getComponentNameFromType(type.type) || 'Unknown') + \" />\";\n info = ' Did you accidentally export a JSX literal instead of a component?';\n } else {\n typeString = typeof type;\n }\n\n error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info);\n }\n\n var element = jsxDEV(type, props, key, source, self); // The result can be nullish if a mock or a custom function is used.\n // TODO: Drop this when these are no longer allowed as the type argument.\n\n if (element == null) {\n return element;\n } // Skip key warning if the type isn't valid since our key validation logic\n // doesn't expect a non-string/function type and can throw confusing errors.\n // We don't want exception behavior to differ between dev and prod.\n // (Rendering will throw with a helpful message and as soon as the type is\n // fixed, the key warnings will appear.)\n\n\n if (validType) {\n var children = props.children;\n\n if (children !== undefined) {\n if (isStaticChildren) {\n if (isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n validateChildKeys(children[i], type);\n }\n\n if (Object.freeze) {\n Object.freeze(children);\n }\n } else {\n error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.');\n }\n } else {\n validateChildKeys(children, type);\n }\n }\n }\n\n {\n if (hasOwnProperty.call(props, 'key')) {\n var componentName = getComponentNameFromType(type);\n var keys = Object.keys(props).filter(function (k) {\n return k !== 'key';\n });\n var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}';\n\n if (!didWarnAboutKeySpread[componentName + beforeExample]) {\n var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}';\n\n error('A props object containing a \"key\" prop is being spread into JSX:\\n' + ' let props = %s;\\n' + ' <%s {...props} />\\n' + 'React keys must be passed directly to JSX without using spread:\\n' + ' let props = %s;\\n' + ' <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName);\n\n didWarnAboutKeySpread[componentName + beforeExample] = true;\n }\n }\n }\n\n if (type === REACT_FRAGMENT_TYPE) {\n validateFragmentProps(element);\n } else {\n validatePropTypes(element);\n }\n\n return element;\n }\n} // These two functions exist to still get child warnings in dev\n// even with the prod transform. This means that jsxDEV is purely\n// opt-in behavior for better messages but that we won't stop\n// giving you warnings if you use production apis.\n\nfunction jsxWithValidationStatic(type, props, key) {\n {\n return jsxWithValidation(type, props, key, true);\n }\n}\nfunction jsxWithValidationDynamic(type, props, key) {\n {\n return jsxWithValidation(type, props, key, false);\n }\n}\n\nvar jsx = jsxWithValidationDynamic ; // we may want to special case jsxs internally to take advantage of static children.\n// for now we can ship identical prod functions\n\nvar jsxs = jsxWithValidationStatic ;\n\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsx;\nexports.jsxs = jsxs;\n })();\n}\n", "'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n", "/**\n * @license React\n * react-is.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function typeOf(object) {\n if (\"object\" === typeof object && null !== object) {\n var $$typeof = object.$$typeof;\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n switch (((object = object.type), object)) {\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n case REACT_SUSPENSE_LIST_TYPE:\n case REACT_VIEW_TRANSITION_TYPE:\n return object;\n default:\n switch (((object = object && object.$$typeof), object)) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n return object;\n case REACT_CONSUMER_TYPE:\n return object;\n default:\n return $$typeof;\n }\n }\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n }\n var REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_VIEW_TRANSITION_TYPE = Symbol.for(\"react.view_transition\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\n exports.ContextConsumer = REACT_CONSUMER_TYPE;\n exports.ContextProvider = REACT_CONTEXT_TYPE;\n exports.Element = REACT_ELEMENT_TYPE;\n exports.ForwardRef = REACT_FORWARD_REF_TYPE;\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.Lazy = REACT_LAZY_TYPE;\n exports.Memo = REACT_MEMO_TYPE;\n exports.Portal = REACT_PORTAL_TYPE;\n exports.Profiler = REACT_PROFILER_TYPE;\n exports.StrictMode = REACT_STRICT_MODE_TYPE;\n exports.Suspense = REACT_SUSPENSE_TYPE;\n exports.SuspenseList = REACT_SUSPENSE_LIST_TYPE;\n exports.isContextConsumer = function (object) {\n return typeOf(object) === REACT_CONSUMER_TYPE;\n };\n exports.isContextProvider = function (object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n };\n exports.isElement = function (object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n };\n exports.isForwardRef = function (object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n };\n exports.isFragment = function (object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n };\n exports.isLazy = function (object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n };\n exports.isMemo = function (object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n };\n exports.isPortal = function (object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n };\n exports.isProfiler = function (object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n };\n exports.isStrictMode = function (object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n };\n exports.isSuspense = function (object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n };\n exports.isSuspenseList = function (object) {\n return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;\n };\n exports.isValidElementType = function (type) {\n return \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE ||\n void 0 !== type.getModuleId))\n ? !0\n : !1;\n };\n exports.typeOf = typeOf;\n })();\n", "'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n", "/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n", "'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n", "'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport chainPropTypes from '@mui/utils/chainPropTypes';\nimport composeClasses from '@mui/utils/composeClasses';\nimport { alpha, lighten, darken } from '@mui/system/colorManipulator';\nimport { useRtl } from '@mui/system/RtlProvider';\nimport useSlotProps from '@mui/utils/useSlotProps';\nimport { useSlider, valueToPercent } from \"./useSlider.js\";\nimport isHostComponent from \"../utils/isHostComponent.js\";\nimport { styled } from \"../zero-styled/index.js\";\nimport memoTheme from \"../utils/memoTheme.js\";\nimport { useDefaultProps } from \"../DefaultPropsProvider/index.js\";\nimport slotShouldForwardProp from \"../styles/slotShouldForwardProp.js\";\nimport shouldSpreadAdditionalProps from \"../utils/shouldSpreadAdditionalProps.js\";\nimport capitalize from \"../utils/capitalize.js\";\nimport createSimplePaletteValueFilter from \"../utils/createSimplePaletteValueFilter.js\";\nimport BaseSliderValueLabel from \"./SliderValueLabel.js\";\nimport sliderClasses, { getSliderUtilityClass } from \"./sliderClasses.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction Identity(x) {\n return x;\n}\nexport const SliderRoot = styled('span', {\n name: 'MuiSlider',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[`color${capitalize(ownerState.color)}`], ownerState.size !== 'medium' && styles[`size${capitalize(ownerState.size)}`], ownerState.marked && styles.marked, ownerState.orientation === 'vertical' && styles.vertical, ownerState.track === 'inverted' && styles.trackInverted, ownerState.track === false && styles.trackFalse];\n }\n})(memoTheme(({\n theme\n}) => ({\n borderRadius: 12,\n boxSizing: 'content-box',\n display: 'inline-block',\n position: 'relative',\n cursor: 'pointer',\n touchAction: 'none',\n WebkitTapHighlightColor: 'transparent',\n '@media print': {\n colorAdjust: 'exact'\n },\n [`&.${sliderClasses.disabled}`]: {\n pointerEvents: 'none',\n cursor: 'default',\n color: (theme.vars || theme).palette.grey[400]\n },\n [`&.${sliderClasses.dragging}`]: {\n [`& .${sliderClasses.thumb}, & .${sliderClasses.track}`]: {\n transition: 'none'\n }\n },\n variants: [...Object.entries(theme.palette).filter(createSimplePaletteValueFilter()).map(([color]) => ({\n props: {\n color\n },\n style: {\n color: (theme.vars || theme).palette[color].main\n }\n })), {\n props: {\n orientation: 'horizontal'\n },\n style: {\n height: 4,\n width: '100%',\n padding: '13px 0',\n // The primary input mechanism of the device includes a pointing device of limited accuracy.\n '@media (pointer: coarse)': {\n // Reach 42px touch target, about ~8mm on screen.\n padding: '20px 0'\n }\n }\n }, {\n props: {\n orientation: 'horizontal',\n size: 'small'\n },\n style: {\n height: 2\n }\n }, {\n props: {\n orientation: 'horizontal',\n marked: true\n },\n style: {\n marginBottom: 20\n }\n }, {\n props: {\n orientation: 'vertical'\n },\n style: {\n height: '100%',\n width: 4,\n padding: '0 13px',\n // The primary input mechanism of the device includes a pointing device of limited accuracy.\n '@media (pointer: coarse)': {\n // Reach 42px touch target, about ~8mm on screen.\n padding: '0 20px'\n }\n }\n }, {\n props: {\n orientation: 'vertical',\n size: 'small'\n },\n style: {\n width: 2\n }\n }, {\n props: {\n orientation: 'vertical',\n marked: true\n },\n style: {\n marginRight: 44\n }\n }]\n})));\nexport const SliderRail = styled('span', {\n name: 'MuiSlider',\n slot: 'Rail',\n overridesResolver: (props, styles) => styles.rail\n})({\n display: 'block',\n position: 'absolute',\n borderRadius: 'inherit',\n backgroundColor: 'currentColor',\n opacity: 0.38,\n variants: [{\n props: {\n orientation: 'horizontal'\n },\n style: {\n width: '100%',\n height: 'inherit',\n top: '50%',\n transform: 'translateY(-50%)'\n }\n }, {\n props: {\n orientation: 'vertical'\n },\n style: {\n height: '100%',\n width: 'inherit',\n left: '50%',\n transform: 'translateX(-50%)'\n }\n }, {\n props: {\n track: 'inverted'\n },\n style: {\n opacity: 1\n }\n }]\n});\nexport const SliderTrack = styled('span', {\n name: 'MuiSlider',\n slot: 'Track',\n overridesResolver: (props, styles) => styles.track\n})(memoTheme(({\n theme\n}) => {\n return {\n display: 'block',\n position: 'absolute',\n borderRadius: 'inherit',\n border: '1px solid currentColor',\n backgroundColor: 'currentColor',\n transition: theme.transitions.create(['left', 'width', 'bottom', 'height'], {\n duration: theme.transitions.duration.shortest\n }),\n variants: [{\n props: {\n size: 'small'\n },\n style: {\n border: 'none'\n }\n }, {\n props: {\n orientation: 'horizontal'\n },\n style: {\n height: 'inherit',\n top: '50%',\n transform: 'translateY(-50%)'\n }\n }, {\n props: {\n orientation: 'vertical'\n },\n style: {\n width: 'inherit',\n left: '50%',\n transform: 'translateX(-50%)'\n }\n }, {\n props: {\n track: false\n },\n style: {\n display: 'none'\n }\n }, ...Object.entries(theme.palette).filter(createSimplePaletteValueFilter()).map(([color]) => ({\n props: {\n color,\n track: 'inverted'\n },\n style: {\n ...(theme.vars ? {\n backgroundColor: theme.vars.palette.Slider[`${color}Track`],\n borderColor: theme.vars.palette.Slider[`${color}Track`]\n } : {\n backgroundColor: lighten(theme.palette[color].main, 0.62),\n borderColor: lighten(theme.palette[color].main, 0.62),\n ...theme.applyStyles('dark', {\n backgroundColor: darken(theme.palette[color].main, 0.5)\n }),\n ...theme.applyStyles('dark', {\n borderColor: darken(theme.palette[color].main, 0.5)\n })\n })\n }\n }))]\n };\n}));\nexport const SliderThumb = styled('span', {\n name: 'MuiSlider',\n slot: 'Thumb',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.thumb, styles[`thumbColor${capitalize(ownerState.color)}`], ownerState.size !== 'medium' && styles[`thumbSize${capitalize(ownerState.size)}`]];\n }\n})(memoTheme(({\n theme\n}) => ({\n position: 'absolute',\n width: 20,\n height: 20,\n boxSizing: 'border-box',\n borderRadius: '50%',\n outline: 0,\n backgroundColor: 'currentColor',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n transition: theme.transitions.create(['box-shadow', 'left', 'bottom'], {\n duration: theme.transitions.duration.shortest\n }),\n '&::before': {\n position: 'absolute',\n content: '\"\"',\n borderRadius: 'inherit',\n width: '100%',\n height: '100%',\n boxShadow: (theme.vars || theme).shadows[2]\n },\n '&::after': {\n position: 'absolute',\n content: '\"\"',\n borderRadius: '50%',\n // 42px is the hit target\n width: 42,\n height: 42,\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)'\n },\n [`&.${sliderClasses.disabled}`]: {\n '&:hover': {\n boxShadow: 'none'\n }\n },\n variants: [{\n props: {\n size: 'small'\n },\n style: {\n width: 12,\n height: 12,\n '&::before': {\n boxShadow: 'none'\n }\n }\n }, {\n props: {\n orientation: 'horizontal'\n },\n style: {\n top: '50%',\n transform: 'translate(-50%, -50%)'\n }\n }, {\n props: {\n orientation: 'vertical'\n },\n style: {\n left: '50%',\n transform: 'translate(-50%, 50%)'\n }\n }, ...Object.entries(theme.palette).filter(createSimplePaletteValueFilter()).map(([color]) => ({\n props: {\n color\n },\n style: {\n [`&:hover, &.${sliderClasses.focusVisible}`]: {\n ...(theme.vars ? {\n boxShadow: `0px 0px 0px 8px rgba(${theme.vars.palette[color].mainChannel} / 0.16)`\n } : {\n boxShadow: `0px 0px 0px 8px ${alpha(theme.palette[color].main, 0.16)}`\n }),\n '@media (hover: none)': {\n boxShadow: 'none'\n }\n },\n [`&.${sliderClasses.active}`]: {\n ...(theme.vars ? {\n boxShadow: `0px 0px 0px 14px rgba(${theme.vars.palette[color].mainChannel} / 0.16)`\n } : {\n boxShadow: `0px 0px 0px 14px ${alpha(theme.palette[color].main, 0.16)}`\n })\n }\n }\n }))]\n})));\nconst SliderValueLabel = styled(BaseSliderValueLabel, {\n name: 'MuiSlider',\n slot: 'ValueLabel',\n overridesResolver: (props, styles) => styles.valueLabel\n})(memoTheme(({\n theme\n}) => ({\n zIndex: 1,\n whiteSpace: 'nowrap',\n ...theme.typography.body2,\n fontWeight: 500,\n transition: theme.transitions.create(['transform'], {\n duration: theme.transitions.duration.shortest\n }),\n position: 'absolute',\n backgroundColor: (theme.vars || theme).palette.grey[600],\n borderRadius: 2,\n color: (theme.vars || theme).palette.common.white,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n padding: '0.25rem 0.75rem',\n variants: [{\n props: {\n orientation: 'horizontal'\n },\n style: {\n transform: 'translateY(-100%) scale(0)',\n top: '-10px',\n transformOrigin: 'bottom center',\n '&::before': {\n position: 'absolute',\n content: '\"\"',\n width: 8,\n height: 8,\n transform: 'translate(-50%, 50%) rotate(45deg)',\n backgroundColor: 'inherit',\n bottom: 0,\n left: '50%'\n },\n [`&.${sliderClasses.valueLabelOpen}`]: {\n transform: 'translateY(-100%) scale(1)'\n }\n }\n }, {\n props: {\n orientation: 'vertical'\n },\n style: {\n transform: 'translateY(-50%) scale(0)',\n right: '30px',\n top: '50%',\n transformOrigin: 'right center',\n '&::before': {\n position: 'absolute',\n content: '\"\"',\n width: 8,\n height: 8,\n transform: 'translate(-50%, -50%) rotate(45deg)',\n backgroundColor: 'inherit',\n right: -8,\n top: '50%'\n },\n [`&.${sliderClasses.valueLabelOpen}`]: {\n transform: 'translateY(-50%) scale(1)'\n }\n }\n }, {\n props: {\n size: 'small'\n },\n style: {\n fontSize: theme.typography.pxToRem(12),\n padding: '0.25rem 0.5rem'\n }\n }, {\n props: {\n orientation: 'vertical',\n size: 'small'\n },\n style: {\n right: '20px'\n }\n }]\n})));\nprocess.env.NODE_ENV !== \"production\" ? SliderValueLabel.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * @ignore\n */\n children: PropTypes.element.isRequired,\n /**\n * @ignore\n */\n index: PropTypes.number.isRequired,\n /**\n * @ignore\n */\n open: PropTypes.bool.isRequired,\n /**\n * @ignore\n */\n value: PropTypes.node\n} : void 0;\nexport { SliderValueLabel };\nexport const SliderMark = styled('span', {\n name: 'MuiSlider',\n slot: 'Mark',\n shouldForwardProp: prop => slotShouldForwardProp(prop) && prop !== 'markActive',\n overridesResolver: (props, styles) => {\n const {\n markActive\n } = props;\n return [styles.mark, markActive && styles.markActive];\n }\n})(memoTheme(({\n theme\n}) => ({\n position: 'absolute',\n width: 2,\n height: 2,\n borderRadius: 1,\n backgroundColor: 'currentColor',\n variants: [{\n props: {\n orientation: 'horizontal'\n },\n style: {\n top: '50%',\n transform: 'translate(-1px, -50%)'\n }\n }, {\n props: {\n orientation: 'vertical'\n },\n style: {\n left: '50%',\n transform: 'translate(-50%, 1px)'\n }\n }, {\n props: {\n markActive: true\n },\n style: {\n backgroundColor: (theme.vars || theme).palette.background.paper,\n opacity: 0.8\n }\n }]\n})));\nexport const SliderMarkLabel = styled('span', {\n name: 'MuiSlider',\n slot: 'MarkLabel',\n shouldForwardProp: prop => slotShouldForwardProp(prop) && prop !== 'markLabelActive',\n overridesResolver: (props, styles) => styles.markLabel\n})(memoTheme(({\n theme\n}) => ({\n ...theme.typography.body2,\n color: (theme.vars || theme).palette.text.secondary,\n position: 'absolute',\n whiteSpace: 'nowrap',\n variants: [{\n props: {\n orientation: 'horizontal'\n },\n style: {\n top: 30,\n transform: 'translateX(-50%)',\n '@media (pointer: coarse)': {\n top: 40\n }\n }\n }, {\n props: {\n orientation: 'vertical'\n },\n style: {\n left: 36,\n transform: 'translateY(50%)',\n '@media (pointer: coarse)': {\n left: 44\n }\n }\n }, {\n props: {\n markLabelActive: true\n },\n style: {\n color: (theme.vars || theme).palette.text.primary\n }\n }]\n})));\nconst useUtilityClasses = ownerState => {\n const {\n disabled,\n dragging,\n marked,\n orientation,\n track,\n classes,\n color,\n size\n } = ownerState;\n const slots = {\n root: ['root', disabled && 'disabled', dragging && 'dragging', marked && 'marked', orientation === 'vertical' && 'vertical', track === 'inverted' && 'trackInverted', track === false && 'trackFalse', color && `color${capitalize(color)}`, size && `size${capitalize(size)}`],\n rail: ['rail'],\n track: ['track'],\n mark: ['mark'],\n markActive: ['markActive'],\n markLabel: ['markLabel'],\n markLabelActive: ['markLabelActive'],\n valueLabel: ['valueLabel'],\n thumb: ['thumb', disabled && 'disabled', size && `thumbSize${capitalize(size)}`, color && `thumbColor${capitalize(color)}`],\n active: ['active'],\n disabled: ['disabled'],\n focusVisible: ['focusVisible']\n };\n return composeClasses(slots, getSliderUtilityClass, classes);\n};\nconst Forward = ({\n children\n}) => children;\nconst Slider = /*#__PURE__*/React.forwardRef(function Slider(inputProps, ref) {\n const props = useDefaultProps({\n props: inputProps,\n name: 'MuiSlider'\n });\n const isRtl = useRtl();\n const {\n 'aria-label': ariaLabel,\n 'aria-valuetext': ariaValuetext,\n 'aria-labelledby': ariaLabelledby,\n // eslint-disable-next-line react/prop-types\n component = 'span',\n components = {},\n componentsProps = {},\n color = 'primary',\n classes: classesProp,\n className,\n disableSwap = false,\n disabled = false,\n getAriaLabel,\n getAriaValueText,\n marks: marksProp = false,\n max = 100,\n min = 0,\n name,\n onChange,\n onChangeCommitted,\n orientation = 'horizontal',\n shiftStep = 10,\n size = 'medium',\n step = 1,\n scale = Identity,\n slotProps,\n slots,\n tabIndex,\n track = 'normal',\n value: valueProp,\n valueLabelDisplay = 'off',\n valueLabelFormat = Identity,\n ...other\n } = props;\n const ownerState = {\n ...props,\n isRtl,\n max,\n min,\n classes: classesProp,\n disabled,\n disableSwap,\n orientation,\n marks: marksProp,\n color,\n size,\n step,\n shiftStep,\n scale,\n track,\n valueLabelDisplay,\n valueLabelFormat\n };\n const {\n axisProps,\n getRootProps,\n getHiddenInputProps,\n getThumbProps,\n open,\n active,\n axis,\n focusedThumbIndex,\n range,\n dragging,\n marks,\n values,\n trackOffset,\n trackLeap,\n getThumbStyle\n } = useSlider({\n ...ownerState,\n rootRef: ref\n });\n ownerState.marked = marks.length > 0 && marks.some(mark => mark.label);\n ownerState.dragging = dragging;\n ownerState.focusedThumbIndex = focusedThumbIndex;\n const classes = useUtilityClasses(ownerState);\n\n // support both `slots` and `components` for backward compatibility\n const RootSlot = slots?.root ?? components.Root ?? SliderRoot;\n const RailSlot = slots?.rail ?? components.Rail ?? SliderRail;\n const TrackSlot = slots?.track ?? components.Track ?? SliderTrack;\n const ThumbSlot = slots?.thumb ?? components.Thumb ?? SliderThumb;\n const ValueLabelSlot = slots?.valueLabel ?? components.ValueLabel ?? SliderValueLabel;\n const MarkSlot = slots?.mark ?? components.Mark ?? SliderMark;\n const MarkLabelSlot = slots?.markLabel ?? components.MarkLabel ?? SliderMarkLabel;\n const InputSlot = slots?.input ?? components.Input ?? 'input';\n const rootSlotProps = slotProps?.root ?? componentsProps.root;\n const railSlotProps = slotProps?.rail ?? componentsProps.rail;\n const trackSlotProps = slotProps?.track ?? componentsProps.track;\n const thumbSlotProps = slotProps?.thumb ?? componentsProps.thumb;\n const valueLabelSlotProps = slotProps?.valueLabel ?? componentsProps.valueLabel;\n const markSlotProps = slotProps?.mark ?? componentsProps.mark;\n const markLabelSlotProps = slotProps?.markLabel ?? componentsProps.markLabel;\n const inputSlotProps = slotProps?.input ?? componentsProps.input;\n const rootProps = useSlotProps({\n elementType: RootSlot,\n getSlotProps: getRootProps,\n externalSlotProps: rootSlotProps,\n externalForwardedProps: other,\n additionalProps: {\n ...(shouldSpreadAdditionalProps(RootSlot) && {\n as: component\n })\n },\n ownerState: {\n ...ownerState,\n ...rootSlotProps?.ownerState\n },\n className: [classes.root, className]\n });\n const railProps = useSlotProps({\n elementType: RailSlot,\n externalSlotProps: railSlotProps,\n ownerState,\n className: classes.rail\n });\n const trackProps = useSlotProps({\n elementType: TrackSlot,\n externalSlotProps: trackSlotProps,\n additionalProps: {\n style: {\n ...axisProps[axis].offset(trackOffset),\n ...axisProps[axis].leap(trackLeap)\n }\n },\n ownerState: {\n ...ownerState,\n ...trackSlotProps?.ownerState\n },\n className: classes.track\n });\n const thumbProps = useSlotProps({\n elementType: ThumbSlot,\n getSlotProps: getThumbProps,\n externalSlotProps: thumbSlotProps,\n ownerState: {\n ...ownerState,\n ...thumbSlotProps?.ownerState\n },\n className: classes.thumb\n });\n const valueLabelProps = useSlotProps({\n elementType: ValueLabelSlot,\n externalSlotProps: valueLabelSlotProps,\n ownerState: {\n ...ownerState,\n ...valueLabelSlotProps?.ownerState\n },\n className: classes.valueLabel\n });\n const markProps = useSlotProps({\n elementType: MarkSlot,\n externalSlotProps: markSlotProps,\n ownerState,\n className: classes.mark\n });\n const markLabelProps = useSlotProps({\n elementType: MarkLabelSlot,\n externalSlotProps: markLabelSlotProps,\n ownerState,\n className: classes.markLabel\n });\n const inputSliderProps = useSlotProps({\n elementType: InputSlot,\n getSlotProps: getHiddenInputProps,\n externalSlotProps: inputSlotProps,\n ownerState\n });\n return /*#__PURE__*/_jsxs(RootSlot, {\n ...rootProps,\n children: [/*#__PURE__*/_jsx(RailSlot, {\n ...railProps\n }), /*#__PURE__*/_jsx(TrackSlot, {\n ...trackProps\n }), marks.filter(mark => mark.value >= min && mark.value <= max).map((mark, index) => {\n const percent = valueToPercent(mark.value, min, max);\n const style = axisProps[axis].offset(percent);\n let markActive;\n if (track === false) {\n markActive = values.includes(mark.value);\n } else {\n markActive = track === 'normal' && (range ? mark.value >= values[0] && mark.value <= values[values.length - 1] : mark.value <= values[0]) || track === 'inverted' && (range ? mark.value <= values[0] || mark.value >= values[values.length - 1] : mark.value >= values[0]);\n }\n return /*#__PURE__*/_jsxs(React.Fragment, {\n children: [/*#__PURE__*/_jsx(MarkSlot, {\n \"data-index\": index,\n ...markProps,\n ...(!isHostComponent(MarkSlot) && {\n markActive\n }),\n style: {\n ...style,\n ...markProps.style\n },\n className: clsx(markProps.className, markActive && classes.markActive)\n }), mark.label != null ? /*#__PURE__*/_jsx(MarkLabelSlot, {\n \"aria-hidden\": true,\n \"data-index\": index,\n ...markLabelProps,\n ...(!isHostComponent(MarkLabelSlot) && {\n markLabelActive: markActive\n }),\n style: {\n ...style,\n ...markLabelProps.style\n },\n className: clsx(classes.markLabel, markLabelProps.className, markActive && classes.markLabelActive),\n children: mark.label\n }) : null]\n }, index);\n }), values.map((value, index) => {\n const percent = valueToPercent(value, min, max);\n const style = axisProps[axis].offset(percent);\n const ValueLabelComponent = valueLabelDisplay === 'off' ? Forward : ValueLabelSlot;\n return /*#__PURE__*/ /* TODO v6: Change component structure. It will help in avoiding the complicated React.cloneElement API added in SliderValueLabel component. Should be: Thumb -> Input, ValueLabel. Follow Joy UI's Slider structure. */_jsx(ValueLabelComponent, {\n ...(!isHostComponent(ValueLabelComponent) && {\n valueLabelFormat,\n valueLabelDisplay,\n value: typeof valueLabelFormat === 'function' ? valueLabelFormat(scale(value), index) : valueLabelFormat,\n index,\n open: open === index || active === index || valueLabelDisplay === 'on',\n disabled\n }),\n ...valueLabelProps,\n children: /*#__PURE__*/_jsx(ThumbSlot, {\n \"data-index\": index,\n ...thumbProps,\n className: clsx(classes.thumb, thumbProps.className, active === index && classes.active, focusedThumbIndex === index && classes.focusVisible),\n style: {\n ...style,\n ...getThumbStyle(index),\n ...thumbProps.style\n },\n children: /*#__PURE__*/_jsx(InputSlot, {\n \"data-index\": index,\n \"aria-label\": getAriaLabel ? getAriaLabel(index) : ariaLabel,\n \"aria-valuenow\": scale(value),\n \"aria-labelledby\": ariaLabelledby,\n \"aria-valuetext\": getAriaValueText ? getAriaValueText(scale(value), index) : ariaValuetext,\n value: values[index],\n ...inputSliderProps\n })\n })\n }, index);\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Slider.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * The label of the slider.\n */\n 'aria-label': chainPropTypes(PropTypes.string, props => {\n const range = Array.isArray(props.value || props.defaultValue);\n if (range && props['aria-label'] != null) {\n return new Error('MUI: You need to use the `getAriaLabel` prop instead of `aria-label` when using a range slider.');\n }\n return null;\n }),\n /**\n * The id of the element containing a label for the slider.\n */\n 'aria-labelledby': PropTypes.string,\n /**\n * A string value that provides a user-friendly name for the current value of the slider.\n */\n 'aria-valuetext': chainPropTypes(PropTypes.string, props => {\n const range = Array.isArray(props.value || props.defaultValue);\n if (range && props['aria-valuetext'] != null) {\n return new Error('MUI: You need to use the `getAriaValueText` prop instead of `aria-valuetext` when using a range slider.');\n }\n return null;\n }),\n /**\n * @ignore\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The components used for each slot inside.\n *\n * @deprecated use the `slots` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Input: PropTypes.elementType,\n Mark: PropTypes.elementType,\n MarkLabel: PropTypes.elementType,\n Rail: PropTypes.elementType,\n Root: PropTypes.elementType,\n Thumb: PropTypes.elementType,\n Track: PropTypes.elementType,\n ValueLabel: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * @deprecated use the `slotProps` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n input: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n mark: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n markLabel: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n rail: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n thumb: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n track: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n valueLabel: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({\n children: PropTypes.element,\n className: PropTypes.string,\n open: PropTypes.bool,\n style: PropTypes.object,\n value: PropTypes.node,\n valueLabelDisplay: PropTypes.oneOf(['auto', 'off', 'on'])\n })])\n }),\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.number), PropTypes.number]),\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the active thumb doesn't swap when moving pointer over a thumb while dragging another thumb.\n * @default false\n */\n disableSwap: PropTypes.bool,\n /**\n * Accepts a function which returns a string value that provides a user-friendly name for the thumb labels of the slider.\n * This is important for screen reader users.\n * @param {number} index The thumb label's index to format.\n * @returns {string}\n */\n getAriaLabel: PropTypes.func,\n /**\n * Accepts a function which returns a string value that provides a user-friendly name for the current value of the slider.\n * This is important for screen reader users.\n * @param {number} value The thumb label's value to format.\n * @param {number} index The thumb label's index to format.\n * @returns {string}\n */\n getAriaValueText: PropTypes.func,\n /**\n * Marks indicate predetermined values to which the user can move the slider.\n * If `true` the marks are spaced according the value of the `step` prop.\n * If an array, it should contain objects with `value` and an optional `label` keys.\n * @default false\n */\n marks: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.shape({\n label: PropTypes.node,\n value: PropTypes.number.isRequired\n })), PropTypes.bool]),\n /**\n * The maximum allowed value of the slider.\n * Should not be equal to min.\n * @default 100\n */\n max: PropTypes.number,\n /**\n * The minimum allowed value of the slider.\n * Should not be equal to max.\n * @default 0\n */\n min: PropTypes.number,\n /**\n * Name attribute of the hidden `input` element.\n */\n name: PropTypes.string,\n /**\n * Callback function that is fired when the slider's value changed.\n *\n * @param {Event} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (any).\n * **Warning**: This is a generic event not a change event.\n * @param {Value} value The new value.\n * @param {number} activeThumb Index of the currently moved thumb.\n */\n onChange: PropTypes.func,\n /**\n * Callback function that is fired when the `mouseup` is triggered.\n *\n * @param {React.SyntheticEvent | Event} event The event source of the callback. **Warning**: This is a generic event not a change event.\n * @param {Value} value The new value.\n */\n onChangeCommitted: PropTypes.func,\n /**\n * The component orientation.\n * @default 'horizontal'\n */\n orientation: PropTypes.oneOf(['horizontal', 'vertical']),\n /**\n * A transformation function, to change the scale of the slider.\n * @param {any} x\n * @returns {any}\n * @default function Identity(x) {\n * return x;\n * }\n */\n scale: PropTypes.func,\n /**\n * The granularity with which the slider can step through values when using Page Up/Page Down or Shift + Arrow Up/Arrow Down.\n * @default 10\n */\n shiftStep: PropTypes.number,\n /**\n * The size of the slider.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['small', 'medium']), PropTypes.string]),\n /**\n * The props used for each slot inside the Slider.\n * @default {}\n */\n slotProps: PropTypes.shape({\n input: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n mark: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n markLabel: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n rail: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n thumb: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n track: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n valueLabel: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({\n children: PropTypes.element,\n className: PropTypes.string,\n open: PropTypes.bool,\n style: PropTypes.object,\n value: PropTypes.node,\n valueLabelDisplay: PropTypes.oneOf(['auto', 'off', 'on'])\n })])\n }),\n /**\n * The components used for each slot inside the Slider.\n * Either a string to use a HTML element or a component.\n * @default {}\n */\n slots: PropTypes.shape({\n input: PropTypes.elementType,\n mark: PropTypes.elementType,\n markLabel: PropTypes.elementType,\n rail: PropTypes.elementType,\n root: PropTypes.elementType,\n thumb: PropTypes.elementType,\n track: PropTypes.elementType,\n valueLabel: PropTypes.elementType\n }),\n /**\n * The granularity with which the slider can step through values. (A \"discrete\" slider.)\n * The `min` prop serves as the origin for the valid values.\n * We recommend (max - min) to be evenly divisible by the step.\n *\n * When step is `null`, the thumb can only be slid onto marks provided with the `marks` prop.\n * @default 1\n */\n step: PropTypes.number,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * Tab index attribute of the hidden `input` element.\n */\n tabIndex: PropTypes.number,\n /**\n * The track presentation:\n *\n * - `normal` the track will render a bar representing the slider value.\n * - `inverted` the track will render a bar representing the remaining slider value.\n * - `false` the track will render without a bar.\n * @default 'normal'\n */\n track: PropTypes.oneOf(['inverted', 'normal', false]),\n /**\n * The value of the slider.\n * For ranged sliders, provide an array with two values.\n */\n value: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.number), PropTypes.number]),\n /**\n * Controls when the value label is displayed:\n *\n * - `auto` the value label will display when the thumb is hovered or focused.\n * - `on` will display persistently.\n * - `off` will never display.\n * @default 'off'\n */\n valueLabelDisplay: PropTypes.oneOf(['auto', 'off', 'on']),\n /**\n * The format function the value label's value.\n *\n * When a function is provided, it should have the following signature:\n *\n * - {number} value The value label's value to format\n * - {number} index The value label's index to format\n * @param {any} x\n * @returns {any}\n * @default function Identity(x) {\n * return x;\n * }\n */\n valueLabelFormat: PropTypes.oneOfType([PropTypes.func, PropTypes.string])\n} : void 0;\nexport default Slider;", "export default function chainPropTypes(propType1, propType2) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return function validate(...args) {\n return propType1(...args) || propType2(...args);\n };\n}", "/* eslint no-restricted-syntax: 0, prefer-template: 0, guard-for-in: 0\n ---\n These rules are preventing the performance optimizations below.\n */\n\n/**\n * Compose classes from multiple sources.\n *\n * @example\n * ```tsx\n * const slots = {\n * root: ['root', 'primary'],\n * label: ['label'],\n * };\n *\n * const getUtilityClass = (slot) => `MuiButton-${slot}`;\n *\n * const classes = {\n * root: 'my-root-class',\n * };\n *\n * const output = composeClasses(slots, getUtilityClass, classes);\n * // {\n * // root: 'MuiButton-root MuiButton-primary my-root-class',\n * // label: 'MuiButton-label',\n * // }\n * ```\n *\n * @param slots a list of classes for each possible slot\n * @param getUtilityClass a function to resolve the class based on the slot name\n * @param classes the input classes from props\n * @returns the resolved classes for all slots\n */\nexport default function composeClasses(slots, getUtilityClass, classes = undefined) {\n const output = {};\n for (const slotName in slots) {\n const slot = slots[slotName];\n let buffer = '';\n let start = true;\n for (let i = 0; i < slot.length; i += 1) {\n const value = slot[i];\n if (value) {\n buffer += (start === true ? '' : ' ') + getUtilityClass(value);\n start = false;\n if (classes && classes[value]) {\n buffer += ' ' + classes[value];\n }\n }\n }\n output[slotName] = buffer;\n }\n return output;\n}", "function clamp(val, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) {\n return Math.max(min, Math.min(val, max));\n}\nexport default clamp;", "import _formatErrorMessage from \"@mui/utils/formatMuiErrorMessage\";\n/* eslint-disable @typescript-eslint/naming-convention */\nimport clamp from '@mui/utils/clamp';\n\n/**\n * Returns a number whose value is limited to the given range.\n * @param {number} value The value to be clamped\n * @param {number} min The lower boundary of the output range\n * @param {number} max The upper boundary of the output range\n * @returns {number} A number in the range [min, max]\n */\nfunction clampWrapper(value, min = 0, max = 1) {\n if (process.env.NODE_ENV !== 'production') {\n if (value < min || value > max) {\n console.error(`MUI: The value provided ${value} is out of range [${min}, ${max}].`);\n }\n }\n return clamp(value, min, max);\n}\n\n/**\n * Converts a color from CSS hex format to CSS rgb format.\n * @param {string} color - Hex color, i.e. #nnn or #nnnnnn\n * @returns {string} A CSS rgb color string\n */\nexport function hexToRgb(color) {\n color = color.slice(1);\n const re = new RegExp(`.{1,${color.length >= 6 ? 2 : 1}}`, 'g');\n let colors = color.match(re);\n if (colors && colors[0].length === 1) {\n colors = colors.map(n => n + n);\n }\n if (process.env.NODE_ENV !== 'production') {\n if (color.length !== color.trim().length) {\n console.error(`MUI: The color: \"${color}\" is invalid. Make sure the color input doesn't contain leading/trailing space.`);\n }\n }\n return colors ? `rgb${colors.length === 4 ? 'a' : ''}(${colors.map((n, index) => {\n return index < 3 ? parseInt(n, 16) : Math.round(parseInt(n, 16) / 255 * 1000) / 1000;\n }).join(', ')})` : '';\n}\nfunction intToHex(int) {\n const hex = int.toString(16);\n return hex.length === 1 ? `0${hex}` : hex;\n}\n\n/**\n * Returns an object with the type and values of a color.\n *\n * Note: Does not support rgb % values.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @returns {object} - A MUI color object: {type: string, values: number[]}\n */\nexport function decomposeColor(color) {\n // Idempotent\n if (color.type) {\n return color;\n }\n if (color.charAt(0) === '#') {\n return decomposeColor(hexToRgb(color));\n }\n const marker = color.indexOf('(');\n const type = color.substring(0, marker);\n if (!['rgb', 'rgba', 'hsl', 'hsla', 'color'].includes(type)) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: Unsupported \\`${color}\\` color.\\n` + 'The following formats are supported: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().' : _formatErrorMessage(9, color));\n }\n let values = color.substring(marker + 1, color.length - 1);\n let colorSpace;\n if (type === 'color') {\n values = values.split(' ');\n colorSpace = values.shift();\n if (values.length === 4 && values[3].charAt(0) === '/') {\n values[3] = values[3].slice(1);\n }\n if (!['srgb', 'display-p3', 'a98-rgb', 'prophoto-rgb', 'rec-2020'].includes(colorSpace)) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: unsupported \\`${colorSpace}\\` color space.\\n` + 'The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.' : _formatErrorMessage(10, colorSpace));\n }\n } else {\n values = values.split(',');\n }\n values = values.map(value => parseFloat(value));\n return {\n type,\n values,\n colorSpace\n };\n}\n\n/**\n * Returns a channel created from the input color.\n *\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @returns {string} - The channel for the color, that can be used in rgba or hsla colors\n */\nexport const colorChannel = color => {\n const decomposedColor = decomposeColor(color);\n return decomposedColor.values.slice(0, 3).map((val, idx) => decomposedColor.type.includes('hsl') && idx !== 0 ? `${val}%` : val).join(' ');\n};\nexport const private_safeColorChannel = (color, warning) => {\n try {\n return colorChannel(color);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n};\n\n/**\n * Converts a color object with type and values to a string.\n * @param {object} color - Decomposed color\n * @param {string} color.type - One of: 'rgb', 'rgba', 'hsl', 'hsla', 'color'\n * @param {array} color.values - [n,n,n] or [n,n,n,n]\n * @returns {string} A CSS color string\n */\nexport function recomposeColor(color) {\n const {\n type,\n colorSpace\n } = color;\n let {\n values\n } = color;\n if (type.includes('rgb')) {\n // Only convert the first 3 values to int (i.e. not alpha)\n values = values.map((n, i) => i < 3 ? parseInt(n, 10) : n);\n } else if (type.includes('hsl')) {\n values[1] = `${values[1]}%`;\n values[2] = `${values[2]}%`;\n }\n if (type.includes('color')) {\n values = `${colorSpace} ${values.join(' ')}`;\n } else {\n values = `${values.join(', ')}`;\n }\n return `${type}(${values})`;\n}\n\n/**\n * Converts a color from CSS rgb format to CSS hex format.\n * @param {string} color - RGB color, i.e. rgb(n, n, n)\n * @returns {string} A CSS rgb color string, i.e. #nnnnnn\n */\nexport function rgbToHex(color) {\n // Idempotent\n if (color.startsWith('#')) {\n return color;\n }\n const {\n values\n } = decomposeColor(color);\n return `#${values.map((n, i) => intToHex(i === 3 ? Math.round(255 * n) : n)).join('')}`;\n}\n\n/**\n * Converts a color from hsl format to rgb format.\n * @param {string} color - HSL color values\n * @returns {string} rgb color values\n */\nexport function hslToRgb(color) {\n color = decomposeColor(color);\n const {\n values\n } = color;\n const h = values[0];\n const s = values[1] / 100;\n const l = values[2] / 100;\n const a = s * Math.min(l, 1 - l);\n const f = (n, k = (n + h / 30) % 12) => l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);\n let type = 'rgb';\n const rgb = [Math.round(f(0) * 255), Math.round(f(8) * 255), Math.round(f(4) * 255)];\n if (color.type === 'hsla') {\n type += 'a';\n rgb.push(values[3]);\n }\n return recomposeColor({\n type,\n values: rgb\n });\n}\n/**\n * The relative brightness of any point in a color space,\n * normalized to 0 for darkest black and 1 for lightest white.\n *\n * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @returns {number} The relative brightness of the color in the range 0 - 1\n */\nexport function getLuminance(color) {\n color = decomposeColor(color);\n let rgb = color.type === 'hsl' || color.type === 'hsla' ? decomposeColor(hslToRgb(color)).values : color.values;\n rgb = rgb.map(val => {\n if (color.type !== 'color') {\n val /= 255; // normalized\n }\n return val <= 0.03928 ? val / 12.92 : ((val + 0.055) / 1.055) ** 2.4;\n });\n\n // Truncate at 3 digits\n return Number((0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2]).toFixed(3));\n}\n\n/**\n * Calculates the contrast ratio between two colors.\n *\n * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\n * @param {string} foreground - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @param {string} background - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @returns {number} A contrast ratio value in the range 0 - 21.\n */\nexport function getContrastRatio(foreground, background) {\n const lumA = getLuminance(foreground);\n const lumB = getLuminance(background);\n return (Math.max(lumA, lumB) + 0.05) / (Math.min(lumA, lumB) + 0.05);\n}\n\n/**\n * Sets the absolute transparency of a color.\n * Any existing alpha values are overwritten.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} value - value to set the alpha channel to in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function alpha(color, value) {\n color = decomposeColor(color);\n value = clampWrapper(value);\n if (color.type === 'rgb' || color.type === 'hsl') {\n color.type += 'a';\n }\n if (color.type === 'color') {\n color.values[3] = `/${value}`;\n } else {\n color.values[3] = value;\n }\n return recomposeColor(color);\n}\nexport function private_safeAlpha(color, value, warning) {\n try {\n return alpha(color, value);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Darkens a color.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} coefficient - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function darken(color, coefficient) {\n color = decomposeColor(color);\n coefficient = clampWrapper(coefficient);\n if (color.type.includes('hsl')) {\n color.values[2] *= 1 - coefficient;\n } else if (color.type.includes('rgb') || color.type.includes('color')) {\n for (let i = 0; i < 3; i += 1) {\n color.values[i] *= 1 - coefficient;\n }\n }\n return recomposeColor(color);\n}\nexport function private_safeDarken(color, coefficient, warning) {\n try {\n return darken(color, coefficient);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Lightens a color.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} coefficient - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function lighten(color, coefficient) {\n color = decomposeColor(color);\n coefficient = clampWrapper(coefficient);\n if (color.type.includes('hsl')) {\n color.values[2] += (100 - color.values[2]) * coefficient;\n } else if (color.type.includes('rgb')) {\n for (let i = 0; i < 3; i += 1) {\n color.values[i] += (255 - color.values[i]) * coefficient;\n }\n } else if (color.type.includes('color')) {\n for (let i = 0; i < 3; i += 1) {\n color.values[i] += (1 - color.values[i]) * coefficient;\n }\n }\n return recomposeColor(color);\n}\nexport function private_safeLighten(color, coefficient, warning) {\n try {\n return lighten(color, coefficient);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Darken or lighten a color, depending on its luminance.\n * Light colors are darkened, dark colors are lightened.\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()\n * @param {number} coefficient=0.15 - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\nexport function emphasize(color, coefficient = 0.15) {\n return getLuminance(color) > 0.5 ? darken(color, coefficient) : lighten(color, coefficient);\n}\nexport function private_safeEmphasize(color, coefficient, warning) {\n try {\n return emphasize(color, coefficient);\n } catch (error) {\n if (warning && process.env.NODE_ENV !== 'production') {\n console.warn(warning);\n }\n return color;\n }\n}\n\n/**\n * Blend a transparent overlay color with a background color, resulting in a single\n * RGB color.\n * @param {string} background - CSS color\n * @param {string} overlay - CSS color\n * @param {number} opacity - Opacity multiplier in the range 0 - 1\n * @param {number} [gamma=1.0] - Gamma correction factor. For gamma-correct blending, 2.2 is usual.\n */\nexport function blend(background, overlay, opacity, gamma = 1.0) {\n const blendChannel = (b, o) => Math.round((b ** (1 / gamma) * (1 - opacity) + o ** (1 / gamma) * opacity) ** gamma);\n const backgroundColor = decomposeColor(background);\n const overlayColor = decomposeColor(overlay);\n const rgb = [blendChannel(backgroundColor.values[0], overlayColor.values[0]), blendChannel(backgroundColor.values[1], overlayColor.values[1]), blendChannel(backgroundColor.values[2], overlayColor.values[2])];\n return recomposeColor({\n type: 'rgb',\n values: rgb\n });\n}", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst RtlContext = /*#__PURE__*/React.createContext();\nfunction RtlProvider({\n value,\n ...props\n}) {\n return /*#__PURE__*/_jsx(RtlContext.Provider, {\n value: value ?? true,\n ...props\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? RtlProvider.propTypes = {\n children: PropTypes.node,\n value: PropTypes.bool\n} : void 0;\nexport const useRtl = () => {\n const value = React.useContext(RtlContext);\n return value ?? false;\n};\nexport default RtlProvider;", "'use client';\n\nimport * as React from 'react';\nimport setRef from \"../setRef/index.js\";\n\n/**\n * Takes an array of refs and returns a new ref which will apply any modification to all of the refs.\n * This is useful when you want to have the ref used in multiple places.\n *\n * ```tsx\n * const rootRef = React.useRef(null);\n * const refFork = useForkRef(rootRef, props.ref);\n *\n * return (\n * \n * );\n * ```\n *\n * @param {Array | undefined>} refs The ref array.\n * @returns {React.RefCallback | null} The new ref callback.\n */\nexport default function useForkRef(...refs) {\n /**\n * This will create a new function if the refs passed to this hook change and are all defined.\n * This means react will call the old forkRef with `null` and the new forkRef\n * with the ref. Cleanup naturally emerges from this behavior.\n */\n return React.useMemo(() => {\n if (refs.every(ref => ref == null)) {\n return null;\n }\n return instance => {\n refs.forEach(ref => {\n setRef(ref, instance);\n });\n };\n // TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler -- intentionally ignoring that the dependency array must be an array literal\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, refs);\n}", "/**\n * TODO v5: consider making it private\n *\n * passes {value} to {ref}\n *\n * WARNING: Be sure to only call this inside a callback that is passed as a ref.\n * Otherwise, make sure to cleanup the previous {ref} if it changes. See\n * https://github.com/mui/material-ui/issues/13539\n *\n * Useful if you want to expose the ref of an inner component to the public API\n * while still using it inside the component.\n * @param ref A ref callback or ref object. If anything falsy, this is a no-op.\n */\nexport default function setRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref) {\n ref.current = value;\n }\n}", "/**\n * Determines if a given element is a DOM element name (i.e. not a React component).\n */\nfunction isHostComponent(element) {\n return typeof element === 'string';\n}\nexport default isHostComponent;", "import isHostComponent from \"../isHostComponent/index.js\";\n\n/**\n * Type of the ownerState based on the type of an element it applies to.\n * This resolves to the provided OwnerState for React components and `undefined` for host components.\n * Falls back to `OwnerState | undefined` when the exact type can't be determined in development time.\n */\n\n/**\n * Appends the ownerState object to the props, merging with the existing one if necessary.\n *\n * @param elementType Type of the element that owns the `existingProps`. If the element is a DOM node or undefined, `ownerState` is not applied.\n * @param otherProps Props of the element.\n * @param ownerState\n */\nfunction appendOwnerState(elementType, otherProps, ownerState) {\n if (elementType === undefined || isHostComponent(elementType)) {\n return otherProps;\n }\n return {\n ...otherProps,\n ownerState: {\n ...otherProps.ownerState,\n ...ownerState\n }\n };\n}\nexport default appendOwnerState;", "/**\n * Extracts event handlers from a given object.\n * A prop is considered an event handler if it is a function and its name starts with `on`.\n *\n * @param object An object to extract event handlers from.\n * @param excludeKeys An array of keys to exclude from the returned object.\n */\nfunction extractEventHandlers(object, excludeKeys = []) {\n if (object === undefined) {\n return {};\n }\n const result = {};\n Object.keys(object).filter(prop => prop.match(/^on[A-Z]/) && typeof object[prop] === 'function' && !excludeKeys.includes(prop)).forEach(prop => {\n result[prop] = object[prop];\n });\n return result;\n}\nexport default extractEventHandlers;", "/**\n * Removes event handlers from the given object.\n * A field is considered an event handler if it is a function with a name beginning with `on`.\n *\n * @param object Object to remove event handlers from.\n * @returns Object with event handlers removed.\n */\nfunction omitEventHandlers(object) {\n if (object === undefined) {\n return {};\n }\n const result = {};\n Object.keys(object).filter(prop => !(prop.match(/^on[A-Z]/) && typeof object[prop] === 'function')).forEach(prop => {\n result[prop] = object[prop];\n });\n return result;\n}\nexport default omitEventHandlers;", "import clsx from 'clsx';\nimport extractEventHandlers from \"../extractEventHandlers/index.js\";\nimport omitEventHandlers from \"../omitEventHandlers/index.js\";\n/**\n * Merges the slot component internal props (usually coming from a hook)\n * with the externally provided ones.\n *\n * The merge order is (the latter overrides the former):\n * 1. The internal props (specified as a getter function to work with get*Props hook result)\n * 2. Additional props (specified internally on a Base UI component)\n * 3. External props specified on the owner component. These should only be used on a root slot.\n * 4. External props specified in the `slotProps.*` prop.\n * 5. The `className` prop - combined from all the above.\n * @param parameters\n * @returns\n */\nfunction mergeSlotProps(parameters) {\n const {\n getSlotProps,\n additionalProps,\n externalSlotProps,\n externalForwardedProps,\n className\n } = parameters;\n if (!getSlotProps) {\n // The simpler case - getSlotProps is not defined, so no internal event handlers are defined,\n // so we can simply merge all the props without having to worry about extracting event handlers.\n const joinedClasses = clsx(additionalProps?.className, className, externalForwardedProps?.className, externalSlotProps?.className);\n const mergedStyle = {\n ...additionalProps?.style,\n ...externalForwardedProps?.style,\n ...externalSlotProps?.style\n };\n const props = {\n ...additionalProps,\n ...externalForwardedProps,\n ...externalSlotProps\n };\n if (joinedClasses.length > 0) {\n props.className = joinedClasses;\n }\n if (Object.keys(mergedStyle).length > 0) {\n props.style = mergedStyle;\n }\n return {\n props,\n internalRef: undefined\n };\n }\n\n // In this case, getSlotProps is responsible for calling the external event handlers.\n // We don't need to include them in the merged props because of this.\n\n const eventHandlers = extractEventHandlers({\n ...externalForwardedProps,\n ...externalSlotProps\n });\n const componentsPropsWithoutEventHandlers = omitEventHandlers(externalSlotProps);\n const otherPropsWithoutEventHandlers = omitEventHandlers(externalForwardedProps);\n const internalSlotProps = getSlotProps(eventHandlers);\n\n // The order of classes is important here.\n // Emotion (that we use in libraries consuming Base UI) depends on this order\n // to properly override style. It requires the most important classes to be last\n // (see https://github.com/mui/material-ui/pull/33205) for the related discussion.\n const joinedClasses = clsx(internalSlotProps?.className, additionalProps?.className, className, externalForwardedProps?.className, externalSlotProps?.className);\n const mergedStyle = {\n ...internalSlotProps?.style,\n ...additionalProps?.style,\n ...externalForwardedProps?.style,\n ...externalSlotProps?.style\n };\n const props = {\n ...internalSlotProps,\n ...additionalProps,\n ...otherPropsWithoutEventHandlers,\n ...componentsPropsWithoutEventHandlers\n };\n if (joinedClasses.length > 0) {\n props.className = joinedClasses;\n }\n if (Object.keys(mergedStyle).length > 0) {\n props.style = mergedStyle;\n }\n return {\n props,\n internalRef: internalSlotProps.ref\n };\n}\nexport default mergeSlotProps;", "/**\n * If `componentProps` is a function, calls it with the provided `ownerState`.\n * Otherwise, just returns `componentProps`.\n */\nfunction resolveComponentProps(componentProps, ownerState, slotState) {\n if (typeof componentProps === 'function') {\n return componentProps(ownerState, slotState);\n }\n return componentProps;\n}\nexport default resolveComponentProps;", "'use client';\n\nimport useForkRef from \"../useForkRef/index.js\";\nimport appendOwnerState from \"../appendOwnerState/index.js\";\nimport mergeSlotProps from \"../mergeSlotProps/index.js\";\nimport resolveComponentProps from \"../resolveComponentProps/index.js\";\n/**\n * @ignore - do not document.\n * Builds the props to be passed into the slot of an unstyled component.\n * It merges the internal props of the component with the ones supplied by the user, allowing to customize the behavior.\n * If the slot component is not a host component, it also merges in the `ownerState`.\n *\n * @param parameters.getSlotProps - A function that returns the props to be passed to the slot component.\n */\nfunction useSlotProps(parameters) {\n const {\n elementType,\n externalSlotProps,\n ownerState,\n skipResolvingSlotProps = false,\n ...other\n } = parameters;\n const resolvedComponentsProps = skipResolvingSlotProps ? {} : resolveComponentProps(externalSlotProps, ownerState);\n const {\n props: mergedProps,\n internalRef\n } = mergeSlotProps({\n ...other,\n externalSlotProps: resolvedComponentsProps\n });\n const ref = useForkRef(internalRef, resolvedComponentsProps?.ref, parameters.additionalProps?.ref);\n const props = appendOwnerState(elementType, {\n ...mergedProps,\n ref\n }, ownerState);\n return props;\n}\nexport default useSlotProps;", "'use client';\n\nimport * as React from 'react';\nimport { unstable_ownerDocument as ownerDocument, unstable_useControlled as useControlled, unstable_useEnhancedEffect as useEnhancedEffect, unstable_useEventCallback as useEventCallback, unstable_useForkRef as useForkRef, unstable_isFocusVisible as isFocusVisible, visuallyHidden, clamp } from '@mui/utils';\nimport extractEventHandlers from '@mui/utils/extractEventHandlers';\nimport areArraysEqual from \"../utils/areArraysEqual.js\";\nconst INTENTIONAL_DRAG_COUNT_THRESHOLD = 2;\nfunction getNewValue(currentValue, step, direction, min, max) {\n return direction === 1 ? Math.min(currentValue + step, max) : Math.max(currentValue - step, min);\n}\nfunction asc(a, b) {\n return a - b;\n}\nfunction findClosest(values, currentValue) {\n const {\n index: closestIndex\n } = values.reduce((acc, value, index) => {\n const distance = Math.abs(currentValue - value);\n if (acc === null || distance < acc.distance || distance === acc.distance) {\n return {\n distance,\n index\n };\n }\n return acc;\n }, null) ?? {};\n return closestIndex;\n}\nfunction trackFinger(event, touchId) {\n // The event is TouchEvent\n if (touchId.current !== undefined && event.changedTouches) {\n const touchEvent = event;\n for (let i = 0; i < touchEvent.changedTouches.length; i += 1) {\n const touch = touchEvent.changedTouches[i];\n if (touch.identifier === touchId.current) {\n return {\n x: touch.clientX,\n y: touch.clientY\n };\n }\n }\n return false;\n }\n\n // The event is MouseEvent\n return {\n x: event.clientX,\n y: event.clientY\n };\n}\nexport function valueToPercent(value, min, max) {\n return (value - min) * 100 / (max - min);\n}\nfunction percentToValue(percent, min, max) {\n return (max - min) * percent + min;\n}\nfunction getDecimalPrecision(num) {\n // This handles the case when num is very small (0.00000001), js will turn this into 1e-8.\n // When num is bigger than 1 or less than -1 it won't get converted to this notation so it's fine.\n if (Math.abs(num) < 1) {\n const parts = num.toExponential().split('e-');\n const matissaDecimalPart = parts[0].split('.')[1];\n return (matissaDecimalPart ? matissaDecimalPart.length : 0) + parseInt(parts[1], 10);\n }\n const decimalPart = num.toString().split('.')[1];\n return decimalPart ? decimalPart.length : 0;\n}\nfunction roundValueToStep(value, step, min) {\n const nearest = Math.round((value - min) / step) * step + min;\n return Number(nearest.toFixed(getDecimalPrecision(step)));\n}\nfunction setValueIndex({\n values,\n newValue,\n index\n}) {\n const output = values.slice();\n output[index] = newValue;\n return output.sort(asc);\n}\nfunction focusThumb({\n sliderRef,\n activeIndex,\n setActive\n}) {\n const doc = ownerDocument(sliderRef.current);\n if (!sliderRef.current?.contains(doc.activeElement) || Number(doc?.activeElement?.getAttribute('data-index')) !== activeIndex) {\n sliderRef.current?.querySelector(`[type=\"range\"][data-index=\"${activeIndex}\"]`).focus();\n }\n if (setActive) {\n setActive(activeIndex);\n }\n}\nfunction areValuesEqual(newValue, oldValue) {\n if (typeof newValue === 'number' && typeof oldValue === 'number') {\n return newValue === oldValue;\n }\n if (typeof newValue === 'object' && typeof oldValue === 'object') {\n return areArraysEqual(newValue, oldValue);\n }\n return false;\n}\nconst axisProps = {\n horizontal: {\n offset: percent => ({\n left: `${percent}%`\n }),\n leap: percent => ({\n width: `${percent}%`\n })\n },\n 'horizontal-reverse': {\n offset: percent => ({\n right: `${percent}%`\n }),\n leap: percent => ({\n width: `${percent}%`\n })\n },\n vertical: {\n offset: percent => ({\n bottom: `${percent}%`\n }),\n leap: percent => ({\n height: `${percent}%`\n })\n }\n};\nexport const Identity = x => x;\n\n// TODO: remove support for Safari < 13.\n// https://caniuse.com/#search=touch-action\n//\n// Safari, on iOS, supports touch action since v13.\n// Over 80% of the iOS phones are compatible\n// in August 2020.\n// Utilizing the CSS.supports method to check if touch-action is supported.\n// Since CSS.supports is supported on all but Edge@12 and IE and touch-action\n// is supported on both Edge@12 and IE if CSS.supports is not available that means that\n// touch-action will be supported\nlet cachedSupportsTouchActionNone;\nfunction doesSupportTouchActionNone() {\n if (cachedSupportsTouchActionNone === undefined) {\n if (typeof CSS !== 'undefined' && typeof CSS.supports === 'function') {\n cachedSupportsTouchActionNone = CSS.supports('touch-action', 'none');\n } else {\n cachedSupportsTouchActionNone = true;\n }\n }\n return cachedSupportsTouchActionNone;\n}\n/**\n *\n * Demos:\n *\n * - [Slider](https://mui.com/base-ui/react-slider/#hook)\n *\n * API:\n *\n * - [useSlider API](https://mui.com/base-ui/react-slider/hooks-api/#use-slider)\n */\nexport function useSlider(parameters) {\n const {\n 'aria-labelledby': ariaLabelledby,\n defaultValue,\n disabled = false,\n disableSwap = false,\n isRtl = false,\n marks: marksProp = false,\n max = 100,\n min = 0,\n name,\n onChange,\n onChangeCommitted,\n orientation = 'horizontal',\n rootRef: ref,\n scale = Identity,\n step = 1,\n shiftStep = 10,\n tabIndex,\n value: valueProp\n } = parameters;\n const touchId = React.useRef(undefined);\n // We can't use the :active browser pseudo-classes.\n // - The active state isn't triggered when clicking on the rail.\n // - The active state isn't transferred when inversing a range slider.\n const [active, setActive] = React.useState(-1);\n const [open, setOpen] = React.useState(-1);\n const [dragging, setDragging] = React.useState(false);\n const moveCount = React.useRef(0);\n // lastChangedValue is updated whenever onChange is triggered.\n const lastChangedValue = React.useRef(null);\n const [valueDerived, setValueState] = useControlled({\n controlled: valueProp,\n default: defaultValue ?? min,\n name: 'Slider'\n });\n const handleChange = onChange && ((event, value, thumbIndex) => {\n // Redefine target to allow name and value to be read.\n // This allows seamless integration with the most popular form libraries.\n // https://github.com/mui/material-ui/issues/13485#issuecomment-676048492\n // Clone the event to not override `target` of the original event.\n const nativeEvent = event.nativeEvent || event;\n // @ts-ignore The nativeEvent is function, not object\n const clonedEvent = new nativeEvent.constructor(nativeEvent.type, nativeEvent);\n Object.defineProperty(clonedEvent, 'target', {\n writable: true,\n value: {\n value,\n name\n }\n });\n lastChangedValue.current = value;\n onChange(clonedEvent, value, thumbIndex);\n });\n const range = Array.isArray(valueDerived);\n let values = range ? valueDerived.slice().sort(asc) : [valueDerived];\n values = values.map(value => value == null ? min : clamp(value, min, max));\n const marks = marksProp === true && step !== null ? [...Array(Math.floor((max - min) / step) + 1)].map((_, index) => ({\n value: min + step * index\n })) : marksProp || [];\n const marksValues = marks.map(mark => mark.value);\n const [focusedThumbIndex, setFocusedThumbIndex] = React.useState(-1);\n const sliderRef = React.useRef(null);\n const handleRef = useForkRef(ref, sliderRef);\n const createHandleHiddenInputFocus = otherHandlers => event => {\n const index = Number(event.currentTarget.getAttribute('data-index'));\n if (isFocusVisible(event.target)) {\n setFocusedThumbIndex(index);\n }\n setOpen(index);\n otherHandlers?.onFocus?.(event);\n };\n const createHandleHiddenInputBlur = otherHandlers => event => {\n if (!isFocusVisible(event.target)) {\n setFocusedThumbIndex(-1);\n }\n setOpen(-1);\n otherHandlers?.onBlur?.(event);\n };\n const changeValue = (event, valueInput) => {\n const index = Number(event.currentTarget.getAttribute('data-index'));\n const value = values[index];\n const marksIndex = marksValues.indexOf(value);\n let newValue = valueInput;\n if (marks && step == null) {\n const maxMarksValue = marksValues[marksValues.length - 1];\n if (newValue >= maxMarksValue) {\n newValue = maxMarksValue;\n } else if (newValue <= marksValues[0]) {\n newValue = marksValues[0];\n } else {\n newValue = newValue < value ? marksValues[marksIndex - 1] : marksValues[marksIndex + 1];\n }\n }\n newValue = clamp(newValue, min, max);\n if (range) {\n // Bound the new value to the thumb's neighbours.\n if (disableSwap) {\n newValue = clamp(newValue, values[index - 1] || -Infinity, values[index + 1] || Infinity);\n }\n const previousValue = newValue;\n newValue = setValueIndex({\n values,\n newValue,\n index\n });\n let activeIndex = index;\n\n // Potentially swap the index if needed.\n if (!disableSwap) {\n activeIndex = newValue.indexOf(previousValue);\n }\n focusThumb({\n sliderRef,\n activeIndex\n });\n }\n setValueState(newValue);\n setFocusedThumbIndex(index);\n if (handleChange && !areValuesEqual(newValue, valueDerived)) {\n handleChange(event, newValue, index);\n }\n if (onChangeCommitted) {\n onChangeCommitted(event, lastChangedValue.current ?? newValue);\n }\n };\n const createHandleHiddenInputKeyDown = otherHandlers => event => {\n if (['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight', 'PageUp', 'PageDown', 'Home', 'End'].includes(event.key)) {\n event.preventDefault();\n const index = Number(event.currentTarget.getAttribute('data-index'));\n const value = values[index];\n let newValue = null;\n // Keys actions that change the value by more than the most granular `step`\n // value are only applied if the step not `null`.\n // When step is `null`, the `marks` prop is used instead to define valid values.\n if (step != null) {\n const stepSize = event.shiftKey ? shiftStep : step;\n switch (event.key) {\n case 'ArrowUp':\n newValue = getNewValue(value, stepSize, 1, min, max);\n break;\n case 'ArrowRight':\n newValue = getNewValue(value, stepSize, isRtl ? -1 : 1, min, max);\n break;\n case 'ArrowDown':\n newValue = getNewValue(value, stepSize, -1, min, max);\n break;\n case 'ArrowLeft':\n newValue = getNewValue(value, stepSize, isRtl ? 1 : -1, min, max);\n break;\n case 'PageUp':\n newValue = getNewValue(value, shiftStep, 1, min, max);\n break;\n case 'PageDown':\n newValue = getNewValue(value, shiftStep, -1, min, max);\n break;\n case 'Home':\n newValue = min;\n break;\n case 'End':\n newValue = max;\n break;\n default:\n break;\n }\n } else if (marks) {\n const maxMarksValue = marksValues[marksValues.length - 1];\n const currentMarkIndex = marksValues.indexOf(value);\n const decrementKeys = [isRtl ? 'ArrowRight' : 'ArrowLeft', 'ArrowDown', 'PageDown', 'Home'];\n const incrementKeys = [isRtl ? 'ArrowLeft' : 'ArrowRight', 'ArrowUp', 'PageUp', 'End'];\n if (decrementKeys.includes(event.key)) {\n if (currentMarkIndex === 0) {\n newValue = marksValues[0];\n } else {\n newValue = marksValues[currentMarkIndex - 1];\n }\n } else if (incrementKeys.includes(event.key)) {\n if (currentMarkIndex === marksValues.length - 1) {\n newValue = maxMarksValue;\n } else {\n newValue = marksValues[currentMarkIndex + 1];\n }\n }\n }\n if (newValue != null) {\n changeValue(event, newValue);\n }\n }\n otherHandlers?.onKeyDown?.(event);\n };\n useEnhancedEffect(() => {\n if (disabled && sliderRef.current.contains(document.activeElement)) {\n // This is necessary because Firefox and Safari will keep focus\n // on a disabled element:\n // https://codesandbox.io/p/sandbox/mui-pr-22247-forked-h151h?file=/src/App.js\n // @ts-ignore\n document.activeElement?.blur();\n }\n }, [disabled]);\n if (disabled && active !== -1) {\n setActive(-1);\n }\n if (disabled && focusedThumbIndex !== -1) {\n setFocusedThumbIndex(-1);\n }\n const createHandleHiddenInputChange = otherHandlers => event => {\n otherHandlers.onChange?.(event);\n // this handles value change by Pointer or Touch events\n // @ts-ignore\n changeValue(event, event.target.valueAsNumber);\n };\n const previousIndex = React.useRef(undefined);\n let axis = orientation;\n if (isRtl && orientation === 'horizontal') {\n axis += '-reverse';\n }\n const getFingerNewValue = ({\n finger,\n move = false\n }) => {\n const {\n current: slider\n } = sliderRef;\n const {\n width,\n height,\n bottom,\n left\n } = slider.getBoundingClientRect();\n let percent;\n if (axis.startsWith('vertical')) {\n percent = (bottom - finger.y) / height;\n } else {\n percent = (finger.x - left) / width;\n }\n if (axis.includes('-reverse')) {\n percent = 1 - percent;\n }\n let newValue;\n newValue = percentToValue(percent, min, max);\n if (step) {\n newValue = roundValueToStep(newValue, step, min);\n } else {\n const closestIndex = findClosest(marksValues, newValue);\n newValue = marksValues[closestIndex];\n }\n newValue = clamp(newValue, min, max);\n let activeIndex = 0;\n if (range) {\n if (!move) {\n activeIndex = findClosest(values, newValue);\n } else {\n activeIndex = previousIndex.current;\n }\n\n // Bound the new value to the thumb's neighbours.\n if (disableSwap) {\n newValue = clamp(newValue, values[activeIndex - 1] || -Infinity, values[activeIndex + 1] || Infinity);\n }\n const previousValue = newValue;\n newValue = setValueIndex({\n values,\n newValue,\n index: activeIndex\n });\n\n // Potentially swap the index if needed.\n if (!(disableSwap && move)) {\n activeIndex = newValue.indexOf(previousValue);\n previousIndex.current = activeIndex;\n }\n }\n return {\n newValue,\n activeIndex\n };\n };\n const handleTouchMove = useEventCallback(nativeEvent => {\n const finger = trackFinger(nativeEvent, touchId);\n if (!finger) {\n return;\n }\n moveCount.current += 1;\n\n // Cancel move in case some other element consumed a mouseup event and it was not fired.\n // @ts-ignore buttons doesn't not exists on touch event\n if (nativeEvent.type === 'mousemove' && nativeEvent.buttons === 0) {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n handleTouchEnd(nativeEvent);\n return;\n }\n const {\n newValue,\n activeIndex\n } = getFingerNewValue({\n finger,\n move: true\n });\n focusThumb({\n sliderRef,\n activeIndex,\n setActive\n });\n setValueState(newValue);\n if (!dragging && moveCount.current > INTENTIONAL_DRAG_COUNT_THRESHOLD) {\n setDragging(true);\n }\n if (handleChange && !areValuesEqual(newValue, valueDerived)) {\n handleChange(nativeEvent, newValue, activeIndex);\n }\n });\n const handleTouchEnd = useEventCallback(nativeEvent => {\n const finger = trackFinger(nativeEvent, touchId);\n setDragging(false);\n if (!finger) {\n return;\n }\n const {\n newValue\n } = getFingerNewValue({\n finger,\n move: true\n });\n setActive(-1);\n if (nativeEvent.type === 'touchend') {\n setOpen(-1);\n }\n if (onChangeCommitted) {\n onChangeCommitted(nativeEvent, lastChangedValue.current ?? newValue);\n }\n touchId.current = undefined;\n\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n stopListening();\n });\n const handleTouchStart = useEventCallback(nativeEvent => {\n if (disabled) {\n return;\n }\n // If touch-action: none; is not supported we need to prevent the scroll manually.\n if (!doesSupportTouchActionNone()) {\n nativeEvent.preventDefault();\n }\n const touch = nativeEvent.changedTouches[0];\n if (touch != null) {\n // A number that uniquely identifies the current finger in the touch session.\n touchId.current = touch.identifier;\n }\n const finger = trackFinger(nativeEvent, touchId);\n if (finger !== false) {\n const {\n newValue,\n activeIndex\n } = getFingerNewValue({\n finger\n });\n focusThumb({\n sliderRef,\n activeIndex,\n setActive\n });\n setValueState(newValue);\n if (handleChange && !areValuesEqual(newValue, valueDerived)) {\n handleChange(nativeEvent, newValue, activeIndex);\n }\n }\n moveCount.current = 0;\n const doc = ownerDocument(sliderRef.current);\n doc.addEventListener('touchmove', handleTouchMove, {\n passive: true\n });\n doc.addEventListener('touchend', handleTouchEnd, {\n passive: true\n });\n });\n const stopListening = React.useCallback(() => {\n const doc = ownerDocument(sliderRef.current);\n doc.removeEventListener('mousemove', handleTouchMove);\n doc.removeEventListener('mouseup', handleTouchEnd);\n doc.removeEventListener('touchmove', handleTouchMove);\n doc.removeEventListener('touchend', handleTouchEnd);\n }, [handleTouchEnd, handleTouchMove]);\n React.useEffect(() => {\n const {\n current: slider\n } = sliderRef;\n slider.addEventListener('touchstart', handleTouchStart, {\n passive: doesSupportTouchActionNone()\n });\n return () => {\n slider.removeEventListener('touchstart', handleTouchStart);\n stopListening();\n };\n }, [stopListening, handleTouchStart]);\n React.useEffect(() => {\n if (disabled) {\n stopListening();\n }\n }, [disabled, stopListening]);\n const createHandleMouseDown = otherHandlers => event => {\n otherHandlers.onMouseDown?.(event);\n if (disabled) {\n return;\n }\n if (event.defaultPrevented) {\n return;\n }\n\n // Only handle left clicks\n if (event.button !== 0) {\n return;\n }\n\n // Avoid text selection\n event.preventDefault();\n const finger = trackFinger(event, touchId);\n if (finger !== false) {\n const {\n newValue,\n activeIndex\n } = getFingerNewValue({\n finger\n });\n focusThumb({\n sliderRef,\n activeIndex,\n setActive\n });\n setValueState(newValue);\n if (handleChange && !areValuesEqual(newValue, valueDerived)) {\n handleChange(event, newValue, activeIndex);\n }\n }\n moveCount.current = 0;\n const doc = ownerDocument(sliderRef.current);\n doc.addEventListener('mousemove', handleTouchMove, {\n passive: true\n });\n doc.addEventListener('mouseup', handleTouchEnd);\n };\n const trackOffset = valueToPercent(range ? values[0] : min, min, max);\n const trackLeap = valueToPercent(values[values.length - 1], min, max) - trackOffset;\n const getRootProps = (externalProps = {}) => {\n const externalHandlers = extractEventHandlers(externalProps);\n const ownEventHandlers = {\n onMouseDown: createHandleMouseDown(externalHandlers || {})\n };\n const mergedEventHandlers = {\n ...externalHandlers,\n ...ownEventHandlers\n };\n return {\n ...externalProps,\n ref: handleRef,\n ...mergedEventHandlers\n };\n };\n const createHandleMouseOver = otherHandlers => event => {\n otherHandlers.onMouseOver?.(event);\n const index = Number(event.currentTarget.getAttribute('data-index'));\n setOpen(index);\n };\n const createHandleMouseLeave = otherHandlers => event => {\n otherHandlers.onMouseLeave?.(event);\n setOpen(-1);\n };\n const getThumbProps = (externalProps = {}) => {\n const externalHandlers = extractEventHandlers(externalProps);\n const ownEventHandlers = {\n onMouseOver: createHandleMouseOver(externalHandlers || {}),\n onMouseLeave: createHandleMouseLeave(externalHandlers || {})\n };\n return {\n ...externalProps,\n ...externalHandlers,\n ...ownEventHandlers\n };\n };\n const getThumbStyle = index => {\n return {\n // So the non active thumb doesn't show its label on hover.\n pointerEvents: active !== -1 && active !== index ? 'none' : undefined\n };\n };\n let cssWritingMode;\n if (orientation === 'vertical') {\n cssWritingMode = isRtl ? 'vertical-rl' : 'vertical-lr';\n }\n const getHiddenInputProps = (externalProps = {}) => {\n const externalHandlers = extractEventHandlers(externalProps);\n const ownEventHandlers = {\n onChange: createHandleHiddenInputChange(externalHandlers || {}),\n onFocus: createHandleHiddenInputFocus(externalHandlers || {}),\n onBlur: createHandleHiddenInputBlur(externalHandlers || {}),\n onKeyDown: createHandleHiddenInputKeyDown(externalHandlers || {})\n };\n const mergedEventHandlers = {\n ...externalHandlers,\n ...ownEventHandlers\n };\n return {\n tabIndex,\n 'aria-labelledby': ariaLabelledby,\n 'aria-orientation': orientation,\n 'aria-valuemax': scale(max),\n 'aria-valuemin': scale(min),\n name,\n type: 'range',\n min: parameters.min,\n max: parameters.max,\n step: parameters.step === null && parameters.marks ? 'any' : parameters.step ?? undefined,\n disabled,\n ...externalProps,\n ...mergedEventHandlers,\n style: {\n ...visuallyHidden,\n direction: isRtl ? 'rtl' : 'ltr',\n // So that VoiceOver's focus indicator matches the thumb's dimensions\n width: '100%',\n height: '100%',\n writingMode: cssWritingMode\n }\n };\n };\n return {\n active,\n axis: axis,\n axisProps,\n dragging,\n focusedThumbIndex,\n getHiddenInputProps,\n getRootProps,\n getThumbProps,\n marks: marks,\n open,\n range,\n rootRef: handleRef,\n trackLeap,\n trackOffset,\n values,\n getThumbStyle\n };\n}", "import * as React from 'react';\nimport { isValidElementType } from 'react-is';\n\n// https://github.com/sindresorhus/is-plain-obj/blob/main/index.js\nexport function isPlainObject(item) {\n if (typeof item !== 'object' || item === null) {\n return false;\n }\n const prototype = Object.getPrototypeOf(item);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in item) && !(Symbol.iterator in item);\n}\nfunction deepClone(source) {\n if (/*#__PURE__*/React.isValidElement(source) || isValidElementType(source) || !isPlainObject(source)) {\n return source;\n }\n const output = {};\n Object.keys(source).forEach(key => {\n output[key] = deepClone(source[key]);\n });\n return output;\n}\n\n/**\n * Merge objects deeply.\n * It will shallow copy React elements.\n *\n * If `options.clone` is set to `false` the source object will be merged directly into the target object.\n *\n * @example\n * ```ts\n * deepmerge({ a: { b: 1 }, d: 2 }, { a: { c: 2 }, d: 4 });\n * // => { a: { b: 1, c: 2 }, d: 4 }\n * ````\n *\n * @param target The target object.\n * @param source The source object.\n * @param options The merge options.\n * @param options.clone Set to `false` to merge the source object directly into the target object.\n * @returns The merged object.\n */\nexport default function deepmerge(target, source, options = {\n clone: true\n}) {\n const output = options.clone ? {\n ...target\n } : target;\n if (isPlainObject(target) && isPlainObject(source)) {\n Object.keys(source).forEach(key => {\n if (/*#__PURE__*/React.isValidElement(source[key]) || isValidElementType(source[key])) {\n output[key] = source[key];\n } else if (isPlainObject(source[key]) &&\n // Avoid prototype pollution\n Object.prototype.hasOwnProperty.call(target, key) && isPlainObject(target[key])) {\n // Since `output` is a clone of `target` and we have narrowed `target` in this block we can cast to the same type.\n output[key] = deepmerge(target[key], source[key], options);\n } else if (options.clone) {\n output[key] = isPlainObject(source[key]) ? deepClone(source[key]) : source[key];\n } else {\n output[key] = source[key];\n }\n });\n }\n return output;\n}", "import PropTypes from 'prop-types';\nimport chainPropTypes from \"../chainPropTypes/index.js\";\nfunction isClassComponent(elementType) {\n // elementType.prototype?.isReactComponent\n const {\n prototype = {}\n } = elementType;\n return Boolean(prototype.isReactComponent);\n}\nfunction acceptingRef(props, propName, componentName, location, propFullName) {\n const element = props[propName];\n const safePropName = propFullName || propName;\n if (element == null ||\n // When server-side rendering React doesn't warn either.\n // This is not an accurate check for SSR.\n // This is only in place for Emotion compat.\n // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.\n typeof window === 'undefined') {\n return null;\n }\n let warningHint;\n const elementType = element.type;\n /**\n * Blacklisting instead of whitelisting\n *\n * Blacklisting will miss some components, such as React.Fragment. Those will at least\n * trigger a warning in React.\n * We can't whitelist because there is no safe way to detect React.forwardRef\n * or class components. \"Safe\" means there's no public API.\n *\n */\n if (typeof elementType === 'function' && !isClassComponent(elementType)) {\n warningHint = 'Did you accidentally use a plain function component for an element instead?';\n }\n if (warningHint !== undefined) {\n return new Error(`Invalid ${location} \\`${safePropName}\\` supplied to \\`${componentName}\\`. ` + `Expected an element that can hold a ref. ${warningHint} ` + 'For more information see https://mui.com/r/caveat-with-refs-guide');\n }\n return null;\n}\nconst elementAcceptingRef = chainPropTypes(PropTypes.element, acceptingRef);\nelementAcceptingRef.isRequired = chainPropTypes(PropTypes.element.isRequired, acceptingRef);\nexport default elementAcceptingRef;", "import PropTypes from 'prop-types';\nimport chainPropTypes from \"../chainPropTypes/index.js\";\nfunction isClassComponent(elementType) {\n // elementType.prototype?.isReactComponent\n const {\n prototype = {}\n } = elementType;\n return Boolean(prototype.isReactComponent);\n}\nfunction elementTypeAcceptingRef(props, propName, componentName, location, propFullName) {\n const propValue = props[propName];\n const safePropName = propFullName || propName;\n if (propValue == null ||\n // When server-side rendering React doesn't warn either.\n // This is not an accurate check for SSR.\n // This is only in place for emotion compat.\n // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.\n typeof window === 'undefined') {\n return null;\n }\n let warningHint;\n\n /**\n * Blacklisting instead of whitelisting\n *\n * Blacklisting will miss some components, such as React.Fragment. Those will at least\n * trigger a warning in React.\n * We can't whitelist because there is no safe way to detect React.forwardRef\n * or class components. \"Safe\" means there's no public API.\n *\n */\n if (typeof propValue === 'function' && !isClassComponent(propValue)) {\n warningHint = 'Did you accidentally provide a plain function component instead?';\n }\n if (warningHint !== undefined) {\n return new Error(`Invalid ${location} \\`${safePropName}\\` supplied to \\`${componentName}\\`. ` + `Expected an element type that can hold a ref. ${warningHint} ` + 'For more information see https://mui.com/r/caveat-with-refs-guide');\n }\n return null;\n}\nexport default chainPropTypes(PropTypes.elementType, elementTypeAcceptingRef);", "// This module is based on https://github.com/airbnb/prop-types-exact repository.\n// However, in order to reduce the number of dependencies and to remove some extra safe checks\n// the module was forked.\n\nconst specialProperty = 'exact-prop: \\u200b';\nexport default function exactProp(propTypes) {\n if (process.env.NODE_ENV === 'production') {\n return propTypes;\n }\n return {\n ...propTypes,\n [specialProperty]: props => {\n const unsupportedProps = Object.keys(props).filter(prop => !propTypes.hasOwnProperty(prop));\n if (unsupportedProps.length > 0) {\n return new Error(`The following props are not supported: ${unsupportedProps.map(prop => `\\`${prop}\\``).join(', ')}. Please remove them.`);\n }\n return null;\n }\n };\n}", "import { ForwardRef, Memo } from 'react-is';\nfunction getFunctionComponentName(Component, fallback = '') {\n return Component.displayName || Component.name || fallback;\n}\nfunction getWrappedName(outerType, innerType, wrapperName) {\n const functionName = getFunctionComponentName(innerType);\n return outerType.displayName || (functionName !== '' ? `${wrapperName}(${functionName})` : wrapperName);\n}\n\n/**\n * cherry-pick from\n * https://github.com/facebook/react/blob/769b1f270e1251d9dbdce0fcbd9e92e502d059b8/packages/shared/getComponentName.js\n * originally forked from recompose/getDisplayName\n */\nexport default function getDisplayName(Component) {\n if (Component == null) {\n return undefined;\n }\n if (typeof Component === 'string') {\n return Component;\n }\n if (typeof Component === 'function') {\n return getFunctionComponentName(Component, 'Component');\n }\n\n // TypeScript can't have components as objects but they exist in the form of `memo` or `Suspense`\n if (typeof Component === 'object') {\n switch (Component.$$typeof) {\n case ForwardRef:\n return getWrappedName(Component, Component.render, 'ForwardRef');\n case Memo:\n return getWrappedName(Component, Component.type, 'memo');\n default:\n return undefined;\n }\n }\n return undefined;\n}", "/* eslint-disable */\n/**\n * https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\n * @deprecated Use `globalThis` instead.\n */\nexport default typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();", "import PropTypes from 'prop-types';\nconst refType = PropTypes.oneOfType([PropTypes.func, PropTypes.object]);\nexport default refType;", "import _formatErrorMessage from \"@mui/utils/formatMuiErrorMessage\";\n// It should to be noted that this function isn't equivalent to `text-transform: capitalize`.\n//\n// A strict capitalization should uppercase the first letter of each word in the sentence.\n// We only handle the first word.\nexport default function capitalize(string) {\n if (typeof string !== 'string') {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'MUI: `capitalize(string)` expects a string argument.' : _formatErrorMessage(7));\n }\n return string.charAt(0).toUpperCase() + string.slice(1);\n}", "import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(\n // For server components `muiName` is avaialble in element.type._payload.value.muiName\n // relevant info - https://github.com/facebook/react/blob/2807d781a08db8e9873687fccc25c0f12b4fb3d4/packages/react/src/ReactLazy.js#L45\n // eslint-disable-next-line no-underscore-dangle\n element.type.muiName ?? element.type?._payload?.value?.muiName) !== -1;\n}", "export default function ownerDocument(node) {\n return node && node.ownerDocument || document;\n}", "'use client';\n\nimport * as React from 'react';\n\n/**\n * A version of `React.useLayoutEffect` that does not show a warning when server-side rendering.\n * This is useful for effects that are only needed for client-side rendering but not for SSR.\n *\n * Before you use this hook, make sure to read https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85\n * and confirm it doesn't apply to your use-case.\n */\nconst useEnhancedEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nexport default useEnhancedEffect;", "'use client';\n\nimport * as React from 'react';\nlet globalId = 0;\n\n// TODO React 17: Remove `useGlobalId` once React 17 support is removed\nfunction useGlobalId(idOverride) {\n const [defaultId, setDefaultId] = React.useState(idOverride);\n const id = idOverride || defaultId;\n React.useEffect(() => {\n if (defaultId == null) {\n // Fallback to this default id when possible.\n // Use the incrementing value for client-side rendering only.\n // We can't use it server-side.\n // If you want to use random values please consider the Birthday Problem: https://en.wikipedia.org/wiki/Birthday_problem\n globalId += 1;\n setDefaultId(`mui-${globalId}`);\n }\n }, [defaultId]);\n return id;\n}\n\n// See https://github.com/mui/material-ui/issues/41190#issuecomment-2040873379 for why\nconst safeReact = {\n ...React\n};\nconst maybeReactUseId = safeReact.useId;\n\n/**\n *\n * @example
\n * @param idOverride\n * @returns {string}\n */\nexport default function useId(idOverride) {\n // React.useId() is only available from React 17.0.0.\n if (maybeReactUseId !== undefined) {\n const reactId = maybeReactUseId();\n return idOverride ?? reactId;\n }\n\n // TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler\n // eslint-disable-next-line react-hooks/rules-of-hooks -- `React.useId` is invariant at runtime.\n return useGlobalId(idOverride);\n}", "'use client';\n\n// TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler -- process.env never changes, dependency arrays are intentionally ignored\n/* eslint-disable react-hooks/rules-of-hooks, react-hooks/exhaustive-deps */\nimport * as React from 'react';\nexport default function useControlled({\n controlled,\n default: defaultProp,\n name,\n state = 'value'\n}) {\n // isControlled is ignored in the hook dependency lists as it should never change.\n const {\n current: isControlled\n } = React.useRef(controlled !== undefined);\n const [valueState, setValue] = React.useState(defaultProp);\n const value = isControlled ? controlled : valueState;\n if (process.env.NODE_ENV !== 'production') {\n React.useEffect(() => {\n if (isControlled !== (controlled !== undefined)) {\n console.error([`MUI: A component is changing the ${isControlled ? '' : 'un'}controlled ${state} state of ${name} to be ${isControlled ? 'un' : ''}controlled.`, 'Elements should not switch from uncontrolled to controlled (or vice versa).', `Decide between using a controlled or uncontrolled ${name} ` + 'element for the lifetime of the component.', \"The nature of the state is determined during the first render. It's considered controlled if the value is not `undefined`.\", 'More info: https://fb.me/react-controlled-components'].join('\\n'));\n }\n }, [state, name, controlled]);\n const {\n current: defaultValue\n } = React.useRef(defaultProp);\n React.useEffect(() => {\n // Object.is() is not equivalent to the === operator.\n // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is for more details.\n if (!isControlled && !Object.is(defaultValue, defaultProp)) {\n console.error([`MUI: A component is changing the default ${state} state of an uncontrolled ${name} after being initialized. ` + `To suppress this warning opt to use a controlled ${name}.`].join('\\n'));\n }\n }, [JSON.stringify(defaultProp)]);\n }\n const setValueIfUncontrolled = React.useCallback(newValue => {\n if (!isControlled) {\n setValue(newValue);\n }\n }, []);\n return [value, setValueIfUncontrolled];\n}", "'use client';\n\nimport * as React from 'react';\nimport useEnhancedEffect from \"../useEnhancedEffect/index.js\";\n\n/**\n * Inspired by https://github.com/facebook/react/issues/14099#issuecomment-440013892\n * See RFC in https://github.com/reactjs/rfcs/pull/220\n */\n\nfunction useEventCallback(fn) {\n const ref = React.useRef(fn);\n useEnhancedEffect(() => {\n ref.current = fn;\n });\n return React.useRef((...args) =>\n // @ts-expect-error hide `this`\n (0, ref.current)(...args)).current;\n}\nexport default useEventCallback;", "'use client';\n\nimport * as React from 'react';\nconst UNINITIALIZED = {};\n\n/**\n * A React.useRef() that is initialized lazily with a function. Note that it accepts an optional\n * initialization argument, so the initialization function doesn't need to be an inline closure.\n *\n * @usage\n * const ref = useLazyRef(sortColumns, columns)\n */\nexport default function useLazyRef(init, initArg) {\n const ref = React.useRef(UNINITIALIZED);\n if (ref.current === UNINITIALIZED) {\n ref.current = init(initArg);\n }\n return ref;\n}", "'use client';\n\nimport * as React from 'react';\nconst EMPTY = [];\n\n/**\n * A React.useEffect equivalent that runs once, when the component is mounted.\n */\nexport default function useOnMount(fn) {\n // TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler -- no need to put `fn` in the dependency array\n /* eslint-disable react-hooks/exhaustive-deps */\n React.useEffect(fn, EMPTY);\n /* eslint-enable react-hooks/exhaustive-deps */\n}", "'use client';\n\nimport useLazyRef from \"../useLazyRef/useLazyRef.js\";\nimport useOnMount from \"../useOnMount/useOnMount.js\";\nexport class Timeout {\n static create() {\n return new Timeout();\n }\n currentId = null;\n\n /**\n * Executes `fn` after `delay`, clearing any previously scheduled call.\n */\n start(delay, fn) {\n this.clear();\n this.currentId = setTimeout(() => {\n this.currentId = null;\n fn();\n }, delay);\n }\n clear = () => {\n if (this.currentId !== null) {\n clearTimeout(this.currentId);\n this.currentId = null;\n }\n };\n disposeEffect = () => {\n return this.clear;\n };\n}\nexport default function useTimeout() {\n const timeout = useLazyRef(Timeout.create).current;\n useOnMount(timeout.disposeEffect);\n return timeout;\n}", "'use client';\n\n// based on https://github.com/WICG/focus-visible/blob/v4.1.5/src/focus-visible.js\nimport * as React from 'react';\nimport { Timeout } from \"../useTimeout/useTimeout.js\";\nlet hadKeyboardEvent = true;\nlet hadFocusVisibleRecently = false;\nconst hadFocusVisibleRecentlyTimeout = new Timeout();\nconst inputTypesWhitelist = {\n text: true,\n search: true,\n url: true,\n tel: true,\n email: true,\n password: true,\n number: true,\n date: true,\n month: true,\n week: true,\n time: true,\n datetime: true,\n 'datetime-local': true\n};\n\n/**\n * Computes whether the given element should automatically trigger the\n * `focus-visible` class being added, i.e. whether it should always match\n * `:focus-visible` when focused.\n * @param {Element} node\n * @returns {boolean}\n */\nfunction focusTriggersKeyboardModality(node) {\n const {\n type,\n tagName\n } = node;\n if (tagName === 'INPUT' && inputTypesWhitelist[type] && !node.readOnly) {\n return true;\n }\n if (tagName === 'TEXTAREA' && !node.readOnly) {\n return true;\n }\n if (node.isContentEditable) {\n return true;\n }\n return false;\n}\n\n/**\n * Keep track of our keyboard modality state with `hadKeyboardEvent`.\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * @param {KeyboardEvent} event\n */\nfunction handleKeyDown(event) {\n if (event.metaKey || event.altKey || event.ctrlKey) {\n return;\n }\n hadKeyboardEvent = true;\n}\n\n/**\n * If at any point a user clicks with a pointing device, ensure that we change\n * the modality away from keyboard.\n * This avoids the situation where a user presses a key on an already focused\n * element, and then clicks on a different element, focusing it with a\n * pointing device, while we still think we're in keyboard modality.\n */\nfunction handlePointerDown() {\n hadKeyboardEvent = false;\n}\nfunction handleVisibilityChange() {\n if (this.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n if (hadFocusVisibleRecently) {\n hadKeyboardEvent = true;\n }\n }\n}\nfunction prepare(doc) {\n doc.addEventListener('keydown', handleKeyDown, true);\n doc.addEventListener('mousedown', handlePointerDown, true);\n doc.addEventListener('pointerdown', handlePointerDown, true);\n doc.addEventListener('touchstart', handlePointerDown, true);\n doc.addEventListener('visibilitychange', handleVisibilityChange, true);\n}\nexport function teardown(doc) {\n doc.removeEventListener('keydown', handleKeyDown, true);\n doc.removeEventListener('mousedown', handlePointerDown, true);\n doc.removeEventListener('pointerdown', handlePointerDown, true);\n doc.removeEventListener('touchstart', handlePointerDown, true);\n doc.removeEventListener('visibilitychange', handleVisibilityChange, true);\n}\nfunction isFocusVisible(event) {\n const {\n target\n } = event;\n try {\n return target.matches(':focus-visible');\n } catch (error) {\n // Browsers not implementing :focus-visible will throw a SyntaxError.\n // We use our own heuristic for those browsers.\n // Rethrow might be better if it's not the expected error but do we really\n // want to crash if focus-visible malfunctioned?\n }\n\n // No need for validFocusTarget check. The user does that by attaching it to\n // focusable events only.\n return hadKeyboardEvent || focusTriggersKeyboardModality(target);\n}\nexport default function useIsFocusVisible() {\n const ref = React.useCallback(node => {\n if (node != null) {\n prepare(node.ownerDocument);\n }\n }, []);\n const isFocusVisibleRef = React.useRef(false);\n\n /**\n * Should be called if a blur event is fired\n */\n function handleBlurVisible() {\n // checking against potential state variable does not suffice if we focus and blur synchronously.\n // React wouldn't have time to trigger a re-render so `focusVisible` would be stale.\n // Ideally we would adjust `isFocusVisible(event)` to look at `relatedTarget` for blur events.\n // This doesn't work in IE11 due to https://github.com/facebook/react/issues/3751\n // TODO: check again if React releases their internal changes to focus event handling (https://github.com/facebook/react/pull/19186).\n if (isFocusVisibleRef.current) {\n // To detect a tab/window switch, we look for a blur event followed\n // rapidly by a visibility change.\n // If we don't see a visibility change within 100ms, it's probably a\n // regular focus change.\n hadFocusVisibleRecently = true;\n hadFocusVisibleRecentlyTimeout.start(100, () => {\n hadFocusVisibleRecently = false;\n });\n isFocusVisibleRef.current = false;\n return true;\n }\n return false;\n }\n\n /**\n * Should be called if a blur event is fired\n */\n function handleFocusVisible(event) {\n if (isFocusVisible(event)) {\n isFocusVisibleRef.current = true;\n return true;\n }\n return false;\n }\n return {\n isFocusVisibleRef,\n onFocus: handleFocusVisible,\n onBlur: handleBlurVisible,\n ref\n };\n}", "/**\n * Returns a boolean indicating if the event's target has :focus-visible\n */\nexport default function isFocusVisible(element) {\n try {\n return element.matches(':focus-visible');\n } catch (error) {\n // Do not warn on jsdom tests, otherwise all tests that rely on focus have to be skipped\n // Tests that rely on `:focus-visible` will still have to be skipped in jsdom\n if (process.env.NODE_ENV !== 'production' && !/jsdom/.test(window.navigator.userAgent)) {\n console.warn(['MUI: The `:focus-visible` pseudo class is not supported in this browser.', 'Some components rely on this feature to work properly.'].join('\\n'));\n }\n }\n return false;\n}", "'use client';\n\nimport * as React from 'react';\nconst usePreviousProps = value => {\n const ref = React.useRef({});\n React.useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n};\nexport default usePreviousProps;", "import * as React from 'react';\n\n/**\n * Gets only the valid children of a component,\n * and ignores any nullish or falsy child.\n *\n * @param children the children\n */\nexport default function getValidReactChildren(children) {\n return React.Children.toArray(children).filter(child => /*#__PURE__*/React.isValidElement(child));\n}", "const visuallyHidden = {\n border: 0,\n clip: 'rect(0 0 0 0)',\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n whiteSpace: 'nowrap',\n width: '1px'\n};\nexport default visuallyHidden;", "export function getTypeByValue(value) {\n const valueType = typeof value;\n switch (valueType) {\n case 'number':\n if (Number.isNaN(value)) {\n return 'NaN';\n }\n if (!Number.isFinite(value)) {\n return 'Infinity';\n }\n if (value !== Math.floor(value)) {\n return 'float';\n }\n return 'number';\n case 'object':\n if (value === null) {\n return 'null';\n }\n return value.constructor.name;\n default:\n return valueType;\n }\n}\nfunction requiredInteger(props, propName, componentName, location) {\n const propValue = props[propName];\n if (propValue == null || !Number.isInteger(propValue)) {\n const propType = getTypeByValue(propValue);\n return new RangeError(`Invalid ${location} \\`${propName}\\` of type \\`${propType}\\` supplied to \\`${componentName}\\`, expected \\`integer\\`.`);\n }\n return null;\n}\nfunction validator(props, propName, ...other) {\n const propValue = props[propName];\n if (propValue === undefined) {\n return null;\n }\n return requiredInteger(props, propName, ...other);\n}\nfunction validatorNoop() {\n return null;\n}\nvalidator.isRequired = requiredInteger;\nvalidatorNoop.isRequired = validatorNoop;\nexport default process.env.NODE_ENV === 'production' ? validatorNoop : validator;", "/**\n * Add keys, values of `defaultProps` that does not exist in `props`\n * @param defaultProps\n * @param props\n * @returns resolved props\n */\nexport default function resolveProps(defaultProps, props) {\n const output = {\n ...props\n };\n for (const key in defaultProps) {\n if (Object.prototype.hasOwnProperty.call(defaultProps, key)) {\n const propName = key;\n if (propName === 'components' || propName === 'slots') {\n output[propName] = {\n ...defaultProps[propName],\n ...output[propName]\n };\n } else if (propName === 'componentsProps' || propName === 'slotProps') {\n const defaultSlotProps = defaultProps[propName];\n const slotProps = props[propName];\n if (!slotProps) {\n output[propName] = defaultSlotProps || {};\n } else if (!defaultSlotProps) {\n output[propName] = slotProps;\n } else {\n output[propName] = {\n ...slotProps\n };\n for (const slotKey in defaultSlotProps) {\n if (Object.prototype.hasOwnProperty.call(defaultSlotProps, slotKey)) {\n const slotPropName = slotKey;\n output[propName][slotPropName] = resolveProps(defaultSlotProps[slotPropName], slotProps[slotPropName]);\n }\n }\n }\n } else if (output[propName] === undefined) {\n output[propName] = defaultProps[propName];\n }\n }\n }\n return output;\n}", "const defaultGenerator = componentName => componentName;\nconst createClassNameGenerator = () => {\n let generate = defaultGenerator;\n return {\n configure(generator) {\n generate = generator;\n },\n generate(componentName) {\n return generate(componentName);\n },\n reset() {\n generate = defaultGenerator;\n }\n };\n};\nconst ClassNameGenerator = createClassNameGenerator();\nexport default ClassNameGenerator;", "import ClassNameGenerator from \"../ClassNameGenerator/index.js\";\nexport const globalStateClasses = {\n active: 'active',\n checked: 'checked',\n completed: 'completed',\n disabled: 'disabled',\n error: 'error',\n expanded: 'expanded',\n focused: 'focused',\n focusVisible: 'focusVisible',\n open: 'open',\n readOnly: 'readOnly',\n required: 'required',\n selected: 'selected'\n};\nexport default function generateUtilityClass(componentName, slot, globalStatePrefix = 'Mui') {\n const globalStateClass = globalStateClasses[slot];\n return globalStateClass ? `${globalStatePrefix}-${globalStateClass}` : `${ClassNameGenerator.generate(componentName)}-${slot}`;\n}\nexport function isGlobalState(slot) {\n return globalStateClasses[slot] !== undefined;\n}", "import generateUtilityClass from \"../generateUtilityClass/index.js\";\nexport default function generateUtilityClasses(componentName, slots, globalStatePrefix = 'Mui') {\n const result = {};\n slots.forEach(slot => {\n result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix);\n });\n return result;\n}", "import * as React from 'react';\n\n/**\n * Returns the ref of a React node handling differences between React 19 and older versions.\n * It will return null if the node is not a valid React element.\n *\n * @param element React.ReactNode\n * @returns React.Ref | null\n *\n * @deprecated Use getReactElementRef instead\n */\nexport default function getReactNodeRef(element) {\n if (!element || ! /*#__PURE__*/React.isValidElement(element)) {\n return null;\n }\n\n // 'ref' is passed as prop in React 19, whereas 'ref' is directly attached to children in older versions\n return element.props.propertyIsEnumerable('ref') ? element.props.ref :\n // @ts-expect-error element.ref is not included in the ReactElement type\n // We cannot check for it, but isValidElement is true at this point\n // https://github.com/DefinitelyTyped/DefinitelyTyped/discussions/70189\n element.ref;\n}", "import * as React from 'react';\n\n/**\n * Returns the ref of a React element handling differences between React 19 and older versions.\n * It will throw runtime error if the element is not a valid React element.\n *\n * @param element React.ReactElement\n * @returns React.Ref | null\n */\nexport default function getReactElementRef(element) {\n // 'ref' is passed as prop in React 19, whereas 'ref' is directly attached to children in older versions\n if (parseInt(React.version, 10) >= 19) {\n return element?.props?.ref || null;\n }\n // @ts-expect-error element.ref is not included in the ReactElement type\n // https://github.com/DefinitelyTyped/DefinitelyTyped/discussions/70189\n return element?.ref || null;\n}", "function areArraysEqual(array1, array2, itemComparer = (a, b) => a === b) {\n return array1.length === array2.length && array1.every((value, index) => itemComparer(value, array2[index]));\n}\nexport default areArraysEqual;", "/**\n * Determines if a given element is a DOM element name (i.e. not a React component).\n */\nfunction isHostComponent(element) {\n return typeof element === 'string';\n}\nexport default isHostComponent;", "import * as React from 'react';\nimport { extendSxProp } from '@mui/system/styleFunctionSx';\nimport useTheme from \"../styles/useTheme.js\";\nimport GlobalStyles from \"../GlobalStyles/index.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport { css, keyframes } from '@mui/system';\nexport { default as styled } from \"../styles/styled.js\";\nexport function globalCss(styles) {\n return function GlobalStylesWrapper(props) {\n return (\n /*#__PURE__*/\n // Pigment CSS `globalCss` support callback with theme inside an object but `GlobalStyles` support theme as a callback value.\n _jsx(GlobalStyles, {\n styles: typeof styles === 'function' ? theme => styles({\n theme,\n ...props\n }) : styles\n })\n );\n };\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function internal_createExtendSxProp() {\n return extendSxProp;\n}\nexport { useTheme };", "import deepmerge from '@mui/utils/deepmerge';\nfunction merge(acc, item) {\n if (!item) {\n return acc;\n }\n return deepmerge(acc, item, {\n clone: false // No need to clone deep, it's way faster.\n });\n}\nexport default merge;", "import PropTypes from 'prop-types';\nconst responsivePropType = process.env.NODE_ENV !== 'production' ? PropTypes.oneOfType([PropTypes.number, PropTypes.string, PropTypes.object, PropTypes.array]) : {};\nexport default responsivePropType;", "import PropTypes from 'prop-types';\nimport deepmerge from '@mui/utils/deepmerge';\nimport merge from \"../merge/index.js\";\nimport { isCqShorthand, getContainerQuery } from \"../cssContainerQueries/index.js\";\n\n// The breakpoint **start** at this value.\n// For instance with the first breakpoint xs: [xs, sm[.\nexport const values = {\n xs: 0,\n // phone\n sm: 600,\n // tablet\n md: 900,\n // small laptop\n lg: 1200,\n // desktop\n xl: 1536 // large screen\n};\nconst defaultBreakpoints = {\n // Sorted ASC by size. That's important.\n // It can't be configured as it's used statically for propTypes.\n keys: ['xs', 'sm', 'md', 'lg', 'xl'],\n up: key => `@media (min-width:${values[key]}px)`\n};\nconst defaultContainerQueries = {\n containerQueries: containerName => ({\n up: key => {\n let result = typeof key === 'number' ? key : values[key] || key;\n if (typeof result === 'number') {\n result = `${result}px`;\n }\n return containerName ? `@container ${containerName} (min-width:${result})` : `@container (min-width:${result})`;\n }\n })\n};\nexport function handleBreakpoints(props, propValue, styleFromPropValue) {\n const theme = props.theme || {};\n if (Array.isArray(propValue)) {\n const themeBreakpoints = theme.breakpoints || defaultBreakpoints;\n return propValue.reduce((acc, item, index) => {\n acc[themeBreakpoints.up(themeBreakpoints.keys[index])] = styleFromPropValue(propValue[index]);\n return acc;\n }, {});\n }\n if (typeof propValue === 'object') {\n const themeBreakpoints = theme.breakpoints || defaultBreakpoints;\n return Object.keys(propValue).reduce((acc, breakpoint) => {\n if (isCqShorthand(themeBreakpoints.keys, breakpoint)) {\n const containerKey = getContainerQuery(theme.containerQueries ? theme : defaultContainerQueries, breakpoint);\n if (containerKey) {\n acc[containerKey] = styleFromPropValue(propValue[breakpoint], breakpoint);\n }\n }\n // key is breakpoint\n else if (Object.keys(themeBreakpoints.values || values).includes(breakpoint)) {\n const mediaKey = themeBreakpoints.up(breakpoint);\n acc[mediaKey] = styleFromPropValue(propValue[breakpoint], breakpoint);\n } else {\n const cssKey = breakpoint;\n acc[cssKey] = propValue[cssKey];\n }\n return acc;\n }, {});\n }\n const output = styleFromPropValue(propValue);\n return output;\n}\nfunction breakpoints(styleFunction) {\n // false positive\n // eslint-disable-next-line react/function-component-definition\n const newStyleFunction = props => {\n const theme = props.theme || {};\n const base = styleFunction(props);\n const themeBreakpoints = theme.breakpoints || defaultBreakpoints;\n const extended = themeBreakpoints.keys.reduce((acc, key) => {\n if (props[key]) {\n acc = acc || {};\n acc[themeBreakpoints.up(key)] = styleFunction({\n theme,\n ...props[key]\n });\n }\n return acc;\n }, null);\n return merge(base, extended);\n };\n newStyleFunction.propTypes = process.env.NODE_ENV !== 'production' ? {\n ...styleFunction.propTypes,\n xs: PropTypes.object,\n sm: PropTypes.object,\n md: PropTypes.object,\n lg: PropTypes.object,\n xl: PropTypes.object\n } : {};\n newStyleFunction.filterProps = ['xs', 'sm', 'md', 'lg', 'xl', ...styleFunction.filterProps];\n return newStyleFunction;\n}\nexport function createEmptyBreakpointObject(breakpointsInput = {}) {\n const breakpointsInOrder = breakpointsInput.keys?.reduce((acc, key) => {\n const breakpointStyleKey = breakpointsInput.up(key);\n acc[breakpointStyleKey] = {};\n return acc;\n }, {});\n return breakpointsInOrder || {};\n}\nexport function removeUnusedBreakpoints(breakpointKeys, style) {\n return breakpointKeys.reduce((acc, key) => {\n const breakpointOutput = acc[key];\n const isBreakpointUnused = !breakpointOutput || Object.keys(breakpointOutput).length === 0;\n if (isBreakpointUnused) {\n delete acc[key];\n }\n return acc;\n }, style);\n}\nexport function mergeBreakpointsInOrder(breakpointsInput, ...styles) {\n const emptyBreakpoints = createEmptyBreakpointObject(breakpointsInput);\n const mergedOutput = [emptyBreakpoints, ...styles].reduce((prev, next) => deepmerge(prev, next), {});\n return removeUnusedBreakpoints(Object.keys(emptyBreakpoints), mergedOutput);\n}\n\n// compute base for responsive values; e.g.,\n// [1,2,3] => {xs: true, sm: true, md: true}\n// {xs: 1, sm: 2, md: 3} => {xs: true, sm: true, md: true}\nexport function computeBreakpointsBase(breakpointValues, themeBreakpoints) {\n // fixed value\n if (typeof breakpointValues !== 'object') {\n return {};\n }\n const base = {};\n const breakpointsKeys = Object.keys(themeBreakpoints);\n if (Array.isArray(breakpointValues)) {\n breakpointsKeys.forEach((breakpoint, i) => {\n if (i < breakpointValues.length) {\n base[breakpoint] = true;\n }\n });\n } else {\n breakpointsKeys.forEach(breakpoint => {\n if (breakpointValues[breakpoint] != null) {\n base[breakpoint] = true;\n }\n });\n }\n return base;\n}\nexport function resolveBreakpointValues({\n values: breakpointValues,\n breakpoints: themeBreakpoints,\n base: customBase\n}) {\n const base = customBase || computeBreakpointsBase(breakpointValues, themeBreakpoints);\n const keys = Object.keys(base);\n if (keys.length === 0) {\n return breakpointValues;\n }\n let previous;\n return keys.reduce((acc, breakpoint, i) => {\n if (Array.isArray(breakpointValues)) {\n acc[breakpoint] = breakpointValues[i] != null ? breakpointValues[i] : breakpointValues[previous];\n previous = i;\n } else if (typeof breakpointValues === 'object') {\n acc[breakpoint] = breakpointValues[breakpoint] != null ? breakpointValues[breakpoint] : breakpointValues[previous];\n previous = breakpoint;\n } else {\n acc[breakpoint] = breakpointValues;\n }\n return acc;\n }, {});\n}\nexport default breakpoints;", "import _formatErrorMessage from \"@mui/utils/formatMuiErrorMessage\";\n/**\n * For using in `sx` prop to sort the breakpoint from low to high.\n * Note: this function does not work and will not support multiple units.\n * e.g. input: { '@container (min-width:300px)': '1rem', '@container (min-width:40rem)': '2rem' }\n * output: { '@container (min-width:40rem)': '2rem', '@container (min-width:300px)': '1rem' } // since 40 < 300 eventhough 40rem > 300px\n */\nexport function sortContainerQueries(theme, css) {\n if (!theme.containerQueries) {\n return css;\n }\n const sorted = Object.keys(css).filter(key => key.startsWith('@container')).sort((a, b) => {\n const regex = /min-width:\\s*([0-9.]+)/;\n return +(a.match(regex)?.[1] || 0) - +(b.match(regex)?.[1] || 0);\n });\n if (!sorted.length) {\n return css;\n }\n return sorted.reduce((acc, key) => {\n const value = css[key];\n delete acc[key];\n acc[key] = value;\n return acc;\n }, {\n ...css\n });\n}\nexport function isCqShorthand(breakpointKeys, value) {\n return value === '@' || value.startsWith('@') && (breakpointKeys.some(key => value.startsWith(`@${key}`)) || !!value.match(/^@\\d/));\n}\nexport function getContainerQuery(theme, shorthand) {\n const matches = shorthand.match(/^@([^/]+)?\\/?(.+)?$/);\n if (!matches) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: The provided shorthand ${`(${shorthand})`} is invalid. The format should be \\`@\\` or \\`@/\\`.\\n` + 'For example, `@sm` or `@600` or `@40rem/sidebar`.' : _formatErrorMessage(18, `(${shorthand})`));\n }\n return null;\n }\n const [, containerQuery, containerName] = matches;\n const value = Number.isNaN(+containerQuery) ? containerQuery || 0 : +containerQuery;\n return theme.containerQueries(containerName).up(value);\n}\nexport default function cssContainerQueries(themeInput) {\n const toContainerQuery = (mediaQuery, name) => mediaQuery.replace('@media', name ? `@container ${name}` : '@container');\n function attachCq(node, name) {\n node.up = (...args) => toContainerQuery(themeInput.breakpoints.up(...args), name);\n node.down = (...args) => toContainerQuery(themeInput.breakpoints.down(...args), name);\n node.between = (...args) => toContainerQuery(themeInput.breakpoints.between(...args), name);\n node.only = (...args) => toContainerQuery(themeInput.breakpoints.only(...args), name);\n node.not = (...args) => {\n const result = toContainerQuery(themeInput.breakpoints.not(...args), name);\n if (result.includes('not all and')) {\n // `@container` does not work with `not all and`, so need to invert the logic\n return result.replace('not all and ', '').replace('min-width:', 'width<').replace('max-width:', 'width>').replace('and', 'or');\n }\n return result;\n };\n }\n const node = {};\n const containerQueries = name => {\n attachCq(node, name);\n return node;\n };\n attachCq(containerQueries);\n return {\n ...themeInput,\n containerQueries\n };\n}", "import capitalize from '@mui/utils/capitalize';\nimport responsivePropType from \"../responsivePropType/index.js\";\nimport { handleBreakpoints } from \"../breakpoints/index.js\";\nexport function getPath(obj, path, checkVars = true) {\n if (!path || typeof path !== 'string') {\n return null;\n }\n\n // Check if CSS variables are used\n if (obj && obj.vars && checkVars) {\n const val = `vars.${path}`.split('.').reduce((acc, item) => acc && acc[item] ? acc[item] : null, obj);\n if (val != null) {\n return val;\n }\n }\n return path.split('.').reduce((acc, item) => {\n if (acc && acc[item] != null) {\n return acc[item];\n }\n return null;\n }, obj);\n}\nexport function getStyleValue(themeMapping, transform, propValueFinal, userValue = propValueFinal) {\n let value;\n if (typeof themeMapping === 'function') {\n value = themeMapping(propValueFinal);\n } else if (Array.isArray(themeMapping)) {\n value = themeMapping[propValueFinal] || userValue;\n } else {\n value = getPath(themeMapping, propValueFinal) || userValue;\n }\n if (transform) {\n value = transform(value, userValue, themeMapping);\n }\n return value;\n}\nfunction style(options) {\n const {\n prop,\n cssProperty = options.prop,\n themeKey,\n transform\n } = options;\n\n // false positive\n // eslint-disable-next-line react/function-component-definition\n const fn = props => {\n if (props[prop] == null) {\n return null;\n }\n const propValue = props[prop];\n const theme = props.theme;\n const themeMapping = getPath(theme, themeKey) || {};\n const styleFromPropValue = propValueFinal => {\n let value = getStyleValue(themeMapping, transform, propValueFinal);\n if (propValueFinal === value && typeof propValueFinal === 'string') {\n // Haven't found value\n value = getStyleValue(themeMapping, transform, `${prop}${propValueFinal === 'default' ? '' : capitalize(propValueFinal)}`, propValueFinal);\n }\n if (cssProperty === false) {\n return value;\n }\n return {\n [cssProperty]: value\n };\n };\n return handleBreakpoints(props, propValue, styleFromPropValue);\n };\n fn.propTypes = process.env.NODE_ENV !== 'production' ? {\n [prop]: responsivePropType\n } : {};\n fn.filterProps = [prop];\n return fn;\n}\nexport default style;", "export default function memoize(fn) {\n const cache = {};\n return arg => {\n if (cache[arg] === undefined) {\n cache[arg] = fn(arg);\n }\n return cache[arg];\n };\n}", "import responsivePropType from \"../responsivePropType/index.js\";\nimport { handleBreakpoints } from \"../breakpoints/index.js\";\nimport { getPath } from \"../style/index.js\";\nimport merge from \"../merge/index.js\";\nimport memoize from \"../memoize/index.js\";\nconst properties = {\n m: 'margin',\n p: 'padding'\n};\nconst directions = {\n t: 'Top',\n r: 'Right',\n b: 'Bottom',\n l: 'Left',\n x: ['Left', 'Right'],\n y: ['Top', 'Bottom']\n};\nconst aliases = {\n marginX: 'mx',\n marginY: 'my',\n paddingX: 'px',\n paddingY: 'py'\n};\n\n// memoize() impact:\n// From 300,000 ops/sec\n// To 350,000 ops/sec\nconst getCssProperties = memoize(prop => {\n // It's not a shorthand notation.\n if (prop.length > 2) {\n if (aliases[prop]) {\n prop = aliases[prop];\n } else {\n return [prop];\n }\n }\n const [a, b] = prop.split('');\n const property = properties[a];\n const direction = directions[b] || '';\n return Array.isArray(direction) ? direction.map(dir => property + dir) : [property + direction];\n});\nexport const marginKeys = ['m', 'mt', 'mr', 'mb', 'ml', 'mx', 'my', 'margin', 'marginTop', 'marginRight', 'marginBottom', 'marginLeft', 'marginX', 'marginY', 'marginInline', 'marginInlineStart', 'marginInlineEnd', 'marginBlock', 'marginBlockStart', 'marginBlockEnd'];\nexport const paddingKeys = ['p', 'pt', 'pr', 'pb', 'pl', 'px', 'py', 'padding', 'paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft', 'paddingX', 'paddingY', 'paddingInline', 'paddingInlineStart', 'paddingInlineEnd', 'paddingBlock', 'paddingBlockStart', 'paddingBlockEnd'];\nconst spacingKeys = [...marginKeys, ...paddingKeys];\nexport function createUnaryUnit(theme, themeKey, defaultValue, propName) {\n const themeSpacing = getPath(theme, themeKey, true) ?? defaultValue;\n if (typeof themeSpacing === 'number' || typeof themeSpacing === 'string') {\n return val => {\n if (typeof val === 'string') {\n return val;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (typeof val !== 'number') {\n console.error(`MUI: Expected ${propName} argument to be a number or a string, got ${val}.`);\n }\n }\n if (typeof themeSpacing === 'string') {\n if (themeSpacing.startsWith('var(') && val === 0) {\n return 0;\n }\n if (themeSpacing.startsWith('var(') && val === 1) {\n return themeSpacing;\n }\n return `calc(${val} * ${themeSpacing})`;\n }\n return themeSpacing * val;\n };\n }\n if (Array.isArray(themeSpacing)) {\n return val => {\n if (typeof val === 'string') {\n return val;\n }\n const abs = Math.abs(val);\n if (process.env.NODE_ENV !== 'production') {\n if (!Number.isInteger(abs)) {\n console.error([`MUI: The \\`theme.${themeKey}\\` array type cannot be combined with non integer values.` + `You should either use an integer value that can be used as index, or define the \\`theme.${themeKey}\\` as a number.`].join('\\n'));\n } else if (abs > themeSpacing.length - 1) {\n console.error([`MUI: The value provided (${abs}) overflows.`, `The supported values are: ${JSON.stringify(themeSpacing)}.`, `${abs} > ${themeSpacing.length - 1}, you need to add the missing values.`].join('\\n'));\n }\n }\n const transformed = themeSpacing[abs];\n if (val >= 0) {\n return transformed;\n }\n if (typeof transformed === 'number') {\n return -transformed;\n }\n if (typeof transformed === 'string' && transformed.startsWith('var(')) {\n return `calc(-1 * ${transformed})`;\n }\n return `-${transformed}`;\n };\n }\n if (typeof themeSpacing === 'function') {\n return themeSpacing;\n }\n if (process.env.NODE_ENV !== 'production') {\n console.error([`MUI: The \\`theme.${themeKey}\\` value (${themeSpacing}) is invalid.`, 'It should be a number, an array or a function.'].join('\\n'));\n }\n return () => undefined;\n}\nexport function createUnarySpacing(theme) {\n return createUnaryUnit(theme, 'spacing', 8, 'spacing');\n}\nexport function getValue(transformer, propValue) {\n if (typeof propValue === 'string' || propValue == null) {\n return propValue;\n }\n return transformer(propValue);\n}\nexport function getStyleFromPropValue(cssProperties, transformer) {\n return propValue => cssProperties.reduce((acc, cssProperty) => {\n acc[cssProperty] = getValue(transformer, propValue);\n return acc;\n }, {});\n}\nfunction resolveCssProperty(props, keys, prop, transformer) {\n // Using a hash computation over an array iteration could be faster, but with only 28 items,\n // it's doesn't worth the bundle size.\n if (!keys.includes(prop)) {\n return null;\n }\n const cssProperties = getCssProperties(prop);\n const styleFromPropValue = getStyleFromPropValue(cssProperties, transformer);\n const propValue = props[prop];\n return handleBreakpoints(props, propValue, styleFromPropValue);\n}\nfunction style(props, keys) {\n const transformer = createUnarySpacing(props.theme);\n return Object.keys(props).map(prop => resolveCssProperty(props, keys, prop, transformer)).reduce(merge, {});\n}\nexport function margin(props) {\n return style(props, marginKeys);\n}\nmargin.propTypes = process.env.NODE_ENV !== 'production' ? marginKeys.reduce((obj, key) => {\n obj[key] = responsivePropType;\n return obj;\n}, {}) : {};\nmargin.filterProps = marginKeys;\nexport function padding(props) {\n return style(props, paddingKeys);\n}\npadding.propTypes = process.env.NODE_ENV !== 'production' ? paddingKeys.reduce((obj, key) => {\n obj[key] = responsivePropType;\n return obj;\n}, {}) : {};\npadding.filterProps = paddingKeys;\nfunction spacing(props) {\n return style(props, spacingKeys);\n}\nspacing.propTypes = process.env.NODE_ENV !== 'production' ? spacingKeys.reduce((obj, key) => {\n obj[key] = responsivePropType;\n return obj;\n}, {}) : {};\nspacing.filterProps = spacingKeys;\nexport default spacing;", "import merge from \"../merge/index.js\";\nfunction compose(...styles) {\n const handlers = styles.reduce((acc, style) => {\n style.filterProps.forEach(prop => {\n acc[prop] = style;\n });\n return acc;\n }, {});\n\n // false positive\n // eslint-disable-next-line react/function-component-definition\n const fn = props => {\n return Object.keys(props).reduce((acc, prop) => {\n if (handlers[prop]) {\n return merge(acc, handlers[prop](props));\n }\n return acc;\n }, {});\n };\n fn.propTypes = process.env.NODE_ENV !== 'production' ? styles.reduce((acc, style) => Object.assign(acc, style.propTypes), {}) : {};\n fn.filterProps = styles.reduce((acc, style) => acc.concat(style.filterProps), []);\n return fn;\n}\nexport default compose;", "import responsivePropType from \"../responsivePropType/index.js\";\nimport style from \"../style/index.js\";\nimport compose from \"../compose/index.js\";\nimport { createUnaryUnit, getValue } from \"../spacing/index.js\";\nimport { handleBreakpoints } from \"../breakpoints/index.js\";\nexport function borderTransform(value) {\n if (typeof value !== 'number') {\n return value;\n }\n return `${value}px solid`;\n}\nfunction createBorderStyle(prop, transform) {\n return style({\n prop,\n themeKey: 'borders',\n transform\n });\n}\nexport const border = createBorderStyle('border', borderTransform);\nexport const borderTop = createBorderStyle('borderTop', borderTransform);\nexport const borderRight = createBorderStyle('borderRight', borderTransform);\nexport const borderBottom = createBorderStyle('borderBottom', borderTransform);\nexport const borderLeft = createBorderStyle('borderLeft', borderTransform);\nexport const borderColor = createBorderStyle('borderColor');\nexport const borderTopColor = createBorderStyle('borderTopColor');\nexport const borderRightColor = createBorderStyle('borderRightColor');\nexport const borderBottomColor = createBorderStyle('borderBottomColor');\nexport const borderLeftColor = createBorderStyle('borderLeftColor');\nexport const outline = createBorderStyle('outline', borderTransform);\nexport const outlineColor = createBorderStyle('outlineColor');\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const borderRadius = props => {\n if (props.borderRadius !== undefined && props.borderRadius !== null) {\n const transformer = createUnaryUnit(props.theme, 'shape.borderRadius', 4, 'borderRadius');\n const styleFromPropValue = propValue => ({\n borderRadius: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.borderRadius, styleFromPropValue);\n }\n return null;\n};\nborderRadius.propTypes = process.env.NODE_ENV !== 'production' ? {\n borderRadius: responsivePropType\n} : {};\nborderRadius.filterProps = ['borderRadius'];\nconst borders = compose(border, borderTop, borderRight, borderBottom, borderLeft, borderColor, borderTopColor, borderRightColor, borderBottomColor, borderLeftColor, borderRadius, outline, outlineColor);\nexport default borders;", "import style from \"../style/index.js\";\nimport compose from \"../compose/index.js\";\nimport { createUnaryUnit, getValue } from \"../spacing/index.js\";\nimport { handleBreakpoints } from \"../breakpoints/index.js\";\nimport responsivePropType from \"../responsivePropType/index.js\";\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const gap = props => {\n if (props.gap !== undefined && props.gap !== null) {\n const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'gap');\n const styleFromPropValue = propValue => ({\n gap: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.gap, styleFromPropValue);\n }\n return null;\n};\ngap.propTypes = process.env.NODE_ENV !== 'production' ? {\n gap: responsivePropType\n} : {};\ngap.filterProps = ['gap'];\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const columnGap = props => {\n if (props.columnGap !== undefined && props.columnGap !== null) {\n const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'columnGap');\n const styleFromPropValue = propValue => ({\n columnGap: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.columnGap, styleFromPropValue);\n }\n return null;\n};\ncolumnGap.propTypes = process.env.NODE_ENV !== 'production' ? {\n columnGap: responsivePropType\n} : {};\ncolumnGap.filterProps = ['columnGap'];\n\n// false positive\n// eslint-disable-next-line react/function-component-definition\nexport const rowGap = props => {\n if (props.rowGap !== undefined && props.rowGap !== null) {\n const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'rowGap');\n const styleFromPropValue = propValue => ({\n rowGap: getValue(transformer, propValue)\n });\n return handleBreakpoints(props, props.rowGap, styleFromPropValue);\n }\n return null;\n};\nrowGap.propTypes = process.env.NODE_ENV !== 'production' ? {\n rowGap: responsivePropType\n} : {};\nrowGap.filterProps = ['rowGap'];\nexport const gridColumn = style({\n prop: 'gridColumn'\n});\nexport const gridRow = style({\n prop: 'gridRow'\n});\nexport const gridAutoFlow = style({\n prop: 'gridAutoFlow'\n});\nexport const gridAutoColumns = style({\n prop: 'gridAutoColumns'\n});\nexport const gridAutoRows = style({\n prop: 'gridAutoRows'\n});\nexport const gridTemplateColumns = style({\n prop: 'gridTemplateColumns'\n});\nexport const gridTemplateRows = style({\n prop: 'gridTemplateRows'\n});\nexport const gridTemplateAreas = style({\n prop: 'gridTemplateAreas'\n});\nexport const gridArea = style({\n prop: 'gridArea'\n});\nconst grid = compose(gap, columnGap, rowGap, gridColumn, gridRow, gridAutoFlow, gridAutoColumns, gridAutoRows, gridTemplateColumns, gridTemplateRows, gridTemplateAreas, gridArea);\nexport default grid;", "import style from \"../style/index.js\";\nimport compose from \"../compose/index.js\";\nexport function paletteTransform(value, userValue) {\n if (userValue === 'grey') {\n return userValue;\n }\n return value;\n}\nexport const color = style({\n prop: 'color',\n themeKey: 'palette',\n transform: paletteTransform\n});\nexport const bgcolor = style({\n prop: 'bgcolor',\n cssProperty: 'backgroundColor',\n themeKey: 'palette',\n transform: paletteTransform\n});\nexport const backgroundColor = style({\n prop: 'backgroundColor',\n themeKey: 'palette',\n transform: paletteTransform\n});\nconst palette = compose(color, bgcolor, backgroundColor);\nexport default palette;", "import style from \"../style/index.js\";\nimport compose from \"../compose/index.js\";\nimport { handleBreakpoints, values as breakpointsValues } from \"../breakpoints/index.js\";\nexport function sizingTransform(value) {\n return value <= 1 && value !== 0 ? `${value * 100}%` : value;\n}\nexport const width = style({\n prop: 'width',\n transform: sizingTransform\n});\nexport const maxWidth = props => {\n if (props.maxWidth !== undefined && props.maxWidth !== null) {\n const styleFromPropValue = propValue => {\n const breakpoint = props.theme?.breakpoints?.values?.[propValue] || breakpointsValues[propValue];\n if (!breakpoint) {\n return {\n maxWidth: sizingTransform(propValue)\n };\n }\n if (props.theme?.breakpoints?.unit !== 'px') {\n return {\n maxWidth: `${breakpoint}${props.theme.breakpoints.unit}`\n };\n }\n return {\n maxWidth: breakpoint\n };\n };\n return handleBreakpoints(props, props.maxWidth, styleFromPropValue);\n }\n return null;\n};\nmaxWidth.filterProps = ['maxWidth'];\nexport const minWidth = style({\n prop: 'minWidth',\n transform: sizingTransform\n});\nexport const height = style({\n prop: 'height',\n transform: sizingTransform\n});\nexport const maxHeight = style({\n prop: 'maxHeight',\n transform: sizingTransform\n});\nexport const minHeight = style({\n prop: 'minHeight',\n transform: sizingTransform\n});\nexport const sizeWidth = style({\n prop: 'size',\n cssProperty: 'width',\n transform: sizingTransform\n});\nexport const sizeHeight = style({\n prop: 'size',\n cssProperty: 'height',\n transform: sizingTransform\n});\nexport const boxSizing = style({\n prop: 'boxSizing'\n});\nconst sizing = compose(width, maxWidth, minWidth, height, maxHeight, minHeight, boxSizing);\nexport default sizing;", "import { padding, margin } from \"../spacing/index.js\";\nimport { borderRadius, borderTransform } from \"../borders/index.js\";\nimport { gap, rowGap, columnGap } from \"../cssGrid/index.js\";\nimport { paletteTransform } from \"../palette/index.js\";\nimport { maxWidth, sizingTransform } from \"../sizing/index.js\";\nconst defaultSxConfig = {\n // borders\n border: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderTop: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderRight: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderBottom: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderLeft: {\n themeKey: 'borders',\n transform: borderTransform\n },\n borderColor: {\n themeKey: 'palette'\n },\n borderTopColor: {\n themeKey: 'palette'\n },\n borderRightColor: {\n themeKey: 'palette'\n },\n borderBottomColor: {\n themeKey: 'palette'\n },\n borderLeftColor: {\n themeKey: 'palette'\n },\n outline: {\n themeKey: 'borders',\n transform: borderTransform\n },\n outlineColor: {\n themeKey: 'palette'\n },\n borderRadius: {\n themeKey: 'shape.borderRadius',\n style: borderRadius\n },\n // palette\n color: {\n themeKey: 'palette',\n transform: paletteTransform\n },\n bgcolor: {\n themeKey: 'palette',\n cssProperty: 'backgroundColor',\n transform: paletteTransform\n },\n backgroundColor: {\n themeKey: 'palette',\n transform: paletteTransform\n },\n // spacing\n p: {\n style: padding\n },\n pt: {\n style: padding\n },\n pr: {\n style: padding\n },\n pb: {\n style: padding\n },\n pl: {\n style: padding\n },\n px: {\n style: padding\n },\n py: {\n style: padding\n },\n padding: {\n style: padding\n },\n paddingTop: {\n style: padding\n },\n paddingRight: {\n style: padding\n },\n paddingBottom: {\n style: padding\n },\n paddingLeft: {\n style: padding\n },\n paddingX: {\n style: padding\n },\n paddingY: {\n style: padding\n },\n paddingInline: {\n style: padding\n },\n paddingInlineStart: {\n style: padding\n },\n paddingInlineEnd: {\n style: padding\n },\n paddingBlock: {\n style: padding\n },\n paddingBlockStart: {\n style: padding\n },\n paddingBlockEnd: {\n style: padding\n },\n m: {\n style: margin\n },\n mt: {\n style: margin\n },\n mr: {\n style: margin\n },\n mb: {\n style: margin\n },\n ml: {\n style: margin\n },\n mx: {\n style: margin\n },\n my: {\n style: margin\n },\n margin: {\n style: margin\n },\n marginTop: {\n style: margin\n },\n marginRight: {\n style: margin\n },\n marginBottom: {\n style: margin\n },\n marginLeft: {\n style: margin\n },\n marginX: {\n style: margin\n },\n marginY: {\n style: margin\n },\n marginInline: {\n style: margin\n },\n marginInlineStart: {\n style: margin\n },\n marginInlineEnd: {\n style: margin\n },\n marginBlock: {\n style: margin\n },\n marginBlockStart: {\n style: margin\n },\n marginBlockEnd: {\n style: margin\n },\n // display\n displayPrint: {\n cssProperty: false,\n transform: value => ({\n '@media print': {\n display: value\n }\n })\n },\n display: {},\n overflow: {},\n textOverflow: {},\n visibility: {},\n whiteSpace: {},\n // flexbox\n flexBasis: {},\n flexDirection: {},\n flexWrap: {},\n justifyContent: {},\n alignItems: {},\n alignContent: {},\n order: {},\n flex: {},\n flexGrow: {},\n flexShrink: {},\n alignSelf: {},\n justifyItems: {},\n justifySelf: {},\n // grid\n gap: {\n style: gap\n },\n rowGap: {\n style: rowGap\n },\n columnGap: {\n style: columnGap\n },\n gridColumn: {},\n gridRow: {},\n gridAutoFlow: {},\n gridAutoColumns: {},\n gridAutoRows: {},\n gridTemplateColumns: {},\n gridTemplateRows: {},\n gridTemplateAreas: {},\n gridArea: {},\n // positions\n position: {},\n zIndex: {\n themeKey: 'zIndex'\n },\n top: {},\n right: {},\n bottom: {},\n left: {},\n // shadows\n boxShadow: {\n themeKey: 'shadows'\n },\n // sizing\n width: {\n transform: sizingTransform\n },\n maxWidth: {\n style: maxWidth\n },\n minWidth: {\n transform: sizingTransform\n },\n height: {\n transform: sizingTransform\n },\n maxHeight: {\n transform: sizingTransform\n },\n minHeight: {\n transform: sizingTransform\n },\n boxSizing: {},\n // typography\n font: {\n themeKey: 'font'\n },\n fontFamily: {\n themeKey: 'typography'\n },\n fontSize: {\n themeKey: 'typography'\n },\n fontStyle: {\n themeKey: 'typography'\n },\n fontWeight: {\n themeKey: 'typography'\n },\n letterSpacing: {},\n textTransform: {},\n lineHeight: {},\n textAlign: {},\n typography: {\n cssProperty: false,\n themeKey: 'typography'\n }\n};\nexport default defaultSxConfig;", "import capitalize from '@mui/utils/capitalize';\nimport merge from \"../merge/index.js\";\nimport { getPath, getStyleValue as getValue } from \"../style/index.js\";\nimport { handleBreakpoints, createEmptyBreakpointObject, removeUnusedBreakpoints } from \"../breakpoints/index.js\";\nimport { sortContainerQueries } from \"../cssContainerQueries/index.js\";\nimport defaultSxConfig from \"./defaultSxConfig.js\";\nfunction objectsHaveSameKeys(...objects) {\n const allKeys = objects.reduce((keys, object) => keys.concat(Object.keys(object)), []);\n const union = new Set(allKeys);\n return objects.every(object => union.size === Object.keys(object).length);\n}\nfunction callIfFn(maybeFn, arg) {\n return typeof maybeFn === 'function' ? maybeFn(arg) : maybeFn;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function unstable_createStyleFunctionSx() {\n function getThemeValue(prop, val, theme, config) {\n const props = {\n [prop]: val,\n theme\n };\n const options = config[prop];\n if (!options) {\n return {\n [prop]: val\n };\n }\n const {\n cssProperty = prop,\n themeKey,\n transform,\n style\n } = options;\n if (val == null) {\n return null;\n }\n\n // TODO v6: remove, see https://github.com/mui/material-ui/pull/38123\n if (themeKey === 'typography' && val === 'inherit') {\n return {\n [prop]: val\n };\n }\n const themeMapping = getPath(theme, themeKey) || {};\n if (style) {\n return style(props);\n }\n const styleFromPropValue = propValueFinal => {\n let value = getValue(themeMapping, transform, propValueFinal);\n if (propValueFinal === value && typeof propValueFinal === 'string') {\n // Haven't found value\n value = getValue(themeMapping, transform, `${prop}${propValueFinal === 'default' ? '' : capitalize(propValueFinal)}`, propValueFinal);\n }\n if (cssProperty === false) {\n return value;\n }\n return {\n [cssProperty]: value\n };\n };\n return handleBreakpoints(props, val, styleFromPropValue);\n }\n function styleFunctionSx(props) {\n const {\n sx,\n theme = {}\n } = props || {};\n if (!sx) {\n return null; // Emotion & styled-components will neglect null\n }\n const config = theme.unstable_sxConfig ?? defaultSxConfig;\n\n /*\n * Receive `sxInput` as object or callback\n * and then recursively check keys & values to create media query object styles.\n * (the result will be used in `styled`)\n */\n function traverse(sxInput) {\n let sxObject = sxInput;\n if (typeof sxInput === 'function') {\n sxObject = sxInput(theme);\n } else if (typeof sxInput !== 'object') {\n // value\n return sxInput;\n }\n if (!sxObject) {\n return null;\n }\n const emptyBreakpoints = createEmptyBreakpointObject(theme.breakpoints);\n const breakpointsKeys = Object.keys(emptyBreakpoints);\n let css = emptyBreakpoints;\n Object.keys(sxObject).forEach(styleKey => {\n const value = callIfFn(sxObject[styleKey], theme);\n if (value !== null && value !== undefined) {\n if (typeof value === 'object') {\n if (config[styleKey]) {\n css = merge(css, getThemeValue(styleKey, value, theme, config));\n } else {\n const breakpointsValues = handleBreakpoints({\n theme\n }, value, x => ({\n [styleKey]: x\n }));\n if (objectsHaveSameKeys(breakpointsValues, value)) {\n css[styleKey] = styleFunctionSx({\n sx: value,\n theme\n });\n } else {\n css = merge(css, breakpointsValues);\n }\n }\n } else {\n css = merge(css, getThemeValue(styleKey, value, theme, config));\n }\n }\n });\n return sortContainerQueries(theme, removeUnusedBreakpoints(breakpointsKeys, css));\n }\n return Array.isArray(sx) ? sx.map(traverse) : traverse(sx);\n }\n return styleFunctionSx;\n}\nconst styleFunctionSx = unstable_createStyleFunctionSx();\nstyleFunctionSx.filterProps = ['sx'];\nexport default styleFunctionSx;", "import { isPlainObject } from '@mui/utils/deepmerge';\nimport defaultSxConfig from \"./defaultSxConfig.js\";\nconst splitProps = props => {\n const result = {\n systemProps: {},\n otherProps: {}\n };\n const config = props?.theme?.unstable_sxConfig ?? defaultSxConfig;\n Object.keys(props).forEach(prop => {\n if (config[prop]) {\n result.systemProps[prop] = props[prop];\n } else {\n result.otherProps[prop] = props[prop];\n }\n });\n return result;\n};\nexport default function extendSxProp(props) {\n const {\n sx: inSx,\n ...other\n } = props;\n const {\n systemProps,\n otherProps\n } = splitProps(other);\n let finalSx;\n if (Array.isArray(inSx)) {\n finalSx = [systemProps, ...inSx];\n } else if (typeof inSx === 'function') {\n finalSx = (...args) => {\n const result = inSx(...args);\n if (!isPlainObject(result)) {\n return systemProps;\n }\n return {\n ...systemProps,\n ...result\n };\n };\n } else {\n finalSx = {\n ...systemProps,\n ...inSx\n };\n }\n return {\n ...otherProps,\n sx: finalSx\n };\n}", "'use client';\n\nimport * as React from 'react';\nimport { useTheme as useThemeSystem } from '@mui/system';\nimport defaultTheme from \"./defaultTheme.js\";\nimport THEME_ID from \"./identifier.js\";\nexport default function useTheme() {\n const theme = useThemeSystem(defaultTheme);\n if (process.env.NODE_ENV !== 'production') {\n // TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useDebugValue(theme);\n }\n return theme[THEME_ID] || theme;\n}", "import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\n{\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\n{\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if ((mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if ((theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n var WithTheme = /*#__PURE__*/React.forwardRef(function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n });\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar hasOwn = {}.hasOwnProperty;\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var _key in props) {\n if (hasOwn.call(props, _key)) {\n newProps[_key] = props[_key];\n }\n }\n\n newProps[typePropName] = type; // Runtime labeling is an opt-in feature because:\n // - It causes hydration warnings when using Safari and SSR\n // - It can degrade performance if there are a huge number of elements\n //\n // Even if the flag is set, we still don't compute the label if it has already\n // been determined by the Babel plugin.\n\n if (typeof globalThis !== 'undefined' && !!globalThis.EMOTION_RUNTIME_AUTO_LABEL && !!props.css && (typeof props.css !== 'object' || !('name' in props.css) || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var _key2 in props) {\n if (hasOwn.call(props, _key2) && _key2 !== 'css' && _key2 !== typePropName && (_key2 !== labelPropName)) {\n newProps[_key2] = props[_key2];\n }\n }\n\n newProps.className = className;\n\n if (ref) {\n newProps.ref = ref;\n }\n\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\n{\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwn as h, useTheme as u, withEmotionCache as w };\n", "var isDevelopment = true;\n\n/*\n\nBased off glamor's StyleSheet, thanks Sunil ❤️\n\nhigh performance StyleSheet for css-in-js systems\n\n- uses multiple style tags behind the scenes for millions of rules\n- uses `insertRule` for appending in production for *much* faster performance\n\n// usage\n\nimport { StyleSheet } from '@emotion/sheet'\n\nlet styleSheet = new StyleSheet({ key: '', container: document.head })\n\nstyleSheet.insert('#box { border: 1px solid red; }')\n- appends a css rule into the stylesheet\n\nstyleSheet.flush()\n- empties the stylesheet of all its contents\n\n*/\n\nfunction sheetForTag(tag) {\n if (tag.sheet) {\n return tag.sheet;\n } // this weirdness brought to you by firefox\n\n /* istanbul ignore next */\n\n\n for (var i = 0; i < document.styleSheets.length; i++) {\n if (document.styleSheets[i].ownerNode === tag) {\n return document.styleSheets[i];\n }\n } // this function should always return with a value\n // TS can't understand it though so we make it stop complaining here\n\n\n return undefined;\n}\n\nfunction createStyleElement(options) {\n var tag = document.createElement('style');\n tag.setAttribute('data-emotion', options.key);\n\n if (options.nonce !== undefined) {\n tag.setAttribute('nonce', options.nonce);\n }\n\n tag.appendChild(document.createTextNode(''));\n tag.setAttribute('data-s', '');\n return tag;\n}\n\nvar StyleSheet = /*#__PURE__*/function () {\n // Using Node instead of HTMLElement since container may be a ShadowRoot\n function StyleSheet(options) {\n var _this = this;\n\n this._insertTag = function (tag) {\n var before;\n\n if (_this.tags.length === 0) {\n if (_this.insertionPoint) {\n before = _this.insertionPoint.nextSibling;\n } else if (_this.prepend) {\n before = _this.container.firstChild;\n } else {\n before = _this.before;\n }\n } else {\n before = _this.tags[_this.tags.length - 1].nextSibling;\n }\n\n _this.container.insertBefore(tag, before);\n\n _this.tags.push(tag);\n };\n\n this.isSpeedy = options.speedy === undefined ? !isDevelopment : options.speedy;\n this.tags = [];\n this.ctr = 0;\n this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets\n\n this.key = options.key;\n this.container = options.container;\n this.prepend = options.prepend;\n this.insertionPoint = options.insertionPoint;\n this.before = null;\n }\n\n var _proto = StyleSheet.prototype;\n\n _proto.hydrate = function hydrate(nodes) {\n nodes.forEach(this._insertTag);\n };\n\n _proto.insert = function insert(rule) {\n // the max length is how many rules we have per style tag, it's 65000 in speedy mode\n // it's 1 in dev because we insert source maps that map a single rule to a location\n // and you can only have one source map per style tag\n if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {\n this._insertTag(createStyleElement(this));\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n {\n var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;\n\n if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {\n // this would only cause problem in speedy mode\n // but we don't want enabling speedy to affect the observable behavior\n // so we report this error at all times\n console.error(\"You're attempting to insert the following rule:\\n\" + rule + '\\n\\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');\n }\n\n this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;\n }\n\n if (this.isSpeedy) {\n var sheet = sheetForTag(tag);\n\n try {\n // this is the ultrafast version, works across browsers\n // the big drawback is that the css won't be editable in devtools\n sheet.insertRule(rule, sheet.cssRules.length);\n } catch (e) {\n if (!/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {\n console.error(\"There was a problem inserting the following rule: \\\"\" + rule + \"\\\"\", e);\n }\n }\n } else {\n tag.appendChild(document.createTextNode(rule));\n }\n\n this.ctr++;\n };\n\n _proto.flush = function flush() {\n this.tags.forEach(function (tag) {\n var _tag$parentNode;\n\n return (_tag$parentNode = tag.parentNode) == null ? void 0 : _tag$parentNode.removeChild(tag);\n });\n this.tags = [];\n this.ctr = 0;\n\n {\n this._alreadyInsertedOrderInsensitiveRule = false;\n }\n };\n\n return StyleSheet;\n}();\n\nexport { StyleSheet };\n", "export var MS = '-ms-'\nexport var MOZ = '-moz-'\nexport var WEBKIT = '-webkit-'\n\nexport var COMMENT = 'comm'\nexport var RULESET = 'rule'\nexport var DECLARATION = 'decl'\n\nexport var PAGE = '@page'\nexport var MEDIA = '@media'\nexport var IMPORT = '@import'\nexport var CHARSET = '@charset'\nexport var VIEWPORT = '@viewport'\nexport var SUPPORTS = '@supports'\nexport var DOCUMENT = '@document'\nexport var NAMESPACE = '@namespace'\nexport var KEYFRAMES = '@keyframes'\nexport var FONT_FACE = '@font-face'\nexport var COUNTER_STYLE = '@counter-style'\nexport var FONT_FEATURE_VALUES = '@font-feature-values'\nexport var LAYER = '@layer'\n", "/**\n * @param {number}\n * @return {number}\n */\nexport var abs = Math.abs\n\n/**\n * @param {number}\n * @return {string}\n */\nexport var from = String.fromCharCode\n\n/**\n * @param {object}\n * @return {object}\n */\nexport var assign = Object.assign\n\n/**\n * @param {string} value\n * @param {number} length\n * @return {number}\n */\nexport function hash (value, length) {\n\treturn charat(value, 0) ^ 45 ? (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3) : 0\n}\n\n/**\n * @param {string} value\n * @return {string}\n */\nexport function trim (value) {\n\treturn value.trim()\n}\n\n/**\n * @param {string} value\n * @param {RegExp} pattern\n * @return {string?}\n */\nexport function match (value, pattern) {\n\treturn (value = pattern.exec(value)) ? value[0] : value\n}\n\n/**\n * @param {string} value\n * @param {(string|RegExp)} pattern\n * @param {string} replacement\n * @return {string}\n */\nexport function replace (value, pattern, replacement) {\n\treturn value.replace(pattern, replacement)\n}\n\n/**\n * @param {string} value\n * @param {string} search\n * @return {number}\n */\nexport function indexof (value, search) {\n\treturn value.indexOf(search)\n}\n\n/**\n * @param {string} value\n * @param {number} index\n * @return {number}\n */\nexport function charat (value, index) {\n\treturn value.charCodeAt(index) | 0\n}\n\n/**\n * @param {string} value\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function substr (value, begin, end) {\n\treturn value.slice(begin, end)\n}\n\n/**\n * @param {string} value\n * @return {number}\n */\nexport function strlen (value) {\n\treturn value.length\n}\n\n/**\n * @param {any[]} value\n * @return {number}\n */\nexport function sizeof (value) {\n\treturn value.length\n}\n\n/**\n * @param {any} value\n * @param {any[]} array\n * @return {any}\n */\nexport function append (value, array) {\n\treturn array.push(value), value\n}\n\n/**\n * @param {string[]} array\n * @param {function} callback\n * @return {string}\n */\nexport function combine (array, callback) {\n\treturn array.map(callback).join('')\n}\n", "import {from, trim, charat, strlen, substr, append, assign} from './Utility.js'\n\nexport var line = 1\nexport var column = 1\nexport var length = 0\nexport var position = 0\nexport var character = 0\nexport var characters = ''\n\n/**\n * @param {string} value\n * @param {object | null} root\n * @param {object | null} parent\n * @param {string} type\n * @param {string[] | string} props\n * @param {object[] | string} children\n * @param {number} length\n */\nexport function node (value, root, parent, type, props, children, length) {\n\treturn {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: ''}\n}\n\n/**\n * @param {object} root\n * @param {object} props\n * @return {object}\n */\nexport function copy (root, props) {\n\treturn assign(node('', null, null, '', null, null, 0), root, {length: -root.length}, props)\n}\n\n/**\n * @return {number}\n */\nexport function char () {\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function prev () {\n\tcharacter = position > 0 ? charat(characters, --position) : 0\n\n\tif (column--, character === 10)\n\t\tcolumn = 1, line--\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function next () {\n\tcharacter = position < length ? charat(characters, position++) : 0\n\n\tif (column++, character === 10)\n\t\tcolumn = 1, line++\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function peek () {\n\treturn charat(characters, position)\n}\n\n/**\n * @return {number}\n */\nexport function caret () {\n\treturn position\n}\n\n/**\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function slice (begin, end) {\n\treturn substr(characters, begin, end)\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function token (type) {\n\tswitch (type) {\n\t\t// \\0 \\t \\n \\r \\s whitespace token\n\t\tcase 0: case 9: case 10: case 13: case 32:\n\t\t\treturn 5\n\t\t// ! + , / > @ ~ isolate token\n\t\tcase 33: case 43: case 44: case 47: case 62: case 64: case 126:\n\t\t// ; { } breakpoint token\n\t\tcase 59: case 123: case 125:\n\t\t\treturn 4\n\t\t// : accompanied token\n\t\tcase 58:\n\t\t\treturn 3\n\t\t// \" ' ( [ opening delimit token\n\t\tcase 34: case 39: case 40: case 91:\n\t\t\treturn 2\n\t\t// ) ] closing delimit token\n\t\tcase 41: case 93:\n\t\t\treturn 1\n\t}\n\n\treturn 0\n}\n\n/**\n * @param {string} value\n * @return {any[]}\n */\nexport function alloc (value) {\n\treturn line = column = 1, length = strlen(characters = value), position = 0, []\n}\n\n/**\n * @param {any} value\n * @return {any}\n */\nexport function dealloc (value) {\n\treturn characters = '', value\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function delimit (type) {\n\treturn trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))\n}\n\n/**\n * @param {string} value\n * @return {string[]}\n */\nexport function tokenize (value) {\n\treturn dealloc(tokenizer(alloc(value)))\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function whitespace (type) {\n\twhile (character = peek())\n\t\tif (character < 33)\n\t\t\tnext()\n\t\telse\n\t\t\tbreak\n\n\treturn token(type) > 2 || token(character) > 3 ? '' : ' '\n}\n\n/**\n * @param {string[]} children\n * @return {string[]}\n */\nexport function tokenizer (children) {\n\twhile (next())\n\t\tswitch (token(character)) {\n\t\t\tcase 0: append(identifier(position - 1), children)\n\t\t\t\tbreak\n\t\t\tcase 2: append(delimit(character), children)\n\t\t\t\tbreak\n\t\t\tdefault: append(from(character), children)\n\t\t}\n\n\treturn children\n}\n\n/**\n * @param {number} index\n * @param {number} count\n * @return {string}\n */\nexport function escaping (index, count) {\n\twhile (--count && next())\n\t\t// not 0-9 A-F a-f\n\t\tif (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))\n\t\t\tbreak\n\n\treturn slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function delimiter (type) {\n\twhile (next())\n\t\tswitch (character) {\n\t\t\t// ] ) \" '\n\t\t\tcase type:\n\t\t\t\treturn position\n\t\t\t// \" '\n\t\t\tcase 34: case 39:\n\t\t\t\tif (type !== 34 && type !== 39)\n\t\t\t\t\tdelimiter(character)\n\t\t\t\tbreak\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (type === 41)\n\t\t\t\t\tdelimiter(type)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tnext()\n\t\t\t\tbreak\n\t\t}\n\n\treturn position\n}\n\n/**\n * @param {number} type\n * @param {number} index\n * @return {number}\n */\nexport function commenter (type, index) {\n\twhile (next())\n\t\t// //\n\t\tif (type + character === 47 + 10)\n\t\t\tbreak\n\t\t// /*\n\t\telse if (type + character === 42 + 42 && peek() === 47)\n\t\t\tbreak\n\n\treturn '/*' + slice(index, position - 1) + '*' + from(type === 47 ? type : next())\n}\n\n/**\n * @param {number} index\n * @return {string}\n */\nexport function identifier (index) {\n\twhile (!token(peek()))\n\t\tnext()\n\n\treturn slice(index, position)\n}\n", "import {COMMENT, RULESET, DECLARATION} from './Enum.js'\nimport {abs, charat, trim, from, sizeof, strlen, substr, append, replace, indexof} from './Utility.js'\nimport {node, char, prev, next, peek, caret, alloc, dealloc, delimit, whitespace, escaping, identifier, commenter} from './Tokenizer.js'\n\n/**\n * @param {string} value\n * @return {object[]}\n */\nexport function compile (value) {\n\treturn dealloc(parse('', null, null, null, [''], value = alloc(value), 0, [0], value))\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {string[]} rule\n * @param {string[]} rules\n * @param {string[]} rulesets\n * @param {number[]} pseudo\n * @param {number[]} points\n * @param {string[]} declarations\n * @return {object}\n */\nexport function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {\n\tvar index = 0\n\tvar offset = 0\n\tvar length = pseudo\n\tvar atrule = 0\n\tvar property = 0\n\tvar previous = 0\n\tvar variable = 1\n\tvar scanning = 1\n\tvar ampersand = 1\n\tvar character = 0\n\tvar type = ''\n\tvar props = rules\n\tvar children = rulesets\n\tvar reference = rule\n\tvar characters = type\n\n\twhile (scanning)\n\t\tswitch (previous = character, character = next()) {\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (previous != 108 && charat(characters, length - 1) == 58) {\n\t\t\t\t\tif (indexof(characters += replace(delimit(character), '&', '&\\f'), '&\\f') != -1)\n\t\t\t\t\t\tampersand = -1\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t// \" ' [\n\t\t\tcase 34: case 39: case 91:\n\t\t\t\tcharacters += delimit(character)\n\t\t\t\tbreak\n\t\t\t// \\t \\n \\r \\s\n\t\t\tcase 9: case 10: case 13: case 32:\n\t\t\t\tcharacters += whitespace(previous)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tcharacters += escaping(caret() - 1, 7)\n\t\t\t\tcontinue\n\t\t\t// /\n\t\t\tcase 47:\n\t\t\t\tswitch (peek()) {\n\t\t\t\t\tcase 42: case 47:\n\t\t\t\t\t\tappend(comment(commenter(next(), caret()), root, parent), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tcharacters += '/'\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t// {\n\t\t\tcase 123 * variable:\n\t\t\t\tpoints[index++] = strlen(characters) * ampersand\n\t\t\t// } ; \\0\n\t\t\tcase 125 * variable: case 59: case 0:\n\t\t\t\tswitch (character) {\n\t\t\t\t\t// \\0 }\n\t\t\t\t\tcase 0: case 125: scanning = 0\n\t\t\t\t\t// ;\n\t\t\t\t\tcase 59 + offset: if (ampersand == -1) characters = replace(characters, /\\f/g, '')\n\t\t\t\t\t\tif (property > 0 && (strlen(characters) - length))\n\t\t\t\t\t\t\tappend(property > 32 ? declaration(characters + ';', rule, parent, length - 1) : declaration(replace(characters, ' ', '') + ';', rule, parent, length - 2), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @ ;\n\t\t\t\t\tcase 59: characters += ';'\n\t\t\t\t\t// { rule/at-rule\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tappend(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length), rulesets)\n\n\t\t\t\t\t\tif (character === 123)\n\t\t\t\t\t\t\tif (offset === 0)\n\t\t\t\t\t\t\t\tparse(characters, root, reference, reference, props, rulesets, length, points, children)\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tswitch (atrule === 99 && charat(characters, 3) === 110 ? 100 : atrule) {\n\t\t\t\t\t\t\t\t\t// d l m s\n\t\t\t\t\t\t\t\t\tcase 100: case 108: case 109: case 115:\n\t\t\t\t\t\t\t\t\t\tparse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length), children), rules, children, length, points, rule ? props : children)\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\tparse(characters, reference, reference, reference, [''], children, 0, points, children)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tindex = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo\n\t\t\t\tbreak\n\t\t\t// :\n\t\t\tcase 58:\n\t\t\t\tlength = 1 + strlen(characters), property = previous\n\t\t\tdefault:\n\t\t\t\tif (variable < 1)\n\t\t\t\t\tif (character == 123)\n\t\t\t\t\t\t--variable\n\t\t\t\t\telse if (character == 125 && variable++ == 0 && prev() == 125)\n\t\t\t\t\t\tcontinue\n\n\t\t\t\tswitch (characters += from(character), character * variable) {\n\t\t\t\t\t// &\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tampersand = offset > 0 ? 1 : (characters += '\\f', -1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// ,\n\t\t\t\t\tcase 44:\n\t\t\t\t\t\tpoints[index++] = (strlen(characters) - 1) * ampersand, ampersand = 1\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @\n\t\t\t\t\tcase 64:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (peek() === 45)\n\t\t\t\t\t\t\tcharacters += delimit(next())\n\n\t\t\t\t\t\tatrule = peek(), offset = length = strlen(type = characters += identifier(caret())), character++\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// -\n\t\t\t\t\tcase 45:\n\t\t\t\t\t\tif (previous === 45 && strlen(characters) == 2)\n\t\t\t\t\t\t\tvariable = 0\n\t\t\t\t}\n\t\t}\n\n\treturn rulesets\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} index\n * @param {number} offset\n * @param {string[]} rules\n * @param {number[]} points\n * @param {string} type\n * @param {string[]} props\n * @param {string[]} children\n * @param {number} length\n * @return {object}\n */\nexport function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length) {\n\tvar post = offset - 1\n\tvar rule = offset === 0 ? rules : ['']\n\tvar size = sizeof(rule)\n\n\tfor (var i = 0, j = 0, k = 0; i < index; ++i)\n\t\tfor (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x)\n\t\t\tif (z = trim(j > 0 ? rule[x] + ' ' + y : replace(y, /&\\f/g, rule[x])))\n\t\t\t\tprops[k++] = z\n\n\treturn node(value, root, parent, offset === 0 ? RULESET : type, props, children, length)\n}\n\n/**\n * @param {number} value\n * @param {object} root\n * @param {object?} parent\n * @return {object}\n */\nexport function comment (value, root, parent) {\n\treturn node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0)\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} length\n * @return {object}\n */\nexport function declaration (value, root, parent, length) {\n\treturn node(value, root, parent, DECLARATION, substr(value, 0, length), substr(value, length + 1, -1), length)\n}\n", "import {IMPORT, LAYER, COMMENT, RULESET, DECLARATION, KEYFRAMES} from './Enum.js'\nimport {strlen, sizeof} from './Utility.js'\n\n/**\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function serialize (children, callback) {\n\tvar output = ''\n\tvar length = sizeof(children)\n\n\tfor (var i = 0; i < length; i++)\n\t\toutput += callback(children[i], i, children, callback) || ''\n\n\treturn output\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function stringify (element, index, children, callback) {\n\tswitch (element.type) {\n\t\tcase LAYER: if (element.children.length) break\n\t\tcase IMPORT: case DECLARATION: return element.return = element.return || element.value\n\t\tcase COMMENT: return ''\n\t\tcase KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}'\n\t\tcase RULESET: element.value = element.props.join(',')\n\t}\n\n\treturn strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''\n}\n", "import {MS, MOZ, WEBKIT, RULESET, KEYFRAMES, DECLARATION} from './Enum.js'\nimport {match, charat, substr, strlen, sizeof, replace, combine} from './Utility.js'\nimport {copy, tokenize} from './Tokenizer.js'\nimport {serialize} from './Serializer.js'\nimport {prefix} from './Prefixer.js'\n\n/**\n * @param {function[]} collection\n * @return {function}\n */\nexport function middleware (collection) {\n\tvar length = sizeof(collection)\n\n\treturn function (element, index, children, callback) {\n\t\tvar output = ''\n\n\t\tfor (var i = 0; i < length; i++)\n\t\t\toutput += collection[i](element, index, children, callback) || ''\n\n\t\treturn output\n\t}\n}\n\n/**\n * @param {function} callback\n * @return {function}\n */\nexport function rulesheet (callback) {\n\treturn function (element) {\n\t\tif (!element.root)\n\t\t\tif (element = element.return)\n\t\t\t\tcallback(element)\n\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n */\nexport function prefixer (element, index, children, callback) {\n\tif (element.length > -1)\n\t\tif (!element.return)\n\t\t\tswitch (element.type) {\n\t\t\t\tcase DECLARATION: element.return = prefix(element.value, element.length, children)\n\t\t\t\t\treturn\n\t\t\t\tcase KEYFRAMES:\n\t\t\t\t\treturn serialize([copy(element, {value: replace(element.value, '@', '@' + WEBKIT)})], callback)\n\t\t\t\tcase RULESET:\n\t\t\t\t\tif (element.length)\n\t\t\t\t\t\treturn combine(element.props, function (value) {\n\t\t\t\t\t\t\tswitch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n\t\t\t\t\t\t\t\t// :read-(only|write)\n\t\t\t\t\t\t\t\tcase ':read-only': case ':read-write':\n\t\t\t\t\t\t\t\t\treturn serialize([copy(element, {props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]})], callback)\n\t\t\t\t\t\t\t\t// :placeholder\n\t\t\t\t\t\t\t\tcase '::placeholder':\n\t\t\t\t\t\t\t\t\treturn serialize([\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]}),\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]}),\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]})\n\t\t\t\t\t\t\t\t\t], callback)\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn ''\n\t\t\t\t\t\t})\n\t\t\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n */\nexport function namespace (element) {\n\tswitch (element.type) {\n\t\tcase RULESET:\n\t\t\telement.props = element.props.map(function (value) {\n\t\t\t\treturn combine(tokenize(value), function (value, index, children) {\n\t\t\t\t\tswitch (charat(value, 0)) {\n\t\t\t\t\t\t// \\f\n\t\t\t\t\t\tcase 12:\n\t\t\t\t\t\t\treturn substr(value, 1, strlen(value))\n\t\t\t\t\t\t// \\0 ( + > ~\n\t\t\t\t\t\tcase 0: case 40: case 43: case 62: case 126:\n\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t// :\n\t\t\t\t\t\tcase 58:\n\t\t\t\t\t\t\tif (children[++index] === 'global')\n\t\t\t\t\t\t\t\tchildren[index] = '', children[++index] = '\\f' + substr(children[index], index = 1, -1)\n\t\t\t\t\t\t// \\s\n\t\t\t\t\t\tcase 32:\n\t\t\t\t\t\t\treturn index === 1 ? '' : value\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tswitch (index) {\n\t\t\t\t\t\t\t\tcase 0: element = value\n\t\t\t\t\t\t\t\t\treturn sizeof(children) > 1 ? '' : value\n\t\t\t\t\t\t\t\tcase index = sizeof(children) - 1: case 2:\n\t\t\t\t\t\t\t\t\treturn index === 2 ? value + element + element : value + element\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\t}\n}\n", "var weakMemoize = function weakMemoize(func) {\n var cache = new WeakMap();\n return function (arg) {\n if (cache.has(arg)) {\n // Use non-null assertion because we just checked that the cache `has` it\n // This allows us to remove `undefined` from the return value\n return cache.get(arg);\n }\n\n var ret = func(arg);\n cache.set(arg, ret);\n return ret;\n };\n};\n\nexport { weakMemoize as default };\n", "function memoize(fn) {\n var cache = Object.create(null);\n return function (arg) {\n if (cache[arg] === undefined) cache[arg] = fn(arg);\n return cache[arg];\n };\n}\n\nexport { memoize as default };\n", "import { StyleSheet } from '@emotion/sheet';\nimport { dealloc, alloc, next, token, from, peek, delimit, slice, position, RULESET, combine, match, serialize, copy, replace, WEBKIT, MOZ, MS, KEYFRAMES, DECLARATION, hash, charat, strlen, indexof, middleware, stringify, COMMENT, compile } from 'stylis';\nimport '@emotion/weak-memoize';\nimport '@emotion/memoize';\n\nvar identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {\n var previous = 0;\n var character = 0;\n\n while (true) {\n previous = character;\n character = peek(); // &\\f\n\n if (previous === 38 && character === 12) {\n points[index] = 1;\n }\n\n if (token(character)) {\n break;\n }\n\n next();\n }\n\n return slice(begin, position);\n};\n\nvar toRules = function toRules(parsed, points) {\n // pretend we've started with a comma\n var index = -1;\n var character = 44;\n\n do {\n switch (token(character)) {\n case 0:\n // &\\f\n if (character === 38 && peek() === 12) {\n // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings\n // stylis inserts \\f after & to know when & where it should replace this sequence with the context selector\n // and when it should just concatenate the outer and inner selectors\n // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here\n points[index] = 1;\n }\n\n parsed[index] += identifierWithPointTracking(position - 1, points, index);\n break;\n\n case 2:\n parsed[index] += delimit(character);\n break;\n\n case 4:\n // comma\n if (character === 44) {\n // colon\n parsed[++index] = peek() === 58 ? '&\\f' : '';\n points[index] = parsed[index].length;\n break;\n }\n\n // fallthrough\n\n default:\n parsed[index] += from(character);\n }\n } while (character = next());\n\n return parsed;\n};\n\nvar getRules = function getRules(value, points) {\n return dealloc(toRules(alloc(value), points));\n}; // WeakSet would be more appropriate, but only WeakMap is supported in IE11\n\n\nvar fixedElements = /* #__PURE__ */new WeakMap();\nvar compat = function compat(element) {\n if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo\n // negative .length indicates that this rule has been already prefixed\n element.length < 1) {\n return;\n }\n\n var value = element.value;\n var parent = element.parent;\n var isImplicitRule = element.column === parent.column && element.line === parent.line;\n\n while (parent.type !== 'rule') {\n parent = parent.parent;\n if (!parent) return;\n } // short-circuit for the simplest case\n\n\n if (element.props.length === 1 && value.charCodeAt(0) !== 58\n /* colon */\n && !fixedElements.get(parent)) {\n return;\n } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)\n // then the props has already been manipulated beforehand as they that array is shared between it and its \"rule parent\"\n\n\n if (isImplicitRule) {\n return;\n }\n\n fixedElements.set(element, true);\n var points = [];\n var rules = getRules(value, points);\n var parentRules = parent.props;\n\n for (var i = 0, k = 0; i < rules.length; i++) {\n for (var j = 0; j < parentRules.length; j++, k++) {\n element.props[k] = points[i] ? rules[i].replace(/&\\f/g, parentRules[j]) : parentRules[j] + \" \" + rules[i];\n }\n }\n};\nvar removeLabel = function removeLabel(element) {\n if (element.type === 'decl') {\n var value = element.value;\n\n if ( // charcode for l\n value.charCodeAt(0) === 108 && // charcode for b\n value.charCodeAt(2) === 98) {\n // this ignores label\n element[\"return\"] = '';\n element.value = '';\n }\n }\n};\nvar ignoreFlag = 'emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason';\n\nvar isIgnoringComment = function isIgnoringComment(element) {\n return element.type === 'comm' && element.children.indexOf(ignoreFlag) > -1;\n};\n\nvar createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm(cache) {\n return function (element, index, children) {\n if (element.type !== 'rule' || cache.compat) return;\n var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g);\n\n if (unsafePseudoClasses) {\n var isNested = !!element.parent; // in nested rules comments become children of the \"auto-inserted\" rule and that's always the `element.parent`\n //\n // considering this input:\n // .a {\n // .b /* comm */ {}\n // color: hotpink;\n // }\n // we get output corresponding to this:\n // .a {\n // & {\n // /* comm */\n // color: hotpink;\n // }\n // .b {}\n // }\n\n var commentContainer = isNested ? element.parent.children : // global rule at the root level\n children;\n\n for (var i = commentContainer.length - 1; i >= 0; i--) {\n var node = commentContainer[i];\n\n if (node.line < element.line) {\n break;\n } // it is quite weird but comments are *usually* put at `column: element.column - 1`\n // so we seek *from the end* for the node that is earlier than the rule's `element` and check that\n // this will also match inputs like this:\n // .a {\n // /* comm */\n // .b {}\n // }\n //\n // but that is fine\n //\n // it would be the easiest to change the placement of the comment to be the first child of the rule:\n // .a {\n // .b { /* comm */ }\n // }\n // with such inputs we wouldn't have to search for the comment at all\n // TODO: consider changing this comment placement in the next major version\n\n\n if (node.column < element.column) {\n if (isIgnoringComment(node)) {\n return;\n }\n\n break;\n }\n }\n\n unsafePseudoClasses.forEach(function (unsafePseudoClass) {\n console.error(\"The pseudo class \\\"\" + unsafePseudoClass + \"\\\" is potentially unsafe when doing server-side rendering. Try changing it to \\\"\" + unsafePseudoClass.split('-child')[0] + \"-of-type\\\".\");\n });\n }\n };\n};\n\nvar isImportRule = function isImportRule(element) {\n return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64;\n};\n\nvar isPrependedWithRegularRules = function isPrependedWithRegularRules(index, children) {\n for (var i = index - 1; i >= 0; i--) {\n if (!isImportRule(children[i])) {\n return true;\n }\n }\n\n return false;\n}; // use this to remove incorrect elements from further processing\n// so they don't get handed to the `sheet` (or anything else)\n// as that could potentially lead to additional logs which in turn could be overhelming to the user\n\n\nvar nullifyElement = function nullifyElement(element) {\n element.type = '';\n element.value = '';\n element[\"return\"] = '';\n element.children = '';\n element.props = '';\n};\n\nvar incorrectImportAlarm = function incorrectImportAlarm(element, index, children) {\n if (!isImportRule(element)) {\n return;\n }\n\n if (element.parent) {\n console.error(\"`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles.\");\n nullifyElement(element);\n } else if (isPrependedWithRegularRules(index, children)) {\n console.error(\"`@import` rules can't be after other rules. Please put your `@import` rules before your other rules.\");\n nullifyElement(element);\n }\n};\n\n/* eslint-disable no-fallthrough */\n\nfunction prefix(value, length) {\n switch (hash(value, length)) {\n // color-adjust\n case 5103:\n return WEBKIT + 'print-' + value + value;\n // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\n case 5737:\n case 4201:\n case 3177:\n case 3433:\n case 1641:\n case 4457:\n case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\n case 5572:\n case 6356:\n case 5844:\n case 3191:\n case 6645:\n case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\n case 6391:\n case 5879:\n case 5623:\n case 6135:\n case 4599:\n case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\n case 4215:\n case 6389:\n case 5109:\n case 5365:\n case 5621:\n case 3829:\n return WEBKIT + value + value;\n // appearance, user-select, transform, hyphens, text-size-adjust\n\n case 5349:\n case 4246:\n case 4810:\n case 6968:\n case 2756:\n return WEBKIT + value + MOZ + value + MS + value + value;\n // flex, flex-direction\n\n case 6828:\n case 4268:\n return WEBKIT + value + MS + value + value;\n // order\n\n case 6165:\n return WEBKIT + value + MS + 'flex-' + value + value;\n // align-items\n\n case 5187:\n return WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;\n // align-self\n\n case 5443:\n return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;\n // align-content\n\n case 4675:\n return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;\n // flex-shrink\n\n case 5548:\n return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;\n // flex-basis\n\n case 5292:\n return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;\n // flex-grow\n\n case 6060:\n return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;\n // transition\n\n case 4554:\n return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;\n // cursor\n\n case 6187:\n return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;\n // background, background-image\n\n case 5495:\n case 3959:\n return replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1');\n // justify-content\n\n case 4968:\n return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;\n // (margin|padding)-inline-(start|end)\n\n case 4095:\n case 3583:\n case 4068:\n case 2532:\n return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;\n // (min|max)?(width|height|inline-size|block-size)\n\n case 8116:\n case 7059:\n case 5753:\n case 5535:\n case 5445:\n case 5701:\n case 4933:\n case 4677:\n case 5533:\n case 5789:\n case 5021:\n case 4765:\n // stretch, max-content, min-content, fill-available\n if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {\n // (m)ax-content, (m)in-content\n case 109:\n // -\n if (charat(value, length + 4) !== 45) break;\n // (f)ill-available, (f)it-content\n\n case 102:\n return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;\n // (s)tretch\n\n case 115:\n return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;\n }\n break;\n // position: sticky\n\n case 4949:\n // (s)ticky?\n if (charat(value, length + 1) !== 115) break;\n // display: (flex|inline-flex)\n\n case 6444:\n switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n // stic(k)y\n case 107:\n return replace(value, ':', ':' + WEBKIT) + value;\n // (inline-)?fl(e)x\n\n case 101:\n return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;\n }\n\n break;\n // writing-mode\n\n case 5936:\n switch (charat(value, length + 11)) {\n // vertical-l(r)\n case 114:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value;\n // vertical-r(l)\n\n case 108:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value;\n // horizontal(-)tb\n\n case 45:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value;\n }\n\n return WEBKIT + value + MS + value + value;\n }\n\n return value;\n}\n\nvar prefixer = function prefixer(element, index, children, callback) {\n if (element.length > -1) if (!element[\"return\"]) switch (element.type) {\n case DECLARATION:\n element[\"return\"] = prefix(element.value, element.length);\n break;\n\n case KEYFRAMES:\n return serialize([copy(element, {\n value: replace(element.value, '@', '@' + WEBKIT)\n })], callback);\n\n case RULESET:\n if (element.length) return combine(element.props, function (value) {\n switch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n // :read-(only|write)\n case ':read-only':\n case ':read-write':\n return serialize([copy(element, {\n props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]\n })], callback);\n // :placeholder\n\n case '::placeholder':\n return serialize([copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]\n })], callback);\n }\n\n return '';\n });\n }\n};\n\nvar defaultStylisPlugins = [prefixer];\nvar getSourceMap;\n\n{\n var sourceMapPattern = /\\/\\*#\\ssourceMappingURL=data:application\\/json;\\S+\\s+\\*\\//g;\n\n getSourceMap = function getSourceMap(styles) {\n var matches = styles.match(sourceMapPattern);\n if (!matches) return;\n return matches[matches.length - 1];\n };\n}\n\nvar createCache = function createCache(options) {\n var key = options.key;\n\n if (!key) {\n throw new Error(\"You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\\n\" + \"If multiple caches share the same key they might \\\"fight\\\" for each other's style elements.\");\n }\n\n if (key === 'css') {\n var ssrStyles = document.querySelectorAll(\"style[data-emotion]:not([data-s])\"); // get SSRed styles out of the way of React's hydration\n // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)\n // note this very very intentionally targets all style elements regardless of the key to ensure\n // that creating a cache works inside of render of a React component\n\n Array.prototype.forEach.call(ssrStyles, function (node) {\n // we want to only move elements which have a space in the data-emotion attribute value\n // because that indicates that it is an Emotion 11 server-side rendered style elements\n // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector\n // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)\n // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles\n // will not result in the Emotion 10 styles being destroyed\n var dataEmotionAttribute = node.getAttribute('data-emotion');\n\n if (dataEmotionAttribute.indexOf(' ') === -1) {\n return;\n }\n\n document.head.appendChild(node);\n node.setAttribute('data-s', '');\n });\n }\n\n var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;\n\n {\n if (/[^a-z-]/.test(key)) {\n throw new Error(\"Emotion key must only contain lower case alphabetical characters and - but \\\"\" + key + \"\\\" was passed\");\n }\n }\n\n var inserted = {};\n var container;\n var nodesToHydrate = [];\n\n {\n container = options.container || document.head;\n Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which\n // means that the style elements we're looking at are only Emotion 11 server-rendered style elements\n document.querySelectorAll(\"style[data-emotion^=\\\"\" + key + \" \\\"]\"), function (node) {\n var attrib = node.getAttribute(\"data-emotion\").split(' ');\n\n for (var i = 1; i < attrib.length; i++) {\n inserted[attrib[i]] = true;\n }\n\n nodesToHydrate.push(node);\n });\n }\n\n var _insert;\n\n var omnipresentPlugins = [compat, removeLabel];\n\n {\n omnipresentPlugins.push(createUnsafeSelectorsAlarm({\n get compat() {\n return cache.compat;\n }\n\n }), incorrectImportAlarm);\n }\n\n {\n var currentSheet;\n var finalizingPlugins = [stringify, function (element) {\n if (!element.root) {\n if (element[\"return\"]) {\n currentSheet.insert(element[\"return\"]);\n } else if (element.value && element.type !== COMMENT) {\n // insert empty rule in non-production environments\n // so @emotion/jest can grab `key` from the (JS)DOM for caches without any rules inserted yet\n currentSheet.insert(element.value + \"{}\");\n }\n }\n } ];\n var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));\n\n var stylis = function stylis(styles) {\n return serialize(compile(styles), serializer);\n };\n\n _insert = function insert(selector, serialized, sheet, shouldCache) {\n currentSheet = sheet;\n\n if (getSourceMap) {\n var sourceMap = getSourceMap(serialized.styles);\n\n if (sourceMap) {\n currentSheet = {\n insert: function insert(rule) {\n sheet.insert(rule + sourceMap);\n }\n };\n }\n }\n\n stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n\n if (shouldCache) {\n cache.inserted[serialized.name] = true;\n }\n };\n }\n\n var cache = {\n key: key,\n sheet: new StyleSheet({\n key: key,\n container: container,\n nonce: options.nonce,\n speedy: options.speedy,\n prepend: options.prepend,\n insertionPoint: options.insertionPoint\n }),\n nonce: options.nonce,\n inserted: inserted,\n registered: {},\n insert: _insert\n };\n cache.sheet.hydrate(nodesToHydrate);\n return cache;\n};\n\nexport { createCache as default };\n", "import hoistNonReactStatics$1 from 'hoist-non-react-statics';\n\n// this file isolates this package that is not tree-shakeable\n// and if this module doesn't actually contain any logic of its own\n// then Rollup just use 'hoist-non-react-statics' directly in other chunks\n\nvar hoistNonReactStatics = (function (targetComponent, sourceComponent) {\n return hoistNonReactStatics$1(targetComponent, sourceComponent);\n});\n\nexport { hoistNonReactStatics as default };\n", "var isBrowser = true;\n\nfunction getRegisteredStyles(registered, registeredStyles, classNames) {\n var rawClassName = '';\n classNames.split(' ').forEach(function (className) {\n if (registered[className] !== undefined) {\n registeredStyles.push(registered[className] + \";\");\n } else if (className) {\n rawClassName += className + \" \";\n }\n });\n return rawClassName;\n}\nvar registerStyles = function registerStyles(cache, serialized, isStringTag) {\n var className = cache.key + \"-\" + serialized.name;\n\n if ( // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false || // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n isBrowser === false ) && cache.registered[className] === undefined) {\n cache.registered[className] = serialized.styles;\n }\n};\nvar insertStyles = function insertStyles(cache, serialized, isStringTag) {\n registerStyles(cache, serialized, isStringTag);\n var className = cache.key + \"-\" + serialized.name;\n\n if (cache.inserted[serialized.name] === undefined) {\n var current = serialized;\n\n do {\n cache.insert(serialized === current ? \".\" + className : '', current, cache.sheet, true);\n\n current = current.next;\n } while (current !== undefined);\n }\n};\n\nexport { getRegisteredStyles, insertStyles, registerStyles };\n", "/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\nfunction murmur2(str) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n // const m = 0x5bd1e995;\n // const r = 24;\n // Initialize the hash\n var h = 0; // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length;\n\n for (; len >= 4; ++i, len -= 4) {\n k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);\n k ^=\n /* k >>> r: */\n k >>> 24;\n h =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Handle the last few bytes of the input array\n\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16;\n\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8;\n\n case 1:\n h ^= str.charCodeAt(i) & 0xff;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n\n h ^= h >>> 13;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n return ((h ^ h >>> 15) >>> 0).toString(36);\n}\n\nexport { murmur2 as default };\n", "var unitlessKeys = {\n animationIterationCount: 1,\n aspectRatio: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n scale: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport { unitlessKeys as default };\n", "import hashString from '@emotion/hash';\nimport unitless from '@emotion/unitless';\nimport memoize from '@emotion/memoize';\n\nvar isDevelopment = true;\n\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\nvar UNDEFINED_AS_OBJECT_KEY_ERROR = \"You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key).\";\nvar hyphenateRegex = /[A-Z]|^ms/g;\nvar animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;\n\nvar isCustomProperty = function isCustomProperty(property) {\n return property.charCodeAt(1) === 45;\n};\n\nvar isProcessableValue = function isProcessableValue(value) {\n return value != null && typeof value !== 'boolean';\n};\n\nvar processStyleName = /* #__PURE__ */memoize(function (styleName) {\n return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, '-$&').toLowerCase();\n});\n\nvar processStyleValue = function processStyleValue(key, value) {\n switch (key) {\n case 'animation':\n case 'animationName':\n {\n if (typeof value === 'string') {\n return value.replace(animationRegex, function (match, p1, p2) {\n cursor = {\n name: p1,\n styles: p2,\n next: cursor\n };\n return p1;\n });\n }\n }\n }\n\n if (unitless[key] !== 1 && !isCustomProperty(key) && typeof value === 'number' && value !== 0) {\n return value + 'px';\n }\n\n return value;\n};\n\n{\n var contentValuePattern = /(var|attr|counters?|url|element|(((repeating-)?(linear|radial))|conic)-gradient)\\(|(no-)?(open|close)-quote/;\n var contentValues = ['normal', 'none', 'initial', 'inherit', 'unset'];\n var oldProcessStyleValue = processStyleValue;\n var msPattern = /^-ms-/;\n var hyphenPattern = /-(.)/g;\n var hyphenatedCache = {};\n\n processStyleValue = function processStyleValue(key, value) {\n if (key === 'content') {\n if (typeof value !== 'string' || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")) {\n throw new Error(\"You seem to be using a value for 'content' without quotes, try replacing it with `content: '\\\"\" + value + \"\\\"'`\");\n }\n }\n\n var processed = oldProcessStyleValue(key, value);\n\n if (processed !== '' && !isCustomProperty(key) && key.indexOf('-') !== -1 && hyphenatedCache[key] === undefined) {\n hyphenatedCache[key] = true;\n console.error(\"Using kebab-case for css properties in objects is not supported. Did you mean \" + key.replace(msPattern, 'ms-').replace(hyphenPattern, function (str, _char) {\n return _char.toUpperCase();\n }) + \"?\");\n }\n\n return processed;\n };\n}\n\nvar noComponentSelectorMessage = 'Component selectors can only be used in conjunction with ' + '@emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware ' + 'compiler transform.';\n\nfunction handleInterpolation(mergedProps, registered, interpolation) {\n if (interpolation == null) {\n return '';\n }\n\n var componentSelector = interpolation;\n\n if (componentSelector.__emotion_styles !== undefined) {\n if (String(componentSelector) === 'NO_COMPONENT_SELECTOR') {\n throw new Error(noComponentSelectorMessage);\n }\n\n return componentSelector;\n }\n\n switch (typeof interpolation) {\n case 'boolean':\n {\n return '';\n }\n\n case 'object':\n {\n var keyframes = interpolation;\n\n if (keyframes.anim === 1) {\n cursor = {\n name: keyframes.name,\n styles: keyframes.styles,\n next: cursor\n };\n return keyframes.name;\n }\n\n var serializedStyles = interpolation;\n\n if (serializedStyles.styles !== undefined) {\n var next = serializedStyles.next;\n\n if (next !== undefined) {\n // not the most efficient thing ever but this is a pretty rare case\n // and there will be very few iterations of this generally\n while (next !== undefined) {\n cursor = {\n name: next.name,\n styles: next.styles,\n next: cursor\n };\n next = next.next;\n }\n }\n\n var styles = serializedStyles.styles + \";\";\n return styles;\n }\n\n return createStringFromObject(mergedProps, registered, interpolation);\n }\n\n case 'function':\n {\n if (mergedProps !== undefined) {\n var previousCursor = cursor;\n var result = interpolation(mergedProps);\n cursor = previousCursor;\n return handleInterpolation(mergedProps, registered, result);\n } else {\n console.error('Functions that are interpolated in css calls will be stringified.\\n' + 'If you want to have a css call based on props, create a function that returns a css call like this\\n' + 'let dynamicStyle = (props) => css`color: ${props.color}`\\n' + 'It can be called directly with props or interpolated in a styled call like this\\n' + \"let SomeComponent = styled('div')`${dynamicStyle}`\");\n }\n\n break;\n }\n\n case 'string':\n {\n var matched = [];\n var replaced = interpolation.replace(animationRegex, function (_match, _p1, p2) {\n var fakeVarName = \"animation\" + matched.length;\n matched.push(\"const \" + fakeVarName + \" = keyframes`\" + p2.replace(/^@keyframes animation-\\w+/, '') + \"`\");\n return \"${\" + fakeVarName + \"}\";\n });\n\n if (matched.length) {\n console.error(\"`keyframes` output got interpolated into plain string, please wrap it with `css`.\\n\\nInstead of doing this:\\n\\n\" + [].concat(matched, [\"`\" + replaced + \"`\"]).join('\\n') + \"\\n\\nYou should wrap it with `css` like this:\\n\\ncss`\" + replaced + \"`\");\n }\n }\n\n break;\n } // finalize string values (regular strings and functions interpolated into css calls)\n\n\n var asString = interpolation;\n\n if (registered == null) {\n return asString;\n }\n\n var cached = registered[asString];\n return cached !== undefined ? cached : asString;\n}\n\nfunction createStringFromObject(mergedProps, registered, obj) {\n var string = '';\n\n if (Array.isArray(obj)) {\n for (var i = 0; i < obj.length; i++) {\n string += handleInterpolation(mergedProps, registered, obj[i]) + \";\";\n }\n } else {\n for (var key in obj) {\n var value = obj[key];\n\n if (typeof value !== 'object') {\n var asString = value;\n\n if (registered != null && registered[asString] !== undefined) {\n string += key + \"{\" + registered[asString] + \"}\";\n } else if (isProcessableValue(asString)) {\n string += processStyleName(key) + \":\" + processStyleValue(key, asString) + \";\";\n }\n } else {\n if (key === 'NO_COMPONENT_SELECTOR' && isDevelopment) {\n throw new Error(noComponentSelectorMessage);\n }\n\n if (Array.isArray(value) && typeof value[0] === 'string' && (registered == null || registered[value[0]] === undefined)) {\n for (var _i = 0; _i < value.length; _i++) {\n if (isProcessableValue(value[_i])) {\n string += processStyleName(key) + \":\" + processStyleValue(key, value[_i]) + \";\";\n }\n }\n } else {\n var interpolated = handleInterpolation(mergedProps, registered, value);\n\n switch (key) {\n case 'animation':\n case 'animationName':\n {\n string += processStyleName(key) + \":\" + interpolated + \";\";\n break;\n }\n\n default:\n {\n if (key === 'undefined') {\n console.error(UNDEFINED_AS_OBJECT_KEY_ERROR);\n }\n\n string += key + \"{\" + interpolated + \"}\";\n }\n }\n }\n }\n }\n }\n\n return string;\n}\n\nvar labelPattern = /label:\\s*([^\\s;{]+)\\s*(;|$)/g; // this is the cursor for keyframes\n// keyframes are stored on the SerializedStyles object as a linked list\n\nvar cursor;\nfunction serializeStyles(args, registered, mergedProps) {\n if (args.length === 1 && typeof args[0] === 'object' && args[0] !== null && args[0].styles !== undefined) {\n return args[0];\n }\n\n var stringMode = true;\n var styles = '';\n cursor = undefined;\n var strings = args[0];\n\n if (strings == null || strings.raw === undefined) {\n stringMode = false;\n styles += handleInterpolation(mergedProps, registered, strings);\n } else {\n var asTemplateStringsArr = strings;\n\n if (asTemplateStringsArr[0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += asTemplateStringsArr[0];\n } // we start at 1 since we've already handled the first arg\n\n\n for (var i = 1; i < args.length; i++) {\n styles += handleInterpolation(mergedProps, registered, args[i]);\n\n if (stringMode) {\n var templateStringsArr = strings;\n\n if (templateStringsArr[i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += templateStringsArr[i];\n }\n } // using a global regex with .exec is stateful so lastIndex has to be reset each time\n\n\n labelPattern.lastIndex = 0;\n var identifierName = '';\n var match; // https://esbench.com/bench/5b809c2cf2949800a0f61fb5\n\n while ((match = labelPattern.exec(styles)) !== null) {\n identifierName += '-' + match[1];\n }\n\n var name = hashString(styles) + identifierName;\n\n {\n var devStyles = {\n name: name,\n styles: styles,\n next: cursor,\n toString: function toString() {\n return \"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).\";\n }\n };\n return devStyles;\n }\n}\n\nexport { serializeStyles };\n", "import * as React from 'react';\n\nvar syncFallback = function syncFallback(create) {\n return create();\n};\n\nvar useInsertionEffect = React['useInsertion' + 'Effect'] ? React['useInsertion' + 'Effect'] : false;\nvar useInsertionEffectAlwaysWithSyncFallback = useInsertionEffect || syncFallback;\nvar useInsertionEffectWithLayoutFallback = useInsertionEffect || React.useLayoutEffect;\n\nexport { useInsertionEffectAlwaysWithSyncFallback, useInsertionEffectWithLayoutFallback };\n", "import { h as hasOwn, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext } from './emotion-element-489459f2.browser.development.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-489459f2.browser.development.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.esm.js';\nimport 'hoist-non-react-statics';\n\nvar isDevelopment = true;\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.14.0\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\ttypes: \"dist/emotion-react.cjs.d.ts\",\n\texports: {\n\t\t\".\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t\t},\n\t\t\tdevelopment: {\n\t\t\t\t\"edge-light\": {\n\t\t\t\t\tmodule: \"./dist/emotion-react.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./dist/emotion-react.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./dist/emotion-react.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tworker: {\n\t\t\t\t\tmodule: \"./dist/emotion-react.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./dist/emotion-react.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./dist/emotion-react.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tworkerd: {\n\t\t\t\t\tmodule: \"./dist/emotion-react.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./dist/emotion-react.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./dist/emotion-react.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tbrowser: {\n\t\t\t\t\tmodule: \"./dist/emotion-react.browser.development.esm.js\",\n\t\t\t\t\t\"import\": \"./dist/emotion-react.browser.development.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./dist/emotion-react.browser.development.cjs.js\"\n\t\t\t\t},\n\t\t\t\tmodule: \"./dist/emotion-react.development.esm.js\",\n\t\t\t\t\"import\": \"./dist/emotion-react.development.cjs.mjs\",\n\t\t\t\t\"default\": \"./dist/emotion-react.development.cjs.js\"\n\t\t\t},\n\t\t\t\"edge-light\": {\n\t\t\t\tmodule: \"./dist/emotion-react.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./dist/emotion-react.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./dist/emotion-react.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tworker: {\n\t\t\t\tmodule: \"./dist/emotion-react.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./dist/emotion-react.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./dist/emotion-react.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tworkerd: {\n\t\t\t\tmodule: \"./dist/emotion-react.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./dist/emotion-react.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./dist/emotion-react.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tbrowser: {\n\t\t\t\tmodule: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"import\": \"./dist/emotion-react.browser.cjs.mjs\",\n\t\t\t\t\"default\": \"./dist/emotion-react.browser.cjs.js\"\n\t\t\t},\n\t\t\tmodule: \"./dist/emotion-react.esm.js\",\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t\t},\n\t\t\tdevelopment: {\n\t\t\t\t\"edge-light\": {\n\t\t\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tworker: {\n\t\t\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tworkerd: {\n\t\t\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tbrowser: {\n\t\t\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.development.esm.js\",\n\t\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.development.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.development.cjs.js\"\n\t\t\t\t},\n\t\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.esm.js\",\n\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.development.cjs.js\"\n\t\t\t},\n\t\t\t\"edge-light\": {\n\t\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tworker: {\n\t\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tworkerd: {\n\t\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tbrowser: {\n\t\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.cjs.js\"\n\t\t\t},\n\t\t\tmodule: \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\",\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t\t},\n\t\t\tdevelopment: {\n\t\t\t\t\"edge-light\": {\n\t\t\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tworker: {\n\t\t\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tworkerd: {\n\t\t\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tbrowser: {\n\t\t\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.esm.js\",\n\t\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.development.cjs.js\"\n\t\t\t\t},\n\t\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.esm.js\",\n\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.cjs.mjs\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.development.cjs.js\"\n\t\t\t},\n\t\t\t\"edge-light\": {\n\t\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tworker: {\n\t\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tworkerd: {\n\t\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tbrowser: {\n\t\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.cjs.mjs\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.cjs.js\"\n\t\t\t},\n\t\t\tmodule: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\",\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t\t},\n\t\t\tdevelopment: {\n\t\t\t\t\"edge-light\": {\n\t\t\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tworker: {\n\t\t\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tworkerd: {\n\t\t\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.esm.js\",\n\t\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.edge-light.cjs.js\"\n\t\t\t\t},\n\t\t\t\tbrowser: {\n\t\t\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.development.esm.js\",\n\t\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.development.cjs.mjs\",\n\t\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.development.cjs.js\"\n\t\t\t\t},\n\t\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.esm.js\",\n\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.development.cjs.js\"\n\t\t\t},\n\t\t\t\"edge-light\": {\n\t\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tworker: {\n\t\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tworkerd: {\n\t\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.esm.js\",\n\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.edge-light.cjs.js\"\n\t\t\t},\n\t\t\tbrowser: {\n\t\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.cjs.mjs\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.cjs.js\"\n\t\t\t},\n\t\t\tmodule: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\",\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\timports: {\n\t\t\"#is-development\": {\n\t\t\tdevelopment: \"./src/conditions/true.ts\",\n\t\t\t\"default\": \"./src/conditions/false.ts\"\n\t\t},\n\t\t\"#is-browser\": {\n\t\t\t\"edge-light\": \"./src/conditions/false.ts\",\n\t\t\tworkerd: \"./src/conditions/false.ts\",\n\t\t\tworker: \"./src/conditions/false.ts\",\n\t\t\tbrowser: \"./src/conditions/true.ts\",\n\t\t\t\"default\": \"./src/conditions/is-browser.ts\"\n\t\t}\n\t},\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/css-prop.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.13.5\",\n\t\t\"@emotion/cache\": \"^11.14.0\",\n\t\t\"@emotion/serialize\": \"^1.3.3\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.2.0\",\n\t\t\"@emotion/utils\": \"^1.4.2\",\n\t\t\"@emotion/weak-memoize\": \"^0.4.0\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.13.5\",\n\t\t\"@emotion/css-prettifier\": \"1.2.0\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.14.0\",\n\t\t\"@types/hoist-non-react-statics\": \"^3.3.5\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^5.4.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.ts\",\n\t\t\t\"./jsx-runtime.ts\",\n\t\t\t\"./jsx-dev-runtime.ts\",\n\t\t\t\"./_isolated-hnrs.ts\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n // eslint-disable-next-line prefer-rest-params\n var args = arguments;\n\n if (props == null || !hasOwn.call(props, 'css')) {\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n }\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\n(function (_jsx) {\n var JSX;\n\n (function (_JSX) {})(JSX || (JSX = _jsx.JSX || (_jsx.JSX = {})));\n})(jsx || (jsx = {}));\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (!warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // I don't really want to add it to the type since it shouldn't be used\n 'className' in props && props.className || 'css' in props && props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false;\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\n{\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nfunction keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name;\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n}\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && isDevelopment) {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && isDevelopment) {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\n{\n ClassNames.displayName = 'EmotionClassNames';\n}\n\n{\n var isBrowser = typeof document !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n", "import _extends from '@babel/runtime/helpers/esm/extends';\nimport { withEmotionCache, ThemeContext } from '@emotion/react';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport * as React from 'react';\nimport isPropValid from '@emotion/is-prop-valid';\n\nvar isDevelopment = true;\n\nvar testOmitPropsOnStringTag = isPropValid;\n\nvar testOmitPropsOnComponent = function testOmitPropsOnComponent(key) {\n return key !== 'theme';\n};\n\nvar getDefaultShouldForwardProp = function getDefaultShouldForwardProp(tag) {\n return typeof tag === 'string' && // 96 is one less than the char code\n // for \"a\" so this is checking that\n // it's a lowercase character\n tag.charCodeAt(0) > 96 ? testOmitPropsOnStringTag : testOmitPropsOnComponent;\n};\nvar composeShouldForwardProps = function composeShouldForwardProps(tag, options, isReal) {\n var shouldForwardProp;\n\n if (options) {\n var optionsShouldForwardProp = options.shouldForwardProp;\n shouldForwardProp = tag.__emotion_forwardProp && optionsShouldForwardProp ? function (propName) {\n return tag.__emotion_forwardProp(propName) && optionsShouldForwardProp(propName);\n } : optionsShouldForwardProp;\n }\n\n if (typeof shouldForwardProp !== 'function' && isReal) {\n shouldForwardProp = tag.__emotion_forwardProp;\n }\n\n return shouldForwardProp;\n};\n\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar createStyled = function createStyled(tag, options) {\n {\n if (tag === undefined) {\n throw new Error('You are trying to create a styled element with an undefined component.\\nYou may have forgotten to import it.');\n }\n }\n\n var isReal = tag.__emotion_real === tag;\n var baseTag = isReal && tag.__emotion_base || tag;\n var identifierName;\n var targetClassName;\n\n if (options !== undefined) {\n identifierName = options.label;\n targetClassName = options.target;\n }\n\n var shouldForwardProp = composeShouldForwardProps(tag, options, isReal);\n var defaultShouldForwardProp = shouldForwardProp || getDefaultShouldForwardProp(baseTag);\n var shouldUseAs = !defaultShouldForwardProp('as');\n return function () {\n // eslint-disable-next-line prefer-rest-params\n var args = arguments;\n var styles = isReal && tag.__emotion_styles !== undefined ? tag.__emotion_styles.slice(0) : [];\n\n if (identifierName !== undefined) {\n styles.push(\"label:\" + identifierName + \";\");\n }\n\n if (args[0] == null || args[0].raw === undefined) {\n // eslint-disable-next-line prefer-spread\n styles.push.apply(styles, args);\n } else {\n var templateStringsArr = args[0];\n\n if (templateStringsArr[0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(templateStringsArr[0]);\n var len = args.length;\n var i = 1;\n\n for (; i < len; i++) {\n if (templateStringsArr[i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(args[i], templateStringsArr[i]);\n }\n }\n\n var Styled = withEmotionCache(function (props, cache, ref) {\n var FinalTag = shouldUseAs && props.as || baseTag;\n var className = '';\n var classInterpolations = [];\n var mergedProps = props;\n\n if (props.theme == null) {\n mergedProps = {};\n\n for (var key in props) {\n mergedProps[key] = props[key];\n }\n\n mergedProps.theme = React.useContext(ThemeContext);\n }\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, classInterpolations, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(styles.concat(classInterpolations), cache.registered, mergedProps);\n className += cache.key + \"-\" + serialized.name;\n\n if (targetClassName !== undefined) {\n className += \" \" + targetClassName;\n }\n\n var finalShouldForwardProp = shouldUseAs && shouldForwardProp === undefined ? getDefaultShouldForwardProp(FinalTag) : defaultShouldForwardProp;\n var newProps = {};\n\n for (var _key in props) {\n if (shouldUseAs && _key === 'as') continue;\n\n if (finalShouldForwardProp(_key)) {\n newProps[_key] = props[_key];\n }\n }\n\n newProps.className = className;\n\n if (ref) {\n newProps.ref = ref;\n }\n\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof FinalTag === 'string'\n }), /*#__PURE__*/React.createElement(FinalTag, newProps));\n });\n Styled.displayName = identifierName !== undefined ? identifierName : \"Styled(\" + (typeof baseTag === 'string' ? baseTag : baseTag.displayName || baseTag.name || 'Component') + \")\";\n Styled.defaultProps = tag.defaultProps;\n Styled.__emotion_real = Styled;\n Styled.__emotion_base = baseTag;\n Styled.__emotion_styles = styles;\n Styled.__emotion_forwardProp = shouldForwardProp;\n Object.defineProperty(Styled, 'toString', {\n value: function value() {\n if (targetClassName === undefined && isDevelopment) {\n return 'NO_COMPONENT_SELECTOR';\n }\n\n return \".\" + targetClassName;\n }\n });\n\n Styled.withComponent = function (nextTag, nextOptions) {\n var newStyled = createStyled(nextTag, _extends({}, options, nextOptions, {\n shouldForwardProp: composeShouldForwardProps(Styled, nextOptions, true)\n }));\n return newStyled.apply(void 0, styles);\n };\n\n return Styled;\n };\n};\n\nexport { createStyled as default };\n", "import memoize from '@emotion/memoize';\n\n// eslint-disable-next-line no-undef\nvar reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\n\nvar isPropValid = /* #__PURE__ */memoize(function (prop) {\n return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111\n /* o */\n && prop.charCodeAt(1) === 110\n /* n */\n && prop.charCodeAt(2) < 91;\n}\n/* Z+1 */\n);\n\nexport { isPropValid as default };\n", "import createStyled from '../base/dist/emotion-styled-base.browser.development.esm.js';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/react';\nimport '@emotion/serialize';\nimport '@emotion/use-insertion-effect-with-fallbacks';\nimport '@emotion/utils';\nimport 'react';\nimport '@emotion/is-prop-valid';\n\nvar tags = ['a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr', // SVG\n'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan'];\n\n// bind it to avoid mutating the original function\nvar newStyled = createStyled.bind(null);\ntags.forEach(function (tagName) {\n newStyled[tagName] = newStyled(tagName);\n});\n\nexport { newStyled as default };\n", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { CacheProvider } from '@emotion/react';\nimport createCache from '@emotion/cache';\nimport { StyleSheet } from '@emotion/sheet';\n\n// Need to add a private variable to test the generated CSS from Emotion, this is the simplest way to do it.\n// We can't test the CSS from `style` tag easily because the `speedy: true` (produce empty text content) is enabled by Emotion.\n// Even if we disable it, JSDOM needs extra configuration to be able to parse `@layer` CSS.\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const TEST_INTERNALS_DO_NOT_USE = {\n /**\n * to intercept the generated CSS before inserting to the style tag, so that we can check the generated CSS.\n *\n * let rule;\n * TEST_INTERNALS_DO_NOT_USE.insert = (...args) => {\n * rule = args[0];\n * };\n *\n * expect(rule).to.equal(...);\n */\n insert: undefined\n};\n\n// We might be able to remove this when this issue is fixed:\n// https://github.com/emotion-js/emotion/issues/2790\nconst createEmotionCache = (options, CustomSheet) => {\n const cache = createCache(options);\n\n // Do the same as https://github.com/emotion-js/emotion/blob/main/packages/cache/src/index.js#L238-L245\n cache.sheet = new CustomSheet({\n key: cache.key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy,\n prepend: cache.sheet.prepend,\n insertionPoint: cache.sheet.insertionPoint\n });\n return cache;\n};\nlet insertionPoint;\nif (typeof document === 'object') {\n // Use `insertionPoint` over `prepend`(deprecated) because it can be controlled for GlobalStyles injection order\n // For more information, see https://github.com/mui/material-ui/issues/44597\n insertionPoint = document.querySelector('[name=\"emotion-insertion-point\"]');\n if (!insertionPoint) {\n insertionPoint = document.createElement('meta');\n insertionPoint.setAttribute('name', 'emotion-insertion-point');\n insertionPoint.setAttribute('content', '');\n const head = document.querySelector('head');\n if (head) {\n head.prepend(insertionPoint);\n }\n }\n}\nfunction getCache(injectFirst, enableCssLayer) {\n if (injectFirst || enableCssLayer) {\n /**\n * This is for client-side apps only.\n * A custom sheet is required to make the GlobalStyles API injected above the insertion point.\n * This is because the [sheet](https://github.com/emotion-js/emotion/blob/main/packages/react/src/global.js#L94-L99) does not consume the options.\n */\n class MyStyleSheet extends StyleSheet {\n insert(rule, options) {\n if (TEST_INTERNALS_DO_NOT_USE.insert) {\n return TEST_INTERNALS_DO_NOT_USE.insert(rule, options);\n }\n if (this.key && this.key.endsWith('global')) {\n this.before = insertionPoint;\n }\n return super.insert(rule, options);\n }\n }\n const emotionCache = createEmotionCache({\n key: 'css',\n insertionPoint: injectFirst ? insertionPoint : undefined\n }, MyStyleSheet);\n if (enableCssLayer) {\n const prevInsert = emotionCache.insert;\n emotionCache.insert = (...args) => {\n if (!args[1].styles.startsWith('@layer')) {\n // avoid nested @layer\n args[1].styles = `@layer mui {${args[1].styles}}`;\n }\n return prevInsert(...args);\n };\n }\n return emotionCache;\n }\n return undefined;\n}\nexport default function StyledEngineProvider(props) {\n const {\n injectFirst,\n enableCssLayer,\n children\n } = props;\n const cache = React.useMemo(() => getCache(injectFirst, enableCssLayer), [injectFirst, enableCssLayer]);\n return cache ? /*#__PURE__*/_jsx(CacheProvider, {\n value: cache,\n children: children\n }) : children;\n}\nprocess.env.NODE_ENV !== \"production\" ? StyledEngineProvider.propTypes = {\n /**\n * Your component tree.\n */\n children: PropTypes.node,\n /**\n * If `true`, the styles are wrapped in `@layer mui`.\n * Learn more about [Cascade layers](https://developer.mozilla.org/en-US/docs/Learn_web_development/Core/Styling_basics/Cascade_layers).\n */\n enableCssLayer: PropTypes.bool,\n /**\n * By default, the styles are injected last in the element of the page.\n * As a result, they gain more specificity than any other style sheet.\n * If you want to override MUI's styles, set this prop.\n */\n injectFirst: PropTypes.bool\n} : void 0;", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { Global } from '@emotion/react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction isEmpty(obj) {\n return obj === undefined || obj === null || Object.keys(obj).length === 0;\n}\nexport default function GlobalStyles(props) {\n const {\n styles,\n defaultTheme = {}\n } = props;\n const globalStyles = typeof styles === 'function' ? themeInput => styles(isEmpty(themeInput) ? defaultTheme : themeInput) : styles;\n return /*#__PURE__*/_jsx(Global, {\n styles: globalStyles\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? GlobalStyles.propTypes = {\n defaultTheme: PropTypes.object,\n styles: PropTypes.oneOfType([PropTypes.array, PropTypes.string, PropTypes.object, PropTypes.func])\n} : void 0;", "/**\n * @mui/styled-engine v7.0.1\n *\n * @license MIT\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use client';\n\n/* eslint-disable no-underscore-dangle */\nimport emStyled from '@emotion/styled';\nimport { serializeStyles as emSerializeStyles } from '@emotion/serialize';\nexport default function styled(tag, options) {\n const stylesFactory = emStyled(tag, options);\n if (process.env.NODE_ENV !== 'production') {\n return (...styles) => {\n const component = typeof tag === 'string' ? `\"${tag}\"` : 'component';\n if (styles.length === 0) {\n console.error([`MUI: Seems like you called \\`styled(${component})()\\` without a \\`style\\` argument.`, 'You must provide a `styles` argument: `styled(\"div\")(styleYouForgotToPass)`.'].join('\\n'));\n } else if (styles.some(style => style === undefined)) {\n console.error(`MUI: the styled(${component})(...args) API requires all its args to be defined.`);\n }\n return stylesFactory(...styles);\n };\n }\n return stylesFactory;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function internal_mutateStyles(tag, processor) {\n // Emotion attaches all the styles as `__emotion_styles`.\n // Ref: https://github.com/emotion-js/emotion/blob/16d971d0da229596d6bcc39d282ba9753c9ee7cf/packages/styled/src/base.js#L186\n if (Array.isArray(tag.__emotion_styles)) {\n tag.__emotion_styles = processor(tag.__emotion_styles);\n }\n}\n\n// Emotion only accepts an array, but we want to avoid allocations\nconst wrapper = [];\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function internal_serializeStyles(styles) {\n wrapper[0] = styles;\n return emSerializeStyles(wrapper);\n}\nexport { ThemeContext, keyframes, css } from '@emotion/react';\nexport { default as StyledEngineProvider } from \"./StyledEngineProvider/index.js\";\nexport { default as GlobalStyles } from \"./GlobalStyles/index.js\";", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { GlobalStyles as MuiGlobalStyles } from '@mui/styled-engine';\nimport useTheme from \"../useTheme/index.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction GlobalStyles({\n styles,\n themeId,\n defaultTheme = {}\n}) {\n const upperTheme = useTheme(defaultTheme);\n const globalStyles = typeof styles === 'function' ? styles(themeId ? upperTheme[themeId] || upperTheme : upperTheme) : styles;\n return /*#__PURE__*/_jsx(MuiGlobalStyles, {\n styles: globalStyles\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? GlobalStyles.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * @ignore\n */\n defaultTheme: PropTypes.object,\n /**\n * @ignore\n */\n styles: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.array, PropTypes.func, PropTypes.number, PropTypes.object, PropTypes.string, PropTypes.bool]),\n /**\n * @ignore\n */\n themeId: PropTypes.string\n} : void 0;\nexport default GlobalStyles;", "// Sorted ASC by size. That's important.\n// It can't be configured as it's used statically for propTypes.\nexport const breakpointKeys = ['xs', 'sm', 'md', 'lg', 'xl'];\nconst sortBreakpointsValues = values => {\n const breakpointsAsArray = Object.keys(values).map(key => ({\n key,\n val: values[key]\n })) || [];\n // Sort in ascending order\n breakpointsAsArray.sort((breakpoint1, breakpoint2) => breakpoint1.val - breakpoint2.val);\n return breakpointsAsArray.reduce((acc, obj) => {\n return {\n ...acc,\n [obj.key]: obj.val\n };\n }, {});\n};\n\n// Keep in mind that @media is inclusive by the CSS specification.\nexport default function createBreakpoints(breakpoints) {\n const {\n // The breakpoint **start** at this value.\n // For instance with the first breakpoint xs: [xs, sm).\n values = {\n xs: 0,\n // phone\n sm: 600,\n // tablet\n md: 900,\n // small laptop\n lg: 1200,\n // desktop\n xl: 1536 // large screen\n },\n unit = 'px',\n step = 5,\n ...other\n } = breakpoints;\n const sortedValues = sortBreakpointsValues(values);\n const keys = Object.keys(sortedValues);\n function up(key) {\n const value = typeof values[key] === 'number' ? values[key] : key;\n return `@media (min-width:${value}${unit})`;\n }\n function down(key) {\n const value = typeof values[key] === 'number' ? values[key] : key;\n return `@media (max-width:${value - step / 100}${unit})`;\n }\n function between(start, end) {\n const endIndex = keys.indexOf(end);\n return `@media (min-width:${typeof values[start] === 'number' ? values[start] : start}${unit}) and ` + `(max-width:${(endIndex !== -1 && typeof values[keys[endIndex]] === 'number' ? values[keys[endIndex]] : end) - step / 100}${unit})`;\n }\n function only(key) {\n if (keys.indexOf(key) + 1 < keys.length) {\n return between(key, keys[keys.indexOf(key) + 1]);\n }\n return up(key);\n }\n function not(key) {\n // handle first and last key separately, for better readability\n const keyIndex = keys.indexOf(key);\n if (keyIndex === 0) {\n return up(keys[1]);\n }\n if (keyIndex === keys.length - 1) {\n return down(keys[keyIndex]);\n }\n return between(key, keys[keys.indexOf(key) + 1]).replace('@media', '@media not all and');\n }\n return {\n keys,\n values: sortedValues,\n up,\n down,\n between,\n only,\n not,\n unit,\n ...other\n };\n}", "const shape = {\n borderRadius: 4\n};\nexport default shape;", "import { createUnarySpacing } from \"../spacing/index.js\";\n\n// The different signatures imply different meaning for their arguments that can't be expressed structurally.\n// We express the difference with variable names.\n\nexport default function createSpacing(spacingInput = 8,\n// Material Design layouts are visually balanced. Most measurements align to an 8dp grid, which aligns both spacing and the overall layout.\n// Smaller components, such as icons, can align to a 4dp grid.\n// https://m2.material.io/design/layout/understanding-layout.html\ntransform = createUnarySpacing({\n spacing: spacingInput\n})) {\n // Already transformed.\n if (spacingInput.mui) {\n return spacingInput;\n }\n const spacing = (...argsInput) => {\n if (process.env.NODE_ENV !== 'production') {\n if (!(argsInput.length <= 4)) {\n console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${argsInput.length}`);\n }\n }\n const args = argsInput.length === 0 ? [1] : argsInput;\n return args.map(argument => {\n const output = transform(argument);\n return typeof output === 'number' ? `${output}px` : output;\n }).join(' ');\n };\n spacing.mui = true;\n return spacing;\n}", "/**\n * A universal utility to style components with multiple color modes. Always use it from the theme object.\n * It works with:\n * - [Basic theme](https://mui.com/material-ui/customization/dark-mode/)\n * - [CSS theme variables](https://mui.com/material-ui/customization/css-theme-variables/overview/)\n * - Zero-runtime engine\n *\n * Tips: Use an array over object spread and place `theme.applyStyles()` last.\n *\n * With the styled function:\n * ✅ [{ background: '#e5e5e5' }, theme.applyStyles('dark', { background: '#1c1c1c' })]\n * 🚫 { background: '#e5e5e5', ...theme.applyStyles('dark', { background: '#1c1c1c' })}\n *\n * With the sx prop:\n * ✅ [{ background: '#e5e5e5' }, theme => theme.applyStyles('dark', { background: '#1c1c1c' })]\n * 🚫 { background: '#e5e5e5', ...theme => theme.applyStyles('dark', { background: '#1c1c1c' })}\n *\n * @example\n * 1. using with `styled`:\n * ```jsx\n * const Component = styled('div')(({ theme }) => [\n * { background: '#e5e5e5' },\n * theme.applyStyles('dark', {\n * background: '#1c1c1c',\n * color: '#fff',\n * }),\n * ]);\n * ```\n *\n * @example\n * 2. using with `sx` prop:\n * ```jsx\n * theme.applyStyles('dark', {\n * background: '#1c1c1c',\n * color: '#fff',\n * }),\n * ]}\n * />\n * ```\n *\n * @example\n * 3. theming a component:\n * ```jsx\n * extendTheme({\n * components: {\n * MuiButton: {\n * styleOverrides: {\n * root: ({ theme }) => [\n * { background: '#e5e5e5' },\n * theme.applyStyles('dark', {\n * background: '#1c1c1c',\n * color: '#fff',\n * }),\n * ],\n * },\n * }\n * }\n * })\n *```\n */\nexport default function applyStyles(key, styles) {\n // @ts-expect-error this is 'any' type\n const theme = this;\n if (theme.vars) {\n if (!theme.colorSchemes?.[key] || typeof theme.getColorSchemeSelector !== 'function') {\n return {};\n }\n // If CssVarsProvider is used as a provider, returns '*:where({selector}) &'\n let selector = theme.getColorSchemeSelector(key);\n if (selector === '&') {\n return styles;\n }\n if (selector.includes('data-') || selector.includes('.')) {\n // '*' is required as a workaround for Emotion issue (https://github.com/emotion-js/emotion/issues/2836)\n selector = `*:where(${selector.replace(/\\s*&$/, '')}) &`;\n }\n return {\n [selector]: styles\n };\n }\n if (theme.palette.mode === key) {\n return styles;\n }\n return {};\n}", "import deepmerge from '@mui/utils/deepmerge';\nimport createBreakpoints from \"../createBreakpoints/createBreakpoints.js\";\nimport cssContainerQueries from \"../cssContainerQueries/index.js\";\nimport shape from \"./shape.js\";\nimport createSpacing from \"./createSpacing.js\";\nimport styleFunctionSx from \"../styleFunctionSx/styleFunctionSx.js\";\nimport defaultSxConfig from \"../styleFunctionSx/defaultSxConfig.js\";\nimport applyStyles from \"./applyStyles.js\";\nfunction createTheme(options = {}, ...args) {\n const {\n breakpoints: breakpointsInput = {},\n palette: paletteInput = {},\n spacing: spacingInput,\n shape: shapeInput = {},\n ...other\n } = options;\n const breakpoints = createBreakpoints(breakpointsInput);\n const spacing = createSpacing(spacingInput);\n let muiTheme = deepmerge({\n breakpoints,\n direction: 'ltr',\n components: {},\n // Inject component definitions.\n palette: {\n mode: 'light',\n ...paletteInput\n },\n spacing,\n shape: {\n ...shape,\n ...shapeInput\n }\n }, other);\n muiTheme = cssContainerQueries(muiTheme);\n muiTheme.applyStyles = applyStyles;\n muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);\n muiTheme.unstable_sxConfig = {\n ...defaultSxConfig,\n ...other?.unstable_sxConfig\n };\n muiTheme.unstable_sx = function sx(props) {\n return styleFunctionSx({\n sx: props,\n theme: this\n });\n };\n return muiTheme;\n}\nexport default createTheme;", "'use client';\n\nimport * as React from 'react';\nimport { ThemeContext } from '@mui/styled-engine';\nfunction isObjectEmpty(obj) {\n return Object.keys(obj).length === 0;\n}\nfunction useTheme(defaultTheme = null) {\n const contextTheme = React.useContext(ThemeContext);\n return !contextTheme || isObjectEmpty(contextTheme) ? defaultTheme : contextTheme;\n}\nexport default useTheme;", "'use client';\n\nimport createTheme from \"../createTheme/index.js\";\nimport useThemeWithoutDefault from \"../useThemeWithoutDefault/index.js\";\nexport const systemDefaultTheme = createTheme();\nfunction useTheme(defaultTheme = systemDefaultTheme) {\n return useThemeWithoutDefault(defaultTheme);\n}\nexport default useTheme;", "import style from \"../style/index.js\";\nimport compose from \"../compose/index.js\";\nexport const displayPrint = style({\n prop: 'displayPrint',\n cssProperty: false,\n transform: value => ({\n '@media print': {\n display: value\n }\n })\n});\nexport const displayRaw = style({\n prop: 'display'\n});\nexport const overflow = style({\n prop: 'overflow'\n});\nexport const textOverflow = style({\n prop: 'textOverflow'\n});\nexport const visibility = style({\n prop: 'visibility'\n});\nexport const whiteSpace = style({\n prop: 'whiteSpace'\n});\nexport default compose(displayPrint, displayRaw, overflow, textOverflow, visibility, whiteSpace);", "import style from \"../style/index.js\";\nimport compose from \"../compose/index.js\";\nexport const flexBasis = style({\n prop: 'flexBasis'\n});\nexport const flexDirection = style({\n prop: 'flexDirection'\n});\nexport const flexWrap = style({\n prop: 'flexWrap'\n});\nexport const justifyContent = style({\n prop: 'justifyContent'\n});\nexport const alignItems = style({\n prop: 'alignItems'\n});\nexport const alignContent = style({\n prop: 'alignContent'\n});\nexport const order = style({\n prop: 'order'\n});\nexport const flex = style({\n prop: 'flex'\n});\nexport const flexGrow = style({\n prop: 'flexGrow'\n});\nexport const flexShrink = style({\n prop: 'flexShrink'\n});\nexport const alignSelf = style({\n prop: 'alignSelf'\n});\nexport const justifyItems = style({\n prop: 'justifyItems'\n});\nexport const justifySelf = style({\n prop: 'justifySelf'\n});\nconst flexbox = compose(flexBasis, flexDirection, flexWrap, justifyContent, alignItems, alignContent, order, flex, flexGrow, flexShrink, alignSelf, justifyItems, justifySelf);\nexport default flexbox;", "import style from \"../style/index.js\";\nimport compose from \"../compose/index.js\";\nexport const position = style({\n prop: 'position'\n});\nexport const zIndex = style({\n prop: 'zIndex',\n themeKey: 'zIndex'\n});\nexport const top = style({\n prop: 'top'\n});\nexport const right = style({\n prop: 'right'\n});\nexport const bottom = style({\n prop: 'bottom'\n});\nexport const left = style({\n prop: 'left'\n});\nexport default compose(position, zIndex, top, right, bottom, left);", "import style from \"../style/index.js\";\nconst boxShadow = style({\n prop: 'boxShadow',\n themeKey: 'shadows'\n});\nexport default boxShadow;", "import style from \"../style/index.js\";\nimport compose from \"../compose/index.js\";\nexport const fontFamily = style({\n prop: 'fontFamily',\n themeKey: 'typography'\n});\nexport const fontSize = style({\n prop: 'fontSize',\n themeKey: 'typography'\n});\nexport const fontStyle = style({\n prop: 'fontStyle',\n themeKey: 'typography'\n});\nexport const fontWeight = style({\n prop: 'fontWeight',\n themeKey: 'typography'\n});\nexport const letterSpacing = style({\n prop: 'letterSpacing'\n});\nexport const textTransform = style({\n prop: 'textTransform'\n});\nexport const lineHeight = style({\n prop: 'lineHeight'\n});\nexport const textAlign = style({\n prop: 'textAlign'\n});\nexport const typographyVariant = style({\n prop: 'typography',\n cssProperty: false,\n themeKey: 'typography'\n});\nconst typography = compose(typographyVariant, fontFamily, fontSize, fontStyle, fontWeight, letterSpacing, lineHeight, textAlign, textTransform);\nexport default typography;", "import borders from \"../borders/index.js\";\nimport display from \"../display/index.js\";\nimport flexbox from \"../flexbox/index.js\";\nimport grid from \"../cssGrid/index.js\";\nimport positions from \"../positions/index.js\";\nimport palette from \"../palette/index.js\";\nimport shadows from \"../shadows/index.js\";\nimport sizing from \"../sizing/index.js\";\nimport spacing from \"../spacing/index.js\";\nimport typography from \"../typography/index.js\";\nconst filterPropsMapping = {\n borders: borders.filterProps,\n display: display.filterProps,\n flexbox: flexbox.filterProps,\n grid: grid.filterProps,\n positions: positions.filterProps,\n palette: palette.filterProps,\n shadows: shadows.filterProps,\n sizing: sizing.filterProps,\n spacing: spacing.filterProps,\n typography: typography.filterProps\n};\nexport const styleFunctionMapping = {\n borders,\n display,\n flexbox,\n grid,\n positions,\n palette,\n shadows,\n sizing,\n spacing,\n typography\n};\nexport const propToStyleFunction = Object.keys(filterPropsMapping).reduce((acc, styleFnName) => {\n filterPropsMapping[styleFnName].forEach(propName => {\n acc[propName] = styleFunctionMapping[styleFnName];\n });\n return acc;\n}, {});\nfunction getThemeValue(prop, value, theme) {\n const inputProps = {\n [prop]: value,\n theme\n };\n const styleFunction = propToStyleFunction[prop];\n return styleFunction ? styleFunction(inputProps) : {\n [prop]: value\n };\n}\nexport default getThemeValue;", "'use client';\n\nimport PropTypes from 'prop-types';\nimport ClassNameGenerator from '@mui/utils/ClassNameGenerator';\nimport createBox from \"../createBox/index.js\";\nimport boxClasses from \"./boxClasses.js\";\nconst Box = createBox({\n defaultClassName: boxClasses.root,\n generateClassName: ClassNameGenerator.generate\n});\nprocess.env.NODE_ENV !== \"production\" ? Box.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * @ignore\n */\n children: PropTypes.node,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default Box;", "'use client';\n\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport styled from '@mui/styled-engine';\nimport styleFunctionSx, { extendSxProp } from \"../styleFunctionSx/index.js\";\nimport useTheme from \"../useTheme/index.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default function createBox(options = {}) {\n const {\n themeId,\n defaultTheme,\n defaultClassName = 'MuiBox-root',\n generateClassName\n } = options;\n const BoxRoot = styled('div', {\n shouldForwardProp: prop => prop !== 'theme' && prop !== 'sx' && prop !== 'as'\n })(styleFunctionSx);\n const Box = /*#__PURE__*/React.forwardRef(function Box(inProps, ref) {\n const theme = useTheme(defaultTheme);\n const {\n className,\n component = 'div',\n ...other\n } = extendSxProp(inProps);\n return /*#__PURE__*/_jsx(BoxRoot, {\n as: component,\n ref: ref,\n className: clsx(className, generateClassName ? generateClassName(defaultClassName) : defaultClassName),\n theme: themeId ? theme[themeId] || theme : theme,\n ...other\n });\n });\n return Box;\n}", "import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nconst boxClasses = generateUtilityClasses('MuiBox', ['root']);\nexport default boxClasses;", "import { internal_serializeStyles } from '@mui/styled-engine';\nexport default function preprocessStyles(input) {\n const {\n variants,\n ...style\n } = input;\n const result = {\n variants,\n style: internal_serializeStyles(style),\n isProcessed: true\n };\n\n // Not supported on styled-components\n if (result.style === style) {\n return result;\n }\n if (variants) {\n variants.forEach(variant => {\n if (typeof variant.style !== 'function') {\n variant.style = internal_serializeStyles(variant.style);\n }\n });\n }\n return result;\n}", "import styledEngineStyled, { internal_mutateStyles as mutateStyles } from '@mui/styled-engine';\nimport { isPlainObject } from '@mui/utils/deepmerge';\nimport capitalize from '@mui/utils/capitalize';\nimport getDisplayName from '@mui/utils/getDisplayName';\nimport createTheme from \"../createTheme/index.js\";\nimport styleFunctionSx from \"../styleFunctionSx/index.js\";\nimport preprocessStyles from \"../preprocessStyles.js\";\n\n/* eslint-disable no-underscore-dangle */\n/* eslint-disable no-labels */\n/* eslint-disable no-lone-blocks */\n\nexport const systemDefaultTheme = createTheme();\n\n// Update /system/styled/#api in case if this changes\nexport function shouldForwardProp(prop) {\n return prop !== 'ownerState' && prop !== 'theme' && prop !== 'sx' && prop !== 'as';\n}\nfunction defaultOverridesResolver(slot) {\n if (!slot) {\n return null;\n }\n return (_props, styles) => styles[slot];\n}\nfunction attachTheme(props, themeId, defaultTheme) {\n props.theme = isObjectEmpty(props.theme) ? defaultTheme : props.theme[themeId] || props.theme;\n}\nfunction processStyle(props, style) {\n /*\n * Style types:\n * - null/undefined\n * - string\n * - CSS style object: { [cssKey]: [cssValue], variants }\n * - Processed style object: { style, variants, isProcessed: true }\n * - Array of any of the above\n */\n\n const resolvedStyle = typeof style === 'function' ? style(props) : style;\n if (Array.isArray(resolvedStyle)) {\n return resolvedStyle.flatMap(subStyle => processStyle(props, subStyle));\n }\n if (Array.isArray(resolvedStyle?.variants)) {\n let rootStyle;\n if (resolvedStyle.isProcessed) {\n rootStyle = resolvedStyle.style;\n } else {\n const {\n variants,\n ...otherStyles\n } = resolvedStyle;\n rootStyle = otherStyles;\n }\n return processStyleVariants(props, resolvedStyle.variants, [rootStyle]);\n }\n if (resolvedStyle?.isProcessed) {\n return resolvedStyle.style;\n }\n return resolvedStyle;\n}\nfunction processStyleVariants(props, variants, results = []) {\n let mergedState; // We might not need it, initialized lazily\n\n variantLoop: for (let i = 0; i < variants.length; i += 1) {\n const variant = variants[i];\n if (typeof variant.props === 'function') {\n mergedState ??= {\n ...props,\n ...props.ownerState,\n ownerState: props.ownerState\n };\n if (!variant.props(mergedState)) {\n continue;\n }\n } else {\n for (const key in variant.props) {\n if (props[key] !== variant.props[key] && props.ownerState?.[key] !== variant.props[key]) {\n continue variantLoop;\n }\n }\n }\n if (typeof variant.style === 'function') {\n mergedState ??= {\n ...props,\n ...props.ownerState,\n ownerState: props.ownerState\n };\n results.push(variant.style(mergedState));\n } else {\n results.push(variant.style);\n }\n }\n return results;\n}\nexport default function createStyled(input = {}) {\n const {\n themeId,\n defaultTheme = systemDefaultTheme,\n rootShouldForwardProp = shouldForwardProp,\n slotShouldForwardProp = shouldForwardProp\n } = input;\n function styleAttachTheme(props) {\n attachTheme(props, themeId, defaultTheme);\n }\n const styled = (tag, inputOptions = {}) => {\n // If `tag` is already a styled component, filter out the `sx` style function\n // to prevent unnecessary styles generated by the composite components.\n mutateStyles(tag, styles => styles.filter(style => style !== styleFunctionSx));\n const {\n name: componentName,\n slot: componentSlot,\n skipVariantsResolver: inputSkipVariantsResolver,\n skipSx: inputSkipSx,\n // TODO v6: remove `lowercaseFirstLetter()` in the next major release\n // For more details: https://github.com/mui/material-ui/pull/37908\n overridesResolver = defaultOverridesResolver(lowercaseFirstLetter(componentSlot)),\n ...options\n } = inputOptions;\n\n // if skipVariantsResolver option is defined, take the value, otherwise, true for root and false for other slots.\n const skipVariantsResolver = inputSkipVariantsResolver !== undefined ? inputSkipVariantsResolver :\n // TODO v6: remove `Root` in the next major release\n // For more details: https://github.com/mui/material-ui/pull/37908\n componentSlot && componentSlot !== 'Root' && componentSlot !== 'root' || false;\n const skipSx = inputSkipSx || false;\n let shouldForwardPropOption = shouldForwardProp;\n\n // TODO v6: remove `Root` in the next major release\n // For more details: https://github.com/mui/material-ui/pull/37908\n if (componentSlot === 'Root' || componentSlot === 'root') {\n shouldForwardPropOption = rootShouldForwardProp;\n } else if (componentSlot) {\n // any other slot specified\n shouldForwardPropOption = slotShouldForwardProp;\n } else if (isStringTag(tag)) {\n // for string (html) tag, preserve the behavior in emotion & styled-components.\n shouldForwardPropOption = undefined;\n }\n const defaultStyledResolver = styledEngineStyled(tag, {\n shouldForwardProp: shouldForwardPropOption,\n label: generateStyledLabel(componentName, componentSlot),\n ...options\n });\n const transformStyle = style => {\n // On the server Emotion doesn't use React.forwardRef for creating components, so the created\n // component stays as a function. This condition makes sure that we do not interpolate functions\n // which are basically components used as a selectors.\n if (typeof style === 'function' && style.__emotion_real !== style) {\n return function styleFunctionProcessor(props) {\n return processStyle(props, style);\n };\n }\n if (isPlainObject(style)) {\n const serialized = preprocessStyles(style);\n if (!serialized.variants) {\n return serialized.style;\n }\n return function styleObjectProcessor(props) {\n return processStyle(props, serialized);\n };\n }\n return style;\n };\n const muiStyledResolver = (...expressionsInput) => {\n const expressionsHead = [];\n const expressionsBody = expressionsInput.map(transformStyle);\n const expressionsTail = [];\n\n // Preprocess `props` to set the scoped theme value.\n // This must run before any other expression.\n expressionsHead.push(styleAttachTheme);\n if (componentName && overridesResolver) {\n expressionsTail.push(function styleThemeOverrides(props) {\n const theme = props.theme;\n const styleOverrides = theme.components?.[componentName]?.styleOverrides;\n if (!styleOverrides) {\n return null;\n }\n const resolvedStyleOverrides = {};\n\n // TODO: v7 remove iteration and use `resolveStyleArg(styleOverrides[slot])` directly\n // eslint-disable-next-line guard-for-in\n for (const slotKey in styleOverrides) {\n resolvedStyleOverrides[slotKey] = processStyle(props, styleOverrides[slotKey]);\n }\n return overridesResolver(props, resolvedStyleOverrides);\n });\n }\n if (componentName && !skipVariantsResolver) {\n expressionsTail.push(function styleThemeVariants(props) {\n const theme = props.theme;\n const themeVariants = theme?.components?.[componentName]?.variants;\n if (!themeVariants) {\n return null;\n }\n return processStyleVariants(props, themeVariants);\n });\n }\n if (!skipSx) {\n expressionsTail.push(styleFunctionSx);\n }\n\n // This function can be called as a tagged template, so the first argument would contain\n // CSS `string[]` values.\n if (Array.isArray(expressionsBody[0])) {\n const inputStrings = expressionsBody.shift();\n\n // We need to add placeholders in the tagged template for the custom functions we have\n // possibly added (attachTheme, overrides, variants, and sx).\n const placeholdersHead = new Array(expressionsHead.length).fill('');\n const placeholdersTail = new Array(expressionsTail.length).fill('');\n let outputStrings;\n // prettier-ignore\n {\n outputStrings = [...placeholdersHead, ...inputStrings, ...placeholdersTail];\n outputStrings.raw = [...placeholdersHead, ...inputStrings.raw, ...placeholdersTail];\n }\n\n // The only case where we put something before `attachTheme`\n expressionsHead.unshift(outputStrings);\n }\n const expressions = [...expressionsHead, ...expressionsBody, ...expressionsTail];\n const Component = defaultStyledResolver(...expressions);\n if (tag.muiName) {\n Component.muiName = tag.muiName;\n }\n if (process.env.NODE_ENV !== 'production') {\n Component.displayName = generateDisplayName(componentName, componentSlot, tag);\n }\n return Component;\n };\n if (defaultStyledResolver.withConfig) {\n muiStyledResolver.withConfig = defaultStyledResolver.withConfig;\n }\n return muiStyledResolver;\n };\n return styled;\n}\nfunction generateDisplayName(componentName, componentSlot, tag) {\n if (componentName) {\n return `${componentName}${capitalize(componentSlot || '')}`;\n }\n return `Styled(${getDisplayName(tag)})`;\n}\nfunction generateStyledLabel(componentName, componentSlot) {\n let label;\n if (process.env.NODE_ENV !== 'production') {\n if (componentName) {\n // TODO v6: remove `lowercaseFirstLetter()` in the next major release\n // For more details: https://github.com/mui/material-ui/pull/37908\n label = `${componentName}-${lowercaseFirstLetter(componentSlot || 'Root')}`;\n }\n }\n return label;\n}\nfunction isObjectEmpty(object) {\n // eslint-disable-next-line\n for (const _ in object) {\n return false;\n }\n return true;\n}\n\n// https://github.com/emotion-js/emotion/blob/26ded6109fcd8ca9875cc2ce4564fee678a3f3c5/packages/styled/src/utils.js#L40\nfunction isStringTag(tag) {\n return typeof tag === 'string' &&\n // 96 is one less than the char code\n // for \"a\" so this is checking that\n // it's a lowercase character\n tag.charCodeAt(0) > 96;\n}\nfunction lowercaseFirstLetter(string) {\n if (!string) {\n return string;\n }\n return string.charAt(0).toLowerCase() + string.slice(1);\n}", "import createStyled from \"../createStyled/index.js\";\nconst styled = createStyled();\nexport default styled;", "import resolveProps from '@mui/utils/resolveProps';\nexport default function getThemeProps(params) {\n const {\n theme,\n name,\n props\n } = params;\n if (!theme || !theme.components || !theme.components[name] || !theme.components[name].defaultProps) {\n return props;\n }\n return resolveProps(theme.components[name].defaultProps, props);\n}", "'use client';\n\nimport getThemeProps from \"./getThemeProps.js\";\nimport useTheme from \"../useTheme/index.js\";\nexport default function useThemeProps({\n props,\n name,\n defaultTheme,\n themeId\n}) {\n let theme = useTheme(defaultTheme);\n if (themeId) {\n theme = theme[themeId] || theme;\n }\n return getThemeProps({\n theme,\n name,\n props\n });\n}", "'use client';\n\nimport * as React from 'react';\nimport useEnhancedEffect from '@mui/utils/useEnhancedEffect';\nimport { getThemeProps } from \"../useThemeProps/index.js\";\nimport useTheme from \"../useThemeWithoutDefault/index.js\";\n// TODO React 17: Remove `useMediaQueryOld` once React 17 support is removed\nfunction useMediaQueryOld(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) {\n const [match, setMatch] = React.useState(() => {\n if (noSsr && matchMedia) {\n return matchMedia(query).matches;\n }\n if (ssrMatchMedia) {\n return ssrMatchMedia(query).matches;\n }\n\n // Once the component is mounted, we rely on the\n // event listeners to return the correct matches value.\n return defaultMatches;\n });\n useEnhancedEffect(() => {\n if (!matchMedia) {\n return undefined;\n }\n const queryList = matchMedia(query);\n const updateMatch = () => {\n setMatch(queryList.matches);\n };\n updateMatch();\n queryList.addEventListener('change', updateMatch);\n return () => {\n queryList.removeEventListener('change', updateMatch);\n };\n }, [query, matchMedia]);\n return match;\n}\n\n// See https://github.com/mui/material-ui/issues/41190#issuecomment-2040873379 for why\nconst safeReact = {\n ...React\n};\nconst maybeReactUseSyncExternalStore = safeReact.useSyncExternalStore;\nfunction useMediaQueryNew(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) {\n const getDefaultSnapshot = React.useCallback(() => defaultMatches, [defaultMatches]);\n const getServerSnapshot = React.useMemo(() => {\n if (noSsr && matchMedia) {\n return () => matchMedia(query).matches;\n }\n if (ssrMatchMedia !== null) {\n const {\n matches\n } = ssrMatchMedia(query);\n return () => matches;\n }\n return getDefaultSnapshot;\n }, [getDefaultSnapshot, query, ssrMatchMedia, noSsr, matchMedia]);\n const [getSnapshot, subscribe] = React.useMemo(() => {\n if (matchMedia === null) {\n return [getDefaultSnapshot, () => () => {}];\n }\n const mediaQueryList = matchMedia(query);\n return [() => mediaQueryList.matches, notify => {\n mediaQueryList.addEventListener('change', notify);\n return () => {\n mediaQueryList.removeEventListener('change', notify);\n };\n }];\n }, [getDefaultSnapshot, matchMedia, query]);\n const match = maybeReactUseSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n return match;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function unstable_createUseMediaQuery(params = {}) {\n const {\n themeId\n } = params;\n return function useMediaQuery(queryInput, options = {}) {\n let theme = useTheme();\n if (theme && themeId) {\n theme = theme[themeId] || theme;\n }\n // Wait for jsdom to support the match media feature.\n // All the browsers MUI support have this built-in.\n // This defensive check is here for simplicity.\n // Most of the time, the match media logic isn't central to people tests.\n const supportMatchMedia = typeof window !== 'undefined' && typeof window.matchMedia !== 'undefined';\n const {\n defaultMatches = false,\n matchMedia = supportMatchMedia ? window.matchMedia : null,\n ssrMatchMedia = null,\n noSsr = false\n } = getThemeProps({\n name: 'MuiUseMediaQuery',\n props: options,\n theme\n });\n if (process.env.NODE_ENV !== 'production') {\n if (typeof queryInput === 'function' && theme === null) {\n console.error(['MUI: The `query` argument provided is invalid.', 'You are providing a function without a theme in the context.', 'One of the parent elements needs to use a ThemeProvider.'].join('\\n'));\n }\n }\n let query = typeof queryInput === 'function' ? queryInput(theme) : queryInput;\n query = query.replace(/^@media( ?)/m, '');\n const useMediaQueryImplementation = maybeReactUseSyncExternalStore !== undefined ? useMediaQueryNew : useMediaQueryOld;\n const match = useMediaQueryImplementation(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr);\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useDebugValue({\n query,\n match\n });\n }\n return match;\n };\n}\nconst useMediaQuery = unstable_createUseMediaQuery();\nexport default useMediaQuery;", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { ThemeProvider as MuiThemeProvider, useTheme as usePrivateTheme } from '@mui/private-theming';\nimport exactProp from '@mui/utils/exactProp';\nimport { ThemeContext as StyledEngineThemeContext } from '@mui/styled-engine';\nimport useThemeWithoutDefault from \"../useThemeWithoutDefault/index.js\";\nimport RtlProvider from \"../RtlProvider/index.js\";\nimport DefaultPropsProvider from \"../DefaultPropsProvider/index.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst EMPTY_THEME = {};\nfunction useThemeScoping(themeId, upperTheme, localTheme, isPrivate = false) {\n return React.useMemo(() => {\n const resolvedTheme = themeId ? upperTheme[themeId] || upperTheme : upperTheme;\n if (typeof localTheme === 'function') {\n const mergedTheme = localTheme(resolvedTheme);\n const result = themeId ? {\n ...upperTheme,\n [themeId]: mergedTheme\n } : mergedTheme;\n // must return a function for the private theme to NOT merge with the upper theme.\n // see the test case \"use provided theme from a callback\" in ThemeProvider.test.js\n if (isPrivate) {\n return () => result;\n }\n return result;\n }\n return themeId ? {\n ...upperTheme,\n [themeId]: localTheme\n } : {\n ...upperTheme,\n ...localTheme\n };\n }, [themeId, upperTheme, localTheme, isPrivate]);\n}\n\n/**\n * This component makes the `theme` available down the React tree.\n * It should preferably be used at **the root of your component tree**.\n *\n * // existing use case\n * // theme scoping\n */\nfunction ThemeProvider(props) {\n const {\n children,\n theme: localTheme,\n themeId\n } = props;\n const upperTheme = useThemeWithoutDefault(EMPTY_THEME);\n const upperPrivateTheme = usePrivateTheme() || EMPTY_THEME;\n if (process.env.NODE_ENV !== 'production') {\n if (upperTheme === null && typeof localTheme === 'function' || themeId && upperTheme && !upperTheme[themeId] && typeof localTheme === 'function') {\n console.error(['MUI: You are providing a theme function prop to the ThemeProvider component:', ' outerTheme} />', '', 'However, no outer theme is present.', 'Make sure a theme is already injected higher in the React tree ' + 'or provide a theme object.'].join('\\n'));\n }\n }\n const engineTheme = useThemeScoping(themeId, upperTheme, localTheme);\n const privateTheme = useThemeScoping(themeId, upperPrivateTheme, localTheme, true);\n const rtlValue = (themeId ? engineTheme[themeId] : engineTheme).direction === 'rtl';\n return /*#__PURE__*/_jsx(MuiThemeProvider, {\n theme: privateTheme,\n children: /*#__PURE__*/_jsx(StyledEngineThemeContext.Provider, {\n value: engineTheme,\n children: /*#__PURE__*/_jsx(RtlProvider, {\n value: rtlValue,\n children: /*#__PURE__*/_jsx(DefaultPropsProvider, {\n value: themeId ? engineTheme[themeId].components : engineTheme.components,\n children: children\n })\n })\n })\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? ThemeProvider.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * Your component tree.\n */\n children: PropTypes.node,\n /**\n * A theme object. You can provide a function to extend the outer theme.\n */\n theme: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).isRequired,\n /**\n * The design system's unique id for getting the corresponded theme when there are multiple design systems.\n */\n themeId: PropTypes.string\n} : void 0;\nif (process.env.NODE_ENV !== 'production') {\n process.env.NODE_ENV !== \"production\" ? ThemeProvider.propTypes = exactProp(ThemeProvider.propTypes) : void 0;\n}\nexport default ThemeProvider;", "import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { exactProp } from '@mui/utils';\nimport ThemeContext from \"../useTheme/ThemeContext.js\";\nimport useTheme from \"../useTheme/index.js\";\nimport nested from \"./nested.js\";\n\n// To support composition of theme.\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction mergeOuterLocalTheme(outerTheme, localTheme) {\n if (typeof localTheme === 'function') {\n const mergedTheme = localTheme(outerTheme);\n if (process.env.NODE_ENV !== 'production') {\n if (!mergedTheme) {\n console.error(['MUI: You should return an object from your theme function, i.e.', ' ({})} />'].join('\\n'));\n }\n }\n return mergedTheme;\n }\n return {\n ...outerTheme,\n ...localTheme\n };\n}\n\n/**\n * This component takes a `theme` prop.\n * It makes the `theme` available down the React tree thanks to React context.\n * This component should preferably be used at **the root of your component tree**.\n */\nfunction ThemeProvider(props) {\n const {\n children,\n theme: localTheme\n } = props;\n const outerTheme = useTheme();\n if (process.env.NODE_ENV !== 'production') {\n if (outerTheme === null && typeof localTheme === 'function') {\n console.error(['MUI: You are providing a theme function prop to the ThemeProvider component:', ' outerTheme} />', '', 'However, no outer theme is present.', 'Make sure a theme is already injected higher in the React tree ' + 'or provide a theme object.'].join('\\n'));\n }\n }\n const theme = React.useMemo(() => {\n const output = outerTheme === null ? {\n ...localTheme\n } : mergeOuterLocalTheme(outerTheme, localTheme);\n if (output != null) {\n output[nested] = outerTheme !== null;\n }\n return output;\n }, [localTheme, outerTheme]);\n return /*#__PURE__*/_jsx(ThemeContext.Provider, {\n value: theme,\n children: children\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? ThemeProvider.propTypes = {\n /**\n * Your component tree.\n */\n children: PropTypes.node,\n /**\n * A theme object. You can provide a function to extend the outer theme.\n */\n theme: PropTypes.oneOfType([PropTypes.object, PropTypes.func]).isRequired\n} : void 0;\nif (process.env.NODE_ENV !== 'production') {\n process.env.NODE_ENV !== \"production\" ? ThemeProvider.propTypes = exactProp(ThemeProvider.propTypes) : void 0;\n}\nexport default ThemeProvider;", "'use client';\n\nimport * as React from 'react';\nconst ThemeContext = /*#__PURE__*/React.createContext(null);\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'ThemeContext';\n}\nexport default ThemeContext;", "import * as React from 'react';\nimport ThemeContext from \"./ThemeContext.js\";\nexport default function useTheme() {\n const theme = React.useContext(ThemeContext);\n if (process.env.NODE_ENV !== 'production') {\n // TODO: uncomment once we enable eslint-plugin-react-compiler eslint-disable-next-line react-compiler/react-compiler\n // eslint-disable-next-line react-hooks/rules-of-hooks -- It's not required to run React.useDebugValue in production\n React.useDebugValue(theme);\n }\n return theme;\n}", "const hasSymbol = typeof Symbol === 'function' && Symbol.for;\nexport default hasSymbol ? Symbol.for('mui.nested') : '__THEME_NESTED__';", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport resolveProps from '@mui/utils/resolveProps';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst PropsContext = /*#__PURE__*/React.createContext(undefined);\nfunction DefaultPropsProvider({\n value,\n children\n}) {\n return /*#__PURE__*/_jsx(PropsContext.Provider, {\n value: value,\n children: children\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? DefaultPropsProvider.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * @ignore\n */\n children: PropTypes.node,\n /**\n * @ignore\n */\n value: PropTypes.object\n} : void 0;\nfunction getThemeProps(params) {\n const {\n theme,\n name,\n props\n } = params;\n if (!theme || !theme.components || !theme.components[name]) {\n return props;\n }\n const config = theme.components[name];\n if (config.defaultProps) {\n // compatible with v5 signature\n return resolveProps(config.defaultProps, props);\n }\n if (!config.styleOverrides && !config.variants) {\n // v6 signature, no property 'defaultProps'\n return resolveProps(config, props);\n }\n return props;\n}\nexport function useDefaultProps({\n props,\n name\n}) {\n const ctx = React.useContext(PropsContext);\n return getThemeProps({\n props,\n name,\n theme: {\n components: ctx\n }\n });\n}\nexport default DefaultPropsProvider;", "import preprocessStyles from \"./preprocessStyles.js\";\n\n/* eslint-disable @typescript-eslint/naming-convention */\n\n// We need to pass an argument as `{ theme }` for PigmentCSS, but we don't want to\n// allocate more objects.\nconst arg = {\n theme: undefined\n};\n\n/**\n * Memoize style function on theme.\n * Intended to be used in styled() calls that only need access to the theme.\n */\nexport default function unstable_memoTheme(styleFn) {\n let lastValue;\n let lastTheme;\n return function styleMemoized(props) {\n let value = lastValue;\n if (value === undefined || props.theme !== lastTheme) {\n arg.theme = props.theme;\n value = preprocessStyles(styleFn(arg));\n lastValue = value;\n lastTheme = props.theme;\n }\n return value;\n };\n}", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { GlobalStyles } from '@mui/styled-engine';\nimport { useTheme as muiUseTheme } from '@mui/private-theming';\nimport useEnhancedEffect from '@mui/utils/useEnhancedEffect';\nimport ThemeProvider from \"../ThemeProvider/index.js\";\nimport InitColorSchemeScript, { DEFAULT_COLOR_SCHEME_STORAGE_KEY, DEFAULT_MODE_STORAGE_KEY } from \"../InitColorSchemeScript/InitColorSchemeScript.js\";\nimport useCurrentColorScheme from \"./useCurrentColorScheme.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport const DISABLE_CSS_TRANSITION = '*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}';\nexport default function createCssVarsProvider(options) {\n const {\n themeId,\n /**\n * This `theme` object needs to follow a certain structure to\n * be used correctly by the finel `CssVarsProvider`. It should have a\n * `colorSchemes` key with the light and dark (and any other) palette.\n * It should also ideally have a vars object created using `prepareCssVars`.\n */\n theme: defaultTheme = {},\n modeStorageKey: defaultModeStorageKey = DEFAULT_MODE_STORAGE_KEY,\n colorSchemeStorageKey: defaultColorSchemeStorageKey = DEFAULT_COLOR_SCHEME_STORAGE_KEY,\n disableTransitionOnChange: designSystemTransitionOnChange = false,\n defaultColorScheme,\n resolveTheme\n } = options;\n const defaultContext = {\n allColorSchemes: [],\n colorScheme: undefined,\n darkColorScheme: undefined,\n lightColorScheme: undefined,\n mode: undefined,\n setColorScheme: () => {},\n setMode: () => {},\n systemMode: undefined\n };\n const ColorSchemeContext = /*#__PURE__*/React.createContext(undefined);\n if (process.env.NODE_ENV !== 'production') {\n ColorSchemeContext.displayName = 'ColorSchemeContext';\n }\n const useColorScheme = () => React.useContext(ColorSchemeContext) || defaultContext;\n const defaultColorSchemes = {};\n const defaultComponents = {};\n function CssVarsProvider(props) {\n const {\n children,\n theme: themeProp,\n modeStorageKey = defaultModeStorageKey,\n colorSchemeStorageKey = defaultColorSchemeStorageKey,\n disableTransitionOnChange = designSystemTransitionOnChange,\n storageManager,\n storageWindow = typeof window === 'undefined' ? undefined : window,\n documentNode = typeof document === 'undefined' ? undefined : document,\n colorSchemeNode = typeof document === 'undefined' ? undefined : document.documentElement,\n disableNestedContext = false,\n disableStyleSheetGeneration = false,\n defaultMode: initialMode = 'system',\n forceThemeRerender = false,\n noSsr\n } = props;\n const hasMounted = React.useRef(false);\n const upperTheme = muiUseTheme();\n const ctx = React.useContext(ColorSchemeContext);\n const nested = !!ctx && !disableNestedContext;\n const initialTheme = React.useMemo(() => {\n if (themeProp) {\n return themeProp;\n }\n return typeof defaultTheme === 'function' ? defaultTheme() : defaultTheme;\n }, [themeProp]);\n const scopedTheme = initialTheme[themeId];\n const restThemeProp = scopedTheme || initialTheme;\n const {\n colorSchemes = defaultColorSchemes,\n components = defaultComponents,\n cssVarPrefix\n } = restThemeProp;\n const joinedColorSchemes = Object.keys(colorSchemes).filter(k => !!colorSchemes[k]).join(',');\n const allColorSchemes = React.useMemo(() => joinedColorSchemes.split(','), [joinedColorSchemes]);\n const defaultLightColorScheme = typeof defaultColorScheme === 'string' ? defaultColorScheme : defaultColorScheme.light;\n const defaultDarkColorScheme = typeof defaultColorScheme === 'string' ? defaultColorScheme : defaultColorScheme.dark;\n const defaultMode = colorSchemes[defaultLightColorScheme] && colorSchemes[defaultDarkColorScheme] ? initialMode : colorSchemes[restThemeProp.defaultColorScheme]?.palette?.mode || restThemeProp.palette?.mode;\n\n // 1. Get the data about the `mode`, `colorScheme`, and setter functions.\n const {\n mode: stateMode,\n setMode,\n systemMode,\n lightColorScheme,\n darkColorScheme,\n colorScheme: stateColorScheme,\n setColorScheme\n } = useCurrentColorScheme({\n supportedColorSchemes: allColorSchemes,\n defaultLightColorScheme,\n defaultDarkColorScheme,\n modeStorageKey,\n colorSchemeStorageKey,\n defaultMode,\n storageManager,\n storageWindow,\n noSsr\n });\n let mode = stateMode;\n let colorScheme = stateColorScheme;\n if (nested) {\n mode = ctx.mode;\n colorScheme = ctx.colorScheme;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (forceThemeRerender && !restThemeProp.vars) {\n console.warn(['MUI: The `forceThemeRerender` prop should only be used with CSS theme variables.', 'Note that it will slow down the app when changing between modes, so only do this when you cannot find a better solution.'].join('\\n'));\n }\n }\n\n // `colorScheme` is undefined on the server and hydration phase\n let calculatedColorScheme = colorScheme || restThemeProp.defaultColorScheme;\n if (restThemeProp.vars && !forceThemeRerender) {\n calculatedColorScheme = restThemeProp.defaultColorScheme;\n }\n const memoTheme = React.useMemo(() => {\n // 2. get the `vars` object that refers to the CSS custom properties\n const themeVars = restThemeProp.generateThemeVars?.() || restThemeProp.vars;\n\n // 3. Start composing the theme object\n const theme = {\n ...restThemeProp,\n components,\n colorSchemes,\n cssVarPrefix,\n vars: themeVars\n };\n if (typeof theme.generateSpacing === 'function') {\n theme.spacing = theme.generateSpacing();\n }\n\n // 4. Resolve the color scheme and merge it to the theme\n if (calculatedColorScheme) {\n const scheme = colorSchemes[calculatedColorScheme];\n if (scheme && typeof scheme === 'object') {\n // 4.1 Merge the selected color scheme to the theme\n Object.keys(scheme).forEach(schemeKey => {\n if (scheme[schemeKey] && typeof scheme[schemeKey] === 'object') {\n // shallow merge the 1st level structure of the theme.\n theme[schemeKey] = {\n ...theme[schemeKey],\n ...scheme[schemeKey]\n };\n } else {\n theme[schemeKey] = scheme[schemeKey];\n }\n });\n }\n }\n return resolveTheme ? resolveTheme(theme) : theme;\n }, [restThemeProp, calculatedColorScheme, components, colorSchemes, cssVarPrefix]);\n\n // 5. Declaring effects\n // 5.1 Updates the selector value to use the current color scheme which tells CSS to use the proper stylesheet.\n const colorSchemeSelector = restThemeProp.colorSchemeSelector;\n useEnhancedEffect(() => {\n if (colorScheme && colorSchemeNode && colorSchemeSelector && colorSchemeSelector !== 'media') {\n const selector = colorSchemeSelector;\n let rule = colorSchemeSelector;\n if (selector === 'class') {\n rule = `.%s`;\n }\n if (selector === 'data') {\n rule = `[data-%s]`;\n }\n if (selector?.startsWith('data-') && !selector.includes('%s')) {\n // 'data-mui-color-scheme' -> '[data-mui-color-scheme=\"%s\"]'\n rule = `[${selector}=\"%s\"]`;\n }\n if (rule.startsWith('.')) {\n colorSchemeNode.classList.remove(...allColorSchemes.map(scheme => rule.substring(1).replace('%s', scheme)));\n colorSchemeNode.classList.add(rule.substring(1).replace('%s', colorScheme));\n } else {\n const matches = rule.replace('%s', colorScheme).match(/\\[([^\\]]+)\\]/);\n if (matches) {\n const [attr, value] = matches[1].split('=');\n if (!value) {\n // for attributes like `data-theme-dark`, `data-theme-light`\n // remove all the existing data attributes before setting the new one\n allColorSchemes.forEach(scheme => {\n colorSchemeNode.removeAttribute(attr.replace(colorScheme, scheme));\n });\n }\n colorSchemeNode.setAttribute(attr, value ? value.replace(/\"|'/g, '') : '');\n } else {\n colorSchemeNode.setAttribute(rule, colorScheme);\n }\n }\n }\n }, [colorScheme, colorSchemeSelector, colorSchemeNode, allColorSchemes]);\n\n // 5.2 Remove the CSS transition when color scheme changes to create instant experience.\n // credit: https://github.com/pacocoursey/next-themes/blob/b5c2bad50de2d61ad7b52a9c5cdc801a78507d7a/index.tsx#L313\n React.useEffect(() => {\n let timer;\n if (disableTransitionOnChange && hasMounted.current && documentNode) {\n const css = documentNode.createElement('style');\n css.appendChild(documentNode.createTextNode(DISABLE_CSS_TRANSITION));\n documentNode.head.appendChild(css);\n\n // Force browser repaint\n (() => window.getComputedStyle(documentNode.body))();\n timer = setTimeout(() => {\n documentNode.head.removeChild(css);\n }, 1);\n }\n return () => {\n clearTimeout(timer);\n };\n }, [colorScheme, disableTransitionOnChange, documentNode]);\n React.useEffect(() => {\n hasMounted.current = true;\n return () => {\n hasMounted.current = false;\n };\n }, []);\n const contextValue = React.useMemo(() => ({\n allColorSchemes,\n colorScheme,\n darkColorScheme,\n lightColorScheme,\n mode,\n setColorScheme,\n setMode: process.env.NODE_ENV === 'production' ? setMode : newMode => {\n if (memoTheme.colorSchemeSelector === 'media') {\n console.error(['MUI: The `setMode` function has no effect if `colorSchemeSelector` is `media` (`media` is the default value).', 'To toggle the mode manually, please configure `colorSchemeSelector` to use a class or data attribute.', 'To learn more, visit https://mui.com/material-ui/customization/css-theme-variables/configuration/#toggling-dark-mode-manually'].join('\\n'));\n }\n setMode(newMode);\n },\n systemMode\n }), [allColorSchemes, colorScheme, darkColorScheme, lightColorScheme, mode, setColorScheme, setMode, systemMode, memoTheme.colorSchemeSelector]);\n let shouldGenerateStyleSheet = true;\n if (disableStyleSheetGeneration || restThemeProp.cssVariables === false || nested && upperTheme?.cssVarPrefix === cssVarPrefix) {\n shouldGenerateStyleSheet = false;\n }\n const element = /*#__PURE__*/_jsxs(React.Fragment, {\n children: [/*#__PURE__*/_jsx(ThemeProvider, {\n themeId: scopedTheme ? themeId : undefined,\n theme: memoTheme,\n children: children\n }), shouldGenerateStyleSheet && /*#__PURE__*/_jsx(GlobalStyles, {\n styles: memoTheme.generateStyleSheets?.() || []\n })]\n });\n if (nested) {\n return element;\n }\n return /*#__PURE__*/_jsx(ColorSchemeContext.Provider, {\n value: contextValue,\n children: element\n });\n }\n process.env.NODE_ENV !== \"production\" ? CssVarsProvider.propTypes = {\n /**\n * The component tree.\n */\n children: PropTypes.node,\n /**\n * The node used to attach the color-scheme attribute\n */\n colorSchemeNode: PropTypes.any,\n /**\n * localStorage key used to store `colorScheme`\n */\n colorSchemeStorageKey: PropTypes.string,\n /**\n * The default mode when the storage is empty,\n * require the theme to have `colorSchemes` with light and dark.\n */\n defaultMode: PropTypes.string,\n /**\n * If `true`, the provider creates its own context and generate stylesheet as if it is a root `CssVarsProvider`.\n */\n disableNestedContext: PropTypes.bool,\n /**\n * If `true`, the style sheet won't be generated.\n *\n * This is useful for controlling nested CssVarsProvider behavior.\n */\n disableStyleSheetGeneration: PropTypes.bool,\n /**\n * Disable CSS transitions when switching between modes or color schemes.\n */\n disableTransitionOnChange: PropTypes.bool,\n /**\n * The document to attach the attribute to.\n */\n documentNode: PropTypes.any,\n /**\n * If `true`, theme values are recalculated when the mode changes.\n */\n forceThemeRerender: PropTypes.bool,\n /**\n * The key in the local storage used to store current color scheme.\n */\n modeStorageKey: PropTypes.string,\n /**\n * If `true`, the mode will be the same value as the storage without an extra rerendering after the hydration.\n * You should use this option in conjuction with `InitColorSchemeScript` component.\n */\n noSsr: PropTypes.bool,\n /**\n * The storage manager to be used for storing the mode and color scheme\n * @default using `window.localStorage`\n */\n storageManager: PropTypes.func,\n /**\n * The window that attaches the 'storage' event listener.\n * @default window\n */\n storageWindow: PropTypes.any,\n /**\n * The calculated theme object that will be passed through context.\n */\n theme: PropTypes.object\n } : void 0;\n const defaultLightColorScheme = typeof defaultColorScheme === 'string' ? defaultColorScheme : defaultColorScheme.light;\n const defaultDarkColorScheme = typeof defaultColorScheme === 'string' ? defaultColorScheme : defaultColorScheme.dark;\n const getInitColorSchemeScript = params => InitColorSchemeScript({\n colorSchemeStorageKey: defaultColorSchemeStorageKey,\n defaultLightColorScheme,\n defaultDarkColorScheme,\n modeStorageKey: defaultModeStorageKey,\n ...params\n });\n return {\n CssVarsProvider,\n useColorScheme,\n getInitColorSchemeScript\n };\n}", "/**\n * Split this component for RSC import\n */\nimport * as React from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const DEFAULT_MODE_STORAGE_KEY = 'mode';\nexport const DEFAULT_COLOR_SCHEME_STORAGE_KEY = 'color-scheme';\nexport const DEFAULT_ATTRIBUTE = 'data-color-scheme';\nexport default function InitColorSchemeScript(options) {\n const {\n defaultMode = 'system',\n defaultLightColorScheme = 'light',\n defaultDarkColorScheme = 'dark',\n modeStorageKey = DEFAULT_MODE_STORAGE_KEY,\n colorSchemeStorageKey = DEFAULT_COLOR_SCHEME_STORAGE_KEY,\n attribute: initialAttribute = DEFAULT_ATTRIBUTE,\n colorSchemeNode = 'document.documentElement',\n nonce\n } = options || {};\n let setter = '';\n let attribute = initialAttribute;\n if (initialAttribute === 'class') {\n attribute = '.%s';\n }\n if (initialAttribute === 'data') {\n attribute = '[data-%s]';\n }\n if (attribute.startsWith('.')) {\n const selector = attribute.substring(1);\n setter += `${colorSchemeNode}.classList.remove('${selector}'.replace('%s', light), '${selector}'.replace('%s', dark));\n ${colorSchemeNode}.classList.add('${selector}'.replace('%s', colorScheme));`;\n }\n const matches = attribute.match(/\\[([^\\]]+)\\]/); // case [data-color-scheme=%s] or [data-color-scheme]\n if (matches) {\n const [attr, value] = matches[1].split('=');\n if (!value) {\n setter += `${colorSchemeNode}.removeAttribute('${attr}'.replace('%s', light));\n ${colorSchemeNode}.removeAttribute('${attr}'.replace('%s', dark));`;\n }\n setter += `\n ${colorSchemeNode}.setAttribute('${attr}'.replace('%s', colorScheme), ${value ? `${value}.replace('%s', colorScheme)` : '\"\"'});`;\n } else {\n setter += `${colorSchemeNode}.setAttribute('${attribute}', colorScheme);`;\n }\n return /*#__PURE__*/_jsx(\"script\", {\n suppressHydrationWarning: true,\n nonce: typeof window === 'undefined' ? nonce : ''\n // eslint-disable-next-line react/no-danger\n ,\n dangerouslySetInnerHTML: {\n __html: `(function() {\ntry {\n let colorScheme = '';\n const mode = localStorage.getItem('${modeStorageKey}') || '${defaultMode}';\n const dark = localStorage.getItem('${colorSchemeStorageKey}-dark') || '${defaultDarkColorScheme}';\n const light = localStorage.getItem('${colorSchemeStorageKey}-light') || '${defaultLightColorScheme}';\n if (mode === 'system') {\n // handle system mode\n const mql = window.matchMedia('(prefers-color-scheme: dark)');\n if (mql.matches) {\n colorScheme = dark\n } else {\n colorScheme = light\n }\n }\n if (mode === 'light') {\n colorScheme = light;\n }\n if (mode === 'dark') {\n colorScheme = dark;\n }\n if (colorScheme) {\n ${setter}\n }\n} catch(e){}})();`\n }\n }, \"mui-color-scheme-init\");\n}", "'use client';\n\nimport * as React from 'react';\nimport { DEFAULT_MODE_STORAGE_KEY, DEFAULT_COLOR_SCHEME_STORAGE_KEY } from \"../InitColorSchemeScript/InitColorSchemeScript.js\";\nimport localStorageManager from \"./localStorageManager.js\";\nfunction noop() {}\nexport function getSystemMode(mode) {\n if (typeof window !== 'undefined' && typeof window.matchMedia === 'function' && mode === 'system') {\n const mql = window.matchMedia('(prefers-color-scheme: dark)');\n if (mql.matches) {\n return 'dark';\n }\n return 'light';\n }\n return undefined;\n}\nfunction processState(state, callback) {\n if (state.mode === 'light' || state.mode === 'system' && state.systemMode === 'light') {\n return callback('light');\n }\n if (state.mode === 'dark' || state.mode === 'system' && state.systemMode === 'dark') {\n return callback('dark');\n }\n return undefined;\n}\nexport function getColorScheme(state) {\n return processState(state, mode => {\n if (mode === 'light') {\n return state.lightColorScheme;\n }\n if (mode === 'dark') {\n return state.darkColorScheme;\n }\n return undefined;\n });\n}\nexport default function useCurrentColorScheme(options) {\n const {\n defaultMode = 'light',\n defaultLightColorScheme,\n defaultDarkColorScheme,\n supportedColorSchemes = [],\n modeStorageKey = DEFAULT_MODE_STORAGE_KEY,\n colorSchemeStorageKey = DEFAULT_COLOR_SCHEME_STORAGE_KEY,\n storageWindow = typeof window === 'undefined' ? undefined : window,\n storageManager = localStorageManager,\n noSsr = false\n } = options;\n const joinedColorSchemes = supportedColorSchemes.join(',');\n const isMultiSchemes = supportedColorSchemes.length > 1;\n const modeStorage = React.useMemo(() => storageManager?.({\n key: modeStorageKey,\n storageWindow\n }), [storageManager, modeStorageKey, storageWindow]);\n const lightStorage = React.useMemo(() => storageManager?.({\n key: `${colorSchemeStorageKey}-light`,\n storageWindow\n }), [storageManager, colorSchemeStorageKey, storageWindow]);\n const darkStorage = React.useMemo(() => storageManager?.({\n key: `${colorSchemeStorageKey}-dark`,\n storageWindow\n }), [storageManager, colorSchemeStorageKey, storageWindow]);\n const [state, setState] = React.useState(() => {\n const initialMode = modeStorage?.get(defaultMode) || defaultMode;\n const lightColorScheme = lightStorage?.get(defaultLightColorScheme) || defaultLightColorScheme;\n const darkColorScheme = darkStorage?.get(defaultDarkColorScheme) || defaultDarkColorScheme;\n return {\n mode: initialMode,\n systemMode: getSystemMode(initialMode),\n lightColorScheme,\n darkColorScheme\n };\n });\n const [isClient, setIsClient] = React.useState(noSsr || !isMultiSchemes);\n React.useEffect(() => {\n setIsClient(true); // to rerender the component after hydration\n }, []);\n const colorScheme = getColorScheme(state);\n const setMode = React.useCallback(mode => {\n setState(currentState => {\n if (mode === currentState.mode) {\n // do nothing if mode does not change\n return currentState;\n }\n const newMode = mode ?? defaultMode;\n modeStorage?.set(newMode);\n return {\n ...currentState,\n mode: newMode,\n systemMode: getSystemMode(newMode)\n };\n });\n }, [modeStorage, defaultMode]);\n const setColorScheme = React.useCallback(value => {\n if (!value) {\n setState(currentState => {\n lightStorage?.set(defaultLightColorScheme);\n darkStorage?.set(defaultDarkColorScheme);\n return {\n ...currentState,\n lightColorScheme: defaultLightColorScheme,\n darkColorScheme: defaultDarkColorScheme\n };\n });\n } else if (typeof value === 'string') {\n if (value && !joinedColorSchemes.includes(value)) {\n console.error(`\\`${value}\\` does not exist in \\`theme.colorSchemes\\`.`);\n } else {\n setState(currentState => {\n const newState = {\n ...currentState\n };\n processState(currentState, mode => {\n if (mode === 'light') {\n lightStorage?.set(value);\n newState.lightColorScheme = value;\n }\n if (mode === 'dark') {\n darkStorage?.set(value);\n newState.darkColorScheme = value;\n }\n });\n return newState;\n });\n }\n } else {\n setState(currentState => {\n const newState = {\n ...currentState\n };\n const newLightColorScheme = value.light === null ? defaultLightColorScheme : value.light;\n const newDarkColorScheme = value.dark === null ? defaultDarkColorScheme : value.dark;\n if (newLightColorScheme) {\n if (!joinedColorSchemes.includes(newLightColorScheme)) {\n console.error(`\\`${newLightColorScheme}\\` does not exist in \\`theme.colorSchemes\\`.`);\n } else {\n newState.lightColorScheme = newLightColorScheme;\n lightStorage?.set(newLightColorScheme);\n }\n }\n if (newDarkColorScheme) {\n if (!joinedColorSchemes.includes(newDarkColorScheme)) {\n console.error(`\\`${newDarkColorScheme}\\` does not exist in \\`theme.colorSchemes\\`.`);\n } else {\n newState.darkColorScheme = newDarkColorScheme;\n darkStorage?.set(newDarkColorScheme);\n }\n }\n return newState;\n });\n }\n }, [joinedColorSchemes, lightStorage, darkStorage, defaultLightColorScheme, defaultDarkColorScheme]);\n const handleMediaQuery = React.useCallback(event => {\n if (state.mode === 'system') {\n setState(currentState => {\n const systemMode = event?.matches ? 'dark' : 'light';\n\n // Early exit, nothing changed.\n if (currentState.systemMode === systemMode) {\n return currentState;\n }\n return {\n ...currentState,\n systemMode\n };\n });\n }\n }, [state.mode]);\n\n // Ref hack to avoid adding handleMediaQuery as a dep\n const mediaListener = React.useRef(handleMediaQuery);\n mediaListener.current = handleMediaQuery;\n React.useEffect(() => {\n if (typeof window.matchMedia !== 'function' || !isMultiSchemes) {\n return undefined;\n }\n const handler = (...args) => mediaListener.current(...args);\n\n // Always listen to System preference\n const media = window.matchMedia('(prefers-color-scheme: dark)');\n\n // Intentionally use deprecated listener methods to support iOS & old browsers\n media.addListener(handler);\n handler(media);\n return () => {\n media.removeListener(handler);\n };\n }, [isMultiSchemes]);\n\n // Handle when localStorage has changed\n React.useEffect(() => {\n if (isMultiSchemes) {\n const unsubscribeMode = modeStorage?.subscribe(value => {\n if (!value || ['light', 'dark', 'system'].includes(value)) {\n setMode(value || defaultMode);\n }\n }) || noop;\n const unsubscribeLight = lightStorage?.subscribe(value => {\n if (!value || joinedColorSchemes.match(value)) {\n setColorScheme({\n light: value\n });\n }\n }) || noop;\n const unsubscribeDark = darkStorage?.subscribe(value => {\n if (!value || joinedColorSchemes.match(value)) {\n setColorScheme({\n dark: value\n });\n }\n }) || noop;\n return () => {\n unsubscribeMode();\n unsubscribeLight();\n unsubscribeDark();\n };\n }\n return undefined;\n }, [setColorScheme, setMode, joinedColorSchemes, defaultMode, storageWindow, isMultiSchemes, modeStorage, lightStorage, darkStorage]);\n return {\n ...state,\n mode: isClient ? state.mode : undefined,\n systemMode: isClient ? state.systemMode : undefined,\n colorScheme: isClient ? colorScheme : undefined,\n setMode,\n setColorScheme\n };\n}", "/**\n * The benefit of this function is to help developers get CSS var from theme without specifying the whole variable\n * and they does not need to remember the prefix (defined once).\n */\nexport default function createGetCssVar(prefix = '') {\n function appendVar(...vars) {\n if (!vars.length) {\n return '';\n }\n const value = vars[0];\n if (typeof value === 'string' && !value.match(/(#|\\(|\\)|(-?(\\d*\\.)?\\d+)(px|em|%|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc))|^(-?(\\d*\\.)?\\d+)$|(\\d+ \\d+ \\d+)/)) {\n return `, var(--${prefix ? `${prefix}-` : ''}${value}${appendVar(...vars.slice(1))})`;\n }\n return `, ${value}`;\n }\n\n // AdditionalVars makes `getCssVar` less strict, so it can be use like this `getCssVar('non-mui-variable')` without type error.\n const getCssVar = (field, ...fallbacks) => {\n return `var(--${prefix ? `${prefix}-` : ''}${field}${appendVar(...fallbacks)})`;\n };\n return getCssVar;\n}", "/**\n * This function create an object from keys, value and then assign to target\n *\n * @param {Object} obj : the target object to be assigned\n * @param {string[]} keys\n * @param {string | number} value\n *\n * @example\n * const source = {}\n * assignNestedKeys(source, ['palette', 'primary'], 'var(--palette-primary)')\n * console.log(source) // { palette: { primary: 'var(--palette-primary)' } }\n *\n * @example\n * const source = { palette: { primary: 'var(--palette-primary)' } }\n * assignNestedKeys(source, ['palette', 'secondary'], 'var(--palette-secondary)')\n * console.log(source) // { palette: { primary: 'var(--palette-primary)', secondary: 'var(--palette-secondary)' } }\n */\nexport const assignNestedKeys = (obj, keys, value, arrayKeys = []) => {\n let temp = obj;\n keys.forEach((k, index) => {\n if (index === keys.length - 1) {\n if (Array.isArray(temp)) {\n temp[Number(k)] = value;\n } else if (temp && typeof temp === 'object') {\n temp[k] = value;\n }\n } else if (temp && typeof temp === 'object') {\n if (!temp[k]) {\n temp[k] = arrayKeys.includes(k) ? [] : {};\n }\n temp = temp[k];\n }\n });\n};\n\n/**\n *\n * @param {Object} obj : source object\n * @param {Function} callback : a function that will be called when\n * - the deepest key in source object is reached\n * - the value of the deepest key is NOT `undefined` | `null`\n *\n * @example\n * walkObjectDeep({ palette: { primary: { main: '#000000' } } }, console.log)\n * // ['palette', 'primary', 'main'] '#000000'\n */\nexport const walkObjectDeep = (obj, callback, shouldSkipPaths) => {\n function recurse(object, parentKeys = [], arrayKeys = []) {\n Object.entries(object).forEach(([key, value]) => {\n if (!shouldSkipPaths || shouldSkipPaths && !shouldSkipPaths([...parentKeys, key])) {\n if (value !== undefined && value !== null) {\n if (typeof value === 'object' && Object.keys(value).length > 0) {\n recurse(value, [...parentKeys, key], Array.isArray(value) ? [...arrayKeys, key] : arrayKeys);\n } else {\n callback([...parentKeys, key], value, arrayKeys);\n }\n }\n }\n });\n }\n recurse(obj);\n};\nconst getCssValue = (keys, value) => {\n if (typeof value === 'number') {\n if (['lineHeight', 'fontWeight', 'opacity', 'zIndex'].some(prop => keys.includes(prop))) {\n // CSS property that are unitless\n return value;\n }\n const lastKey = keys[keys.length - 1];\n if (lastKey.toLowerCase().includes('opacity')) {\n // opacity values are unitless\n return value;\n }\n return `${value}px`;\n }\n return value;\n};\n\n/**\n * a function that parse theme and return { css, vars }\n *\n * @param {Object} theme\n * @param {{\n * prefix?: string,\n * shouldSkipGeneratingVar?: (objectPathKeys: Array, value: string | number) => boolean\n * }} options.\n * `prefix`: The prefix of the generated CSS variables. This function does not change the value.\n *\n * @returns {{ css: Object, vars: Object }} `css` is the stylesheet, `vars` is an object to get css variable (same structure as theme).\n *\n * @example\n * const { css, vars } = parser({\n * fontSize: 12,\n * lineHeight: 1.2,\n * palette: { primary: { 500: 'var(--color)' } }\n * }, { prefix: 'foo' })\n *\n * console.log(css) // { '--foo-fontSize': '12px', '--foo-lineHeight': 1.2, '--foo-palette-primary-500': 'var(--color)' }\n * console.log(vars) // { fontSize: 'var(--foo-fontSize)', lineHeight: 'var(--foo-lineHeight)', palette: { primary: { 500: 'var(--foo-palette-primary-500)' } } }\n */\nexport default function cssVarsParser(theme, options) {\n const {\n prefix,\n shouldSkipGeneratingVar\n } = options || {};\n const css = {};\n const vars = {};\n const varsWithDefaults = {};\n walkObjectDeep(theme, (keys, value, arrayKeys) => {\n if (typeof value === 'string' || typeof value === 'number') {\n if (!shouldSkipGeneratingVar || !shouldSkipGeneratingVar(keys, value)) {\n // only create css & var if `shouldSkipGeneratingVar` return false\n const cssVar = `--${prefix ? `${prefix}-` : ''}${keys.join('-')}`;\n const resolvedValue = getCssValue(keys, value);\n Object.assign(css, {\n [cssVar]: resolvedValue\n });\n assignNestedKeys(vars, keys, `var(${cssVar})`, arrayKeys);\n assignNestedKeys(varsWithDefaults, keys, `var(${cssVar}, ${resolvedValue})`, arrayKeys);\n }\n }\n }, keys => keys[0] === 'vars' // skip 'vars/*' paths\n );\n return {\n css,\n vars,\n varsWithDefaults\n };\n}", "import deepmerge from '@mui/utils/deepmerge';\nimport cssVarsParser from \"./cssVarsParser.js\";\nfunction prepareCssVars(theme, parserConfig = {}) {\n const {\n getSelector = defaultGetSelector,\n disableCssColorScheme,\n colorSchemeSelector: selector\n } = parserConfig;\n // @ts-ignore - ignore components do not exist\n const {\n colorSchemes = {},\n components,\n defaultColorScheme = 'light',\n ...otherTheme\n } = theme;\n const {\n vars: rootVars,\n css: rootCss,\n varsWithDefaults: rootVarsWithDefaults\n } = cssVarsParser(otherTheme, parserConfig);\n let themeVars = rootVarsWithDefaults;\n const colorSchemesMap = {};\n const {\n [defaultColorScheme]: defaultScheme,\n ...otherColorSchemes\n } = colorSchemes;\n Object.entries(otherColorSchemes || {}).forEach(([key, scheme]) => {\n const {\n vars,\n css,\n varsWithDefaults\n } = cssVarsParser(scheme, parserConfig);\n themeVars = deepmerge(themeVars, varsWithDefaults);\n colorSchemesMap[key] = {\n css,\n vars\n };\n });\n if (defaultScheme) {\n // default color scheme vars should be merged last to set as default\n const {\n css,\n vars,\n varsWithDefaults\n } = cssVarsParser(defaultScheme, parserConfig);\n themeVars = deepmerge(themeVars, varsWithDefaults);\n colorSchemesMap[defaultColorScheme] = {\n css,\n vars\n };\n }\n function defaultGetSelector(colorScheme, cssObject) {\n let rule = selector;\n if (selector === 'class') {\n rule = '.%s';\n }\n if (selector === 'data') {\n rule = '[data-%s]';\n }\n if (selector?.startsWith('data-') && !selector.includes('%s')) {\n // 'data-joy-color-scheme' -> '[data-joy-color-scheme=\"%s\"]'\n rule = `[${selector}=\"%s\"]`;\n }\n if (colorScheme) {\n if (rule === 'media') {\n if (theme.defaultColorScheme === colorScheme) {\n return ':root';\n }\n const mode = colorSchemes[colorScheme]?.palette?.mode || colorScheme;\n return {\n [`@media (prefers-color-scheme: ${mode})`]: {\n ':root': cssObject\n }\n };\n }\n if (rule) {\n if (theme.defaultColorScheme === colorScheme) {\n return `:root, ${rule.replace('%s', String(colorScheme))}`;\n }\n return rule.replace('%s', String(colorScheme));\n }\n }\n return ':root';\n }\n const generateThemeVars = () => {\n let vars = {\n ...rootVars\n };\n Object.entries(colorSchemesMap).forEach(([, {\n vars: schemeVars\n }]) => {\n vars = deepmerge(vars, schemeVars);\n });\n return vars;\n };\n const generateStyleSheets = () => {\n const stylesheets = [];\n const colorScheme = theme.defaultColorScheme || 'light';\n function insertStyleSheet(key, css) {\n if (Object.keys(css).length) {\n stylesheets.push(typeof key === 'string' ? {\n [key]: {\n ...css\n }\n } : key);\n }\n }\n insertStyleSheet(getSelector(undefined, {\n ...rootCss\n }), rootCss);\n const {\n [colorScheme]: defaultSchemeVal,\n ...other\n } = colorSchemesMap;\n if (defaultSchemeVal) {\n // default color scheme has to come before other color schemes\n const {\n css\n } = defaultSchemeVal;\n const cssColorSheme = colorSchemes[colorScheme]?.palette?.mode;\n const finalCss = !disableCssColorScheme && cssColorSheme ? {\n colorScheme: cssColorSheme,\n ...css\n } : {\n ...css\n };\n insertStyleSheet(getSelector(colorScheme, {\n ...finalCss\n }), finalCss);\n }\n Object.entries(other).forEach(([key, {\n css\n }]) => {\n const cssColorSheme = colorSchemes[key]?.palette?.mode;\n const finalCss = !disableCssColorScheme && cssColorSheme ? {\n colorScheme: cssColorSheme,\n ...css\n } : {\n ...css\n };\n insertStyleSheet(getSelector(key, {\n ...finalCss\n }), finalCss);\n });\n return stylesheets;\n };\n return {\n vars: themeVars,\n generateThemeVars,\n generateStyleSheets\n };\n}\nexport default prepareCssVars;", "/* eslint-disable import/prefer-default-export */\nexport function createGetColorSchemeSelector(selector) {\n return function getColorSchemeSelector(colorScheme) {\n if (selector === 'media') {\n if (process.env.NODE_ENV !== 'production') {\n if (colorScheme !== 'light' && colorScheme !== 'dark') {\n console.error(`MUI: @media (prefers-color-scheme) supports only 'light' or 'dark', but receive '${colorScheme}'.`);\n }\n }\n return `@media (prefers-color-scheme: ${colorScheme})`;\n }\n if (selector) {\n if (selector.startsWith('data-') && !selector.includes('%s')) {\n return `[${selector}=\"${colorScheme}\"] &`;\n }\n if (selector === 'class') {\n return `.${colorScheme} &`;\n }\n if (selector === 'data') {\n return `[data-${colorScheme}] &`;\n }\n return `${selector.replace('%s', colorScheme)} &`;\n }\n return '&';\n };\n}", "export const version = \"7.0.1\";\nexport const major = Number(\"7\");\nexport const minor = Number(\"0\");\nexport const patch = Number(\"1\");\nexport const prerelease = undefined;\nexport default version;", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nimport composeClasses from '@mui/utils/composeClasses';\nimport capitalize from '@mui/utils/capitalize';\nimport useThemePropsSystem from \"../useThemeProps/index.js\";\nimport systemStyled from \"../styled/index.js\";\nimport createTheme from \"../createTheme/index.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultTheme = createTheme();\nconst defaultCreateStyledComponent = systemStyled('div', {\n name: 'MuiContainer',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[`maxWidth${capitalize(String(ownerState.maxWidth))}`], ownerState.fixed && styles.fixed, ownerState.disableGutters && styles.disableGutters];\n }\n});\nconst useThemePropsDefault = inProps => useThemePropsSystem({\n props: inProps,\n name: 'MuiContainer',\n defaultTheme\n});\nconst useUtilityClasses = (ownerState, componentName) => {\n const getContainerUtilityClass = slot => {\n return generateUtilityClass(componentName, slot);\n };\n const {\n classes,\n fixed,\n disableGutters,\n maxWidth\n } = ownerState;\n const slots = {\n root: ['root', maxWidth && `maxWidth${capitalize(String(maxWidth))}`, fixed && 'fixed', disableGutters && 'disableGutters']\n };\n return composeClasses(slots, getContainerUtilityClass, classes);\n};\nexport default function createContainer(options = {}) {\n const {\n // This will allow adding custom styled fn (for example for custom sx style function)\n createStyledComponent = defaultCreateStyledComponent,\n useThemeProps = useThemePropsDefault,\n componentName = 'MuiContainer'\n } = options;\n const ContainerRoot = createStyledComponent(({\n theme,\n ownerState\n }) => ({\n width: '100%',\n marginLeft: 'auto',\n boxSizing: 'border-box',\n marginRight: 'auto',\n ...(!ownerState.disableGutters && {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n // @ts-ignore module augmentation fails if custom breakpoints are used\n [theme.breakpoints.up('sm')]: {\n paddingLeft: theme.spacing(3),\n paddingRight: theme.spacing(3)\n }\n })\n }), ({\n theme,\n ownerState\n }) => ownerState.fixed && Object.keys(theme.breakpoints.values).reduce((acc, breakpointValueKey) => {\n const breakpoint = breakpointValueKey;\n const value = theme.breakpoints.values[breakpoint];\n if (value !== 0) {\n // @ts-ignore\n acc[theme.breakpoints.up(breakpoint)] = {\n maxWidth: `${value}${theme.breakpoints.unit}`\n };\n }\n return acc;\n }, {}), ({\n theme,\n ownerState\n }) => ({\n // @ts-ignore module augmentation fails if custom breakpoints are used\n ...(ownerState.maxWidth === 'xs' && {\n // @ts-ignore module augmentation fails if custom breakpoints are used\n [theme.breakpoints.up('xs')]: {\n // @ts-ignore module augmentation fails if custom breakpoints are used\n maxWidth: Math.max(theme.breakpoints.values.xs, 444)\n }\n }),\n ...(ownerState.maxWidth &&\n // @ts-ignore module augmentation fails if custom breakpoints are used\n ownerState.maxWidth !== 'xs' && {\n // @ts-ignore module augmentation fails if custom breakpoints are used\n [theme.breakpoints.up(ownerState.maxWidth)]: {\n // @ts-ignore module augmentation fails if custom breakpoints are used\n maxWidth: `${theme.breakpoints.values[ownerState.maxWidth]}${theme.breakpoints.unit}`\n }\n })\n }));\n const Container = /*#__PURE__*/React.forwardRef(function Container(inProps, ref) {\n const props = useThemeProps(inProps);\n const {\n className,\n component = 'div',\n disableGutters = false,\n fixed = false,\n maxWidth = 'lg',\n classes: classesProp,\n ...other\n } = props;\n const ownerState = {\n ...props,\n component,\n disableGutters,\n fixed,\n maxWidth\n };\n\n // @ts-ignore module augmentation fails if custom breakpoints are used\n const classes = useUtilityClasses(ownerState, componentName);\n return (\n /*#__PURE__*/\n // @ts-ignore theme is injected by the styled util\n _jsx(ContainerRoot, {\n as: component\n // @ts-ignore module augmentation fails if custom breakpoints are used\n ,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref,\n ...other\n })\n );\n });\n process.env.NODE_ENV !== \"production\" ? Container.propTypes /* remove-proptypes */ = {\n children: PropTypes.node,\n classes: PropTypes.object,\n className: PropTypes.string,\n component: PropTypes.elementType,\n disableGutters: PropTypes.bool,\n fixed: PropTypes.bool,\n maxWidth: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false]), PropTypes.string]),\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n } : void 0;\n return Container;\n}", "'use client';\n\nimport PropTypes from 'prop-types';\nimport createContainer from \"./createContainer.js\";\n\n/**\n *\n * Demos:\n *\n * - [Container (Material UI)](https://mui.com/material-ui/react-container/)\n * - [Container (MUI System)](https://mui.com/system/react-container/)\n *\n * API:\n *\n * - [Container API](https://mui.com/system/api/container/)\n */\nconst Container = createContainer();\nprocess.env.NODE_ENV !== \"production\" ? Container.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * @ignore\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the left and right padding is removed.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * Set the max-width to match the min-width of the current breakpoint.\n * This is useful if you'd prefer to design for a fixed set of sizes\n * instead of trying to accommodate a fully fluid viewport.\n * It's fluid by default.\n * @default false\n */\n fixed: PropTypes.bool,\n /**\n * Determine the max-width of the container.\n * The container width grows with the size of the screen.\n * Set to `false` to disable `maxWidth`.\n * @default 'lg'\n */\n maxWidth: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false]), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default Container;", "import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getContainerUtilityClass(slot) {\n return generateUtilityClass('MuiContainer', slot);\n}\nconst containerClasses = generateUtilityClasses('MuiContainer', ['root', 'disableGutters', 'fixed', 'maxWidthXs', 'maxWidthSm', 'maxWidthMd', 'maxWidthLg', 'maxWidthXl']);\nexport default containerClasses;", "'use client';\n\nimport PropTypes from 'prop-types';\nimport createGrid from \"./createGrid.js\";\n/**\n *\n * Demos:\n *\n * - [Grid (Joy UI)](https://mui.com/joy-ui/react-grid/)\n * - [Grid (Material UI)](https://mui.com/material-ui/react-grid/)\n *\n * API:\n *\n * - [Grid API](https://mui.com/system/api/grid/)\n */\nconst Grid = createGrid();\nprocess.env.NODE_ENV !== \"production\" ? Grid.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The number of columns.\n * @default 12\n */\n columns: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.arrayOf(PropTypes.number), PropTypes.number, PropTypes.object]),\n /**\n * Defines the horizontal space between the type `item` components.\n * It overrides the value of the `spacing` prop.\n */\n columnSpacing: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n /**\n * If `true`, the component will have the flex *container* behavior.\n * You should be wrapping *items* with a *container*.\n * @default false\n */\n container: PropTypes.bool,\n /**\n * Defines the `flex-direction` style property.\n * It is applied for all screen sizes.\n * @default 'row'\n */\n direction: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n /**\n * Defines the offset value for the type `item` components.\n */\n offset: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.string, PropTypes.number, PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])), PropTypes.object]),\n /**\n * Defines the vertical space between the type `item` components.\n * It overrides the value of the `spacing` prop.\n */\n rowSpacing: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n /**\n * Defines the size of the the type `item` components.\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.string, PropTypes.bool, PropTypes.number, PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.bool, PropTypes.number])), PropTypes.object]),\n /**\n * Defines the space between the type `item` components.\n * It can only be used on a type `container` component.\n * @default 0\n */\n spacing: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n /**\n * @ignore\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * @internal\n * The level of the grid starts from `0` and increases when the grid nests\n * inside another grid. Nesting is defined as a container Grid being a direct\n * child of a container Grid.\n *\n * ```js\n * // level 0\n * // level 1\n * // level 2\n * ```\n *\n * Only consecutive grid is considered nesting. A grid container will start at\n * `0` if there are non-Grid container element above it.\n *\n * ```js\n * // level 0\n *
\n * // level 0\n * ```\n *\n * ```js\n * // level 0\n * \n * // level 0\n * ```\n */\n unstable_level: PropTypes.number,\n /**\n * Defines the `flex-wrap` style property.\n * It's applied for all screen sizes.\n * @default 'wrap'\n */\n wrap: PropTypes.oneOf(['nowrap', 'wrap-reverse', 'wrap'])\n} : void 0;\nexport default Grid;", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport isMuiElement from '@mui/utils/isMuiElement';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nimport composeClasses from '@mui/utils/composeClasses';\nimport systemStyled from \"../styled/index.js\";\nimport useThemePropsSystem from \"../useThemeProps/index.js\";\nimport useThemeSystem from \"../useTheme/index.js\";\nimport { extendSxProp } from \"../styleFunctionSx/index.js\";\nimport createTheme from \"../createTheme/index.js\";\nimport { generateGridStyles, generateGridSizeStyles, generateGridColumnsStyles, generateGridColumnSpacingStyles, generateGridRowSpacingStyles, generateGridDirectionStyles, generateGridOffsetStyles, generateSizeClassNames, generateSpacingClassNames, generateDirectionClasses } from \"./gridGenerator.js\";\nimport deleteLegacyGridProps from \"./deleteLegacyGridProps.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultTheme = createTheme();\n\n// widening Theme to any so that the consumer can own the theme structure.\nconst defaultCreateStyledComponent = systemStyled('div', {\n name: 'MuiGrid',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n});\nfunction useThemePropsDefault(props) {\n return useThemePropsSystem({\n props,\n name: 'MuiGrid',\n defaultTheme\n });\n}\nexport default function createGrid(options = {}) {\n const {\n // This will allow adding custom styled fn (for example for custom sx style function)\n createStyledComponent = defaultCreateStyledComponent,\n useThemeProps = useThemePropsDefault,\n useTheme = useThemeSystem,\n componentName = 'MuiGrid'\n } = options;\n const useUtilityClasses = (ownerState, theme) => {\n const {\n container,\n direction,\n spacing,\n wrap,\n size\n } = ownerState;\n const slots = {\n root: ['root', container && 'container', wrap !== 'wrap' && `wrap-xs-${String(wrap)}`, ...generateDirectionClasses(direction), ...generateSizeClassNames(size), ...(container ? generateSpacingClassNames(spacing, theme.breakpoints.keys[0]) : [])]\n };\n return composeClasses(slots, slot => generateUtilityClass(componentName, slot), {});\n };\n function parseResponsiveProp(propValue, breakpoints, shouldUseValue = () => true) {\n const parsedProp = {};\n if (propValue === null) {\n return parsedProp;\n }\n if (Array.isArray(propValue)) {\n propValue.forEach((value, index) => {\n if (value !== null && shouldUseValue(value) && breakpoints.keys[index]) {\n parsedProp[breakpoints.keys[index]] = value;\n }\n });\n } else if (typeof propValue === 'object') {\n Object.keys(propValue).forEach(key => {\n const value = propValue[key];\n if (value !== null && value !== undefined && shouldUseValue(value)) {\n parsedProp[key] = value;\n }\n });\n } else {\n parsedProp[breakpoints.keys[0]] = propValue;\n }\n return parsedProp;\n }\n const GridRoot = createStyledComponent(generateGridColumnsStyles, generateGridColumnSpacingStyles, generateGridRowSpacingStyles, generateGridSizeStyles, generateGridDirectionStyles, generateGridStyles, generateGridOffsetStyles);\n const Grid = /*#__PURE__*/React.forwardRef(function Grid(inProps, ref) {\n const theme = useTheme();\n const themeProps = useThemeProps(inProps);\n const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.\n\n // TODO v8: Remove when removing the legacy Grid component\n deleteLegacyGridProps(props, theme.breakpoints);\n const {\n className,\n children,\n columns: columnsProp = 12,\n container = false,\n component = 'div',\n direction = 'row',\n wrap = 'wrap',\n size: sizeProp = {},\n offset: offsetProp = {},\n spacing: spacingProp = 0,\n rowSpacing: rowSpacingProp = spacingProp,\n columnSpacing: columnSpacingProp = spacingProp,\n unstable_level: level = 0,\n ...other\n } = props;\n const size = parseResponsiveProp(sizeProp, theme.breakpoints, val => val !== false);\n const offset = parseResponsiveProp(offsetProp, theme.breakpoints);\n const columns = inProps.columns ?? (level ? undefined : columnsProp);\n const spacing = inProps.spacing ?? (level ? undefined : spacingProp);\n const rowSpacing = inProps.rowSpacing ?? inProps.spacing ?? (level ? undefined : rowSpacingProp);\n const columnSpacing = inProps.columnSpacing ?? inProps.spacing ?? (level ? undefined : columnSpacingProp);\n const ownerState = {\n ...props,\n level,\n columns,\n container,\n direction,\n wrap,\n spacing,\n rowSpacing,\n columnSpacing,\n size,\n offset\n };\n const classes = useUtilityClasses(ownerState, theme);\n return /*#__PURE__*/_jsx(GridRoot, {\n ref: ref,\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ...other,\n children: React.Children.map(children, child => {\n if (/*#__PURE__*/React.isValidElement(child) && isMuiElement(child, ['Grid']) && container && child.props.container) {\n return /*#__PURE__*/React.cloneElement(child, {\n unstable_level: child.props?.unstable_level ?? level + 1\n });\n }\n return child;\n })\n });\n });\n process.env.NODE_ENV !== \"production\" ? Grid.propTypes /* remove-proptypes */ = {\n children: PropTypes.node,\n className: PropTypes.string,\n columns: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.number), PropTypes.number, PropTypes.object]),\n columnSpacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n component: PropTypes.elementType,\n container: PropTypes.bool,\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n offset: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number])), PropTypes.object]),\n rowSpacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n size: PropTypes.oneOfType([PropTypes.string, PropTypes.bool, PropTypes.number, PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.bool, PropTypes.number])), PropTypes.object]),\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n wrap: PropTypes.oneOf(['nowrap', 'wrap-reverse', 'wrap'])\n } : void 0;\n\n // @ts-ignore internal logic for nested grid\n Grid.muiName = 'Grid';\n return Grid;\n}", "export const filterBreakpointKeys = (breakpointsKeys, responsiveKeys) => breakpointsKeys.filter(key => responsiveKeys.includes(key));\nexport const traverseBreakpoints = (breakpoints, responsive, iterator) => {\n const smallestBreakpoint = breakpoints.keys[0]; // the keys is sorted from smallest to largest by `createBreakpoints`.\n\n if (Array.isArray(responsive)) {\n responsive.forEach((breakpointValue, index) => {\n iterator((responsiveStyles, style) => {\n if (index <= breakpoints.keys.length - 1) {\n if (index === 0) {\n Object.assign(responsiveStyles, style);\n } else {\n responsiveStyles[breakpoints.up(breakpoints.keys[index])] = style;\n }\n }\n }, breakpointValue);\n });\n } else if (responsive && typeof responsive === 'object') {\n // prevent null\n // responsive could be a very big object, pick the smallest responsive values\n\n const keys = Object.keys(responsive).length > breakpoints.keys.length ? breakpoints.keys : filterBreakpointKeys(breakpoints.keys, Object.keys(responsive));\n keys.forEach(key => {\n if (breakpoints.keys.includes(key)) {\n // @ts-ignore already checked that responsive is an object\n const breakpointValue = responsive[key];\n if (breakpointValue !== undefined) {\n iterator((responsiveStyles, style) => {\n if (smallestBreakpoint === key) {\n Object.assign(responsiveStyles, style);\n } else {\n responsiveStyles[breakpoints.up(key)] = style;\n }\n }, breakpointValue);\n }\n }\n });\n } else if (typeof responsive === 'number' || typeof responsive === 'string') {\n iterator((responsiveStyles, style) => {\n Object.assign(responsiveStyles, style);\n }, responsive);\n }\n};", "import { traverseBreakpoints } from \"./traverseBreakpoints.js\";\nfunction getSelfSpacingVar(axis) {\n return `--Grid-${axis}Spacing`;\n}\nfunction getParentSpacingVar(axis) {\n return `--Grid-parent-${axis}Spacing`;\n}\nconst selfColumnsVar = '--Grid-columns';\nconst parentColumnsVar = '--Grid-parent-columns';\nexport const generateGridSizeStyles = ({\n theme,\n ownerState\n}) => {\n const styles = {};\n traverseBreakpoints(theme.breakpoints, ownerState.size, (appendStyle, value) => {\n let style = {};\n if (value === 'grow') {\n style = {\n flexBasis: 0,\n flexGrow: 1,\n maxWidth: '100%'\n };\n }\n if (value === 'auto') {\n style = {\n flexBasis: 'auto',\n flexGrow: 0,\n flexShrink: 0,\n maxWidth: 'none',\n width: 'auto'\n };\n }\n if (typeof value === 'number') {\n style = {\n flexGrow: 0,\n flexBasis: 'auto',\n width: `calc(100% * ${value} / var(${parentColumnsVar}) - (var(${parentColumnsVar}) - ${value}) * (var(${getParentSpacingVar('column')}) / var(${parentColumnsVar})))`\n };\n }\n appendStyle(styles, style);\n });\n return styles;\n};\nexport const generateGridOffsetStyles = ({\n theme,\n ownerState\n}) => {\n const styles = {};\n traverseBreakpoints(theme.breakpoints, ownerState.offset, (appendStyle, value) => {\n let style = {};\n if (value === 'auto') {\n style = {\n marginLeft: 'auto'\n };\n }\n if (typeof value === 'number') {\n style = {\n marginLeft: value === 0 ? '0px' : `calc(100% * ${value} / var(${parentColumnsVar}) + var(${getParentSpacingVar('column')}) * ${value} / var(${parentColumnsVar}))`\n };\n }\n appendStyle(styles, style);\n });\n return styles;\n};\nexport const generateGridColumnsStyles = ({\n theme,\n ownerState\n}) => {\n if (!ownerState.container) {\n return {};\n }\n const styles = {\n [selfColumnsVar]: 12\n };\n traverseBreakpoints(theme.breakpoints, ownerState.columns, (appendStyle, value) => {\n const columns = value ?? 12;\n appendStyle(styles, {\n [selfColumnsVar]: columns,\n '> *': {\n [parentColumnsVar]: columns\n }\n });\n });\n return styles;\n};\nexport const generateGridRowSpacingStyles = ({\n theme,\n ownerState\n}) => {\n if (!ownerState.container) {\n return {};\n }\n const styles = {};\n traverseBreakpoints(theme.breakpoints, ownerState.rowSpacing, (appendStyle, value) => {\n const spacing = typeof value === 'string' ? value : theme.spacing?.(value);\n appendStyle(styles, {\n [getSelfSpacingVar('row')]: spacing,\n '> *': {\n [getParentSpacingVar('row')]: spacing\n }\n });\n });\n return styles;\n};\nexport const generateGridColumnSpacingStyles = ({\n theme,\n ownerState\n}) => {\n if (!ownerState.container) {\n return {};\n }\n const styles = {};\n traverseBreakpoints(theme.breakpoints, ownerState.columnSpacing, (appendStyle, value) => {\n const spacing = typeof value === 'string' ? value : theme.spacing?.(value);\n appendStyle(styles, {\n [getSelfSpacingVar('column')]: spacing,\n '> *': {\n [getParentSpacingVar('column')]: spacing\n }\n });\n });\n return styles;\n};\nexport const generateGridDirectionStyles = ({\n theme,\n ownerState\n}) => {\n if (!ownerState.container) {\n return {};\n }\n const styles = {};\n traverseBreakpoints(theme.breakpoints, ownerState.direction, (appendStyle, value) => {\n appendStyle(styles, {\n flexDirection: value\n });\n });\n return styles;\n};\nexport const generateGridStyles = ({\n ownerState\n}) => {\n return {\n minWidth: 0,\n boxSizing: 'border-box',\n ...(ownerState.container && {\n display: 'flex',\n flexWrap: 'wrap',\n ...(ownerState.wrap && ownerState.wrap !== 'wrap' && {\n flexWrap: ownerState.wrap\n }),\n gap: `var(${getSelfSpacingVar('row')}) var(${getSelfSpacingVar('column')})`\n })\n };\n};\nexport const generateSizeClassNames = size => {\n const classNames = [];\n Object.entries(size).forEach(([key, value]) => {\n if (value !== false && value !== undefined) {\n classNames.push(`grid-${key}-${String(value)}`);\n }\n });\n return classNames;\n};\nexport const generateSpacingClassNames = (spacing, smallestBreakpoint = 'xs') => {\n function isValidSpacing(val) {\n if (val === undefined) {\n return false;\n }\n return typeof val === 'string' && !Number.isNaN(Number(val)) || typeof val === 'number' && val > 0;\n }\n if (isValidSpacing(spacing)) {\n return [`spacing-${smallestBreakpoint}-${String(spacing)}`];\n }\n if (typeof spacing === 'object' && !Array.isArray(spacing)) {\n const classNames = [];\n Object.entries(spacing).forEach(([key, value]) => {\n if (isValidSpacing(value)) {\n classNames.push(`spacing-${key}-${String(value)}`);\n }\n });\n return classNames;\n }\n return [];\n};\nexport const generateDirectionClasses = direction => {\n if (direction === undefined) {\n return [];\n }\n if (typeof direction === 'object') {\n return Object.entries(direction).map(([key, value]) => `direction-${key}-${value}`);\n }\n return [`direction-xs-${String(direction)}`];\n};", "const getLegacyGridWarning = propName => {\n if (['item', 'zeroMinWidth'].includes(propName)) {\n return `The \\`${propName}\\` prop has been removed and is no longer necessary. You can safely remove it.`;\n }\n\n // #host-reference\n return `The \\`${propName}\\` prop has been removed. See https://mui.com/material-ui/migration/upgrade-to-grid-v2/ for migration instructions.`;\n};\nconst warnedAboutProps = [];\n\n/**\n * Deletes the legacy Grid component props from the `props` object and warns once about them if found.\n *\n * @param {object} props The props object to remove the legacy Grid props from.\n * @param {Breakpoints} breakpoints The breakpoints object.\n */\nexport default function deleteLegacyGridProps(props, breakpoints) {\n const propsToWarn = [];\n if (props.item !== undefined) {\n delete props.item;\n propsToWarn.push('item');\n }\n if (props.zeroMinWidth !== undefined) {\n delete props.zeroMinWidth;\n propsToWarn.push('zeroMinWidth');\n }\n breakpoints.keys.forEach(breakpoint => {\n if (props[breakpoint] !== undefined) {\n propsToWarn.push(breakpoint);\n delete props[breakpoint];\n }\n });\n if (process.env.NODE_ENV !== 'production') {\n propsToWarn.forEach(prop => {\n if (!warnedAboutProps.includes(prop)) {\n warnedAboutProps.push(prop);\n console.warn(`MUI Grid: ${getLegacyGridWarning(prop)}\\n`);\n }\n });\n }\n}", "import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getGridUtilityClass(slot) {\n return generateUtilityClass('MuiGrid', slot);\n}\nconst SPACINGS = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\nconst DIRECTIONS = ['column-reverse', 'column', 'row-reverse', 'row'];\nconst WRAPS = ['nowrap', 'wrap-reverse', 'wrap'];\nconst GRID_SIZES = ['auto', 'grow', 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];\nconst gridClasses = generateUtilityClasses('MuiGrid', ['root', 'container', 'item',\n// spacings\n...SPACINGS.map(spacing => `spacing-xs-${spacing}`),\n// direction values\n...DIRECTIONS.map(direction => `direction-xs-${direction}`),\n// wrap values\n...WRAPS.map(wrap => `wrap-xs-${wrap}`),\n// grid sizes for all breakpoints\n...GRID_SIZES.map(size => `grid-xs-${size}`), ...GRID_SIZES.map(size => `grid-sm-${size}`), ...GRID_SIZES.map(size => `grid-md-${size}`), ...GRID_SIZES.map(size => `grid-lg-${size}`), ...GRID_SIZES.map(size => `grid-xl-${size}`)]);\nexport default gridClasses;", "'use client';\n\nimport PropTypes from 'prop-types';\nimport createStack from \"./createStack.js\";\n/**\n *\n * Demos:\n *\n * - [Stack (Joy UI)](https://mui.com/joy-ui/react-stack/)\n * - [Stack (Material UI)](https://mui.com/material-ui/react-stack/)\n * - [Stack (MUI System)](https://mui.com/system/react-stack/)\n *\n * API:\n *\n * - [Stack API](https://mui.com/system/api/stack/)\n */\nconst Stack = createStack();\nprocess.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Defines the `flex-direction` style property.\n * It is applied for all screen sizes.\n * @default 'column'\n */\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n /**\n * Add an element between each child.\n */\n divider: PropTypes.node,\n /**\n * Defines the space between immediate children.\n * @default 0\n */\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n /**\n * The system prop, which allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * If `true`, the CSS flexbox `gap` is used instead of applying `margin` to children.\n *\n * While CSS `gap` removes the [known limitations](https://mui.com/joy-ui/react-stack/#limitations),\n * it is not fully supported in some browsers. We recommend checking https://caniuse.com/?search=flex%20gap before using this flag.\n *\n * To enable this flag globally, follow the theme's default props configuration.\n * @default false\n */\n useFlexGap: PropTypes.bool\n} : void 0;\nexport default Stack;", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport deepmerge from '@mui/utils/deepmerge';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nimport composeClasses from '@mui/utils/composeClasses';\nimport systemStyled from \"../styled/index.js\";\nimport useThemePropsSystem from \"../useThemeProps/index.js\";\nimport { extendSxProp } from \"../styleFunctionSx/index.js\";\nimport createTheme from \"../createTheme/index.js\";\nimport { handleBreakpoints, mergeBreakpointsInOrder, resolveBreakpointValues } from \"../breakpoints/index.js\";\nimport { createUnarySpacing, getValue } from \"../spacing/index.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultTheme = createTheme();\n// widening Theme to any so that the consumer can own the theme structure.\nconst defaultCreateStyledComponent = systemStyled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n});\nfunction useThemePropsDefault(props) {\n return useThemePropsSystem({\n props,\n name: 'MuiStack',\n defaultTheme\n });\n}\n\n/**\n * Return an array with the separator React element interspersed between\n * each React node of the input children.\n *\n * > joinChildren([1,2,3], 0)\n * [1,0,2,0,3]\n */\nfunction joinChildren(children, separator) {\n const childrenArray = React.Children.toArray(children).filter(Boolean);\n return childrenArray.reduce((output, child, index) => {\n output.push(child);\n if (index < childrenArray.length - 1) {\n output.push(/*#__PURE__*/React.cloneElement(separator, {\n key: `separator-${index}`\n }));\n }\n return output;\n }, []);\n}\nconst getSideFromDirection = direction => {\n return {\n row: 'Left',\n 'row-reverse': 'Right',\n column: 'Top',\n 'column-reverse': 'Bottom'\n }[direction];\n};\nexport const style = ({\n ownerState,\n theme\n}) => {\n let styles = {\n display: 'flex',\n flexDirection: 'column',\n ...handleBreakpoints({\n theme\n }, resolveBreakpointValues({\n values: ownerState.direction,\n breakpoints: theme.breakpoints.values\n }), propValue => ({\n flexDirection: propValue\n }))\n };\n if (ownerState.spacing) {\n const transformer = createUnarySpacing(theme);\n const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => {\n if (typeof ownerState.spacing === 'object' && ownerState.spacing[breakpoint] != null || typeof ownerState.direction === 'object' && ownerState.direction[breakpoint] != null) {\n acc[breakpoint] = true;\n }\n return acc;\n }, {});\n const directionValues = resolveBreakpointValues({\n values: ownerState.direction,\n base\n });\n const spacingValues = resolveBreakpointValues({\n values: ownerState.spacing,\n base\n });\n if (typeof directionValues === 'object') {\n Object.keys(directionValues).forEach((breakpoint, index, breakpoints) => {\n const directionValue = directionValues[breakpoint];\n if (!directionValue) {\n const previousDirectionValue = index > 0 ? directionValues[breakpoints[index - 1]] : 'column';\n directionValues[breakpoint] = previousDirectionValue;\n }\n });\n }\n const styleFromPropValue = (propValue, breakpoint) => {\n if (ownerState.useFlexGap) {\n return {\n gap: getValue(transformer, propValue)\n };\n }\n return {\n // The useFlexGap={false} implement relies on each child to give up control of the margin.\n // We need to reset the margin to avoid double spacing.\n '& > :not(style):not(style)': {\n margin: 0\n },\n '& > :not(style) ~ :not(style)': {\n [`margin${getSideFromDirection(breakpoint ? directionValues[breakpoint] : ownerState.direction)}`]: getValue(transformer, propValue)\n }\n };\n };\n styles = deepmerge(styles, handleBreakpoints({\n theme\n }, spacingValues, styleFromPropValue));\n }\n styles = mergeBreakpointsInOrder(theme.breakpoints, styles);\n return styles;\n};\nexport default function createStack(options = {}) {\n const {\n // This will allow adding custom styled fn (for example for custom sx style function)\n createStyledComponent = defaultCreateStyledComponent,\n useThemeProps = useThemePropsDefault,\n componentName = 'MuiStack'\n } = options;\n const useUtilityClasses = () => {\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, slot => generateUtilityClass(componentName, slot), {});\n };\n const StackRoot = createStyledComponent(style);\n const Stack = /*#__PURE__*/React.forwardRef(function Grid(inProps, ref) {\n const themeProps = useThemeProps(inProps);\n const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.\n const {\n component = 'div',\n direction = 'column',\n spacing = 0,\n divider,\n children,\n className,\n useFlexGap = false,\n ...other\n } = props;\n const ownerState = {\n direction,\n spacing,\n useFlexGap\n };\n const classes = useUtilityClasses();\n return /*#__PURE__*/_jsx(StackRoot, {\n as: component,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className),\n ...other,\n children: divider ? joinChildren(children, divider) : children\n });\n });\n process.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n children: PropTypes.node,\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n divider: PropTypes.node,\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n } : void 0;\n return Stack;\n}", "import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getStackUtilityClass(slot) {\n return generateUtilityClass('MuiStack', slot);\n}\nconst stackClasses = generateUtilityClasses('MuiStack', ['root']);\nexport default stackClasses;", "const common = {\n black: '#000',\n white: '#fff'\n};\nexport default common;", "const grey = {\n 50: '#fafafa',\n 100: '#f5f5f5',\n 200: '#eeeeee',\n 300: '#e0e0e0',\n 400: '#bdbdbd',\n 500: '#9e9e9e',\n 600: '#757575',\n 700: '#616161',\n 800: '#424242',\n 900: '#212121',\n A100: '#f5f5f5',\n A200: '#eeeeee',\n A400: '#bdbdbd',\n A700: '#616161'\n};\nexport default grey;", "const purple = {\n 50: '#f3e5f5',\n 100: '#e1bee7',\n 200: '#ce93d8',\n 300: '#ba68c8',\n 400: '#ab47bc',\n 500: '#9c27b0',\n 600: '#8e24aa',\n 700: '#7b1fa2',\n 800: '#6a1b9a',\n 900: '#4a148c',\n A100: '#ea80fc',\n A200: '#e040fb',\n A400: '#d500f9',\n A700: '#aa00ff'\n};\nexport default purple;", "const red = {\n 50: '#ffebee',\n 100: '#ffcdd2',\n 200: '#ef9a9a',\n 300: '#e57373',\n 400: '#ef5350',\n 500: '#f44336',\n 600: '#e53935',\n 700: '#d32f2f',\n 800: '#c62828',\n 900: '#b71c1c',\n A100: '#ff8a80',\n A200: '#ff5252',\n A400: '#ff1744',\n A700: '#d50000'\n};\nexport default red;", "const orange = {\n 50: '#fff3e0',\n 100: '#ffe0b2',\n 200: '#ffcc80',\n 300: '#ffb74d',\n 400: '#ffa726',\n 500: '#ff9800',\n 600: '#fb8c00',\n 700: '#f57c00',\n 800: '#ef6c00',\n 900: '#e65100',\n A100: '#ffd180',\n A200: '#ffab40',\n A400: '#ff9100',\n A700: '#ff6d00'\n};\nexport default orange;", "const blue = {\n 50: '#e3f2fd',\n 100: '#bbdefb',\n 200: '#90caf9',\n 300: '#64b5f6',\n 400: '#42a5f5',\n 500: '#2196f3',\n 600: '#1e88e5',\n 700: '#1976d2',\n 800: '#1565c0',\n 900: '#0d47a1',\n A100: '#82b1ff',\n A200: '#448aff',\n A400: '#2979ff',\n A700: '#2962ff'\n};\nexport default blue;", "const lightBlue = {\n 50: '#e1f5fe',\n 100: '#b3e5fc',\n 200: '#81d4fa',\n 300: '#4fc3f7',\n 400: '#29b6f6',\n 500: '#03a9f4',\n 600: '#039be5',\n 700: '#0288d1',\n 800: '#0277bd',\n 900: '#01579b',\n A100: '#80d8ff',\n A200: '#40c4ff',\n A400: '#00b0ff',\n A700: '#0091ea'\n};\nexport default lightBlue;", "const green = {\n 50: '#e8f5e9',\n 100: '#c8e6c9',\n 200: '#a5d6a7',\n 300: '#81c784',\n 400: '#66bb6a',\n 500: '#4caf50',\n 600: '#43a047',\n 700: '#388e3c',\n 800: '#2e7d32',\n 900: '#1b5e20',\n A100: '#b9f6ca',\n A200: '#69f0ae',\n A400: '#00e676',\n A700: '#00c853'\n};\nexport default green;", "import _formatErrorMessage from \"@mui/utils/formatMuiErrorMessage\";\nimport deepmerge from '@mui/utils/deepmerge';\nimport { darken, getContrastRatio, lighten } from '@mui/system/colorManipulator';\nimport common from \"../colors/common.js\";\nimport grey from \"../colors/grey.js\";\nimport purple from \"../colors/purple.js\";\nimport red from \"../colors/red.js\";\nimport orange from \"../colors/orange.js\";\nimport blue from \"../colors/blue.js\";\nimport lightBlue from \"../colors/lightBlue.js\";\nimport green from \"../colors/green.js\";\nfunction getLight() {\n return {\n // The colors used to style the text.\n text: {\n // The most important text.\n primary: 'rgba(0, 0, 0, 0.87)',\n // Secondary text.\n secondary: 'rgba(0, 0, 0, 0.6)',\n // Disabled text have even lower visual prominence.\n disabled: 'rgba(0, 0, 0, 0.38)'\n },\n // The color used to divide different elements.\n divider: 'rgba(0, 0, 0, 0.12)',\n // The background colors used to style the surfaces.\n // Consistency between these values is important.\n background: {\n paper: common.white,\n default: common.white\n },\n // The colors used to style the action elements.\n action: {\n // The color of an active action like an icon button.\n active: 'rgba(0, 0, 0, 0.54)',\n // The color of an hovered action.\n hover: 'rgba(0, 0, 0, 0.04)',\n hoverOpacity: 0.04,\n // The color of a selected action.\n selected: 'rgba(0, 0, 0, 0.08)',\n selectedOpacity: 0.08,\n // The color of a disabled action.\n disabled: 'rgba(0, 0, 0, 0.26)',\n // The background color of a disabled action.\n disabledBackground: 'rgba(0, 0, 0, 0.12)',\n disabledOpacity: 0.38,\n focus: 'rgba(0, 0, 0, 0.12)',\n focusOpacity: 0.12,\n activatedOpacity: 0.12\n }\n };\n}\nexport const light = getLight();\nfunction getDark() {\n return {\n text: {\n primary: common.white,\n secondary: 'rgba(255, 255, 255, 0.7)',\n disabled: 'rgba(255, 255, 255, 0.5)',\n icon: 'rgba(255, 255, 255, 0.5)'\n },\n divider: 'rgba(255, 255, 255, 0.12)',\n background: {\n paper: '#121212',\n default: '#121212'\n },\n action: {\n active: common.white,\n hover: 'rgba(255, 255, 255, 0.08)',\n hoverOpacity: 0.08,\n selected: 'rgba(255, 255, 255, 0.16)',\n selectedOpacity: 0.16,\n disabled: 'rgba(255, 255, 255, 0.3)',\n disabledBackground: 'rgba(255, 255, 255, 0.12)',\n disabledOpacity: 0.38,\n focus: 'rgba(255, 255, 255, 0.12)',\n focusOpacity: 0.12,\n activatedOpacity: 0.24\n }\n };\n}\nexport const dark = getDark();\nfunction addLightOrDark(intent, direction, shade, tonalOffset) {\n const tonalOffsetLight = tonalOffset.light || tonalOffset;\n const tonalOffsetDark = tonalOffset.dark || tonalOffset * 1.5;\n if (!intent[direction]) {\n if (intent.hasOwnProperty(shade)) {\n intent[direction] = intent[shade];\n } else if (direction === 'light') {\n intent.light = lighten(intent.main, tonalOffsetLight);\n } else if (direction === 'dark') {\n intent.dark = darken(intent.main, tonalOffsetDark);\n }\n }\n}\nfunction getDefaultPrimary(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: blue[200],\n light: blue[50],\n dark: blue[400]\n };\n }\n return {\n main: blue[700],\n light: blue[400],\n dark: blue[800]\n };\n}\nfunction getDefaultSecondary(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: purple[200],\n light: purple[50],\n dark: purple[400]\n };\n }\n return {\n main: purple[500],\n light: purple[300],\n dark: purple[700]\n };\n}\nfunction getDefaultError(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: red[500],\n light: red[300],\n dark: red[700]\n };\n }\n return {\n main: red[700],\n light: red[400],\n dark: red[800]\n };\n}\nfunction getDefaultInfo(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: lightBlue[400],\n light: lightBlue[300],\n dark: lightBlue[700]\n };\n }\n return {\n main: lightBlue[700],\n light: lightBlue[500],\n dark: lightBlue[900]\n };\n}\nfunction getDefaultSuccess(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: green[400],\n light: green[300],\n dark: green[700]\n };\n }\n return {\n main: green[800],\n light: green[500],\n dark: green[900]\n };\n}\nfunction getDefaultWarning(mode = 'light') {\n if (mode === 'dark') {\n return {\n main: orange[400],\n light: orange[300],\n dark: orange[700]\n };\n }\n return {\n main: '#ed6c02',\n // closest to orange[800] that pass 3:1.\n light: orange[500],\n dark: orange[900]\n };\n}\nexport default function createPalette(palette) {\n const {\n mode = 'light',\n contrastThreshold = 3,\n tonalOffset = 0.2,\n ...other\n } = palette;\n const primary = palette.primary || getDefaultPrimary(mode);\n const secondary = palette.secondary || getDefaultSecondary(mode);\n const error = palette.error || getDefaultError(mode);\n const info = palette.info || getDefaultInfo(mode);\n const success = palette.success || getDefaultSuccess(mode);\n const warning = palette.warning || getDefaultWarning(mode);\n\n // Use the same logic as\n // Bootstrap: https://github.com/twbs/bootstrap/blob/1d6e3710dd447de1a200f29e8fa521f8a0908f70/scss/_functions.scss#L59\n // and material-components-web https://github.com/material-components/material-components-web/blob/ac46b8863c4dab9fc22c4c662dc6bd1b65dd652f/packages/mdc-theme/_functions.scss#L54\n function getContrastText(background) {\n const contrastText = getContrastRatio(background, dark.text.primary) >= contrastThreshold ? dark.text.primary : light.text.primary;\n if (process.env.NODE_ENV !== 'production') {\n const contrast = getContrastRatio(background, contrastText);\n if (contrast < 3) {\n console.error([`MUI: The contrast ratio of ${contrast}:1 for ${contrastText} on ${background}`, 'falls below the WCAG recommended absolute minimum contrast ratio of 3:1.', 'https://www.w3.org/TR/2008/REC-WCAG20-20081211/#visual-audio-contrast-contrast'].join('\\n'));\n }\n }\n return contrastText;\n }\n const augmentColor = ({\n color,\n name,\n mainShade = 500,\n lightShade = 300,\n darkShade = 700\n }) => {\n color = {\n ...color\n };\n if (!color.main && color[mainShade]) {\n color.main = color[mainShade];\n }\n if (!color.hasOwnProperty('main')) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: The color${name ? ` (${name})` : ''} provided to augmentColor(color) is invalid.\\n` + `The color object needs to have a \\`main\\` property or a \\`${mainShade}\\` property.` : _formatErrorMessage(11, name ? ` (${name})` : '', mainShade));\n }\n if (typeof color.main !== 'string') {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: The color${name ? ` (${name})` : ''} provided to augmentColor(color) is invalid.\\n` + `\\`color.main\\` should be a string, but \\`${JSON.stringify(color.main)}\\` was provided instead.\\n` + '\\n' + 'Did you intend to use one of the following approaches?\\n' + '\\n' + 'import { green } from \"@mui/material/colors\";\\n' + '\\n' + 'const theme1 = createTheme({ palette: {\\n' + ' primary: green,\\n' + '} });\\n' + '\\n' + 'const theme2 = createTheme({ palette: {\\n' + ' primary: { main: green[500] },\\n' + '} });' : _formatErrorMessage(12, name ? ` (${name})` : '', JSON.stringify(color.main)));\n }\n addLightOrDark(color, 'light', lightShade, tonalOffset);\n addLightOrDark(color, 'dark', darkShade, tonalOffset);\n if (!color.contrastText) {\n color.contrastText = getContrastText(color.main);\n }\n return color;\n };\n let modeHydrated;\n if (mode === 'light') {\n modeHydrated = getLight();\n } else if (mode === 'dark') {\n modeHydrated = getDark();\n }\n if (process.env.NODE_ENV !== 'production') {\n if (!modeHydrated) {\n console.error(`MUI: The palette mode \\`${mode}\\` is not supported.`);\n }\n }\n const paletteOutput = deepmerge({\n // A collection of common colors.\n common: {\n ...common\n },\n // prevent mutable object.\n // The palette mode, can be light or dark.\n mode,\n // The colors used to represent primary interface elements for a user.\n primary: augmentColor({\n color: primary,\n name: 'primary'\n }),\n // The colors used to represent secondary interface elements for a user.\n secondary: augmentColor({\n color: secondary,\n name: 'secondary',\n mainShade: 'A400',\n lightShade: 'A200',\n darkShade: 'A700'\n }),\n // The colors used to represent interface elements that the user should be made aware of.\n error: augmentColor({\n color: error,\n name: 'error'\n }),\n // The colors used to represent potentially dangerous actions or important messages.\n warning: augmentColor({\n color: warning,\n name: 'warning'\n }),\n // The colors used to present information to the user that is neutral and not necessarily important.\n info: augmentColor({\n color: info,\n name: 'info'\n }),\n // The colors used to indicate the successful completion of an action that user triggered.\n success: augmentColor({\n color: success,\n name: 'success'\n }),\n // The grey colors.\n grey,\n // Used by `getContrastText()` to maximize the contrast between\n // the background and the text.\n contrastThreshold,\n // Takes a background color and returns the text color that maximizes the contrast.\n getContrastText,\n // Generate a rich color object.\n augmentColor,\n // Used by the functions below to shift a color's luminance by approximately\n // two indexes within its tonal palette.\n // E.g., shift from Red 500 to Red 300 or Red 700.\n tonalOffset,\n // The light and dark mode object.\n ...modeHydrated\n }, other);\n return paletteOutput;\n}", "export default function prepareTypographyVars(typography) {\n const vars = {};\n const entries = Object.entries(typography);\n entries.forEach(entry => {\n const [key, value] = entry;\n if (typeof value === 'object') {\n vars[key] = `${value.fontStyle ? `${value.fontStyle} ` : ''}${value.fontVariant ? `${value.fontVariant} ` : ''}${value.fontWeight ? `${value.fontWeight} ` : ''}${value.fontStretch ? `${value.fontStretch} ` : ''}${value.fontSize || ''}${value.lineHeight ? `/${value.lineHeight} ` : ''}${value.fontFamily || ''}`;\n }\n });\n return vars;\n}", "export default function createMixins(breakpoints, mixins) {\n return {\n toolbar: {\n minHeight: 56,\n [breakpoints.up('xs')]: {\n '@media (orientation: landscape)': {\n minHeight: 48\n }\n },\n [breakpoints.up('sm')]: {\n minHeight: 64\n }\n },\n ...mixins\n };\n}", "import deepmerge from '@mui/utils/deepmerge';\nfunction round(value) {\n return Math.round(value * 1e5) / 1e5;\n}\nconst caseAllCaps = {\n textTransform: 'uppercase'\n};\nconst defaultFontFamily = '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif';\n\n/**\n * @see @link{https://m2.material.io/design/typography/the-type-system.html}\n * @see @link{https://m2.material.io/design/typography/understanding-typography.html}\n */\nexport default function createTypography(palette, typography) {\n const {\n fontFamily = defaultFontFamily,\n // The default font size of the Material Specification.\n fontSize = 14,\n // px\n fontWeightLight = 300,\n fontWeightRegular = 400,\n fontWeightMedium = 500,\n fontWeightBold = 700,\n // Tell MUI what's the font-size on the html element.\n // 16px is the default font-size used by browsers.\n htmlFontSize = 16,\n // Apply the CSS properties to all the variants.\n allVariants,\n pxToRem: pxToRem2,\n ...other\n } = typeof typography === 'function' ? typography(palette) : typography;\n if (process.env.NODE_ENV !== 'production') {\n if (typeof fontSize !== 'number') {\n console.error('MUI: `fontSize` is required to be a number.');\n }\n if (typeof htmlFontSize !== 'number') {\n console.error('MUI: `htmlFontSize` is required to be a number.');\n }\n }\n const coef = fontSize / 14;\n const pxToRem = pxToRem2 || (size => `${size / htmlFontSize * coef}rem`);\n const buildVariant = (fontWeight, size, lineHeight, letterSpacing, casing) => ({\n fontFamily,\n fontWeight,\n fontSize: pxToRem(size),\n // Unitless following https://meyerweb.com/eric/thoughts/2006/02/08/unitless-line-heights/\n lineHeight,\n // The letter spacing was designed for the Roboto font-family. Using the same letter-spacing\n // across font-families can cause issues with the kerning.\n ...(fontFamily === defaultFontFamily ? {\n letterSpacing: `${round(letterSpacing / size)}em`\n } : {}),\n ...casing,\n ...allVariants\n });\n const variants = {\n h1: buildVariant(fontWeightLight, 96, 1.167, -1.5),\n h2: buildVariant(fontWeightLight, 60, 1.2, -0.5),\n h3: buildVariant(fontWeightRegular, 48, 1.167, 0),\n h4: buildVariant(fontWeightRegular, 34, 1.235, 0.25),\n h5: buildVariant(fontWeightRegular, 24, 1.334, 0),\n h6: buildVariant(fontWeightMedium, 20, 1.6, 0.15),\n subtitle1: buildVariant(fontWeightRegular, 16, 1.75, 0.15),\n subtitle2: buildVariant(fontWeightMedium, 14, 1.57, 0.1),\n body1: buildVariant(fontWeightRegular, 16, 1.5, 0.15),\n body2: buildVariant(fontWeightRegular, 14, 1.43, 0.15),\n button: buildVariant(fontWeightMedium, 14, 1.75, 0.4, caseAllCaps),\n caption: buildVariant(fontWeightRegular, 12, 1.66, 0.4),\n overline: buildVariant(fontWeightRegular, 12, 2.66, 1, caseAllCaps),\n // TODO v6: Remove handling of 'inherit' variant from the theme as it is already handled in Material UI's Typography component. Also, remember to remove the associated types.\n inherit: {\n fontFamily: 'inherit',\n fontWeight: 'inherit',\n fontSize: 'inherit',\n lineHeight: 'inherit',\n letterSpacing: 'inherit'\n }\n };\n return deepmerge({\n htmlFontSize,\n pxToRem,\n fontFamily,\n fontSize,\n fontWeightLight,\n fontWeightRegular,\n fontWeightMedium,\n fontWeightBold,\n ...variants\n }, other, {\n clone: false // No need to clone deep\n });\n}", "const shadowKeyUmbraOpacity = 0.2;\nconst shadowKeyPenumbraOpacity = 0.14;\nconst shadowAmbientShadowOpacity = 0.12;\nfunction createShadow(...px) {\n return [`${px[0]}px ${px[1]}px ${px[2]}px ${px[3]}px rgba(0,0,0,${shadowKeyUmbraOpacity})`, `${px[4]}px ${px[5]}px ${px[6]}px ${px[7]}px rgba(0,0,0,${shadowKeyPenumbraOpacity})`, `${px[8]}px ${px[9]}px ${px[10]}px ${px[11]}px rgba(0,0,0,${shadowAmbientShadowOpacity})`].join(',');\n}\n\n// Values from https://github.com/material-components/material-components-web/blob/be8747f94574669cb5e7add1a7c54fa41a89cec7/packages/mdc-elevation/_variables.scss\nconst shadows = ['none', createShadow(0, 2, 1, -1, 0, 1, 1, 0, 0, 1, 3, 0), createShadow(0, 3, 1, -2, 0, 2, 2, 0, 0, 1, 5, 0), createShadow(0, 3, 3, -2, 0, 3, 4, 0, 0, 1, 8, 0), createShadow(0, 2, 4, -1, 0, 4, 5, 0, 0, 1, 10, 0), createShadow(0, 3, 5, -1, 0, 5, 8, 0, 0, 1, 14, 0), createShadow(0, 3, 5, -1, 0, 6, 10, 0, 0, 1, 18, 0), createShadow(0, 4, 5, -2, 0, 7, 10, 1, 0, 2, 16, 1), createShadow(0, 5, 5, -3, 0, 8, 10, 1, 0, 3, 14, 2), createShadow(0, 5, 6, -3, 0, 9, 12, 1, 0, 3, 16, 2), createShadow(0, 6, 6, -3, 0, 10, 14, 1, 0, 4, 18, 3), createShadow(0, 6, 7, -4, 0, 11, 15, 1, 0, 4, 20, 3), createShadow(0, 7, 8, -4, 0, 12, 17, 2, 0, 5, 22, 4), createShadow(0, 7, 8, -4, 0, 13, 19, 2, 0, 5, 24, 4), createShadow(0, 7, 9, -4, 0, 14, 21, 2, 0, 5, 26, 4), createShadow(0, 8, 9, -5, 0, 15, 22, 2, 0, 6, 28, 5), createShadow(0, 8, 10, -5, 0, 16, 24, 2, 0, 6, 30, 5), createShadow(0, 8, 11, -5, 0, 17, 26, 2, 0, 6, 32, 5), createShadow(0, 9, 11, -5, 0, 18, 28, 2, 0, 7, 34, 6), createShadow(0, 9, 12, -6, 0, 19, 29, 2, 0, 7, 36, 6), createShadow(0, 10, 13, -6, 0, 20, 31, 3, 0, 8, 38, 7), createShadow(0, 10, 13, -6, 0, 21, 33, 3, 0, 8, 40, 7), createShadow(0, 10, 14, -6, 0, 22, 35, 3, 0, 8, 42, 7), createShadow(0, 11, 14, -7, 0, 23, 36, 3, 0, 9, 44, 8), createShadow(0, 11, 15, -7, 0, 24, 38, 3, 0, 9, 46, 8)];\nexport default shadows;", "// Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves\n// to learn the context in which each easing should be used.\nexport const easing = {\n // This is the most common easing curve.\n easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)',\n // Objects enter the screen at full velocity from off-screen and\n // slowly decelerate to a resting point.\n easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)',\n // Objects leave the screen at full velocity. They do not decelerate when off-screen.\n easeIn: 'cubic-bezier(0.4, 0, 1, 1)',\n // The sharp curve is used by objects that may return to the screen at any time.\n sharp: 'cubic-bezier(0.4, 0, 0.6, 1)'\n};\n\n// Follow https://m2.material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations\n// to learn when use what timing\nexport const duration = {\n shortest: 150,\n shorter: 200,\n short: 250,\n // most basic recommended timing\n standard: 300,\n // this is to be used in complex animations\n complex: 375,\n // recommended when something is entering screen\n enteringScreen: 225,\n // recommended when something is leaving screen\n leavingScreen: 195\n};\nfunction formatMs(milliseconds) {\n return `${Math.round(milliseconds)}ms`;\n}\nfunction getAutoHeightDuration(height) {\n if (!height) {\n return 0;\n }\n const constant = height / 36;\n\n // https://www.desmos.com/calculator/vbrp3ggqet\n return Math.min(Math.round((4 + 15 * constant ** 0.25 + constant / 5) * 10), 3000);\n}\nexport default function createTransitions(inputTransitions) {\n const mergedEasing = {\n ...easing,\n ...inputTransitions.easing\n };\n const mergedDuration = {\n ...duration,\n ...inputTransitions.duration\n };\n const create = (props = ['all'], options = {}) => {\n const {\n duration: durationOption = mergedDuration.standard,\n easing: easingOption = mergedEasing.easeInOut,\n delay = 0,\n ...other\n } = options;\n if (process.env.NODE_ENV !== 'production') {\n const isString = value => typeof value === 'string';\n const isNumber = value => !Number.isNaN(parseFloat(value));\n if (!isString(props) && !Array.isArray(props)) {\n console.error('MUI: Argument \"props\" must be a string or Array.');\n }\n if (!isNumber(durationOption) && !isString(durationOption)) {\n console.error(`MUI: Argument \"duration\" must be a number or a string but found ${durationOption}.`);\n }\n if (!isString(easingOption)) {\n console.error('MUI: Argument \"easing\" must be a string.');\n }\n if (!isNumber(delay) && !isString(delay)) {\n console.error('MUI: Argument \"delay\" must be a number or a string.');\n }\n if (typeof options !== 'object') {\n console.error(['MUI: Secong argument of transition.create must be an object.', \"Arguments should be either `create('prop1', options)` or `create(['prop1', 'prop2'], options)`\"].join('\\n'));\n }\n if (Object.keys(other).length !== 0) {\n console.error(`MUI: Unrecognized argument(s) [${Object.keys(other).join(',')}].`);\n }\n }\n return (Array.isArray(props) ? props : [props]).map(animatedProp => `${animatedProp} ${typeof durationOption === 'string' ? durationOption : formatMs(durationOption)} ${easingOption} ${typeof delay === 'string' ? delay : formatMs(delay)}`).join(',');\n };\n return {\n getAutoHeightDuration,\n create,\n ...inputTransitions,\n easing: mergedEasing,\n duration: mergedDuration\n };\n}", "// We need to centralize the zIndex definitions as they work\n// like global values in the browser.\nconst zIndex = {\n mobileStepper: 1000,\n fab: 1050,\n speedDial: 1050,\n appBar: 1100,\n drawer: 1200,\n modal: 1300,\n snackbar: 1400,\n tooltip: 1500\n};\nexport default zIndex;", "/* eslint-disable import/prefer-default-export */\nimport { isPlainObject } from '@mui/utils/deepmerge';\nfunction isSerializable(val) {\n return isPlainObject(val) || typeof val === 'undefined' || typeof val === 'string' || typeof val === 'boolean' || typeof val === 'number' || Array.isArray(val);\n}\n\n/**\n * `baseTheme` usually comes from `createTheme()` or `extendTheme()`.\n *\n * This function is intended to be used with zero-runtime CSS-in-JS like Pigment CSS\n * For example, in a Next.js project:\n *\n * ```js\n * // next.config.js\n * const { extendTheme } = require('@mui/material/styles');\n *\n * const theme = extendTheme();\n * // `.toRuntimeSource` is Pigment CSS specific to create a theme that is available at runtime.\n * theme.toRuntimeSource = stringifyTheme;\n *\n * module.exports = withPigment({\n * theme,\n * });\n * ```\n */\nexport function stringifyTheme(baseTheme = {}) {\n const serializableTheme = {\n ...baseTheme\n };\n function serializeTheme(object) {\n const array = Object.entries(object);\n // eslint-disable-next-line no-plusplus\n for (let index = 0; index < array.length; index++) {\n const [key, value] = array[index];\n if (!isSerializable(value) || key.startsWith('unstable_')) {\n delete object[key];\n } else if (isPlainObject(value)) {\n object[key] = {\n ...value\n };\n serializeTheme(object[key]);\n }\n }\n }\n serializeTheme(serializableTheme);\n return `import { unstable_createBreakpoints as createBreakpoints, createTransitions } from '@mui/material/styles';\n\nconst theme = ${JSON.stringify(serializableTheme, null, 2)};\n\ntheme.breakpoints = createBreakpoints(theme.breakpoints || {});\ntheme.transitions = createTransitions(theme.transitions || {});\n\nexport default theme;`;\n}", "import _formatErrorMessage from \"@mui/utils/formatMuiErrorMessage\";\nimport deepmerge from '@mui/utils/deepmerge';\nimport styleFunctionSx, { unstable_defaultSxConfig as defaultSxConfig } from '@mui/system/styleFunctionSx';\nimport systemCreateTheme from '@mui/system/createTheme';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nimport createMixins from \"./createMixins.js\";\nimport createPalette from \"./createPalette.js\";\nimport createTypography from \"./createTypography.js\";\nimport shadows from \"./shadows.js\";\nimport createTransitions from \"./createTransitions.js\";\nimport zIndex from \"./zIndex.js\";\nimport { stringifyTheme } from \"./stringifyTheme.js\";\nfunction createThemeNoVars(options = {}, ...args) {\n const {\n breakpoints: breakpointsInput,\n mixins: mixinsInput = {},\n spacing: spacingInput,\n palette: paletteInput = {},\n transitions: transitionsInput = {},\n typography: typographyInput = {},\n shape: shapeInput,\n ...other\n } = options;\n if (options.vars &&\n // The error should throw only for the root theme creation because user is not allowed to use a custom node `vars`.\n // `generateThemeVars` is the closest identifier for checking that the `options` is a result of `createTheme` with CSS variables so that user can create new theme for nested ThemeProvider.\n options.generateThemeVars === undefined) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'MUI: `vars` is a private field used for CSS variables support.\\n' +\n // #host-reference\n 'Please use another name or follow the [docs](https://mui.com/material-ui/customization/css-theme-variables/usage/) to enable the feature.' : _formatErrorMessage(20));\n }\n const palette = createPalette(paletteInput);\n const systemTheme = systemCreateTheme(options);\n let muiTheme = deepmerge(systemTheme, {\n mixins: createMixins(systemTheme.breakpoints, mixinsInput),\n palette,\n // Don't use [...shadows] until you've verified its transpiled code is not invoking the iterator protocol.\n shadows: shadows.slice(),\n typography: createTypography(palette, typographyInput),\n transitions: createTransitions(transitionsInput),\n zIndex: {\n ...zIndex\n }\n });\n muiTheme = deepmerge(muiTheme, other);\n muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);\n if (process.env.NODE_ENV !== 'production') {\n // TODO v6: Refactor to use globalStateClassesMapping from @mui/utils once `readOnly` state class is used in Rating component.\n const stateClasses = ['active', 'checked', 'completed', 'disabled', 'error', 'expanded', 'focused', 'focusVisible', 'required', 'selected'];\n const traverse = (node, component) => {\n let key;\n\n // eslint-disable-next-line guard-for-in\n for (key in node) {\n const child = node[key];\n if (stateClasses.includes(key) && Object.keys(child).length > 0) {\n if (process.env.NODE_ENV !== 'production') {\n const stateClass = generateUtilityClass('', key);\n console.error([`MUI: The \\`${component}\\` component increases ` + `the CSS specificity of the \\`${key}\\` internal state.`, 'You can not override it like this: ', JSON.stringify(node, null, 2), '', `Instead, you need to use the '&.${stateClass}' syntax:`, JSON.stringify({\n root: {\n [`&.${stateClass}`]: child\n }\n }, null, 2), '', 'https://mui.com/r/state-classes-guide'].join('\\n'));\n }\n // Remove the style to prevent global conflicts.\n node[key] = {};\n }\n }\n };\n Object.keys(muiTheme.components).forEach(component => {\n const styleOverrides = muiTheme.components[component].styleOverrides;\n if (styleOverrides && component.startsWith('Mui')) {\n traverse(styleOverrides, component);\n }\n });\n }\n muiTheme.unstable_sxConfig = {\n ...defaultSxConfig,\n ...other?.unstable_sxConfig\n };\n muiTheme.unstable_sx = function sx(props) {\n return styleFunctionSx({\n sx: props,\n theme: this\n });\n };\n muiTheme.toRuntimeSource = stringifyTheme; // for Pigment CSS integration\n\n return muiTheme;\n}\nexport default createThemeNoVars;", "// Inspired by https://github.com/material-components/material-components-ios/blob/bca36107405594d5b7b16265a5b0ed698f85a5ee/components/Elevation/src/UIColor%2BMaterialElevation.m#L61\nexport default function getOverlayAlpha(elevation) {\n let alphaValue;\n if (elevation < 1) {\n alphaValue = 5.11916 * elevation ** 2;\n } else {\n alphaValue = 4.5 * Math.log(elevation + 1) + 2;\n }\n return Math.round(alphaValue * 10) / 1000;\n}", "import createPalette from \"./createPalette.js\";\nimport getOverlayAlpha from \"./getOverlayAlpha.js\";\nconst defaultDarkOverlays = [...Array(25)].map((_, index) => {\n if (index === 0) {\n return 'none';\n }\n const overlay = getOverlayAlpha(index);\n return `linear-gradient(rgba(255 255 255 / ${overlay}), rgba(255 255 255 / ${overlay}))`;\n});\nexport function getOpacity(mode) {\n return {\n inputPlaceholder: mode === 'dark' ? 0.5 : 0.42,\n inputUnderline: mode === 'dark' ? 0.7 : 0.42,\n switchTrackDisabled: mode === 'dark' ? 0.2 : 0.12,\n switchTrack: mode === 'dark' ? 0.3 : 0.38\n };\n}\nexport function getOverlays(mode) {\n return mode === 'dark' ? defaultDarkOverlays : [];\n}\nexport default function createColorScheme(options) {\n const {\n palette: paletteInput = {\n mode: 'light'\n },\n // need to cast to avoid module augmentation test\n opacity,\n overlays,\n ...rest\n } = options;\n const palette = createPalette(paletteInput);\n return {\n palette,\n opacity: {\n ...getOpacity(palette.mode),\n ...opacity\n },\n overlays: overlays || getOverlays(palette.mode),\n ...rest\n };\n}", "export default function shouldSkipGeneratingVar(keys) {\n return !!keys[0].match(/(cssVarPrefix|colorSchemeSelector|rootSelector|typography|mixins|breakpoints|direction|transitions)/) || !!keys[0].match(/sxConfig$/) ||\n // ends with sxConfig\n keys[0] === 'palette' && !!keys[1]?.match(/(mode|contrastThreshold|tonalOffset)/);\n}", "/**\n * @internal These variables should not appear in the :root stylesheet when the `defaultColorScheme=\"dark\"`\n */\nconst excludeVariablesFromRoot = cssVarPrefix => [...[...Array(25)].map((_, index) => `--${cssVarPrefix ? `${cssVarPrefix}-` : ''}overlays-${index}`), `--${cssVarPrefix ? `${cssVarPrefix}-` : ''}palette-AppBar-darkBg`, `--${cssVarPrefix ? `${cssVarPrefix}-` : ''}palette-AppBar-darkColor`];\nexport default excludeVariablesFromRoot;", "import excludeVariablesFromRoot from \"./excludeVariablesFromRoot.js\";\nexport default theme => (colorScheme, css) => {\n const root = theme.rootSelector || ':root';\n const selector = theme.colorSchemeSelector;\n let rule = selector;\n if (selector === 'class') {\n rule = '.%s';\n }\n if (selector === 'data') {\n rule = '[data-%s]';\n }\n if (selector?.startsWith('data-') && !selector.includes('%s')) {\n // 'data-mui-color-scheme' -> '[data-mui-color-scheme=\"%s\"]'\n rule = `[${selector}=\"%s\"]`;\n }\n if (theme.defaultColorScheme === colorScheme) {\n if (colorScheme === 'dark') {\n const excludedVariables = {};\n excludeVariablesFromRoot(theme.cssVarPrefix).forEach(cssVar => {\n excludedVariables[cssVar] = css[cssVar];\n delete css[cssVar];\n });\n if (rule === 'media') {\n return {\n [root]: css,\n [`@media (prefers-color-scheme: dark)`]: {\n [root]: excludedVariables\n }\n };\n }\n if (rule) {\n return {\n [rule.replace('%s', colorScheme)]: excludedVariables,\n [`${root}, ${rule.replace('%s', colorScheme)}`]: css\n };\n }\n return {\n [root]: {\n ...css,\n ...excludedVariables\n }\n };\n }\n if (rule && rule !== 'media') {\n return `${root}, ${rule.replace('%s', String(colorScheme))}`;\n }\n } else if (colorScheme) {\n if (rule === 'media') {\n return {\n [`@media (prefers-color-scheme: ${String(colorScheme)})`]: {\n [root]: css\n }\n };\n }\n if (rule) {\n return rule.replace('%s', String(colorScheme));\n }\n }\n return root;\n};", "import _formatErrorMessage from \"@mui/utils/formatMuiErrorMessage\";\nimport deepmerge from '@mui/utils/deepmerge';\nimport { unstable_createGetCssVar as systemCreateGetCssVar, createSpacing } from '@mui/system';\nimport { createUnarySpacing } from '@mui/system/spacing';\nimport { prepareCssVars, prepareTypographyVars, createGetColorSchemeSelector } from '@mui/system/cssVars';\nimport styleFunctionSx, { unstable_defaultSxConfig as defaultSxConfig } from '@mui/system/styleFunctionSx';\nimport { private_safeColorChannel as safeColorChannel, private_safeAlpha as safeAlpha, private_safeDarken as safeDarken, private_safeLighten as safeLighten, private_safeEmphasize as safeEmphasize, hslToRgb } from '@mui/system/colorManipulator';\nimport createThemeNoVars from \"./createThemeNoVars.js\";\nimport createColorScheme, { getOpacity, getOverlays } from \"./createColorScheme.js\";\nimport defaultShouldSkipGeneratingVar from \"./shouldSkipGeneratingVar.js\";\nimport defaultGetSelector from \"./createGetSelector.js\";\nimport { stringifyTheme } from \"./stringifyTheme.js\";\nfunction assignNode(obj, keys) {\n keys.forEach(k => {\n if (!obj[k]) {\n obj[k] = {};\n }\n });\n}\nfunction setColor(obj, key, defaultValue) {\n if (!obj[key] && defaultValue) {\n obj[key] = defaultValue;\n }\n}\nfunction toRgb(color) {\n if (typeof color !== 'string' || !color.startsWith('hsl')) {\n return color;\n }\n return hslToRgb(color);\n}\nfunction setColorChannel(obj, key) {\n if (!(`${key}Channel` in obj)) {\n // custom channel token is not provided, generate one.\n // if channel token can't be generated, show a warning.\n obj[`${key}Channel`] = safeColorChannel(toRgb(obj[key]), `MUI: Can't create \\`palette.${key}Channel\\` because \\`palette.${key}\\` is not one of these formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().` + '\\n' + `To suppress this warning, you need to explicitly provide the \\`palette.${key}Channel\\` as a string (in rgb format, for example \"12 12 12\") or undefined if you want to remove the channel token.`);\n }\n}\nfunction getSpacingVal(spacingInput) {\n if (typeof spacingInput === 'number') {\n return `${spacingInput}px`;\n }\n if (typeof spacingInput === 'string' || typeof spacingInput === 'function' || Array.isArray(spacingInput)) {\n return spacingInput;\n }\n return '8px';\n}\nconst silent = fn => {\n try {\n return fn();\n } catch (error) {\n // ignore error\n }\n return undefined;\n};\nexport const createGetCssVar = (cssVarPrefix = 'mui') => systemCreateGetCssVar(cssVarPrefix);\nfunction attachColorScheme(colorSchemes, scheme, restTheme, colorScheme) {\n if (!scheme) {\n return undefined;\n }\n scheme = scheme === true ? {} : scheme;\n const mode = colorScheme === 'dark' ? 'dark' : 'light';\n if (!restTheme) {\n colorSchemes[colorScheme] = createColorScheme({\n ...scheme,\n palette: {\n mode,\n ...scheme?.palette\n }\n });\n return undefined;\n }\n const {\n palette,\n ...muiTheme\n } = createThemeNoVars({\n ...restTheme,\n palette: {\n mode,\n ...scheme?.palette\n }\n });\n colorSchemes[colorScheme] = {\n ...scheme,\n palette,\n opacity: {\n ...getOpacity(mode),\n ...scheme?.opacity\n },\n overlays: scheme?.overlays || getOverlays(mode)\n };\n return muiTheme;\n}\n\n/**\n * A default `createThemeWithVars` comes with a single color scheme, either `light` or `dark` based on the `defaultColorScheme`.\n * This is better suited for apps that only need a single color scheme.\n *\n * To enable built-in `light` and `dark` color schemes, either:\n * 1. provide a `colorSchemeSelector` to define how the color schemes will change.\n * 2. provide `colorSchemes.dark` will set `colorSchemeSelector: 'media'` by default.\n */\nexport default function createThemeWithVars(options = {}, ...args) {\n const {\n colorSchemes: colorSchemesInput = {\n light: true\n },\n defaultColorScheme: defaultColorSchemeInput,\n disableCssColorScheme = false,\n cssVarPrefix = 'mui',\n shouldSkipGeneratingVar = defaultShouldSkipGeneratingVar,\n colorSchemeSelector: selector = colorSchemesInput.light && colorSchemesInput.dark ? 'media' : undefined,\n rootSelector = ':root',\n ...input\n } = options;\n const firstColorScheme = Object.keys(colorSchemesInput)[0];\n const defaultColorScheme = defaultColorSchemeInput || (colorSchemesInput.light && firstColorScheme !== 'light' ? 'light' : firstColorScheme);\n const getCssVar = createGetCssVar(cssVarPrefix);\n const {\n [defaultColorScheme]: defaultSchemeInput,\n light: builtInLight,\n dark: builtInDark,\n ...customColorSchemes\n } = colorSchemesInput;\n const colorSchemes = {\n ...customColorSchemes\n };\n let defaultScheme = defaultSchemeInput;\n\n // For built-in light and dark color schemes, ensure that the value is valid if they are the default color scheme.\n if (defaultColorScheme === 'dark' && !('dark' in colorSchemesInput) || defaultColorScheme === 'light' && !('light' in colorSchemesInput)) {\n defaultScheme = true;\n }\n if (!defaultScheme) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: The \\`colorSchemes.${defaultColorScheme}\\` option is either missing or invalid.` : _formatErrorMessage(21, defaultColorScheme));\n }\n\n // Create the palette for the default color scheme, either `light`, `dark`, or custom color scheme.\n const muiTheme = attachColorScheme(colorSchemes, defaultScheme, input, defaultColorScheme);\n if (builtInLight && !colorSchemes.light) {\n attachColorScheme(colorSchemes, builtInLight, undefined, 'light');\n }\n if (builtInDark && !colorSchemes.dark) {\n attachColorScheme(colorSchemes, builtInDark, undefined, 'dark');\n }\n let theme = {\n defaultColorScheme,\n ...muiTheme,\n cssVarPrefix,\n colorSchemeSelector: selector,\n rootSelector,\n getCssVar,\n colorSchemes,\n font: {\n ...prepareTypographyVars(muiTheme.typography),\n ...muiTheme.font\n },\n spacing: getSpacingVal(input.spacing)\n };\n Object.keys(theme.colorSchemes).forEach(key => {\n const palette = theme.colorSchemes[key].palette;\n const setCssVarColor = cssVar => {\n const tokens = cssVar.split('-');\n const color = tokens[1];\n const colorToken = tokens[2];\n return getCssVar(cssVar, palette[color][colorToken]);\n };\n\n // attach black & white channels to common node\n if (palette.mode === 'light') {\n setColor(palette.common, 'background', '#fff');\n setColor(palette.common, 'onBackground', '#000');\n }\n if (palette.mode === 'dark') {\n setColor(palette.common, 'background', '#000');\n setColor(palette.common, 'onBackground', '#fff');\n }\n\n // assign component variables\n assignNode(palette, ['Alert', 'AppBar', 'Avatar', 'Button', 'Chip', 'FilledInput', 'LinearProgress', 'Skeleton', 'Slider', 'SnackbarContent', 'SpeedDialAction', 'StepConnector', 'StepContent', 'Switch', 'TableCell', 'Tooltip']);\n if (palette.mode === 'light') {\n setColor(palette.Alert, 'errorColor', safeDarken(palette.error.light, 0.6));\n setColor(palette.Alert, 'infoColor', safeDarken(palette.info.light, 0.6));\n setColor(palette.Alert, 'successColor', safeDarken(palette.success.light, 0.6));\n setColor(palette.Alert, 'warningColor', safeDarken(palette.warning.light, 0.6));\n setColor(palette.Alert, 'errorFilledBg', setCssVarColor('palette-error-main'));\n setColor(palette.Alert, 'infoFilledBg', setCssVarColor('palette-info-main'));\n setColor(palette.Alert, 'successFilledBg', setCssVarColor('palette-success-main'));\n setColor(palette.Alert, 'warningFilledBg', setCssVarColor('palette-warning-main'));\n setColor(palette.Alert, 'errorFilledColor', silent(() => palette.getContrastText(palette.error.main)));\n setColor(palette.Alert, 'infoFilledColor', silent(() => palette.getContrastText(palette.info.main)));\n setColor(palette.Alert, 'successFilledColor', silent(() => palette.getContrastText(palette.success.main)));\n setColor(palette.Alert, 'warningFilledColor', silent(() => palette.getContrastText(palette.warning.main)));\n setColor(palette.Alert, 'errorStandardBg', safeLighten(palette.error.light, 0.9));\n setColor(palette.Alert, 'infoStandardBg', safeLighten(palette.info.light, 0.9));\n setColor(palette.Alert, 'successStandardBg', safeLighten(palette.success.light, 0.9));\n setColor(palette.Alert, 'warningStandardBg', safeLighten(palette.warning.light, 0.9));\n setColor(palette.Alert, 'errorIconColor', setCssVarColor('palette-error-main'));\n setColor(palette.Alert, 'infoIconColor', setCssVarColor('palette-info-main'));\n setColor(palette.Alert, 'successIconColor', setCssVarColor('palette-success-main'));\n setColor(palette.Alert, 'warningIconColor', setCssVarColor('palette-warning-main'));\n setColor(palette.AppBar, 'defaultBg', setCssVarColor('palette-grey-100'));\n setColor(palette.Avatar, 'defaultBg', setCssVarColor('palette-grey-400'));\n setColor(palette.Button, 'inheritContainedBg', setCssVarColor('palette-grey-300'));\n setColor(palette.Button, 'inheritContainedHoverBg', setCssVarColor('palette-grey-A100'));\n setColor(palette.Chip, 'defaultBorder', setCssVarColor('palette-grey-400'));\n setColor(palette.Chip, 'defaultAvatarColor', setCssVarColor('palette-grey-700'));\n setColor(palette.Chip, 'defaultIconColor', setCssVarColor('palette-grey-700'));\n setColor(palette.FilledInput, 'bg', 'rgba(0, 0, 0, 0.06)');\n setColor(palette.FilledInput, 'hoverBg', 'rgba(0, 0, 0, 0.09)');\n setColor(palette.FilledInput, 'disabledBg', 'rgba(0, 0, 0, 0.12)');\n setColor(palette.LinearProgress, 'primaryBg', safeLighten(palette.primary.main, 0.62));\n setColor(palette.LinearProgress, 'secondaryBg', safeLighten(palette.secondary.main, 0.62));\n setColor(palette.LinearProgress, 'errorBg', safeLighten(palette.error.main, 0.62));\n setColor(palette.LinearProgress, 'infoBg', safeLighten(palette.info.main, 0.62));\n setColor(palette.LinearProgress, 'successBg', safeLighten(palette.success.main, 0.62));\n setColor(palette.LinearProgress, 'warningBg', safeLighten(palette.warning.main, 0.62));\n setColor(palette.Skeleton, 'bg', `rgba(${setCssVarColor('palette-text-primaryChannel')} / 0.11)`);\n setColor(palette.Slider, 'primaryTrack', safeLighten(palette.primary.main, 0.62));\n setColor(palette.Slider, 'secondaryTrack', safeLighten(palette.secondary.main, 0.62));\n setColor(palette.Slider, 'errorTrack', safeLighten(palette.error.main, 0.62));\n setColor(palette.Slider, 'infoTrack', safeLighten(palette.info.main, 0.62));\n setColor(palette.Slider, 'successTrack', safeLighten(palette.success.main, 0.62));\n setColor(palette.Slider, 'warningTrack', safeLighten(palette.warning.main, 0.62));\n const snackbarContentBackground = safeEmphasize(palette.background.default, 0.8);\n setColor(palette.SnackbarContent, 'bg', snackbarContentBackground);\n setColor(palette.SnackbarContent, 'color', silent(() => palette.getContrastText(snackbarContentBackground)));\n setColor(palette.SpeedDialAction, 'fabHoverBg', safeEmphasize(palette.background.paper, 0.15));\n setColor(palette.StepConnector, 'border', setCssVarColor('palette-grey-400'));\n setColor(palette.StepContent, 'border', setCssVarColor('palette-grey-400'));\n setColor(palette.Switch, 'defaultColor', setCssVarColor('palette-common-white'));\n setColor(palette.Switch, 'defaultDisabledColor', setCssVarColor('palette-grey-100'));\n setColor(palette.Switch, 'primaryDisabledColor', safeLighten(palette.primary.main, 0.62));\n setColor(palette.Switch, 'secondaryDisabledColor', safeLighten(palette.secondary.main, 0.62));\n setColor(palette.Switch, 'errorDisabledColor', safeLighten(palette.error.main, 0.62));\n setColor(palette.Switch, 'infoDisabledColor', safeLighten(palette.info.main, 0.62));\n setColor(palette.Switch, 'successDisabledColor', safeLighten(palette.success.main, 0.62));\n setColor(palette.Switch, 'warningDisabledColor', safeLighten(palette.warning.main, 0.62));\n setColor(palette.TableCell, 'border', safeLighten(safeAlpha(palette.divider, 1), 0.88));\n setColor(palette.Tooltip, 'bg', safeAlpha(palette.grey[700], 0.92));\n }\n if (palette.mode === 'dark') {\n setColor(palette.Alert, 'errorColor', safeLighten(palette.error.light, 0.6));\n setColor(palette.Alert, 'infoColor', safeLighten(palette.info.light, 0.6));\n setColor(palette.Alert, 'successColor', safeLighten(palette.success.light, 0.6));\n setColor(palette.Alert, 'warningColor', safeLighten(palette.warning.light, 0.6));\n setColor(palette.Alert, 'errorFilledBg', setCssVarColor('palette-error-dark'));\n setColor(palette.Alert, 'infoFilledBg', setCssVarColor('palette-info-dark'));\n setColor(palette.Alert, 'successFilledBg', setCssVarColor('palette-success-dark'));\n setColor(palette.Alert, 'warningFilledBg', setCssVarColor('palette-warning-dark'));\n setColor(palette.Alert, 'errorFilledColor', silent(() => palette.getContrastText(palette.error.dark)));\n setColor(palette.Alert, 'infoFilledColor', silent(() => palette.getContrastText(palette.info.dark)));\n setColor(palette.Alert, 'successFilledColor', silent(() => palette.getContrastText(palette.success.dark)));\n setColor(palette.Alert, 'warningFilledColor', silent(() => palette.getContrastText(palette.warning.dark)));\n setColor(palette.Alert, 'errorStandardBg', safeDarken(palette.error.light, 0.9));\n setColor(palette.Alert, 'infoStandardBg', safeDarken(palette.info.light, 0.9));\n setColor(palette.Alert, 'successStandardBg', safeDarken(palette.success.light, 0.9));\n setColor(palette.Alert, 'warningStandardBg', safeDarken(palette.warning.light, 0.9));\n setColor(palette.Alert, 'errorIconColor', setCssVarColor('palette-error-main'));\n setColor(palette.Alert, 'infoIconColor', setCssVarColor('palette-info-main'));\n setColor(palette.Alert, 'successIconColor', setCssVarColor('palette-success-main'));\n setColor(palette.Alert, 'warningIconColor', setCssVarColor('palette-warning-main'));\n setColor(palette.AppBar, 'defaultBg', setCssVarColor('palette-grey-900'));\n setColor(palette.AppBar, 'darkBg', setCssVarColor('palette-background-paper')); // specific for dark mode\n setColor(palette.AppBar, 'darkColor', setCssVarColor('palette-text-primary')); // specific for dark mode\n setColor(palette.Avatar, 'defaultBg', setCssVarColor('palette-grey-600'));\n setColor(palette.Button, 'inheritContainedBg', setCssVarColor('palette-grey-800'));\n setColor(palette.Button, 'inheritContainedHoverBg', setCssVarColor('palette-grey-700'));\n setColor(palette.Chip, 'defaultBorder', setCssVarColor('palette-grey-700'));\n setColor(palette.Chip, 'defaultAvatarColor', setCssVarColor('palette-grey-300'));\n setColor(palette.Chip, 'defaultIconColor', setCssVarColor('palette-grey-300'));\n setColor(palette.FilledInput, 'bg', 'rgba(255, 255, 255, 0.09)');\n setColor(palette.FilledInput, 'hoverBg', 'rgba(255, 255, 255, 0.13)');\n setColor(palette.FilledInput, 'disabledBg', 'rgba(255, 255, 255, 0.12)');\n setColor(palette.LinearProgress, 'primaryBg', safeDarken(palette.primary.main, 0.5));\n setColor(palette.LinearProgress, 'secondaryBg', safeDarken(palette.secondary.main, 0.5));\n setColor(palette.LinearProgress, 'errorBg', safeDarken(palette.error.main, 0.5));\n setColor(palette.LinearProgress, 'infoBg', safeDarken(palette.info.main, 0.5));\n setColor(palette.LinearProgress, 'successBg', safeDarken(palette.success.main, 0.5));\n setColor(palette.LinearProgress, 'warningBg', safeDarken(palette.warning.main, 0.5));\n setColor(palette.Skeleton, 'bg', `rgba(${setCssVarColor('palette-text-primaryChannel')} / 0.13)`);\n setColor(palette.Slider, 'primaryTrack', safeDarken(palette.primary.main, 0.5));\n setColor(palette.Slider, 'secondaryTrack', safeDarken(palette.secondary.main, 0.5));\n setColor(palette.Slider, 'errorTrack', safeDarken(palette.error.main, 0.5));\n setColor(palette.Slider, 'infoTrack', safeDarken(palette.info.main, 0.5));\n setColor(palette.Slider, 'successTrack', safeDarken(palette.success.main, 0.5));\n setColor(palette.Slider, 'warningTrack', safeDarken(palette.warning.main, 0.5));\n const snackbarContentBackground = safeEmphasize(palette.background.default, 0.98);\n setColor(palette.SnackbarContent, 'bg', snackbarContentBackground);\n setColor(palette.SnackbarContent, 'color', silent(() => palette.getContrastText(snackbarContentBackground)));\n setColor(palette.SpeedDialAction, 'fabHoverBg', safeEmphasize(palette.background.paper, 0.15));\n setColor(palette.StepConnector, 'border', setCssVarColor('palette-grey-600'));\n setColor(palette.StepContent, 'border', setCssVarColor('palette-grey-600'));\n setColor(palette.Switch, 'defaultColor', setCssVarColor('palette-grey-300'));\n setColor(palette.Switch, 'defaultDisabledColor', setCssVarColor('palette-grey-600'));\n setColor(palette.Switch, 'primaryDisabledColor', safeDarken(palette.primary.main, 0.55));\n setColor(palette.Switch, 'secondaryDisabledColor', safeDarken(palette.secondary.main, 0.55));\n setColor(palette.Switch, 'errorDisabledColor', safeDarken(palette.error.main, 0.55));\n setColor(palette.Switch, 'infoDisabledColor', safeDarken(palette.info.main, 0.55));\n setColor(palette.Switch, 'successDisabledColor', safeDarken(palette.success.main, 0.55));\n setColor(palette.Switch, 'warningDisabledColor', safeDarken(palette.warning.main, 0.55));\n setColor(palette.TableCell, 'border', safeDarken(safeAlpha(palette.divider, 1), 0.68));\n setColor(palette.Tooltip, 'bg', safeAlpha(palette.grey[700], 0.92));\n }\n\n // MUI X - DataGrid needs this token.\n setColorChannel(palette.background, 'default');\n\n // added for consistency with the `background.default` token\n setColorChannel(palette.background, 'paper');\n setColorChannel(palette.common, 'background');\n setColorChannel(palette.common, 'onBackground');\n setColorChannel(palette, 'divider');\n Object.keys(palette).forEach(color => {\n const colors = palette[color];\n\n // The default palettes (primary, secondary, error, info, success, and warning) errors are handled by the above `createTheme(...)`.\n\n if (color !== 'tonalOffset' && colors && typeof colors === 'object') {\n // Silent the error for custom palettes.\n if (colors.main) {\n setColor(palette[color], 'mainChannel', safeColorChannel(toRgb(colors.main)));\n }\n if (colors.light) {\n setColor(palette[color], 'lightChannel', safeColorChannel(toRgb(colors.light)));\n }\n if (colors.dark) {\n setColor(palette[color], 'darkChannel', safeColorChannel(toRgb(colors.dark)));\n }\n if (colors.contrastText) {\n setColor(palette[color], 'contrastTextChannel', safeColorChannel(toRgb(colors.contrastText)));\n }\n if (color === 'text') {\n // Text colors: text.primary, text.secondary\n setColorChannel(palette[color], 'primary');\n setColorChannel(palette[color], 'secondary');\n }\n if (color === 'action') {\n // Action colors: action.active, action.selected\n if (colors.active) {\n setColorChannel(palette[color], 'active');\n }\n if (colors.selected) {\n setColorChannel(palette[color], 'selected');\n }\n }\n }\n });\n });\n theme = args.reduce((acc, argument) => deepmerge(acc, argument), theme);\n const parserConfig = {\n prefix: cssVarPrefix,\n disableCssColorScheme,\n shouldSkipGeneratingVar,\n getSelector: defaultGetSelector(theme)\n };\n const {\n vars,\n generateThemeVars,\n generateStyleSheets\n } = prepareCssVars(theme, parserConfig);\n theme.vars = vars;\n Object.entries(theme.colorSchemes[theme.defaultColorScheme]).forEach(([key, value]) => {\n theme[key] = value;\n });\n theme.generateThemeVars = generateThemeVars;\n theme.generateStyleSheets = generateStyleSheets;\n theme.generateSpacing = function generateSpacing() {\n return createSpacing(input.spacing, createUnarySpacing(this));\n };\n theme.getColorSchemeSelector = createGetColorSchemeSelector(selector);\n theme.spacing = theme.generateSpacing();\n theme.shouldSkipGeneratingVar = shouldSkipGeneratingVar;\n theme.unstable_sxConfig = {\n ...defaultSxConfig,\n ...input?.unstable_sxConfig\n };\n theme.unstable_sx = function sx(props) {\n return styleFunctionSx({\n sx: props,\n theme: this\n });\n };\n theme.toRuntimeSource = stringifyTheme; // for Pigment CSS integration\n\n return theme;\n}", "import createPalette from \"./createPalette.js\";\nimport createThemeWithVars from \"./createThemeWithVars.js\";\nimport createThemeNoVars from \"./createThemeNoVars.js\";\n// eslint-disable-next-line consistent-return\nfunction attachColorScheme(theme, scheme, colorScheme) {\n if (!theme.colorSchemes) {\n return undefined;\n }\n if (colorScheme) {\n theme.colorSchemes[scheme] = {\n ...(colorScheme !== true && colorScheme),\n palette: createPalette({\n ...(colorScheme === true ? {} : colorScheme.palette),\n mode: scheme\n }) // cast type to skip module augmentation test\n };\n }\n}\n\n/**\n * Generate a theme base on the options received.\n * @param options Takes an incomplete theme object and adds the missing parts.\n * @param args Deep merge the arguments with the about to be returned theme.\n * @returns A complete, ready-to-use theme object.\n */\nexport default function createTheme(options = {},\n// cast type to skip module augmentation test\n...args) {\n const {\n palette,\n cssVariables = false,\n colorSchemes: initialColorSchemes = !palette ? {\n light: true\n } : undefined,\n defaultColorScheme: initialDefaultColorScheme = palette?.mode,\n ...rest\n } = options;\n const defaultColorSchemeInput = initialDefaultColorScheme || 'light';\n const defaultScheme = initialColorSchemes?.[defaultColorSchemeInput];\n const colorSchemesInput = {\n ...initialColorSchemes,\n ...(palette ? {\n [defaultColorSchemeInput]: {\n ...(typeof defaultScheme !== 'boolean' && defaultScheme),\n palette\n }\n } : undefined)\n };\n if (cssVariables === false) {\n if (!('colorSchemes' in options)) {\n // Behaves exactly as v5\n return createThemeNoVars(options, ...args);\n }\n let paletteOptions = palette;\n if (!('palette' in options)) {\n if (colorSchemesInput[defaultColorSchemeInput]) {\n if (colorSchemesInput[defaultColorSchemeInput] !== true) {\n paletteOptions = colorSchemesInput[defaultColorSchemeInput].palette;\n } else if (defaultColorSchemeInput === 'dark') {\n // @ts-ignore to prevent the module augmentation test from failing\n paletteOptions = {\n mode: 'dark'\n };\n }\n }\n }\n const theme = createThemeNoVars({\n ...options,\n palette: paletteOptions\n }, ...args);\n theme.defaultColorScheme = defaultColorSchemeInput;\n theme.colorSchemes = colorSchemesInput;\n if (theme.palette.mode === 'light') {\n theme.colorSchemes.light = {\n ...(colorSchemesInput.light !== true && colorSchemesInput.light),\n palette: theme.palette\n };\n attachColorScheme(theme, 'dark', colorSchemesInput.dark);\n }\n if (theme.palette.mode === 'dark') {\n theme.colorSchemes.dark = {\n ...(colorSchemesInput.dark !== true && colorSchemesInput.dark),\n palette: theme.palette\n };\n attachColorScheme(theme, 'light', colorSchemesInput.light);\n }\n return theme;\n }\n if (!palette && !('light' in colorSchemesInput) && defaultColorSchemeInput === 'light') {\n colorSchemesInput.light = true;\n }\n return createThemeWithVars({\n ...rest,\n colorSchemes: colorSchemesInput,\n defaultColorScheme: defaultColorSchemeInput,\n ...(typeof cssVariables !== 'boolean' && cssVariables)\n }, ...args);\n}", "'use client';\n\nimport createTheme from \"./createTheme.js\";\nconst defaultTheme = createTheme();\nexport default defaultTheme;", "export default '$$material';", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { GlobalStyles as SystemGlobalStyles } from '@mui/system';\nimport defaultTheme from \"../styles/defaultTheme.js\";\nimport THEME_ID from \"../styles/identifier.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction GlobalStyles(props) {\n return /*#__PURE__*/_jsx(SystemGlobalStyles, {\n ...props,\n defaultTheme: defaultTheme,\n themeId: THEME_ID\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? GlobalStyles.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * The styles you want to apply globally.\n */\n styles: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.array, PropTypes.func, PropTypes.number, PropTypes.object, PropTypes.string, PropTypes.bool])\n} : void 0;\nexport default GlobalStyles;", "// copied from @mui/system/createStyled\nfunction slotShouldForwardProp(prop) {\n return prop !== 'ownerState' && prop !== 'theme' && prop !== 'sx' && prop !== 'as';\n}\nexport default slotShouldForwardProp;", "import slotShouldForwardProp from \"./slotShouldForwardProp.js\";\nconst rootShouldForwardProp = prop => slotShouldForwardProp(prop) && prop !== 'classes';\nexport default rootShouldForwardProp;", "'use client';\n\nimport createStyled from '@mui/system/createStyled';\nimport defaultTheme from \"./defaultTheme.js\";\nimport THEME_ID from \"./identifier.js\";\nimport rootShouldForwardProp from \"./rootShouldForwardProp.js\";\nexport { default as slotShouldForwardProp } from \"./slotShouldForwardProp.js\";\nexport { default as rootShouldForwardProp } from \"./rootShouldForwardProp.js\";\nconst styled = createStyled({\n themeId: THEME_ID,\n defaultTheme,\n rootShouldForwardProp\n});\nexport default styled;", "import { unstable_memoTheme } from '@mui/system';\nconst memoTheme = unstable_memoTheme;\nexport default memoTheme;", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport SystemDefaultPropsProvider, { useDefaultProps as useSystemDefaultProps } from '@mui/system/DefaultPropsProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction DefaultPropsProvider(props) {\n return /*#__PURE__*/_jsx(SystemDefaultPropsProvider, {\n ...props\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? DefaultPropsProvider.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * @ignore\n */\n children: PropTypes.node,\n /**\n * @ignore\n */\n value: PropTypes.object.isRequired\n} : void 0;\nexport default DefaultPropsProvider;\nexport function useDefaultProps(params) {\n return useSystemDefaultProps(params);\n}", "import isHostComponent from \"./isHostComponent.js\";\nconst shouldSpreadAdditionalProps = Slot => {\n return !Slot || !isHostComponent(Slot);\n};\nexport default shouldSpreadAdditionalProps;", "import capitalize from '@mui/utils/capitalize';\nexport default capitalize;", "/**\n * Type guard to check if the object has a \"main\" property of type string.\n *\n * @param obj - the object to check\n * @returns boolean\n */\nfunction hasCorrectMainProperty(obj) {\n return typeof obj.main === 'string';\n}\n/**\n * Checks if the object conforms to the SimplePaletteColorOptions type.\n * The minimum requirement is that the object has a \"main\" property of type string, this is always checked.\n * Optionally, you can pass additional properties to check.\n *\n * @param obj - The object to check\n * @param additionalPropertiesToCheck - Array containing \"light\", \"dark\", and/or \"contrastText\"\n * @returns boolean\n */\nfunction checkSimplePaletteColorValues(obj, additionalPropertiesToCheck = []) {\n if (!hasCorrectMainProperty(obj)) {\n return false;\n }\n for (const value of additionalPropertiesToCheck) {\n if (!obj.hasOwnProperty(value) || typeof obj[value] !== 'string') {\n return false;\n }\n }\n return true;\n}\n\n/**\n * Creates a filter function used to filter simple palette color options.\n * The minimum requirement is that the object has a \"main\" property of type string, this is always checked.\n * Optionally, you can pass additional properties to check.\n *\n * @param additionalPropertiesToCheck - Array containing \"light\", \"dark\", and/or \"contrastText\"\n * @returns ([, value]: [any, PaletteColorOptions]) => boolean\n */\nexport default function createSimplePaletteValueFilter(additionalPropertiesToCheck = []) {\n return ([, value]) => value && checkSimplePaletteColorValues(value, additionalPropertiesToCheck);\n}", "'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport sliderClasses from \"./sliderClasses.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useValueLabelClasses = props => {\n const {\n open\n } = props;\n const utilityClasses = {\n offset: clsx(open && sliderClasses.valueLabelOpen),\n circle: sliderClasses.valueLabelCircle,\n label: sliderClasses.valueLabelLabel\n };\n return utilityClasses;\n};\n\n/**\n * @ignore - internal component.\n */\nexport default function SliderValueLabel(props) {\n const {\n children,\n className,\n value\n } = props;\n const classes = useValueLabelClasses(props);\n if (!children) {\n return null;\n }\n return /*#__PURE__*/React.cloneElement(children, {\n className: clsx(children.props.className)\n }, /*#__PURE__*/_jsxs(React.Fragment, {\n children: [children.props.children, /*#__PURE__*/_jsx(\"span\", {\n className: clsx(classes.offset, className),\n \"aria-hidden\": true,\n children: /*#__PURE__*/_jsx(\"span\", {\n className: classes.circle,\n children: /*#__PURE__*/_jsx(\"span\", {\n className: classes.label,\n children: value\n })\n })\n })]\n }));\n}\nprocess.env.NODE_ENV !== \"production\" ? SliderValueLabel.propTypes = {\n children: PropTypes.element.isRequired,\n className: PropTypes.string,\n value: PropTypes.node\n} : void 0;", "import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getSliderUtilityClass(slot) {\n return generateUtilityClass('MuiSlider', slot);\n}\nconst sliderClasses = generateUtilityClasses('MuiSlider', ['root', 'active', 'colorPrimary', 'colorSecondary', 'colorError', 'colorInfo', 'colorSuccess', 'colorWarning', 'disabled', 'dragging', 'focusVisible', 'mark', 'markActive', 'marked', 'markLabel', 'markLabelActive', 'rail', 'sizeSmall', 'thumb', 'thumbColorPrimary', 'thumbColorSecondary', 'thumbColorError', 'thumbColorSuccess', 'thumbColorInfo', 'thumbColorWarning', 'track', 'trackInverted', 'trackFalse', 'thumbSizeSmall', 'valueLabel', 'valueLabelOpen', 'valueLabelCircle', 'valueLabelLabel', 'vertical']);\nexport default sliderClasses;"], - "mappings": "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", - "names": ["React", "ReactDebugCurrentFrame", "isValidElementType", "getWrappedName", "assign", "prefix", "match", "values", "self", "isValidElement", "node", "jsx", "require_react_is_development", "hasSymbol", "isValidElementType", "ForwardRef", "Fragment", "Memo", "require_react_is", "hoistNonReactStatics", "React", "import_prop_types", "color", "color", "values", "color", "values", "_jsx", "PropTypes", "React", "joinedClasses", "mergedStyle", "props", "React", "React", "import_prop_types", "PropTypes", "import_prop_types", "isClassComponent", "PropTypes", "import_react_is", "import_prop_types", "PropTypes", "React", "node", "React", "React", "React", "React", "React", "React", "React", "React", "React", "React", "React", "React", "values", "width", "height", "bottom", "left", "isHostComponent", "isHostComponent_default", "React", "import_prop_types", "PropTypes", "import_prop_types", "css", "node", "style", "prev", "next", "arg", "abs", "style", "style", "arg", "style", "styleFunctionSx", "css", "React", "React", "StyleSheet", "isImportRule", "length", "length", "length", "character", "characters", "length", "length", "weakMemoize", "arg", "memoize", "arg", "identifierWithPointTracking", "character", "toRules", "getRules", "compat", "removeLabel", "isIgnoringComment", "createUnsafeSelectorsAlarm", "node", "isImportRule", "isPrependedWithRegularRules", "nullifyElement", "incorrectImportAlarm", "prefix", "length", "prefixer", "getSourceMap", "createCache", "stylis", "insert", "registerStyles", "isStringTag", "insertStyles", "isDevelopment", "isCustomProperty", "isProcessableValue", "memoize", "processStyleValue", "match", "keyframes", "next", "React", "syncFallback", "useInsertionEffect", "withEmotionCache", "getTheme", "getLastPart", "getFunctionNameFromStackTraceLine", "line", "match", "sanitizeIdentifier", "identifier", "getLabelFromStackTrace", "createEmotionProps", "Insertion", "isStringTag", "React", "import_hoist_non_react_statics", "isDevelopment", "jsx", "_jsx", "node", "classnames", "arg", "merge", "css", "Insertion", "isDevelopment", "cx", "isBrowser", "React", "memoize", "isDevelopment", "testOmitPropsOnComponent", "getDefaultShouldForwardProp", "composeShouldForwardProps", "shouldForwardProp", "ILLEGAL_ESCAPE_SEQUENCE_ERROR", "Insertion", "isStringTag", "createStyled", "newStyled", "import_react", "React", "import_prop_types", "import_jsx_runtime", "_jsx", "PropTypes", "React", "import_prop_types", "import_jsx_runtime", "defaultTheme", "_jsx", "PropTypes", "style", "React", "import_prop_types", "values", "spacing", "spacing", "React", "useTheme", "defaultTheme", "useTheme", "defaultTheme", "import_jsx_runtime", "GlobalStyles", "defaultTheme", "_jsx", "PropTypes", "position", "import_prop_types", "React", "import_jsx_runtime", "defaultTheme", "Box", "_jsx", "PropTypes", "style", "systemDefaultTheme", "defaultTheme", "isObjectEmpty", "style", "createStyled", "rootShouldForwardProp", "slotShouldForwardProp", "styled", "styled", "createStyled", "defaultTheme", "React", "match", "safeReact", "React", "useMediaQuery", "React", "import_prop_types", "React", "import_prop_types", "React", "ThemeContext", "React", "useTheme", "import_jsx_runtime", "ThemeProvider", "useTheme", "_jsx", "PropTypes", "React", "import_prop_types", "import_jsx_runtime", "_jsx", "PropTypes", "getThemeProps", "import_jsx_runtime", "ThemeProvider", "useTheme", "_jsx", "PropTypes", "React", "import_prop_types", "React", "import_jsx_runtime", "React", "import_jsx_runtime", "prefix", "prefix", "shouldSkipGeneratingVar", "css", "css", "_a", "_b", "React", "import_prop_types", "import_jsx_runtime", "maxWidth", "useThemeProps", "Container", "_jsx", "PropTypes", "import_prop_types", "PropTypes", "import_prop_types", "React", "import_prop_types", "style", "style", "spacing", "import_jsx_runtime", "defaultTheme", "defaultCreateStyledComponent", "useThemePropsDefault", "useThemeProps", "useTheme", "useUtilityClasses", "spacing", "Grid", "_jsx", "PropTypes", "PropTypes", "spacing", "import_prop_types", "React", "import_prop_types", "import_jsx_runtime", "defaultTheme", "defaultCreateStyledComponent", "useThemePropsDefault", "style", "useThemeProps", "useUtilityClasses", "Stack", "Grid", "spacing", "_jsx", "PropTypes", "PropTypes", "palette", "color", "typography", "palette", "typography", "fontFamily", "fontSize", "fontWeight", "lineHeight", "letterSpacing", "shadows_default", "height", "zIndex", "palette", "shadows_default", "node", "palette", "css", "color", "createGetCssVar", "palette", "shouldSkipGeneratingVar", "attachColorScheme", "createTheme", "palette", "defaultTheme", "createTheme", "React", "import_prop_types", "import_jsx_runtime", "GlobalStyles", "_jsx", "PropTypes", "import_jsx_runtime", "styled", "createStyled", "styled_default", "React", "import_prop_types", "import_jsx_runtime", "DefaultPropsProvider", "_jsx", "PropTypes", "useDefaultProps", "isHostComponent_default", "React", "import_prop_types", "import_jsx_runtime", "_jsxs", "_jsx", "PropTypes", "import_jsx_runtime", "Identity", "styled_default", "color", "SliderValueLabel", "PropTypes", "styled_default", "useUtilityClasses", "color", "Slider", "useDefaultProps", "Identity", "axisProps", "values", "SliderValueLabel", "_jsxs", "_jsx", "style", "isHostComponent_default", "PropTypes"] -} diff --git a/Front-end/.vite/deps/_metadata.json b/Front-end/.vite/deps/_metadata.json deleted file mode 100644 index ac0873e..0000000 --- a/Front-end/.vite/deps/_metadata.json +++ /dev/null @@ -1,79 +0,0 @@ -{ - "hash": "9786a6e1", - "configHash": "fb1b2e05", - "lockfileHash": "07bba541", - "browserHash": "df6a5965", - "optimized": { - "react": { - "src": "../../node_modules/react/index.js", - "file": "react.js", - "fileHash": "93e4d9cc", - "needsInterop": true - }, - "react-dom/client": { - "src": "../../node_modules/react-dom/client.js", - "file": "react-dom_client.js", - "fileHash": "75480039", - "needsInterop": true - }, - "react-router-dom": { - "src": "../../node_modules/react-router-dom/dist/index.mjs", - "file": "react-router-dom.js", - "fileHash": "c08021c2", - "needsInterop": false - }, - "jwt-decode": { - "src": "../../node_modules/jwt-decode/build/esm/index.js", - "file": "jwt-decode.js", - "fileHash": "d90b24a4", - "needsInterop": false - }, - "lucide-react": { - "src": "../../node_modules/lucide-react/dist/esm/lucide-react.js", - "file": "lucide-react.js", - "fileHash": "0b3ce2ad", - "needsInterop": false - }, - "axios": { - "src": "../../node_modules/axios/index.js", - "file": "axios.js", - "fileHash": "ddcc2f69", - "needsInterop": false - }, - "recharts": { - "src": "../../node_modules/recharts/es6/index.js", - "file": "recharts.js", - "fileHash": "31005dc9", - "needsInterop": false - }, - "react-circle-progress-bar": { - "src": "../../node_modules/react-circle-progress-bar/dist/progress.js", - "file": "react-circle-progress-bar.js", - "fileHash": "39e9f2a6", - "needsInterop": false - }, - "@mui/material/Slider": { - "src": "../../node_modules/@mui/material/esm/Slider/index.js", - "file": "@mui_material_Slider.js", - "fileHash": "110c1e8f", - "needsInterop": false - } - }, - "chunks": { - "chunk-AG6MXCTY": { - "file": "chunk-AG6MXCTY.js" - }, - "chunk-JMVEG3FK": { - "file": "chunk-JMVEG3FK.js" - }, - "chunk-TWJRYSII": { - "file": "chunk-TWJRYSII.js" - }, - "chunk-PMYNNG2G": { - "file": "chunk-PMYNNG2G.js" - }, - "chunk-DC5AMYBS": { - "file": "chunk-DC5AMYBS.js" - } - } -} \ No newline at end of file diff --git a/Front-end/.vite/deps/axios.js b/Front-end/.vite/deps/axios.js deleted file mode 100644 index 806ed91..0000000 --- a/Front-end/.vite/deps/axios.js +++ /dev/null @@ -1,2509 +0,0 @@ -import { - __export -} from "./chunk-DC5AMYBS.js"; - -// node_modules/axios/lib/helpers/bind.js -function bind(fn, thisArg) { - return function wrap() { - return fn.apply(thisArg, arguments); - }; -} - -// node_modules/axios/lib/utils.js -var { toString } = Object.prototype; -var { getPrototypeOf } = Object; -var kindOf = /* @__PURE__ */ ((cache) => (thing) => { - const str = toString.call(thing); - return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); -})(/* @__PURE__ */ Object.create(null)); -var kindOfTest = (type) => { - type = type.toLowerCase(); - return (thing) => kindOf(thing) === type; -}; -var typeOfTest = (type) => (thing) => typeof thing === type; -var { isArray } = Array; -var isUndefined = typeOfTest("undefined"); -function isBuffer(val) { - return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val); -} -var isArrayBuffer = kindOfTest("ArrayBuffer"); -function isArrayBufferView(val) { - let result; - if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { - result = ArrayBuffer.isView(val); - } else { - result = val && val.buffer && isArrayBuffer(val.buffer); - } - return result; -} -var isString = typeOfTest("string"); -var isFunction = typeOfTest("function"); -var isNumber = typeOfTest("number"); -var isObject = (thing) => thing !== null && typeof thing === "object"; -var isBoolean = (thing) => thing === true || thing === false; -var isPlainObject = (val) => { - if (kindOf(val) !== "object") { - return false; - } - const prototype3 = getPrototypeOf(val); - return (prototype3 === null || prototype3 === Object.prototype || Object.getPrototypeOf(prototype3) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val); -}; -var isDate = kindOfTest("Date"); -var isFile = kindOfTest("File"); -var isBlob = kindOfTest("Blob"); -var isFileList = kindOfTest("FileList"); -var isStream = (val) => isObject(val) && isFunction(val.pipe); -var isFormData = (thing) => { - let kind; - return thing && (typeof FormData === "function" && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === "formdata" || // detect form-data instance - kind === "object" && isFunction(thing.toString) && thing.toString() === "[object FormData]")); -}; -var isURLSearchParams = kindOfTest("URLSearchParams"); -var [isReadableStream, isRequest, isResponse, isHeaders] = ["ReadableStream", "Request", "Response", "Headers"].map(kindOfTest); -var trim = (str) => str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""); -function forEach(obj, fn, { allOwnKeys = false } = {}) { - if (obj === null || typeof obj === "undefined") { - return; - } - let i; - let l; - if (typeof obj !== "object") { - obj = [obj]; - } - if (isArray(obj)) { - for (i = 0, l = obj.length; i < l; i++) { - fn.call(null, obj[i], i, obj); - } - } else { - const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); - const len = keys.length; - let key; - for (i = 0; i < len; i++) { - key = keys[i]; - fn.call(null, obj[key], key, obj); - } - } -} -function findKey(obj, key) { - key = key.toLowerCase(); - const keys = Object.keys(obj); - let i = keys.length; - let _key; - while (i-- > 0) { - _key = keys[i]; - if (key === _key.toLowerCase()) { - return _key; - } - } - return null; -} -var _global = (() => { - if (typeof globalThis !== "undefined") return globalThis; - return typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : global; -})(); -var isContextDefined = (context) => !isUndefined(context) && context !== _global; -function merge() { - const { caseless } = isContextDefined(this) && this || {}; - const result = {}; - const assignValue = (val, key) => { - const targetKey = caseless && findKey(result, key) || key; - if (isPlainObject(result[targetKey]) && isPlainObject(val)) { - result[targetKey] = merge(result[targetKey], val); - } else if (isPlainObject(val)) { - result[targetKey] = merge({}, val); - } else if (isArray(val)) { - result[targetKey] = val.slice(); - } else { - result[targetKey] = val; - } - }; - for (let i = 0, l = arguments.length; i < l; i++) { - arguments[i] && forEach(arguments[i], assignValue); - } - return result; -} -var extend = (a, b, thisArg, { allOwnKeys } = {}) => { - forEach(b, (val, key) => { - if (thisArg && isFunction(val)) { - a[key] = bind(val, thisArg); - } else { - a[key] = val; - } - }, { allOwnKeys }); - return a; -}; -var stripBOM = (content) => { - if (content.charCodeAt(0) === 65279) { - content = content.slice(1); - } - return content; -}; -var inherits = (constructor, superConstructor, props, descriptors2) => { - constructor.prototype = Object.create(superConstructor.prototype, descriptors2); - constructor.prototype.constructor = constructor; - Object.defineProperty(constructor, "super", { - value: superConstructor.prototype - }); - props && Object.assign(constructor.prototype, props); -}; -var toFlatObject = (sourceObj, destObj, filter2, propFilter) => { - let props; - let i; - let prop; - const merged = {}; - destObj = destObj || {}; - if (sourceObj == null) return destObj; - do { - props = Object.getOwnPropertyNames(sourceObj); - i = props.length; - while (i-- > 0) { - prop = props[i]; - if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { - destObj[prop] = sourceObj[prop]; - merged[prop] = true; - } - } - sourceObj = filter2 !== false && getPrototypeOf(sourceObj); - } while (sourceObj && (!filter2 || filter2(sourceObj, destObj)) && sourceObj !== Object.prototype); - return destObj; -}; -var endsWith = (str, searchString, position) => { - str = String(str); - if (position === void 0 || position > str.length) { - position = str.length; - } - position -= searchString.length; - const lastIndex = str.indexOf(searchString, position); - return lastIndex !== -1 && lastIndex === position; -}; -var toArray = (thing) => { - if (!thing) return null; - if (isArray(thing)) return thing; - let i = thing.length; - if (!isNumber(i)) return null; - const arr = new Array(i); - while (i-- > 0) { - arr[i] = thing[i]; - } - return arr; -}; -var isTypedArray = /* @__PURE__ */ ((TypedArray) => { - return (thing) => { - return TypedArray && thing instanceof TypedArray; - }; -})(typeof Uint8Array !== "undefined" && getPrototypeOf(Uint8Array)); -var forEachEntry = (obj, fn) => { - const generator = obj && obj[Symbol.iterator]; - const iterator = generator.call(obj); - let result; - while ((result = iterator.next()) && !result.done) { - const pair = result.value; - fn.call(obj, pair[0], pair[1]); - } -}; -var matchAll = (regExp, str) => { - let matches; - const arr = []; - while ((matches = regExp.exec(str)) !== null) { - arr.push(matches); - } - return arr; -}; -var isHTMLForm = kindOfTest("HTMLFormElement"); -var toCamelCase = (str) => { - return str.toLowerCase().replace( - /[-_\s]([a-z\d])(\w*)/g, - function replacer(m, p1, p2) { - return p1.toUpperCase() + p2; - } - ); -}; -var hasOwnProperty = (({ hasOwnProperty: hasOwnProperty2 }) => (obj, prop) => hasOwnProperty2.call(obj, prop))(Object.prototype); -var isRegExp = kindOfTest("RegExp"); -var reduceDescriptors = (obj, reducer) => { - const descriptors2 = Object.getOwnPropertyDescriptors(obj); - const reducedDescriptors = {}; - forEach(descriptors2, (descriptor, name) => { - let ret; - if ((ret = reducer(descriptor, name, obj)) !== false) { - reducedDescriptors[name] = ret || descriptor; - } - }); - Object.defineProperties(obj, reducedDescriptors); -}; -var freezeMethods = (obj) => { - reduceDescriptors(obj, (descriptor, name) => { - if (isFunction(obj) && ["arguments", "caller", "callee"].indexOf(name) !== -1) { - return false; - } - const value = obj[name]; - if (!isFunction(value)) return; - descriptor.enumerable = false; - if ("writable" in descriptor) { - descriptor.writable = false; - return; - } - if (!descriptor.set) { - descriptor.set = () => { - throw Error("Can not rewrite read-only method '" + name + "'"); - }; - } - }); -}; -var toObjectSet = (arrayOrString, delimiter) => { - const obj = {}; - const define = (arr) => { - arr.forEach((value) => { - obj[value] = true; - }); - }; - isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter)); - return obj; -}; -var noop = () => { -}; -var toFiniteNumber = (value, defaultValue) => { - return value != null && Number.isFinite(value = +value) ? value : defaultValue; -}; -function isSpecCompliantForm(thing) { - return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === "FormData" && thing[Symbol.iterator]); -} -var toJSONObject = (obj) => { - const stack = new Array(10); - const visit = (source, i) => { - if (isObject(source)) { - if (stack.indexOf(source) >= 0) { - return; - } - if (!("toJSON" in source)) { - stack[i] = source; - const target = isArray(source) ? [] : {}; - forEach(source, (value, key) => { - const reducedValue = visit(value, i + 1); - !isUndefined(reducedValue) && (target[key] = reducedValue); - }); - stack[i] = void 0; - return target; - } - } - return source; - }; - return visit(obj, 0); -}; -var isAsyncFn = kindOfTest("AsyncFunction"); -var isThenable = (thing) => thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch); -var _setImmediate = ((setImmediateSupported, postMessageSupported) => { - if (setImmediateSupported) { - return setImmediate; - } - return postMessageSupported ? ((token, callbacks) => { - _global.addEventListener("message", ({ source, data }) => { - if (source === _global && data === token) { - callbacks.length && callbacks.shift()(); - } - }, false); - return (cb) => { - callbacks.push(cb); - _global.postMessage(token, "*"); - }; - })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb); -})( - typeof setImmediate === "function", - isFunction(_global.postMessage) -); -var asap = typeof queueMicrotask !== "undefined" ? queueMicrotask.bind(_global) : typeof process !== "undefined" && process.nextTick || _setImmediate; -var utils_default = { - isArray, - isArrayBuffer, - isBuffer, - isFormData, - isArrayBufferView, - isString, - isNumber, - isBoolean, - isObject, - isPlainObject, - isReadableStream, - isRequest, - isResponse, - isHeaders, - isUndefined, - isDate, - isFile, - isBlob, - isRegExp, - isFunction, - isStream, - isURLSearchParams, - isTypedArray, - isFileList, - forEach, - merge, - extend, - trim, - stripBOM, - inherits, - toFlatObject, - kindOf, - kindOfTest, - endsWith, - toArray, - forEachEntry, - matchAll, - isHTMLForm, - hasOwnProperty, - hasOwnProp: hasOwnProperty, - // an alias to avoid ESLint no-prototype-builtins detection - reduceDescriptors, - freezeMethods, - toObjectSet, - toCamelCase, - noop, - toFiniteNumber, - findKey, - global: _global, - isContextDefined, - isSpecCompliantForm, - toJSONObject, - isAsyncFn, - isThenable, - setImmediate: _setImmediate, - asap -}; - -// node_modules/axios/lib/core/AxiosError.js -function AxiosError(message, code, config, request, response) { - Error.call(this); - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } else { - this.stack = new Error().stack; - } - this.message = message; - this.name = "AxiosError"; - code && (this.code = code); - config && (this.config = config); - request && (this.request = request); - if (response) { - this.response = response; - this.status = response.status ? response.status : null; - } -} -utils_default.inherits(AxiosError, Error, { - toJSON: function toJSON() { - return { - // Standard - message: this.message, - name: this.name, - // Microsoft - description: this.description, - number: this.number, - // Mozilla - fileName: this.fileName, - lineNumber: this.lineNumber, - columnNumber: this.columnNumber, - stack: this.stack, - // Axios - config: utils_default.toJSONObject(this.config), - code: this.code, - status: this.status - }; - } -}); -var prototype = AxiosError.prototype; -var descriptors = {}; -[ - "ERR_BAD_OPTION_VALUE", - "ERR_BAD_OPTION", - "ECONNABORTED", - "ETIMEDOUT", - "ERR_NETWORK", - "ERR_FR_TOO_MANY_REDIRECTS", - "ERR_DEPRECATED", - "ERR_BAD_RESPONSE", - "ERR_BAD_REQUEST", - "ERR_CANCELED", - "ERR_NOT_SUPPORT", - "ERR_INVALID_URL" - // eslint-disable-next-line func-names -].forEach((code) => { - descriptors[code] = { value: code }; -}); -Object.defineProperties(AxiosError, descriptors); -Object.defineProperty(prototype, "isAxiosError", { value: true }); -AxiosError.from = (error, code, config, request, response, customProps) => { - const axiosError = Object.create(prototype); - utils_default.toFlatObject(error, axiosError, function filter2(obj) { - return obj !== Error.prototype; - }, (prop) => { - return prop !== "isAxiosError"; - }); - AxiosError.call(axiosError, error.message, code, config, request, response); - axiosError.cause = error; - axiosError.name = error.name; - customProps && Object.assign(axiosError, customProps); - return axiosError; -}; -var AxiosError_default = AxiosError; - -// node_modules/axios/lib/helpers/null.js -var null_default = null; - -// node_modules/axios/lib/helpers/toFormData.js -function isVisitable(thing) { - return utils_default.isPlainObject(thing) || utils_default.isArray(thing); -} -function removeBrackets(key) { - return utils_default.endsWith(key, "[]") ? key.slice(0, -2) : key; -} -function renderKey(path, key, dots) { - if (!path) return key; - return path.concat(key).map(function each(token, i) { - token = removeBrackets(token); - return !dots && i ? "[" + token + "]" : token; - }).join(dots ? "." : ""); -} -function isFlatArray(arr) { - return utils_default.isArray(arr) && !arr.some(isVisitable); -} -var predicates = utils_default.toFlatObject(utils_default, {}, null, function filter(prop) { - return /^is[A-Z]/.test(prop); -}); -function toFormData(obj, formData, options) { - if (!utils_default.isObject(obj)) { - throw new TypeError("target must be an object"); - } - formData = formData || new (null_default || FormData)(); - options = utils_default.toFlatObject(options, { - metaTokens: true, - dots: false, - indexes: false - }, false, function defined(option, source) { - return !utils_default.isUndefined(source[option]); - }); - const metaTokens = options.metaTokens; - const visitor = options.visitor || defaultVisitor; - const dots = options.dots; - const indexes = options.indexes; - const _Blob = options.Blob || typeof Blob !== "undefined" && Blob; - const useBlob = _Blob && utils_default.isSpecCompliantForm(formData); - if (!utils_default.isFunction(visitor)) { - throw new TypeError("visitor must be a function"); - } - function convertValue(value) { - if (value === null) return ""; - if (utils_default.isDate(value)) { - return value.toISOString(); - } - if (!useBlob && utils_default.isBlob(value)) { - throw new AxiosError_default("Blob is not supported. Use a Buffer instead."); - } - if (utils_default.isArrayBuffer(value) || utils_default.isTypedArray(value)) { - return useBlob && typeof Blob === "function" ? new Blob([value]) : Buffer.from(value); - } - return value; - } - function defaultVisitor(value, key, path) { - let arr = value; - if (value && !path && typeof value === "object") { - if (utils_default.endsWith(key, "{}")) { - key = metaTokens ? key : key.slice(0, -2); - value = JSON.stringify(value); - } else if (utils_default.isArray(value) && isFlatArray(value) || (utils_default.isFileList(value) || utils_default.endsWith(key, "[]")) && (arr = utils_default.toArray(value))) { - key = removeBrackets(key); - arr.forEach(function each(el, index) { - !(utils_default.isUndefined(el) || el === null) && formData.append( - // eslint-disable-next-line no-nested-ternary - indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + "[]", - convertValue(el) - ); - }); - return false; - } - } - if (isVisitable(value)) { - return true; - } - formData.append(renderKey(path, key, dots), convertValue(value)); - return false; - } - const stack = []; - const exposedHelpers = Object.assign(predicates, { - defaultVisitor, - convertValue, - isVisitable - }); - function build(value, path) { - if (utils_default.isUndefined(value)) return; - if (stack.indexOf(value) !== -1) { - throw Error("Circular reference detected in " + path.join(".")); - } - stack.push(value); - utils_default.forEach(value, function each(el, key) { - const result = !(utils_default.isUndefined(el) || el === null) && visitor.call( - formData, - el, - utils_default.isString(key) ? key.trim() : key, - path, - exposedHelpers - ); - if (result === true) { - build(el, path ? path.concat(key) : [key]); - } - }); - stack.pop(); - } - if (!utils_default.isObject(obj)) { - throw new TypeError("data must be an object"); - } - build(obj); - return formData; -} -var toFormData_default = toFormData; - -// node_modules/axios/lib/helpers/AxiosURLSearchParams.js -function encode(str) { - const charMap = { - "!": "%21", - "'": "%27", - "(": "%28", - ")": "%29", - "~": "%7E", - "%20": "+", - "%00": "\0" - }; - return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) { - return charMap[match]; - }); -} -function AxiosURLSearchParams(params, options) { - this._pairs = []; - params && toFormData_default(params, this, options); -} -var prototype2 = AxiosURLSearchParams.prototype; -prototype2.append = function append(name, value) { - this._pairs.push([name, value]); -}; -prototype2.toString = function toString2(encoder) { - const _encode = encoder ? function(value) { - return encoder.call(this, value, encode); - } : encode; - return this._pairs.map(function each(pair) { - return _encode(pair[0]) + "=" + _encode(pair[1]); - }, "").join("&"); -}; -var AxiosURLSearchParams_default = AxiosURLSearchParams; - -// node_modules/axios/lib/helpers/buildURL.js -function encode2(val) { - return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]"); -} -function buildURL(url, params, options) { - if (!params) { - return url; - } - const _encode = options && options.encode || encode2; - if (utils_default.isFunction(options)) { - options = { - serialize: options - }; - } - const serializeFn = options && options.serialize; - let serializedParams; - if (serializeFn) { - serializedParams = serializeFn(params, options); - } else { - serializedParams = utils_default.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams_default(params, options).toString(_encode); - } - if (serializedParams) { - const hashmarkIndex = url.indexOf("#"); - if (hashmarkIndex !== -1) { - url = url.slice(0, hashmarkIndex); - } - url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams; - } - return url; -} - -// node_modules/axios/lib/core/InterceptorManager.js -var InterceptorManager = class { - constructor() { - this.handlers = []; - } - /** - * Add a new interceptor to the stack - * - * @param {Function} fulfilled The function to handle `then` for a `Promise` - * @param {Function} rejected The function to handle `reject` for a `Promise` - * - * @return {Number} An ID used to remove interceptor later - */ - use(fulfilled, rejected, options) { - this.handlers.push({ - fulfilled, - rejected, - synchronous: options ? options.synchronous : false, - runWhen: options ? options.runWhen : null - }); - return this.handlers.length - 1; - } - /** - * Remove an interceptor from the stack - * - * @param {Number} id The ID that was returned by `use` - * - * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise - */ - eject(id) { - if (this.handlers[id]) { - this.handlers[id] = null; - } - } - /** - * Clear all interceptors from the stack - * - * @returns {void} - */ - clear() { - if (this.handlers) { - this.handlers = []; - } - } - /** - * Iterate over all the registered interceptors - * - * This method is particularly useful for skipping over any - * interceptors that may have become `null` calling `eject`. - * - * @param {Function} fn The function to call for each interceptor - * - * @returns {void} - */ - forEach(fn) { - utils_default.forEach(this.handlers, function forEachHandler(h) { - if (h !== null) { - fn(h); - } - }); - } -}; -var InterceptorManager_default = InterceptorManager; - -// node_modules/axios/lib/defaults/transitional.js -var transitional_default = { - silentJSONParsing: true, - forcedJSONParsing: true, - clarifyTimeoutError: false -}; - -// node_modules/axios/lib/platform/browser/classes/URLSearchParams.js -var URLSearchParams_default = typeof URLSearchParams !== "undefined" ? URLSearchParams : AxiosURLSearchParams_default; - -// node_modules/axios/lib/platform/browser/classes/FormData.js -var FormData_default = typeof FormData !== "undefined" ? FormData : null; - -// node_modules/axios/lib/platform/browser/classes/Blob.js -var Blob_default = typeof Blob !== "undefined" ? Blob : null; - -// node_modules/axios/lib/platform/browser/index.js -var browser_default = { - isBrowser: true, - classes: { - URLSearchParams: URLSearchParams_default, - FormData: FormData_default, - Blob: Blob_default - }, - protocols: ["http", "https", "file", "blob", "url", "data"] -}; - -// node_modules/axios/lib/platform/common/utils.js -var utils_exports = {}; -__export(utils_exports, { - hasBrowserEnv: () => hasBrowserEnv, - hasStandardBrowserEnv: () => hasStandardBrowserEnv, - hasStandardBrowserWebWorkerEnv: () => hasStandardBrowserWebWorkerEnv, - navigator: () => _navigator, - origin: () => origin -}); -var hasBrowserEnv = typeof window !== "undefined" && typeof document !== "undefined"; -var _navigator = typeof navigator === "object" && navigator || void 0; -var hasStandardBrowserEnv = hasBrowserEnv && (!_navigator || ["ReactNative", "NativeScript", "NS"].indexOf(_navigator.product) < 0); -var hasStandardBrowserWebWorkerEnv = (() => { - return typeof WorkerGlobalScope !== "undefined" && // eslint-disable-next-line no-undef - self instanceof WorkerGlobalScope && typeof self.importScripts === "function"; -})(); -var origin = hasBrowserEnv && window.location.href || "http://localhost"; - -// node_modules/axios/lib/platform/index.js -var platform_default = { - ...utils_exports, - ...browser_default -}; - -// node_modules/axios/lib/helpers/toURLEncodedForm.js -function toURLEncodedForm(data, options) { - return toFormData_default(data, new platform_default.classes.URLSearchParams(), Object.assign({ - visitor: function(value, key, path, helpers) { - if (platform_default.isNode && utils_default.isBuffer(value)) { - this.append(key, value.toString("base64")); - return false; - } - return helpers.defaultVisitor.apply(this, arguments); - } - }, options)); -} - -// node_modules/axios/lib/helpers/formDataToJSON.js -function parsePropPath(name) { - return utils_default.matchAll(/\w+|\[(\w*)]/g, name).map((match) => { - return match[0] === "[]" ? "" : match[1] || match[0]; - }); -} -function arrayToObject(arr) { - const obj = {}; - const keys = Object.keys(arr); - let i; - const len = keys.length; - let key; - for (i = 0; i < len; i++) { - key = keys[i]; - obj[key] = arr[key]; - } - return obj; -} -function formDataToJSON(formData) { - function buildPath(path, value, target, index) { - let name = path[index++]; - if (name === "__proto__") return true; - const isNumericKey = Number.isFinite(+name); - const isLast = index >= path.length; - name = !name && utils_default.isArray(target) ? target.length : name; - if (isLast) { - if (utils_default.hasOwnProp(target, name)) { - target[name] = [target[name], value]; - } else { - target[name] = value; - } - return !isNumericKey; - } - if (!target[name] || !utils_default.isObject(target[name])) { - target[name] = []; - } - const result = buildPath(path, value, target[name], index); - if (result && utils_default.isArray(target[name])) { - target[name] = arrayToObject(target[name]); - } - return !isNumericKey; - } - if (utils_default.isFormData(formData) && utils_default.isFunction(formData.entries)) { - const obj = {}; - utils_default.forEachEntry(formData, (name, value) => { - buildPath(parsePropPath(name), value, obj, 0); - }); - return obj; - } - return null; -} -var formDataToJSON_default = formDataToJSON; - -// node_modules/axios/lib/defaults/index.js -function stringifySafely(rawValue, parser, encoder) { - if (utils_default.isString(rawValue)) { - try { - (parser || JSON.parse)(rawValue); - return utils_default.trim(rawValue); - } catch (e) { - if (e.name !== "SyntaxError") { - throw e; - } - } - } - return (encoder || JSON.stringify)(rawValue); -} -var defaults = { - transitional: transitional_default, - adapter: ["xhr", "http", "fetch"], - transformRequest: [function transformRequest(data, headers) { - const contentType = headers.getContentType() || ""; - const hasJSONContentType = contentType.indexOf("application/json") > -1; - const isObjectPayload = utils_default.isObject(data); - if (isObjectPayload && utils_default.isHTMLForm(data)) { - data = new FormData(data); - } - const isFormData2 = utils_default.isFormData(data); - if (isFormData2) { - return hasJSONContentType ? JSON.stringify(formDataToJSON_default(data)) : data; - } - if (utils_default.isArrayBuffer(data) || utils_default.isBuffer(data) || utils_default.isStream(data) || utils_default.isFile(data) || utils_default.isBlob(data) || utils_default.isReadableStream(data)) { - return data; - } - if (utils_default.isArrayBufferView(data)) { - return data.buffer; - } - if (utils_default.isURLSearchParams(data)) { - headers.setContentType("application/x-www-form-urlencoded;charset=utf-8", false); - return data.toString(); - } - let isFileList2; - if (isObjectPayload) { - if (contentType.indexOf("application/x-www-form-urlencoded") > -1) { - return toURLEncodedForm(data, this.formSerializer).toString(); - } - if ((isFileList2 = utils_default.isFileList(data)) || contentType.indexOf("multipart/form-data") > -1) { - const _FormData = this.env && this.env.FormData; - return toFormData_default( - isFileList2 ? { "files[]": data } : data, - _FormData && new _FormData(), - this.formSerializer - ); - } - } - if (isObjectPayload || hasJSONContentType) { - headers.setContentType("application/json", false); - return stringifySafely(data); - } - return data; - }], - transformResponse: [function transformResponse(data) { - const transitional2 = this.transitional || defaults.transitional; - const forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing; - const JSONRequested = this.responseType === "json"; - if (utils_default.isResponse(data) || utils_default.isReadableStream(data)) { - return data; - } - if (data && utils_default.isString(data) && (forcedJSONParsing && !this.responseType || JSONRequested)) { - const silentJSONParsing = transitional2 && transitional2.silentJSONParsing; - const strictJSONParsing = !silentJSONParsing && JSONRequested; - try { - return JSON.parse(data); - } catch (e) { - if (strictJSONParsing) { - if (e.name === "SyntaxError") { - throw AxiosError_default.from(e, AxiosError_default.ERR_BAD_RESPONSE, this, null, this.response); - } - throw e; - } - } - } - return data; - }], - /** - * A timeout in milliseconds to abort a request. If set to 0 (default) a - * timeout is not created. - */ - timeout: 0, - xsrfCookieName: "XSRF-TOKEN", - xsrfHeaderName: "X-XSRF-TOKEN", - maxContentLength: -1, - maxBodyLength: -1, - env: { - FormData: platform_default.classes.FormData, - Blob: platform_default.classes.Blob - }, - validateStatus: function validateStatus(status) { - return status >= 200 && status < 300; - }, - headers: { - common: { - "Accept": "application/json, text/plain, */*", - "Content-Type": void 0 - } - } -}; -utils_default.forEach(["delete", "get", "head", "post", "put", "patch"], (method) => { - defaults.headers[method] = {}; -}); -var defaults_default = defaults; - -// node_modules/axios/lib/helpers/parseHeaders.js -var ignoreDuplicateOf = utils_default.toObjectSet([ - "age", - "authorization", - "content-length", - "content-type", - "etag", - "expires", - "from", - "host", - "if-modified-since", - "if-unmodified-since", - "last-modified", - "location", - "max-forwards", - "proxy-authorization", - "referer", - "retry-after", - "user-agent" -]); -var parseHeaders_default = (rawHeaders) => { - const parsed = {}; - let key; - let val; - let i; - rawHeaders && rawHeaders.split("\n").forEach(function parser(line) { - i = line.indexOf(":"); - key = line.substring(0, i).trim().toLowerCase(); - val = line.substring(i + 1).trim(); - if (!key || parsed[key] && ignoreDuplicateOf[key]) { - return; - } - if (key === "set-cookie") { - if (parsed[key]) { - parsed[key].push(val); - } else { - parsed[key] = [val]; - } - } else { - parsed[key] = parsed[key] ? parsed[key] + ", " + val : val; - } - }); - return parsed; -}; - -// node_modules/axios/lib/core/AxiosHeaders.js -var $internals = Symbol("internals"); -function normalizeHeader(header) { - return header && String(header).trim().toLowerCase(); -} -function normalizeValue(value) { - if (value === false || value == null) { - return value; - } - return utils_default.isArray(value) ? value.map(normalizeValue) : String(value); -} -function parseTokens(str) { - const tokens = /* @__PURE__ */ Object.create(null); - const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; - let match; - while (match = tokensRE.exec(str)) { - tokens[match[1]] = match[2]; - } - return tokens; -} -var isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); -function matchHeaderValue(context, value, header, filter2, isHeaderNameFilter) { - if (utils_default.isFunction(filter2)) { - return filter2.call(this, value, header); - } - if (isHeaderNameFilter) { - value = header; - } - if (!utils_default.isString(value)) return; - if (utils_default.isString(filter2)) { - return value.indexOf(filter2) !== -1; - } - if (utils_default.isRegExp(filter2)) { - return filter2.test(value); - } -} -function formatHeader(header) { - return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => { - return char.toUpperCase() + str; - }); -} -function buildAccessors(obj, header) { - const accessorName = utils_default.toCamelCase(" " + header); - ["get", "set", "has"].forEach((methodName) => { - Object.defineProperty(obj, methodName + accessorName, { - value: function(arg1, arg2, arg3) { - return this[methodName].call(this, header, arg1, arg2, arg3); - }, - configurable: true - }); - }); -} -var AxiosHeaders = class { - constructor(headers) { - headers && this.set(headers); - } - set(header, valueOrRewrite, rewrite) { - const self2 = this; - function setHeader(_value, _header, _rewrite) { - const lHeader = normalizeHeader(_header); - if (!lHeader) { - throw new Error("header name must be a non-empty string"); - } - const key = utils_default.findKey(self2, lHeader); - if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) { - self2[key || _header] = normalizeValue(_value); - } - } - const setHeaders = (headers, _rewrite) => utils_default.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); - if (utils_default.isPlainObject(header) || header instanceof this.constructor) { - setHeaders(header, valueOrRewrite); - } else if (utils_default.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { - setHeaders(parseHeaders_default(header), valueOrRewrite); - } else if (utils_default.isHeaders(header)) { - for (const [key, value] of header.entries()) { - setHeader(value, key, rewrite); - } - } else { - header != null && setHeader(valueOrRewrite, header, rewrite); - } - return this; - } - get(header, parser) { - header = normalizeHeader(header); - if (header) { - const key = utils_default.findKey(this, header); - if (key) { - const value = this[key]; - if (!parser) { - return value; - } - if (parser === true) { - return parseTokens(value); - } - if (utils_default.isFunction(parser)) { - return parser.call(this, value, key); - } - if (utils_default.isRegExp(parser)) { - return parser.exec(value); - } - throw new TypeError("parser must be boolean|regexp|function"); - } - } - } - has(header, matcher) { - header = normalizeHeader(header); - if (header) { - const key = utils_default.findKey(this, header); - return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher))); - } - return false; - } - delete(header, matcher) { - const self2 = this; - let deleted = false; - function deleteHeader(_header) { - _header = normalizeHeader(_header); - if (_header) { - const key = utils_default.findKey(self2, _header); - if (key && (!matcher || matchHeaderValue(self2, self2[key], key, matcher))) { - delete self2[key]; - deleted = true; - } - } - } - if (utils_default.isArray(header)) { - header.forEach(deleteHeader); - } else { - deleteHeader(header); - } - return deleted; - } - clear(matcher) { - const keys = Object.keys(this); - let i = keys.length; - let deleted = false; - while (i--) { - const key = keys[i]; - if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { - delete this[key]; - deleted = true; - } - } - return deleted; - } - normalize(format) { - const self2 = this; - const headers = {}; - utils_default.forEach(this, (value, header) => { - const key = utils_default.findKey(headers, header); - if (key) { - self2[key] = normalizeValue(value); - delete self2[header]; - return; - } - const normalized = format ? formatHeader(header) : String(header).trim(); - if (normalized !== header) { - delete self2[header]; - } - self2[normalized] = normalizeValue(value); - headers[normalized] = true; - }); - return this; - } - concat(...targets) { - return this.constructor.concat(this, ...targets); - } - toJSON(asStrings) { - const obj = /* @__PURE__ */ Object.create(null); - utils_default.forEach(this, (value, header) => { - value != null && value !== false && (obj[header] = asStrings && utils_default.isArray(value) ? value.join(", ") : value); - }); - return obj; - } - [Symbol.iterator]() { - return Object.entries(this.toJSON())[Symbol.iterator](); - } - toString() { - return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n"); - } - get [Symbol.toStringTag]() { - return "AxiosHeaders"; - } - static from(thing) { - return thing instanceof this ? thing : new this(thing); - } - static concat(first, ...targets) { - const computed = new this(first); - targets.forEach((target) => computed.set(target)); - return computed; - } - static accessor(header) { - const internals = this[$internals] = this[$internals] = { - accessors: {} - }; - const accessors = internals.accessors; - const prototype3 = this.prototype; - function defineAccessor(_header) { - const lHeader = normalizeHeader(_header); - if (!accessors[lHeader]) { - buildAccessors(prototype3, _header); - accessors[lHeader] = true; - } - } - utils_default.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); - return this; - } -}; -AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]); -utils_default.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => { - let mapped = key[0].toUpperCase() + key.slice(1); - return { - get: () => value, - set(headerValue) { - this[mapped] = headerValue; - } - }; -}); -utils_default.freezeMethods(AxiosHeaders); -var AxiosHeaders_default = AxiosHeaders; - -// node_modules/axios/lib/core/transformData.js -function transformData(fns, response) { - const config = this || defaults_default; - const context = response || config; - const headers = AxiosHeaders_default.from(context.headers); - let data = context.data; - utils_default.forEach(fns, function transform(fn) { - data = fn.call(config, data, headers.normalize(), response ? response.status : void 0); - }); - headers.normalize(); - return data; -} - -// node_modules/axios/lib/cancel/isCancel.js -function isCancel(value) { - return !!(value && value.__CANCEL__); -} - -// node_modules/axios/lib/cancel/CanceledError.js -function CanceledError(message, config, request) { - AxiosError_default.call(this, message == null ? "canceled" : message, AxiosError_default.ERR_CANCELED, config, request); - this.name = "CanceledError"; -} -utils_default.inherits(CanceledError, AxiosError_default, { - __CANCEL__: true -}); -var CanceledError_default = CanceledError; - -// node_modules/axios/lib/core/settle.js -function settle(resolve, reject, response) { - const validateStatus2 = response.config.validateStatus; - if (!response.status || !validateStatus2 || validateStatus2(response.status)) { - resolve(response); - } else { - reject(new AxiosError_default( - "Request failed with status code " + response.status, - [AxiosError_default.ERR_BAD_REQUEST, AxiosError_default.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], - response.config, - response.request, - response - )); - } -} - -// node_modules/axios/lib/helpers/parseProtocol.js -function parseProtocol(url) { - const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); - return match && match[1] || ""; -} - -// node_modules/axios/lib/helpers/speedometer.js -function speedometer(samplesCount, min) { - samplesCount = samplesCount || 10; - const bytes = new Array(samplesCount); - const timestamps = new Array(samplesCount); - let head = 0; - let tail = 0; - let firstSampleTS; - min = min !== void 0 ? min : 1e3; - return function push(chunkLength) { - const now = Date.now(); - const startedAt = timestamps[tail]; - if (!firstSampleTS) { - firstSampleTS = now; - } - bytes[head] = chunkLength; - timestamps[head] = now; - let i = tail; - let bytesCount = 0; - while (i !== head) { - bytesCount += bytes[i++]; - i = i % samplesCount; - } - head = (head + 1) % samplesCount; - if (head === tail) { - tail = (tail + 1) % samplesCount; - } - if (now - firstSampleTS < min) { - return; - } - const passed = startedAt && now - startedAt; - return passed ? Math.round(bytesCount * 1e3 / passed) : void 0; - }; -} -var speedometer_default = speedometer; - -// node_modules/axios/lib/helpers/throttle.js -function throttle(fn, freq) { - let timestamp = 0; - let threshold = 1e3 / freq; - let lastArgs; - let timer; - const invoke = (args, now = Date.now()) => { - timestamp = now; - lastArgs = null; - if (timer) { - clearTimeout(timer); - timer = null; - } - fn.apply(null, args); - }; - const throttled = (...args) => { - const now = Date.now(); - const passed = now - timestamp; - if (passed >= threshold) { - invoke(args, now); - } else { - lastArgs = args; - if (!timer) { - timer = setTimeout(() => { - timer = null; - invoke(lastArgs); - }, threshold - passed); - } - } - }; - const flush = () => lastArgs && invoke(lastArgs); - return [throttled, flush]; -} -var throttle_default = throttle; - -// node_modules/axios/lib/helpers/progressEventReducer.js -var progressEventReducer = (listener, isDownloadStream, freq = 3) => { - let bytesNotified = 0; - const _speedometer = speedometer_default(50, 250); - return throttle_default((e) => { - const loaded = e.loaded; - const total = e.lengthComputable ? e.total : void 0; - const progressBytes = loaded - bytesNotified; - const rate = _speedometer(progressBytes); - const inRange = loaded <= total; - bytesNotified = loaded; - const data = { - loaded, - total, - progress: total ? loaded / total : void 0, - bytes: progressBytes, - rate: rate ? rate : void 0, - estimated: rate && total && inRange ? (total - loaded) / rate : void 0, - event: e, - lengthComputable: total != null, - [isDownloadStream ? "download" : "upload"]: true - }; - listener(data); - }, freq); -}; -var progressEventDecorator = (total, throttled) => { - const lengthComputable = total != null; - return [(loaded) => throttled[0]({ - lengthComputable, - total, - loaded - }), throttled[1]]; -}; -var asyncDecorator = (fn) => (...args) => utils_default.asap(() => fn(...args)); - -// node_modules/axios/lib/helpers/isURLSameOrigin.js -var isURLSameOrigin_default = platform_default.hasStandardBrowserEnv ? /* @__PURE__ */ ((origin2, isMSIE) => (url) => { - url = new URL(url, platform_default.origin); - return origin2.protocol === url.protocol && origin2.host === url.host && (isMSIE || origin2.port === url.port); -})( - new URL(platform_default.origin), - platform_default.navigator && /(msie|trident)/i.test(platform_default.navigator.userAgent) -) : () => true; - -// node_modules/axios/lib/helpers/cookies.js -var cookies_default = platform_default.hasStandardBrowserEnv ? ( - // Standard browser envs support document.cookie - { - write(name, value, expires, path, domain, secure) { - const cookie = [name + "=" + encodeURIComponent(value)]; - utils_default.isNumber(expires) && cookie.push("expires=" + new Date(expires).toGMTString()); - utils_default.isString(path) && cookie.push("path=" + path); - utils_default.isString(domain) && cookie.push("domain=" + domain); - secure === true && cookie.push("secure"); - document.cookie = cookie.join("; "); - }, - read(name) { - const match = document.cookie.match(new RegExp("(^|;\\s*)(" + name + ")=([^;]*)")); - return match ? decodeURIComponent(match[3]) : null; - }, - remove(name) { - this.write(name, "", Date.now() - 864e5); - } - } -) : ( - // Non-standard browser env (web workers, react-native) lack needed support. - { - write() { - }, - read() { - return null; - }, - remove() { - } - } -); - -// node_modules/axios/lib/helpers/isAbsoluteURL.js -function isAbsoluteURL(url) { - return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); -} - -// node_modules/axios/lib/helpers/combineURLs.js -function combineURLs(baseURL, relativeURL) { - return relativeURL ? baseURL.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL; -} - -// node_modules/axios/lib/core/buildFullPath.js -function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) { - let isRelativeUrl = !isAbsoluteURL(requestedURL); - if (baseURL && (isRelativeUrl || allowAbsoluteUrls == false)) { - return combineURLs(baseURL, requestedURL); - } - return requestedURL; -} - -// node_modules/axios/lib/core/mergeConfig.js -var headersToObject = (thing) => thing instanceof AxiosHeaders_default ? { ...thing } : thing; -function mergeConfig(config1, config2) { - config2 = config2 || {}; - const config = {}; - function getMergedValue(target, source, prop, caseless) { - if (utils_default.isPlainObject(target) && utils_default.isPlainObject(source)) { - return utils_default.merge.call({ caseless }, target, source); - } else if (utils_default.isPlainObject(source)) { - return utils_default.merge({}, source); - } else if (utils_default.isArray(source)) { - return source.slice(); - } - return source; - } - function mergeDeepProperties(a, b, prop, caseless) { - if (!utils_default.isUndefined(b)) { - return getMergedValue(a, b, prop, caseless); - } else if (!utils_default.isUndefined(a)) { - return getMergedValue(void 0, a, prop, caseless); - } - } - function valueFromConfig2(a, b) { - if (!utils_default.isUndefined(b)) { - return getMergedValue(void 0, b); - } - } - function defaultToConfig2(a, b) { - if (!utils_default.isUndefined(b)) { - return getMergedValue(void 0, b); - } else if (!utils_default.isUndefined(a)) { - return getMergedValue(void 0, a); - } - } - function mergeDirectKeys(a, b, prop) { - if (prop in config2) { - return getMergedValue(a, b); - } else if (prop in config1) { - return getMergedValue(void 0, a); - } - } - const mergeMap = { - url: valueFromConfig2, - method: valueFromConfig2, - data: valueFromConfig2, - baseURL: defaultToConfig2, - transformRequest: defaultToConfig2, - transformResponse: defaultToConfig2, - paramsSerializer: defaultToConfig2, - timeout: defaultToConfig2, - timeoutMessage: defaultToConfig2, - withCredentials: defaultToConfig2, - withXSRFToken: defaultToConfig2, - adapter: defaultToConfig2, - responseType: defaultToConfig2, - xsrfCookieName: defaultToConfig2, - xsrfHeaderName: defaultToConfig2, - onUploadProgress: defaultToConfig2, - onDownloadProgress: defaultToConfig2, - decompress: defaultToConfig2, - maxContentLength: defaultToConfig2, - maxBodyLength: defaultToConfig2, - beforeRedirect: defaultToConfig2, - transport: defaultToConfig2, - httpAgent: defaultToConfig2, - httpsAgent: defaultToConfig2, - cancelToken: defaultToConfig2, - socketPath: defaultToConfig2, - responseEncoding: defaultToConfig2, - validateStatus: mergeDirectKeys, - headers: (a, b, prop) => mergeDeepProperties(headersToObject(a), headersToObject(b), prop, true) - }; - utils_default.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) { - const merge2 = mergeMap[prop] || mergeDeepProperties; - const configValue = merge2(config1[prop], config2[prop], prop); - utils_default.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue); - }); - return config; -} - -// node_modules/axios/lib/helpers/resolveConfig.js -var resolveConfig_default = (config) => { - const newConfig = mergeConfig({}, config); - let { data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig; - newConfig.headers = headers = AxiosHeaders_default.from(headers); - newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls), config.params, config.paramsSerializer); - if (auth) { - headers.set( - "Authorization", - "Basic " + btoa((auth.username || "") + ":" + (auth.password ? unescape(encodeURIComponent(auth.password)) : "")) - ); - } - let contentType; - if (utils_default.isFormData(data)) { - if (platform_default.hasStandardBrowserEnv || platform_default.hasStandardBrowserWebWorkerEnv) { - headers.setContentType(void 0); - } else if ((contentType = headers.getContentType()) !== false) { - const [type, ...tokens] = contentType ? contentType.split(";").map((token) => token.trim()).filter(Boolean) : []; - headers.setContentType([type || "multipart/form-data", ...tokens].join("; ")); - } - } - if (platform_default.hasStandardBrowserEnv) { - withXSRFToken && utils_default.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig)); - if (withXSRFToken || withXSRFToken !== false && isURLSameOrigin_default(newConfig.url)) { - const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies_default.read(xsrfCookieName); - if (xsrfValue) { - headers.set(xsrfHeaderName, xsrfValue); - } - } - } - return newConfig; -}; - -// node_modules/axios/lib/adapters/xhr.js -var isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; -var xhr_default = isXHRAdapterSupported && function(config) { - return new Promise(function dispatchXhrRequest(resolve, reject) { - const _config = resolveConfig_default(config); - let requestData = _config.data; - const requestHeaders = AxiosHeaders_default.from(_config.headers).normalize(); - let { responseType, onUploadProgress, onDownloadProgress } = _config; - let onCanceled; - let uploadThrottled, downloadThrottled; - let flushUpload, flushDownload; - function done() { - flushUpload && flushUpload(); - flushDownload && flushDownload(); - _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled); - _config.signal && _config.signal.removeEventListener("abort", onCanceled); - } - let request = new XMLHttpRequest(); - request.open(_config.method.toUpperCase(), _config.url, true); - request.timeout = _config.timeout; - function onloadend() { - if (!request) { - return; - } - const responseHeaders = AxiosHeaders_default.from( - "getAllResponseHeaders" in request && request.getAllResponseHeaders() - ); - const responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response; - const response = { - data: responseData, - status: request.status, - statusText: request.statusText, - headers: responseHeaders, - config, - request - }; - settle(function _resolve(value) { - resolve(value); - done(); - }, function _reject(err) { - reject(err); - done(); - }, response); - request = null; - } - if ("onloadend" in request) { - request.onloadend = onloadend; - } else { - request.onreadystatechange = function handleLoad() { - if (!request || request.readyState !== 4) { - return; - } - if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf("file:") === 0)) { - return; - } - setTimeout(onloadend); - }; - } - request.onabort = function handleAbort() { - if (!request) { - return; - } - reject(new AxiosError_default("Request aborted", AxiosError_default.ECONNABORTED, config, request)); - request = null; - }; - request.onerror = function handleError() { - reject(new AxiosError_default("Network Error", AxiosError_default.ERR_NETWORK, config, request)); - request = null; - }; - request.ontimeout = function handleTimeout() { - let timeoutErrorMessage = _config.timeout ? "timeout of " + _config.timeout + "ms exceeded" : "timeout exceeded"; - const transitional2 = _config.transitional || transitional_default; - if (_config.timeoutErrorMessage) { - timeoutErrorMessage = _config.timeoutErrorMessage; - } - reject(new AxiosError_default( - timeoutErrorMessage, - transitional2.clarifyTimeoutError ? AxiosError_default.ETIMEDOUT : AxiosError_default.ECONNABORTED, - config, - request - )); - request = null; - }; - requestData === void 0 && requestHeaders.setContentType(null); - if ("setRequestHeader" in request) { - utils_default.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) { - request.setRequestHeader(key, val); - }); - } - if (!utils_default.isUndefined(_config.withCredentials)) { - request.withCredentials = !!_config.withCredentials; - } - if (responseType && responseType !== "json") { - request.responseType = _config.responseType; - } - if (onDownloadProgress) { - [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true); - request.addEventListener("progress", downloadThrottled); - } - if (onUploadProgress && request.upload) { - [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress); - request.upload.addEventListener("progress", uploadThrottled); - request.upload.addEventListener("loadend", flushUpload); - } - if (_config.cancelToken || _config.signal) { - onCanceled = (cancel) => { - if (!request) { - return; - } - reject(!cancel || cancel.type ? new CanceledError_default(null, config, request) : cancel); - request.abort(); - request = null; - }; - _config.cancelToken && _config.cancelToken.subscribe(onCanceled); - if (_config.signal) { - _config.signal.aborted ? onCanceled() : _config.signal.addEventListener("abort", onCanceled); - } - } - const protocol = parseProtocol(_config.url); - if (protocol && platform_default.protocols.indexOf(protocol) === -1) { - reject(new AxiosError_default("Unsupported protocol " + protocol + ":", AxiosError_default.ERR_BAD_REQUEST, config)); - return; - } - request.send(requestData || null); - }); -}; - -// node_modules/axios/lib/helpers/composeSignals.js -var composeSignals = (signals, timeout) => { - const { length } = signals = signals ? signals.filter(Boolean) : []; - if (timeout || length) { - let controller = new AbortController(); - let aborted; - const onabort = function(reason) { - if (!aborted) { - aborted = true; - unsubscribe(); - const err = reason instanceof Error ? reason : this.reason; - controller.abort(err instanceof AxiosError_default ? err : new CanceledError_default(err instanceof Error ? err.message : err)); - } - }; - let timer = timeout && setTimeout(() => { - timer = null; - onabort(new AxiosError_default(`timeout ${timeout} of ms exceeded`, AxiosError_default.ETIMEDOUT)); - }, timeout); - const unsubscribe = () => { - if (signals) { - timer && clearTimeout(timer); - timer = null; - signals.forEach((signal2) => { - signal2.unsubscribe ? signal2.unsubscribe(onabort) : signal2.removeEventListener("abort", onabort); - }); - signals = null; - } - }; - signals.forEach((signal2) => signal2.addEventListener("abort", onabort)); - const { signal } = controller; - signal.unsubscribe = () => utils_default.asap(unsubscribe); - return signal; - } -}; -var composeSignals_default = composeSignals; - -// node_modules/axios/lib/helpers/trackStream.js -var streamChunk = function* (chunk, chunkSize) { - let len = chunk.byteLength; - if (!chunkSize || len < chunkSize) { - yield chunk; - return; - } - let pos = 0; - let end; - while (pos < len) { - end = pos + chunkSize; - yield chunk.slice(pos, end); - pos = end; - } -}; -var readBytes = async function* (iterable, chunkSize) { - for await (const chunk of readStream(iterable)) { - yield* streamChunk(chunk, chunkSize); - } -}; -var readStream = async function* (stream) { - if (stream[Symbol.asyncIterator]) { - yield* stream; - return; - } - const reader = stream.getReader(); - try { - for (; ; ) { - const { done, value } = await reader.read(); - if (done) { - break; - } - yield value; - } - } finally { - await reader.cancel(); - } -}; -var trackStream = (stream, chunkSize, onProgress, onFinish) => { - const iterator = readBytes(stream, chunkSize); - let bytes = 0; - let done; - let _onFinish = (e) => { - if (!done) { - done = true; - onFinish && onFinish(e); - } - }; - return new ReadableStream({ - async pull(controller) { - try { - const { done: done2, value } = await iterator.next(); - if (done2) { - _onFinish(); - controller.close(); - return; - } - let len = value.byteLength; - if (onProgress) { - let loadedBytes = bytes += len; - onProgress(loadedBytes); - } - controller.enqueue(new Uint8Array(value)); - } catch (err) { - _onFinish(err); - throw err; - } - }, - cancel(reason) { - _onFinish(reason); - return iterator.return(); - } - }, { - highWaterMark: 2 - }); -}; - -// node_modules/axios/lib/adapters/fetch.js -var isFetchSupported = typeof fetch === "function" && typeof Request === "function" && typeof Response === "function"; -var isReadableStreamSupported = isFetchSupported && typeof ReadableStream === "function"; -var encodeText = isFetchSupported && (typeof TextEncoder === "function" ? /* @__PURE__ */ ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : async (str) => new Uint8Array(await new Response(str).arrayBuffer())); -var test = (fn, ...args) => { - try { - return !!fn(...args); - } catch (e) { - return false; - } -}; -var supportsRequestStream = isReadableStreamSupported && test(() => { - let duplexAccessed = false; - const hasContentType = new Request(platform_default.origin, { - body: new ReadableStream(), - method: "POST", - get duplex() { - duplexAccessed = true; - return "half"; - } - }).headers.has("Content-Type"); - return duplexAccessed && !hasContentType; -}); -var DEFAULT_CHUNK_SIZE = 64 * 1024; -var supportsResponseStream = isReadableStreamSupported && test(() => utils_default.isReadableStream(new Response("").body)); -var resolvers = { - stream: supportsResponseStream && ((res) => res.body) -}; -isFetchSupported && ((res) => { - ["text", "arrayBuffer", "blob", "formData", "stream"].forEach((type) => { - !resolvers[type] && (resolvers[type] = utils_default.isFunction(res[type]) ? (res2) => res2[type]() : (_, config) => { - throw new AxiosError_default(`Response type '${type}' is not supported`, AxiosError_default.ERR_NOT_SUPPORT, config); - }); - }); -})(new Response()); -var getBodyLength = async (body) => { - if (body == null) { - return 0; - } - if (utils_default.isBlob(body)) { - return body.size; - } - if (utils_default.isSpecCompliantForm(body)) { - const _request = new Request(platform_default.origin, { - method: "POST", - body - }); - return (await _request.arrayBuffer()).byteLength; - } - if (utils_default.isArrayBufferView(body) || utils_default.isArrayBuffer(body)) { - return body.byteLength; - } - if (utils_default.isURLSearchParams(body)) { - body = body + ""; - } - if (utils_default.isString(body)) { - return (await encodeText(body)).byteLength; - } -}; -var resolveBodyLength = async (headers, body) => { - const length = utils_default.toFiniteNumber(headers.getContentLength()); - return length == null ? getBodyLength(body) : length; -}; -var fetch_default = isFetchSupported && (async (config) => { - let { - url, - method, - data, - signal, - cancelToken, - timeout, - onDownloadProgress, - onUploadProgress, - responseType, - headers, - withCredentials = "same-origin", - fetchOptions - } = resolveConfig_default(config); - responseType = responseType ? (responseType + "").toLowerCase() : "text"; - let composedSignal = composeSignals_default([signal, cancelToken && cancelToken.toAbortSignal()], timeout); - let request; - const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => { - composedSignal.unsubscribe(); - }); - let requestContentLength; - try { - if (onUploadProgress && supportsRequestStream && method !== "get" && method !== "head" && (requestContentLength = await resolveBodyLength(headers, data)) !== 0) { - let _request = new Request(url, { - method: "POST", - body: data, - duplex: "half" - }); - let contentTypeHeader; - if (utils_default.isFormData(data) && (contentTypeHeader = _request.headers.get("content-type"))) { - headers.setContentType(contentTypeHeader); - } - if (_request.body) { - const [onProgress, flush] = progressEventDecorator( - requestContentLength, - progressEventReducer(asyncDecorator(onUploadProgress)) - ); - data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush); - } - } - if (!utils_default.isString(withCredentials)) { - withCredentials = withCredentials ? "include" : "omit"; - } - const isCredentialsSupported = "credentials" in Request.prototype; - request = new Request(url, { - ...fetchOptions, - signal: composedSignal, - method: method.toUpperCase(), - headers: headers.normalize().toJSON(), - body: data, - duplex: "half", - credentials: isCredentialsSupported ? withCredentials : void 0 - }); - let response = await fetch(request); - const isStreamResponse = supportsResponseStream && (responseType === "stream" || responseType === "response"); - if (supportsResponseStream && (onDownloadProgress || isStreamResponse && unsubscribe)) { - const options = {}; - ["status", "statusText", "headers"].forEach((prop) => { - options[prop] = response[prop]; - }); - const responseContentLength = utils_default.toFiniteNumber(response.headers.get("content-length")); - const [onProgress, flush] = onDownloadProgress && progressEventDecorator( - responseContentLength, - progressEventReducer(asyncDecorator(onDownloadProgress), true) - ) || []; - response = new Response( - trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => { - flush && flush(); - unsubscribe && unsubscribe(); - }), - options - ); - } - responseType = responseType || "text"; - let responseData = await resolvers[utils_default.findKey(resolvers, responseType) || "text"](response, config); - !isStreamResponse && unsubscribe && unsubscribe(); - return await new Promise((resolve, reject) => { - settle(resolve, reject, { - data: responseData, - headers: AxiosHeaders_default.from(response.headers), - status: response.status, - statusText: response.statusText, - config, - request - }); - }); - } catch (err) { - unsubscribe && unsubscribe(); - if (err && err.name === "TypeError" && /fetch/i.test(err.message)) { - throw Object.assign( - new AxiosError_default("Network Error", AxiosError_default.ERR_NETWORK, config, request), - { - cause: err.cause || err - } - ); - } - throw AxiosError_default.from(err, err && err.code, config, request); - } -}); - -// node_modules/axios/lib/adapters/adapters.js -var knownAdapters = { - http: null_default, - xhr: xhr_default, - fetch: fetch_default -}; -utils_default.forEach(knownAdapters, (fn, value) => { - if (fn) { - try { - Object.defineProperty(fn, "name", { value }); - } catch (e) { - } - Object.defineProperty(fn, "adapterName", { value }); - } -}); -var renderReason = (reason) => `- ${reason}`; -var isResolvedHandle = (adapter) => utils_default.isFunction(adapter) || adapter === null || adapter === false; -var adapters_default = { - getAdapter: (adapters) => { - adapters = utils_default.isArray(adapters) ? adapters : [adapters]; - const { length } = adapters; - let nameOrAdapter; - let adapter; - const rejectedReasons = {}; - for (let i = 0; i < length; i++) { - nameOrAdapter = adapters[i]; - let id; - adapter = nameOrAdapter; - if (!isResolvedHandle(nameOrAdapter)) { - adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; - if (adapter === void 0) { - throw new AxiosError_default(`Unknown adapter '${id}'`); - } - } - if (adapter) { - break; - } - rejectedReasons[id || "#" + i] = adapter; - } - if (!adapter) { - const reasons = Object.entries(rejectedReasons).map( - ([id, state]) => `adapter ${id} ` + (state === false ? "is not supported by the environment" : "is not available in the build") - ); - let s = length ? reasons.length > 1 ? "since :\n" + reasons.map(renderReason).join("\n") : " " + renderReason(reasons[0]) : "as no adapter specified"; - throw new AxiosError_default( - `There is no suitable adapter to dispatch the request ` + s, - "ERR_NOT_SUPPORT" - ); - } - return adapter; - }, - adapters: knownAdapters -}; - -// node_modules/axios/lib/core/dispatchRequest.js -function throwIfCancellationRequested(config) { - if (config.cancelToken) { - config.cancelToken.throwIfRequested(); - } - if (config.signal && config.signal.aborted) { - throw new CanceledError_default(null, config); - } -} -function dispatchRequest(config) { - throwIfCancellationRequested(config); - config.headers = AxiosHeaders_default.from(config.headers); - config.data = transformData.call( - config, - config.transformRequest - ); - if (["post", "put", "patch"].indexOf(config.method) !== -1) { - config.headers.setContentType("application/x-www-form-urlencoded", false); - } - const adapter = adapters_default.getAdapter(config.adapter || defaults_default.adapter); - return adapter(config).then(function onAdapterResolution(response) { - throwIfCancellationRequested(config); - response.data = transformData.call( - config, - config.transformResponse, - response - ); - response.headers = AxiosHeaders_default.from(response.headers); - return response; - }, function onAdapterRejection(reason) { - if (!isCancel(reason)) { - throwIfCancellationRequested(config); - if (reason && reason.response) { - reason.response.data = transformData.call( - config, - config.transformResponse, - reason.response - ); - reason.response.headers = AxiosHeaders_default.from(reason.response.headers); - } - } - return Promise.reject(reason); - }); -} - -// node_modules/axios/lib/env/data.js -var VERSION = "1.8.4"; - -// node_modules/axios/lib/helpers/validator.js -var validators = {}; -["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => { - validators[type] = function validator(thing) { - return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type; - }; -}); -var deprecatedWarnings = {}; -validators.transitional = function transitional(validator, version, message) { - function formatMessage(opt, desc) { - return "[Axios v" + VERSION + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : ""); - } - return (value, opt, opts) => { - if (validator === false) { - throw new AxiosError_default( - formatMessage(opt, " has been removed" + (version ? " in " + version : "")), - AxiosError_default.ERR_DEPRECATED - ); - } - if (version && !deprecatedWarnings[opt]) { - deprecatedWarnings[opt] = true; - console.warn( - formatMessage( - opt, - " has been deprecated since v" + version + " and will be removed in the near future" - ) - ); - } - return validator ? validator(value, opt, opts) : true; - }; -}; -validators.spelling = function spelling(correctSpelling) { - return (value, opt) => { - console.warn(`${opt} is likely a misspelling of ${correctSpelling}`); - return true; - }; -}; -function assertOptions(options, schema, allowUnknown) { - if (typeof options !== "object") { - throw new AxiosError_default("options must be an object", AxiosError_default.ERR_BAD_OPTION_VALUE); - } - const keys = Object.keys(options); - let i = keys.length; - while (i-- > 0) { - const opt = keys[i]; - const validator = schema[opt]; - if (validator) { - const value = options[opt]; - const result = value === void 0 || validator(value, opt, options); - if (result !== true) { - throw new AxiosError_default("option " + opt + " must be " + result, AxiosError_default.ERR_BAD_OPTION_VALUE); - } - continue; - } - if (allowUnknown !== true) { - throw new AxiosError_default("Unknown option " + opt, AxiosError_default.ERR_BAD_OPTION); - } - } -} -var validator_default = { - assertOptions, - validators -}; - -// node_modules/axios/lib/core/Axios.js -var validators2 = validator_default.validators; -var Axios = class { - constructor(instanceConfig) { - this.defaults = instanceConfig; - this.interceptors = { - request: new InterceptorManager_default(), - response: new InterceptorManager_default() - }; - } - /** - * Dispatch a request - * - * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) - * @param {?Object} config - * - * @returns {Promise} The Promise to be fulfilled - */ - async request(configOrUrl, config) { - try { - return await this._request(configOrUrl, config); - } catch (err) { - if (err instanceof Error) { - let dummy = {}; - Error.captureStackTrace ? Error.captureStackTrace(dummy) : dummy = new Error(); - const stack = dummy.stack ? dummy.stack.replace(/^.+\n/, "") : ""; - try { - if (!err.stack) { - err.stack = stack; - } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\n.+\n/, ""))) { - err.stack += "\n" + stack; - } - } catch (e) { - } - } - throw err; - } - } - _request(configOrUrl, config) { - if (typeof configOrUrl === "string") { - config = config || {}; - config.url = configOrUrl; - } else { - config = configOrUrl || {}; - } - config = mergeConfig(this.defaults, config); - const { transitional: transitional2, paramsSerializer, headers } = config; - if (transitional2 !== void 0) { - validator_default.assertOptions(transitional2, { - silentJSONParsing: validators2.transitional(validators2.boolean), - forcedJSONParsing: validators2.transitional(validators2.boolean), - clarifyTimeoutError: validators2.transitional(validators2.boolean) - }, false); - } - if (paramsSerializer != null) { - if (utils_default.isFunction(paramsSerializer)) { - config.paramsSerializer = { - serialize: paramsSerializer - }; - } else { - validator_default.assertOptions(paramsSerializer, { - encode: validators2.function, - serialize: validators2.function - }, true); - } - } - if (config.allowAbsoluteUrls !== void 0) { - } else if (this.defaults.allowAbsoluteUrls !== void 0) { - config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls; - } else { - config.allowAbsoluteUrls = true; - } - validator_default.assertOptions(config, { - baseUrl: validators2.spelling("baseURL"), - withXsrfToken: validators2.spelling("withXSRFToken") - }, true); - config.method = (config.method || this.defaults.method || "get").toLowerCase(); - let contextHeaders = headers && utils_default.merge( - headers.common, - headers[config.method] - ); - headers && utils_default.forEach( - ["delete", "get", "head", "post", "put", "patch", "common"], - (method) => { - delete headers[method]; - } - ); - config.headers = AxiosHeaders_default.concat(contextHeaders, headers); - const requestInterceptorChain = []; - let synchronousRequestInterceptors = true; - this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { - if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) { - return; - } - synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; - requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); - }); - const responseInterceptorChain = []; - this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { - responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); - }); - let promise; - let i = 0; - let len; - if (!synchronousRequestInterceptors) { - const chain = [dispatchRequest.bind(this), void 0]; - chain.unshift.apply(chain, requestInterceptorChain); - chain.push.apply(chain, responseInterceptorChain); - len = chain.length; - promise = Promise.resolve(config); - while (i < len) { - promise = promise.then(chain[i++], chain[i++]); - } - return promise; - } - len = requestInterceptorChain.length; - let newConfig = config; - i = 0; - while (i < len) { - const onFulfilled = requestInterceptorChain[i++]; - const onRejected = requestInterceptorChain[i++]; - try { - newConfig = onFulfilled(newConfig); - } catch (error) { - onRejected.call(this, error); - break; - } - } - try { - promise = dispatchRequest.call(this, newConfig); - } catch (error) { - return Promise.reject(error); - } - i = 0; - len = responseInterceptorChain.length; - while (i < len) { - promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); - } - return promise; - } - getUri(config) { - config = mergeConfig(this.defaults, config); - const fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls); - return buildURL(fullPath, config.params, config.paramsSerializer); - } -}; -utils_default.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) { - Axios.prototype[method] = function(url, config) { - return this.request(mergeConfig(config || {}, { - method, - url, - data: (config || {}).data - })); - }; -}); -utils_default.forEach(["post", "put", "patch"], function forEachMethodWithData(method) { - function generateHTTPMethod(isForm) { - return function httpMethod(url, data, config) { - return this.request(mergeConfig(config || {}, { - method, - headers: isForm ? { - "Content-Type": "multipart/form-data" - } : {}, - url, - data - })); - }; - } - Axios.prototype[method] = generateHTTPMethod(); - Axios.prototype[method + "Form"] = generateHTTPMethod(true); -}); -var Axios_default = Axios; - -// node_modules/axios/lib/cancel/CancelToken.js -var CancelToken = class _CancelToken { - constructor(executor) { - if (typeof executor !== "function") { - throw new TypeError("executor must be a function."); - } - let resolvePromise; - this.promise = new Promise(function promiseExecutor(resolve) { - resolvePromise = resolve; - }); - const token = this; - this.promise.then((cancel) => { - if (!token._listeners) return; - let i = token._listeners.length; - while (i-- > 0) { - token._listeners[i](cancel); - } - token._listeners = null; - }); - this.promise.then = (onfulfilled) => { - let _resolve; - const promise = new Promise((resolve) => { - token.subscribe(resolve); - _resolve = resolve; - }).then(onfulfilled); - promise.cancel = function reject() { - token.unsubscribe(_resolve); - }; - return promise; - }; - executor(function cancel(message, config, request) { - if (token.reason) { - return; - } - token.reason = new CanceledError_default(message, config, request); - resolvePromise(token.reason); - }); - } - /** - * Throws a `CanceledError` if cancellation has been requested. - */ - throwIfRequested() { - if (this.reason) { - throw this.reason; - } - } - /** - * Subscribe to the cancel signal - */ - subscribe(listener) { - if (this.reason) { - listener(this.reason); - return; - } - if (this._listeners) { - this._listeners.push(listener); - } else { - this._listeners = [listener]; - } - } - /** - * Unsubscribe from the cancel signal - */ - unsubscribe(listener) { - if (!this._listeners) { - return; - } - const index = this._listeners.indexOf(listener); - if (index !== -1) { - this._listeners.splice(index, 1); - } - } - toAbortSignal() { - const controller = new AbortController(); - const abort = (err) => { - controller.abort(err); - }; - this.subscribe(abort); - controller.signal.unsubscribe = () => this.unsubscribe(abort); - return controller.signal; - } - /** - * Returns an object that contains a new `CancelToken` and a function that, when called, - * cancels the `CancelToken`. - */ - static source() { - let cancel; - const token = new _CancelToken(function executor(c) { - cancel = c; - }); - return { - token, - cancel - }; - } -}; -var CancelToken_default = CancelToken; - -// node_modules/axios/lib/helpers/spread.js -function spread(callback) { - return function wrap(arr) { - return callback.apply(null, arr); - }; -} - -// node_modules/axios/lib/helpers/isAxiosError.js -function isAxiosError(payload) { - return utils_default.isObject(payload) && payload.isAxiosError === true; -} - -// node_modules/axios/lib/helpers/HttpStatusCode.js -var HttpStatusCode = { - Continue: 100, - SwitchingProtocols: 101, - Processing: 102, - EarlyHints: 103, - Ok: 200, - Created: 201, - Accepted: 202, - NonAuthoritativeInformation: 203, - NoContent: 204, - ResetContent: 205, - PartialContent: 206, - MultiStatus: 207, - AlreadyReported: 208, - ImUsed: 226, - MultipleChoices: 300, - MovedPermanently: 301, - Found: 302, - SeeOther: 303, - NotModified: 304, - UseProxy: 305, - Unused: 306, - TemporaryRedirect: 307, - PermanentRedirect: 308, - BadRequest: 400, - Unauthorized: 401, - PaymentRequired: 402, - Forbidden: 403, - NotFound: 404, - MethodNotAllowed: 405, - NotAcceptable: 406, - ProxyAuthenticationRequired: 407, - RequestTimeout: 408, - Conflict: 409, - Gone: 410, - LengthRequired: 411, - PreconditionFailed: 412, - PayloadTooLarge: 413, - UriTooLong: 414, - UnsupportedMediaType: 415, - RangeNotSatisfiable: 416, - ExpectationFailed: 417, - ImATeapot: 418, - MisdirectedRequest: 421, - UnprocessableEntity: 422, - Locked: 423, - FailedDependency: 424, - TooEarly: 425, - UpgradeRequired: 426, - PreconditionRequired: 428, - TooManyRequests: 429, - RequestHeaderFieldsTooLarge: 431, - UnavailableForLegalReasons: 451, - InternalServerError: 500, - NotImplemented: 501, - BadGateway: 502, - ServiceUnavailable: 503, - GatewayTimeout: 504, - HttpVersionNotSupported: 505, - VariantAlsoNegotiates: 506, - InsufficientStorage: 507, - LoopDetected: 508, - NotExtended: 510, - NetworkAuthenticationRequired: 511 -}; -Object.entries(HttpStatusCode).forEach(([key, value]) => { - HttpStatusCode[value] = key; -}); -var HttpStatusCode_default = HttpStatusCode; - -// node_modules/axios/lib/axios.js -function createInstance(defaultConfig) { - const context = new Axios_default(defaultConfig); - const instance = bind(Axios_default.prototype.request, context); - utils_default.extend(instance, Axios_default.prototype, context, { allOwnKeys: true }); - utils_default.extend(instance, context, null, { allOwnKeys: true }); - instance.create = function create(instanceConfig) { - return createInstance(mergeConfig(defaultConfig, instanceConfig)); - }; - return instance; -} -var axios = createInstance(defaults_default); -axios.Axios = Axios_default; -axios.CanceledError = CanceledError_default; -axios.CancelToken = CancelToken_default; -axios.isCancel = isCancel; -axios.VERSION = VERSION; -axios.toFormData = toFormData_default; -axios.AxiosError = AxiosError_default; -axios.Cancel = axios.CanceledError; -axios.all = function all(promises) { - return Promise.all(promises); -}; -axios.spread = spread; -axios.isAxiosError = isAxiosError; -axios.mergeConfig = mergeConfig; -axios.AxiosHeaders = AxiosHeaders_default; -axios.formToJSON = (thing) => formDataToJSON_default(utils_default.isHTMLForm(thing) ? new FormData(thing) : thing); -axios.getAdapter = adapters_default.getAdapter; -axios.HttpStatusCode = HttpStatusCode_default; -axios.default = axios; -var axios_default = axios; - -// node_modules/axios/index.js -var { - Axios: Axios2, - AxiosError: AxiosError2, - CanceledError: CanceledError2, - isCancel: isCancel2, - CancelToken: CancelToken2, - VERSION: VERSION2, - all: all2, - Cancel, - isAxiosError: isAxiosError2, - spread: spread2, - toFormData: toFormData2, - AxiosHeaders: AxiosHeaders2, - HttpStatusCode: HttpStatusCode2, - formToJSON, - getAdapter, - mergeConfig: mergeConfig2 -} = axios_default; -export { - Axios2 as Axios, - AxiosError2 as AxiosError, - AxiosHeaders2 as AxiosHeaders, - Cancel, - CancelToken2 as CancelToken, - CanceledError2 as CanceledError, - HttpStatusCode2 as HttpStatusCode, - VERSION2 as VERSION, - all2 as all, - axios_default as default, - formToJSON, - getAdapter, - isAxiosError2 as isAxiosError, - isCancel2 as isCancel, - mergeConfig2 as mergeConfig, - spread2 as spread, - toFormData2 as toFormData -}; -//# sourceMappingURL=axios.js.map diff --git a/Front-end/.vite/deps/axios.js.map b/Front-end/.vite/deps/axios.js.map deleted file mode 100644 index 3d5e305..0000000 --- a/Front-end/.vite/deps/axios.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../node_modules/axios/lib/helpers/bind.js", "../../node_modules/axios/lib/utils.js", "../../node_modules/axios/lib/core/AxiosError.js", "../../node_modules/axios/lib/helpers/null.js", "../../node_modules/axios/lib/helpers/toFormData.js", "../../node_modules/axios/lib/helpers/AxiosURLSearchParams.js", "../../node_modules/axios/lib/helpers/buildURL.js", "../../node_modules/axios/lib/core/InterceptorManager.js", "../../node_modules/axios/lib/defaults/transitional.js", "../../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js", "../../node_modules/axios/lib/platform/browser/classes/FormData.js", "../../node_modules/axios/lib/platform/browser/classes/Blob.js", "../../node_modules/axios/lib/platform/browser/index.js", "../../node_modules/axios/lib/platform/common/utils.js", "../../node_modules/axios/lib/platform/index.js", "../../node_modules/axios/lib/helpers/toURLEncodedForm.js", "../../node_modules/axios/lib/helpers/formDataToJSON.js", "../../node_modules/axios/lib/defaults/index.js", "../../node_modules/axios/lib/helpers/parseHeaders.js", "../../node_modules/axios/lib/core/AxiosHeaders.js", "../../node_modules/axios/lib/core/transformData.js", "../../node_modules/axios/lib/cancel/isCancel.js", "../../node_modules/axios/lib/cancel/CanceledError.js", "../../node_modules/axios/lib/core/settle.js", "../../node_modules/axios/lib/helpers/parseProtocol.js", "../../node_modules/axios/lib/helpers/speedometer.js", "../../node_modules/axios/lib/helpers/throttle.js", "../../node_modules/axios/lib/helpers/progressEventReducer.js", "../../node_modules/axios/lib/helpers/isURLSameOrigin.js", "../../node_modules/axios/lib/helpers/cookies.js", "../../node_modules/axios/lib/helpers/isAbsoluteURL.js", "../../node_modules/axios/lib/helpers/combineURLs.js", "../../node_modules/axios/lib/core/buildFullPath.js", "../../node_modules/axios/lib/core/mergeConfig.js", "../../node_modules/axios/lib/helpers/resolveConfig.js", "../../node_modules/axios/lib/adapters/xhr.js", "../../node_modules/axios/lib/helpers/composeSignals.js", "../../node_modules/axios/lib/helpers/trackStream.js", "../../node_modules/axios/lib/adapters/fetch.js", "../../node_modules/axios/lib/adapters/adapters.js", "../../node_modules/axios/lib/core/dispatchRequest.js", "../../node_modules/axios/lib/env/data.js", "../../node_modules/axios/lib/helpers/validator.js", "../../node_modules/axios/lib/core/Axios.js", "../../node_modules/axios/lib/cancel/CancelToken.js", "../../node_modules/axios/lib/helpers/spread.js", "../../node_modules/axios/lib/helpers/isAxiosError.js", "../../node_modules/axios/lib/helpers/HttpStatusCode.js", "../../node_modules/axios/lib/axios.js", "../../node_modules/axios/index.js"], - "sourcesContent": ["'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n", "'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\n", "'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n", "// eslint-disable-next-line strict\nexport default null;\n", "'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n", "'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n", "'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?(object|Function)} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n if (utils.isFunction(options)) {\n options = {\n serialize: options\n };\n } \n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n", "'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n", "'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n", "'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n", "'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n", "'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n", "import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n", "const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n", "import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n", "'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n", "'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n", "'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n", "'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n", "'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n", "'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n", "'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n", "'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n", "'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n", "'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n", "'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n", "/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n", "import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n", "import platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => {\n url = new URL(url, platform.origin);\n\n return (\n origin.protocol === url.protocol &&\n origin.host === url.host &&\n (isMSIE || origin.port === url.port)\n );\n})(\n new URL(platform.origin),\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\n) : () => true;\n", "import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n", "'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n", "'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n", "'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) {\n let isRelativeUrl = !isAbsoluteURL(requestedURL);\n if (baseURL && (isRelativeUrl || allowAbsoluteUrls == false)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n", "'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, prop, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, prop , caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, prop , caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, prop , caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n", "import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n", "import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n", "import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const {length} = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n}\n\nexport default composeSignals;\n", "\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n}\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const {done, value} = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n", "import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\n\n let request;\n\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype;\n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n unsubscribe && unsubscribe();\n\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n", "import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n", "'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n", "export const VERSION = \"1.8.4\";", "'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\nvalidators.spelling = function spelling(correctSpelling) {\n return (value, opt) => {\n // eslint-disable-next-line no-console\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\n return true;\n }\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n", "'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy = {};\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.allowAbsoluteUrls\n if (config.allowAbsoluteUrls !== undefined) {\n // do nothing\n } else if (this.defaults.allowAbsoluteUrls !== undefined) {\n config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls;\n } else {\n config.allowAbsoluteUrls = true;\n }\n\n validator.assertOptions(config, {\n baseUrl: validators.spelling('baseURL'),\n withXsrfToken: validators.spelling('withXSRFToken')\n }, true);\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n", "'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n", "'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n", "'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n", "const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n", "'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n", "import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n} = axios;\n\nexport {\n axios as default,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n}\n"], - "mappings": "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", - "names": ["prototype", "descriptors", "filter", "hasOwnProperty", "filter", "prototype", "toString", "encode", "isFormData", "isFileList", "transitional", "filter", "self", "prototype", "validateStatus", "origin", "merge", "transitional", "signal", "done", "res", "validators", "transitional", "Axios", "AxiosError", "CanceledError", "isCancel", "CancelToken", "VERSION", "all", "isAxiosError", "spread", "toFormData", "AxiosHeaders", "HttpStatusCode", "mergeConfig"] -} diff --git a/Front-end/.vite/deps/chunk-AG6MXCTY.js b/Front-end/.vite/deps/chunk-AG6MXCTY.js deleted file mode 100644 index ebf7232..0000000 --- a/Front-end/.vite/deps/chunk-AG6MXCTY.js +++ /dev/null @@ -1,680 +0,0 @@ -import { - require_ReactPropTypesSecret, - require_checkPropTypes, - require_has, - require_object_assign -} from "./chunk-PMYNNG2G.js"; -import { - __commonJS -} from "./chunk-DC5AMYBS.js"; - -// node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js -var require_react_is_development = __commonJS({ - "node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js"(exports) { - "use strict"; - if (true) { - (function() { - "use strict"; - var hasSymbol = typeof Symbol === "function" && Symbol.for; - var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for("react.element") : 60103; - var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for("react.portal") : 60106; - var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for("react.fragment") : 60107; - var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for("react.strict_mode") : 60108; - var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for("react.profiler") : 60114; - var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for("react.provider") : 60109; - var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for("react.context") : 60110; - var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for("react.async_mode") : 60111; - var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for("react.concurrent_mode") : 60111; - var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for("react.forward_ref") : 60112; - var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for("react.suspense") : 60113; - var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for("react.suspense_list") : 60120; - var REACT_MEMO_TYPE = hasSymbol ? Symbol.for("react.memo") : 60115; - var REACT_LAZY_TYPE = hasSymbol ? Symbol.for("react.lazy") : 60116; - var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for("react.block") : 60121; - var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for("react.fundamental") : 60117; - var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for("react.responder") : 60118; - var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for("react.scope") : 60119; - function isValidElementType(type) { - return typeof type === "string" || typeof type === "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill. - type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === "object" && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE); - } - function typeOf(object) { - if (typeof object === "object" && object !== null) { - var $$typeof = object.$$typeof; - switch ($$typeof) { - case REACT_ELEMENT_TYPE: - var type = object.type; - switch (type) { - case REACT_ASYNC_MODE_TYPE: - case REACT_CONCURRENT_MODE_TYPE: - case REACT_FRAGMENT_TYPE: - case REACT_PROFILER_TYPE: - case REACT_STRICT_MODE_TYPE: - case REACT_SUSPENSE_TYPE: - return type; - default: - var $$typeofType = type && type.$$typeof; - switch ($$typeofType) { - case REACT_CONTEXT_TYPE: - case REACT_FORWARD_REF_TYPE: - case REACT_LAZY_TYPE: - case REACT_MEMO_TYPE: - case REACT_PROVIDER_TYPE: - return $$typeofType; - default: - return $$typeof; - } - } - case REACT_PORTAL_TYPE: - return $$typeof; - } - } - return void 0; - } - var AsyncMode = REACT_ASYNC_MODE_TYPE; - var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE; - var ContextConsumer = REACT_CONTEXT_TYPE; - var ContextProvider = REACT_PROVIDER_TYPE; - var Element = REACT_ELEMENT_TYPE; - var ForwardRef = REACT_FORWARD_REF_TYPE; - var Fragment = REACT_FRAGMENT_TYPE; - var Lazy = REACT_LAZY_TYPE; - var Memo = REACT_MEMO_TYPE; - var Portal = REACT_PORTAL_TYPE; - var Profiler = REACT_PROFILER_TYPE; - var StrictMode = REACT_STRICT_MODE_TYPE; - var Suspense = REACT_SUSPENSE_TYPE; - var hasWarnedAboutDeprecatedIsAsyncMode = false; - function isAsyncMode(object) { - { - if (!hasWarnedAboutDeprecatedIsAsyncMode) { - hasWarnedAboutDeprecatedIsAsyncMode = true; - console["warn"]("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API."); - } - } - return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE; - } - function isConcurrentMode(object) { - return typeOf(object) === REACT_CONCURRENT_MODE_TYPE; - } - function isContextConsumer(object) { - return typeOf(object) === REACT_CONTEXT_TYPE; - } - function isContextProvider(object) { - return typeOf(object) === REACT_PROVIDER_TYPE; - } - function isElement(object) { - return typeof object === "object" && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; - } - function isForwardRef(object) { - return typeOf(object) === REACT_FORWARD_REF_TYPE; - } - function isFragment(object) { - return typeOf(object) === REACT_FRAGMENT_TYPE; - } - function isLazy(object) { - return typeOf(object) === REACT_LAZY_TYPE; - } - function isMemo(object) { - return typeOf(object) === REACT_MEMO_TYPE; - } - function isPortal(object) { - return typeOf(object) === REACT_PORTAL_TYPE; - } - function isProfiler(object) { - return typeOf(object) === REACT_PROFILER_TYPE; - } - function isStrictMode(object) { - return typeOf(object) === REACT_STRICT_MODE_TYPE; - } - function isSuspense(object) { - return typeOf(object) === REACT_SUSPENSE_TYPE; - } - exports.AsyncMode = AsyncMode; - exports.ConcurrentMode = ConcurrentMode; - exports.ContextConsumer = ContextConsumer; - exports.ContextProvider = ContextProvider; - exports.Element = Element; - exports.ForwardRef = ForwardRef; - exports.Fragment = Fragment; - exports.Lazy = Lazy; - exports.Memo = Memo; - exports.Portal = Portal; - exports.Profiler = Profiler; - exports.StrictMode = StrictMode; - exports.Suspense = Suspense; - exports.isAsyncMode = isAsyncMode; - exports.isConcurrentMode = isConcurrentMode; - exports.isContextConsumer = isContextConsumer; - exports.isContextProvider = isContextProvider; - exports.isElement = isElement; - exports.isForwardRef = isForwardRef; - exports.isFragment = isFragment; - exports.isLazy = isLazy; - exports.isMemo = isMemo; - exports.isPortal = isPortal; - exports.isProfiler = isProfiler; - exports.isStrictMode = isStrictMode; - exports.isSuspense = isSuspense; - exports.isValidElementType = isValidElementType; - exports.typeOf = typeOf; - })(); - } - } -}); - -// node_modules/prop-types/node_modules/react-is/index.js -var require_react_is = __commonJS({ - "node_modules/prop-types/node_modules/react-is/index.js"(exports, module) { - "use strict"; - if (false) { - module.exports = null; - } else { - module.exports = require_react_is_development(); - } - } -}); - -// node_modules/prop-types/factoryWithTypeCheckers.js -var require_factoryWithTypeCheckers = __commonJS({ - "node_modules/prop-types/factoryWithTypeCheckers.js"(exports, module) { - "use strict"; - var ReactIs = require_react_is(); - var assign = require_object_assign(); - var ReactPropTypesSecret = require_ReactPropTypesSecret(); - var has = require_has(); - var checkPropTypes = require_checkPropTypes(); - var printWarning = function() { - }; - if (true) { - printWarning = function(text) { - var message = "Warning: " + text; - if (typeof console !== "undefined") { - console.error(message); - } - try { - throw new Error(message); - } catch (x) { - } - }; - } - function emptyFunctionThatReturnsNull() { - return null; - } - module.exports = function(isValidElement, throwOnDirectAccess) { - var ITERATOR_SYMBOL = typeof Symbol === "function" && Symbol.iterator; - var FAUX_ITERATOR_SYMBOL = "@@iterator"; - function getIteratorFn(maybeIterable) { - var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]); - if (typeof iteratorFn === "function") { - return iteratorFn; - } - } - var ANONYMOUS = "<>"; - var ReactPropTypes = { - array: createPrimitiveTypeChecker("array"), - bigint: createPrimitiveTypeChecker("bigint"), - bool: createPrimitiveTypeChecker("boolean"), - func: createPrimitiveTypeChecker("function"), - number: createPrimitiveTypeChecker("number"), - object: createPrimitiveTypeChecker("object"), - string: createPrimitiveTypeChecker("string"), - symbol: createPrimitiveTypeChecker("symbol"), - any: createAnyTypeChecker(), - arrayOf: createArrayOfTypeChecker, - element: createElementTypeChecker(), - elementType: createElementTypeTypeChecker(), - instanceOf: createInstanceTypeChecker, - node: createNodeChecker(), - objectOf: createObjectOfTypeChecker, - oneOf: createEnumTypeChecker, - oneOfType: createUnionTypeChecker, - shape: createShapeTypeChecker, - exact: createStrictShapeTypeChecker - }; - function is(x, y) { - if (x === y) { - return x !== 0 || 1 / x === 1 / y; - } else { - return x !== x && y !== y; - } - } - function PropTypeError(message, data) { - this.message = message; - this.data = data && typeof data === "object" ? data : {}; - this.stack = ""; - } - PropTypeError.prototype = Error.prototype; - function createChainableTypeChecker(validate) { - if (true) { - var manualPropTypeCallCache = {}; - var manualPropTypeWarningCount = 0; - } - function checkType(isRequired, props, propName, componentName, location, propFullName, secret) { - componentName = componentName || ANONYMOUS; - propFullName = propFullName || propName; - if (secret !== ReactPropTypesSecret) { - if (throwOnDirectAccess) { - var err = new Error( - "Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types" - ); - err.name = "Invariant Violation"; - throw err; - } else if (typeof console !== "undefined") { - var cacheKey = componentName + ":" + propName; - if (!manualPropTypeCallCache[cacheKey] && // Avoid spamming the console because they are often not actionable except for lib authors - manualPropTypeWarningCount < 3) { - printWarning( - "You are manually calling a React.PropTypes validation function for the `" + propFullName + "` prop on `" + componentName + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details." - ); - manualPropTypeCallCache[cacheKey] = true; - manualPropTypeWarningCount++; - } - } - } - if (props[propName] == null) { - if (isRequired) { - if (props[propName] === null) { - return new PropTypeError("The " + location + " `" + propFullName + "` is marked as required " + ("in `" + componentName + "`, but its value is `null`.")); - } - return new PropTypeError("The " + location + " `" + propFullName + "` is marked as required in " + ("`" + componentName + "`, but its value is `undefined`.")); - } - return null; - } else { - return validate(props, propName, componentName, location, propFullName); - } - } - var chainedCheckType = checkType.bind(null, false); - chainedCheckType.isRequired = checkType.bind(null, true); - return chainedCheckType; - } - function createPrimitiveTypeChecker(expectedType) { - function validate(props, propName, componentName, location, propFullName, secret) { - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== expectedType) { - var preciseType = getPreciseType(propValue); - return new PropTypeError( - "Invalid " + location + " `" + propFullName + "` of type " + ("`" + preciseType + "` supplied to `" + componentName + "`, expected ") + ("`" + expectedType + "`."), - { expectedType } - ); - } - return null; - } - return createChainableTypeChecker(validate); - } - function createAnyTypeChecker() { - return createChainableTypeChecker(emptyFunctionThatReturnsNull); - } - function createArrayOfTypeChecker(typeChecker) { - function validate(props, propName, componentName, location, propFullName) { - if (typeof typeChecker !== "function") { - return new PropTypeError("Property `" + propFullName + "` of component `" + componentName + "` has invalid PropType notation inside arrayOf."); - } - var propValue = props[propName]; - if (!Array.isArray(propValue)) { - var propType = getPropType(propValue); - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected an array.")); - } - for (var i = 0; i < propValue.length; i++) { - var error = typeChecker(propValue, i, componentName, location, propFullName + "[" + i + "]", ReactPropTypesSecret); - if (error instanceof Error) { - return error; - } - } - return null; - } - return createChainableTypeChecker(validate); - } - function createElementTypeChecker() { - function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - if (!isValidElement(propValue)) { - var propType = getPropType(propValue); - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected a single ReactElement.")); - } - return null; - } - return createChainableTypeChecker(validate); - } - function createElementTypeTypeChecker() { - function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - if (!ReactIs.isValidElementType(propValue)) { - var propType = getPropType(propValue); - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected a single ReactElement type.")); - } - return null; - } - return createChainableTypeChecker(validate); - } - function createInstanceTypeChecker(expectedClass) { - function validate(props, propName, componentName, location, propFullName) { - if (!(props[propName] instanceof expectedClass)) { - var expectedClassName = expectedClass.name || ANONYMOUS; - var actualClassName = getClassName(props[propName]); - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + actualClassName + "` supplied to `" + componentName + "`, expected ") + ("instance of `" + expectedClassName + "`.")); - } - return null; - } - return createChainableTypeChecker(validate); - } - function createEnumTypeChecker(expectedValues) { - if (!Array.isArray(expectedValues)) { - if (true) { - if (arguments.length > 1) { - printWarning( - "Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])." - ); - } else { - printWarning("Invalid argument supplied to oneOf, expected an array."); - } - } - return emptyFunctionThatReturnsNull; - } - function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - for (var i = 0; i < expectedValues.length; i++) { - if (is(propValue, expectedValues[i])) { - return null; - } - } - var valuesString = JSON.stringify(expectedValues, function replacer(key, value) { - var type = getPreciseType(value); - if (type === "symbol") { - return String(value); - } - return value; - }); - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of value `" + String(propValue) + "` " + ("supplied to `" + componentName + "`, expected one of " + valuesString + ".")); - } - return createChainableTypeChecker(validate); - } - function createObjectOfTypeChecker(typeChecker) { - function validate(props, propName, componentName, location, propFullName) { - if (typeof typeChecker !== "function") { - return new PropTypeError("Property `" + propFullName + "` of component `" + componentName + "` has invalid PropType notation inside objectOf."); - } - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== "object") { - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected an object.")); - } - for (var key in propValue) { - if (has(propValue, key)) { - var error = typeChecker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret); - if (error instanceof Error) { - return error; - } - } - } - return null; - } - return createChainableTypeChecker(validate); - } - function createUnionTypeChecker(arrayOfTypeCheckers) { - if (!Array.isArray(arrayOfTypeCheckers)) { - true ? printWarning("Invalid argument supplied to oneOfType, expected an instance of array.") : void 0; - return emptyFunctionThatReturnsNull; - } - for (var i = 0; i < arrayOfTypeCheckers.length; i++) { - var checker = arrayOfTypeCheckers[i]; - if (typeof checker !== "function") { - printWarning( - "Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + getPostfixForTypeWarning(checker) + " at index " + i + "." - ); - return emptyFunctionThatReturnsNull; - } - } - function validate(props, propName, componentName, location, propFullName) { - var expectedTypes = []; - for (var i2 = 0; i2 < arrayOfTypeCheckers.length; i2++) { - var checker2 = arrayOfTypeCheckers[i2]; - var checkerResult = checker2(props, propName, componentName, location, propFullName, ReactPropTypesSecret); - if (checkerResult == null) { - return null; - } - if (checkerResult.data && has(checkerResult.data, "expectedType")) { - expectedTypes.push(checkerResult.data.expectedType); - } - } - var expectedTypesMessage = expectedTypes.length > 0 ? ", expected one of type [" + expectedTypes.join(", ") + "]" : ""; - return new PropTypeError("Invalid " + location + " `" + propFullName + "` supplied to " + ("`" + componentName + "`" + expectedTypesMessage + ".")); - } - return createChainableTypeChecker(validate); - } - function createNodeChecker() { - function validate(props, propName, componentName, location, propFullName) { - if (!isNode(props[propName])) { - return new PropTypeError("Invalid " + location + " `" + propFullName + "` supplied to " + ("`" + componentName + "`, expected a ReactNode.")); - } - return null; - } - return createChainableTypeChecker(validate); - } - function invalidValidatorError(componentName, location, propFullName, key, type) { - return new PropTypeError( - (componentName || "React class") + ": " + location + " type `" + propFullName + "." + key + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + type + "`." - ); - } - function createShapeTypeChecker(shapeTypes) { - function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== "object") { - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type `" + propType + "` " + ("supplied to `" + componentName + "`, expected `object`.")); - } - for (var key in shapeTypes) { - var checker = shapeTypes[key]; - if (typeof checker !== "function") { - return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker)); - } - var error = checker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret); - if (error) { - return error; - } - } - return null; - } - return createChainableTypeChecker(validate); - } - function createStrictShapeTypeChecker(shapeTypes) { - function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== "object") { - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type `" + propType + "` " + ("supplied to `" + componentName + "`, expected `object`.")); - } - var allKeys = assign({}, props[propName], shapeTypes); - for (var key in allKeys) { - var checker = shapeTypes[key]; - if (has(shapeTypes, key) && typeof checker !== "function") { - return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker)); - } - if (!checker) { - return new PropTypeError( - "Invalid " + location + " `" + propFullName + "` key `" + key + "` supplied to `" + componentName + "`.\nBad object: " + JSON.stringify(props[propName], null, " ") + "\nValid keys: " + JSON.stringify(Object.keys(shapeTypes), null, " ") - ); - } - var error = checker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret); - if (error) { - return error; - } - } - return null; - } - return createChainableTypeChecker(validate); - } - function isNode(propValue) { - switch (typeof propValue) { - case "number": - case "string": - case "undefined": - return true; - case "boolean": - return !propValue; - case "object": - if (Array.isArray(propValue)) { - return propValue.every(isNode); - } - if (propValue === null || isValidElement(propValue)) { - return true; - } - var iteratorFn = getIteratorFn(propValue); - if (iteratorFn) { - var iterator = iteratorFn.call(propValue); - var step; - if (iteratorFn !== propValue.entries) { - while (!(step = iterator.next()).done) { - if (!isNode(step.value)) { - return false; - } - } - } else { - while (!(step = iterator.next()).done) { - var entry = step.value; - if (entry) { - if (!isNode(entry[1])) { - return false; - } - } - } - } - } else { - return false; - } - return true; - default: - return false; - } - } - function isSymbol(propType, propValue) { - if (propType === "symbol") { - return true; - } - if (!propValue) { - return false; - } - if (propValue["@@toStringTag"] === "Symbol") { - return true; - } - if (typeof Symbol === "function" && propValue instanceof Symbol) { - return true; - } - return false; - } - function getPropType(propValue) { - var propType = typeof propValue; - if (Array.isArray(propValue)) { - return "array"; - } - if (propValue instanceof RegExp) { - return "object"; - } - if (isSymbol(propType, propValue)) { - return "symbol"; - } - return propType; - } - function getPreciseType(propValue) { - if (typeof propValue === "undefined" || propValue === null) { - return "" + propValue; - } - var propType = getPropType(propValue); - if (propType === "object") { - if (propValue instanceof Date) { - return "date"; - } else if (propValue instanceof RegExp) { - return "regexp"; - } - } - return propType; - } - function getPostfixForTypeWarning(value) { - var type = getPreciseType(value); - switch (type) { - case "array": - case "object": - return "an " + type; - case "boolean": - case "date": - case "regexp": - return "a " + type; - default: - return type; - } - } - function getClassName(propValue) { - if (!propValue.constructor || !propValue.constructor.name) { - return ANONYMOUS; - } - return propValue.constructor.name; - } - ReactPropTypes.checkPropTypes = checkPropTypes; - ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache; - ReactPropTypes.PropTypes = ReactPropTypes; - return ReactPropTypes; - }; - } -}); - -// node_modules/prop-types/index.js -var require_prop_types = __commonJS({ - "node_modules/prop-types/index.js"(exports, module) { - if (true) { - ReactIs = require_react_is(); - throwOnDirectAccess = true; - module.exports = require_factoryWithTypeCheckers()(ReactIs.isElement, throwOnDirectAccess); - } else { - module.exports = null(); - } - var ReactIs; - var throwOnDirectAccess; - } -}); - -// node_modules/clsx/dist/clsx.mjs -function r(e) { - var t, f, n = ""; - if ("string" == typeof e || "number" == typeof e) n += e; - else if ("object" == typeof e) if (Array.isArray(e)) { - var o = e.length; - for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f); - } else for (f in e) e[f] && (n && (n += " "), n += f); - return n; -} -function clsx() { - for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t); - return n; -} -var clsx_default = clsx; - -// node_modules/@babel/runtime/helpers/esm/extends.js -function _extends() { - return _extends = Object.assign ? Object.assign.bind() : function(n) { - for (var e = 1; e < arguments.length; e++) { - var t = arguments[e]; - for (var r2 in t) ({}).hasOwnProperty.call(t, r2) && (n[r2] = t[r2]); - } - return n; - }, _extends.apply(null, arguments); -} - -export { - clsx_default, - require_prop_types, - _extends -}; -/*! Bundled license information: - -react-is/cjs/react-is.development.js: - (** @license React v16.13.1 - * react-is.development.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - *) -*/ -//# sourceMappingURL=chunk-AG6MXCTY.js.map diff --git a/Front-end/.vite/deps/chunk-AG6MXCTY.js.map b/Front-end/.vite/deps/chunk-AG6MXCTY.js.map deleted file mode 100644 index 299783b..0000000 --- a/Front-end/.vite/deps/chunk-AG6MXCTY.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js", "../../node_modules/prop-types/node_modules/react-is/index.js", "../../node_modules/prop-types/factoryWithTypeCheckers.js", "../../node_modules/prop-types/index.js", "../../node_modules/clsx/dist/clsx.mjs", "../../node_modules/@babel/runtime/helpers/esm/extends.js"], - "sourcesContent": ["/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n", "'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n", "/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar has = require('./lib/has');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bigint: createPrimitiveTypeChecker('bigint'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message, data) {\n this.message = message;\n this.data = data && typeof data === 'object' ? data: {};\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n {expectedType: expectedType}\n );\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var expectedTypes = [];\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n if (checkerResult == null) {\n return null;\n }\n if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n expectedTypes.push(checkerResult.data.expectedType);\n }\n }\n var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function invalidValidatorError(componentName, location, propFullName, key, type) {\n return new PropTypeError(\n (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n );\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (has(shapeTypes, key) && typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n", "/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n", "function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __commonJS = (cb, mod) => function __require() { - return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; -}; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, - mod -)); -var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); - -export { - __commonJS, - __export, - __toESM, - __publicField -}; -//# sourceMappingURL=chunk-DC5AMYBS.js.map diff --git a/Front-end/.vite/deps/chunk-DC5AMYBS.js.map b/Front-end/.vite/deps/chunk-DC5AMYBS.js.map deleted file mode 100644 index 9865211..0000000 --- a/Front-end/.vite/deps/chunk-DC5AMYBS.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": [], - "sourcesContent": [], - "mappings": "", - "names": [] -} diff --git a/Front-end/.vite/deps/chunk-JMVEG3FK.js b/Front-end/.vite/deps/chunk-JMVEG3FK.js deleted file mode 100644 index 05d8a6c..0000000 --- a/Front-end/.vite/deps/chunk-JMVEG3FK.js +++ /dev/null @@ -1,21629 +0,0 @@ -import { - require_react -} from "./chunk-TWJRYSII.js"; -import { - __commonJS -} from "./chunk-DC5AMYBS.js"; - -// node_modules/scheduler/cjs/scheduler.development.js -var require_scheduler_development = __commonJS({ - "node_modules/scheduler/cjs/scheduler.development.js"(exports) { - "use strict"; - if (true) { - (function() { - "use strict"; - if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart === "function") { - __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error()); - } - var enableSchedulerDebugging = false; - var enableProfiling = false; - var frameYieldMs = 5; - function push(heap, node) { - var index = heap.length; - heap.push(node); - siftUp(heap, node, index); - } - function peek(heap) { - return heap.length === 0 ? null : heap[0]; - } - function pop(heap) { - if (heap.length === 0) { - return null; - } - var first = heap[0]; - var last = heap.pop(); - if (last !== first) { - heap[0] = last; - siftDown(heap, last, 0); - } - return first; - } - function siftUp(heap, node, i) { - var index = i; - while (index > 0) { - var parentIndex = index - 1 >>> 1; - var parent = heap[parentIndex]; - if (compare(parent, node) > 0) { - heap[parentIndex] = node; - heap[index] = parent; - index = parentIndex; - } else { - return; - } - } - } - function siftDown(heap, node, i) { - var index = i; - var length = heap.length; - var halfLength = length >>> 1; - while (index < halfLength) { - var leftIndex = (index + 1) * 2 - 1; - var left = heap[leftIndex]; - var rightIndex = leftIndex + 1; - var right = heap[rightIndex]; - if (compare(left, node) < 0) { - if (rightIndex < length && compare(right, left) < 0) { - heap[index] = right; - heap[rightIndex] = node; - index = rightIndex; - } else { - heap[index] = left; - heap[leftIndex] = node; - index = leftIndex; - } - } else if (rightIndex < length && compare(right, node) < 0) { - heap[index] = right; - heap[rightIndex] = node; - index = rightIndex; - } else { - return; - } - } - } - function compare(a, b) { - var diff = a.sortIndex - b.sortIndex; - return diff !== 0 ? diff : a.id - b.id; - } - var ImmediatePriority = 1; - var UserBlockingPriority = 2; - var NormalPriority = 3; - var LowPriority = 4; - var IdlePriority = 5; - function markTaskErrored(task, ms) { - } - var hasPerformanceNow = typeof performance === "object" && typeof performance.now === "function"; - if (hasPerformanceNow) { - var localPerformance = performance; - exports.unstable_now = function() { - return localPerformance.now(); - }; - } else { - var localDate = Date; - var initialTime = localDate.now(); - exports.unstable_now = function() { - return localDate.now() - initialTime; - }; - } - var maxSigned31BitInt = 1073741823; - var IMMEDIATE_PRIORITY_TIMEOUT = -1; - var USER_BLOCKING_PRIORITY_TIMEOUT = 250; - var NORMAL_PRIORITY_TIMEOUT = 5e3; - var LOW_PRIORITY_TIMEOUT = 1e4; - var IDLE_PRIORITY_TIMEOUT = maxSigned31BitInt; - var taskQueue = []; - var timerQueue = []; - var taskIdCounter = 1; - var currentTask = null; - var currentPriorityLevel = NormalPriority; - var isPerformingWork = false; - var isHostCallbackScheduled = false; - var isHostTimeoutScheduled = false; - var localSetTimeout = typeof setTimeout === "function" ? setTimeout : null; - var localClearTimeout = typeof clearTimeout === "function" ? clearTimeout : null; - var localSetImmediate = typeof setImmediate !== "undefined" ? setImmediate : null; - var isInputPending = typeof navigator !== "undefined" && navigator.scheduling !== void 0 && navigator.scheduling.isInputPending !== void 0 ? navigator.scheduling.isInputPending.bind(navigator.scheduling) : null; - function advanceTimers(currentTime) { - var timer = peek(timerQueue); - while (timer !== null) { - if (timer.callback === null) { - pop(timerQueue); - } else if (timer.startTime <= currentTime) { - pop(timerQueue); - timer.sortIndex = timer.expirationTime; - push(taskQueue, timer); - } else { - return; - } - timer = peek(timerQueue); - } - } - function handleTimeout(currentTime) { - isHostTimeoutScheduled = false; - advanceTimers(currentTime); - if (!isHostCallbackScheduled) { - if (peek(taskQueue) !== null) { - isHostCallbackScheduled = true; - requestHostCallback(flushWork); - } else { - var firstTimer = peek(timerQueue); - if (firstTimer !== null) { - requestHostTimeout(handleTimeout, firstTimer.startTime - currentTime); - } - } - } - } - function flushWork(hasTimeRemaining, initialTime2) { - isHostCallbackScheduled = false; - if (isHostTimeoutScheduled) { - isHostTimeoutScheduled = false; - cancelHostTimeout(); - } - isPerformingWork = true; - var previousPriorityLevel = currentPriorityLevel; - try { - if (enableProfiling) { - try { - return workLoop(hasTimeRemaining, initialTime2); - } catch (error) { - if (currentTask !== null) { - var currentTime = exports.unstable_now(); - markTaskErrored(currentTask, currentTime); - currentTask.isQueued = false; - } - throw error; - } - } else { - return workLoop(hasTimeRemaining, initialTime2); - } - } finally { - currentTask = null; - currentPriorityLevel = previousPriorityLevel; - isPerformingWork = false; - } - } - function workLoop(hasTimeRemaining, initialTime2) { - var currentTime = initialTime2; - advanceTimers(currentTime); - currentTask = peek(taskQueue); - while (currentTask !== null && !enableSchedulerDebugging) { - if (currentTask.expirationTime > currentTime && (!hasTimeRemaining || shouldYieldToHost())) { - break; - } - var callback = currentTask.callback; - if (typeof callback === "function") { - currentTask.callback = null; - currentPriorityLevel = currentTask.priorityLevel; - var didUserCallbackTimeout = currentTask.expirationTime <= currentTime; - var continuationCallback = callback(didUserCallbackTimeout); - currentTime = exports.unstable_now(); - if (typeof continuationCallback === "function") { - currentTask.callback = continuationCallback; - } else { - if (currentTask === peek(taskQueue)) { - pop(taskQueue); - } - } - advanceTimers(currentTime); - } else { - pop(taskQueue); - } - currentTask = peek(taskQueue); - } - if (currentTask !== null) { - return true; - } else { - var firstTimer = peek(timerQueue); - if (firstTimer !== null) { - requestHostTimeout(handleTimeout, firstTimer.startTime - currentTime); - } - return false; - } - } - function unstable_runWithPriority(priorityLevel, eventHandler) { - switch (priorityLevel) { - case ImmediatePriority: - case UserBlockingPriority: - case NormalPriority: - case LowPriority: - case IdlePriority: - break; - default: - priorityLevel = NormalPriority; - } - var previousPriorityLevel = currentPriorityLevel; - currentPriorityLevel = priorityLevel; - try { - return eventHandler(); - } finally { - currentPriorityLevel = previousPriorityLevel; - } - } - function unstable_next(eventHandler) { - var priorityLevel; - switch (currentPriorityLevel) { - case ImmediatePriority: - case UserBlockingPriority: - case NormalPriority: - priorityLevel = NormalPriority; - break; - default: - priorityLevel = currentPriorityLevel; - break; - } - var previousPriorityLevel = currentPriorityLevel; - currentPriorityLevel = priorityLevel; - try { - return eventHandler(); - } finally { - currentPriorityLevel = previousPriorityLevel; - } - } - function unstable_wrapCallback(callback) { - var parentPriorityLevel = currentPriorityLevel; - return function() { - var previousPriorityLevel = currentPriorityLevel; - currentPriorityLevel = parentPriorityLevel; - try { - return callback.apply(this, arguments); - } finally { - currentPriorityLevel = previousPriorityLevel; - } - }; - } - function unstable_scheduleCallback(priorityLevel, callback, options) { - var currentTime = exports.unstable_now(); - var startTime2; - if (typeof options === "object" && options !== null) { - var delay = options.delay; - if (typeof delay === "number" && delay > 0) { - startTime2 = currentTime + delay; - } else { - startTime2 = currentTime; - } - } else { - startTime2 = currentTime; - } - var timeout; - switch (priorityLevel) { - case ImmediatePriority: - timeout = IMMEDIATE_PRIORITY_TIMEOUT; - break; - case UserBlockingPriority: - timeout = USER_BLOCKING_PRIORITY_TIMEOUT; - break; - case IdlePriority: - timeout = IDLE_PRIORITY_TIMEOUT; - break; - case LowPriority: - timeout = LOW_PRIORITY_TIMEOUT; - break; - case NormalPriority: - default: - timeout = NORMAL_PRIORITY_TIMEOUT; - break; - } - var expirationTime = startTime2 + timeout; - var newTask = { - id: taskIdCounter++, - callback, - priorityLevel, - startTime: startTime2, - expirationTime, - sortIndex: -1 - }; - if (startTime2 > currentTime) { - newTask.sortIndex = startTime2; - push(timerQueue, newTask); - if (peek(taskQueue) === null && newTask === peek(timerQueue)) { - if (isHostTimeoutScheduled) { - cancelHostTimeout(); - } else { - isHostTimeoutScheduled = true; - } - requestHostTimeout(handleTimeout, startTime2 - currentTime); - } - } else { - newTask.sortIndex = expirationTime; - push(taskQueue, newTask); - if (!isHostCallbackScheduled && !isPerformingWork) { - isHostCallbackScheduled = true; - requestHostCallback(flushWork); - } - } - return newTask; - } - function unstable_pauseExecution() { - } - function unstable_continueExecution() { - if (!isHostCallbackScheduled && !isPerformingWork) { - isHostCallbackScheduled = true; - requestHostCallback(flushWork); - } - } - function unstable_getFirstCallbackNode() { - return peek(taskQueue); - } - function unstable_cancelCallback(task) { - task.callback = null; - } - function unstable_getCurrentPriorityLevel() { - return currentPriorityLevel; - } - var isMessageLoopRunning = false; - var scheduledHostCallback = null; - var taskTimeoutID = -1; - var frameInterval = frameYieldMs; - var startTime = -1; - function shouldYieldToHost() { - var timeElapsed = exports.unstable_now() - startTime; - if (timeElapsed < frameInterval) { - return false; - } - return true; - } - function requestPaint() { - } - function forceFrameRate(fps) { - if (fps < 0 || fps > 125) { - console["error"]("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"); - return; - } - if (fps > 0) { - frameInterval = Math.floor(1e3 / fps); - } else { - frameInterval = frameYieldMs; - } - } - var performWorkUntilDeadline = function() { - if (scheduledHostCallback !== null) { - var currentTime = exports.unstable_now(); - startTime = currentTime; - var hasTimeRemaining = true; - var hasMoreWork = true; - try { - hasMoreWork = scheduledHostCallback(hasTimeRemaining, currentTime); - } finally { - if (hasMoreWork) { - schedulePerformWorkUntilDeadline(); - } else { - isMessageLoopRunning = false; - scheduledHostCallback = null; - } - } - } else { - isMessageLoopRunning = false; - } - }; - var schedulePerformWorkUntilDeadline; - if (typeof localSetImmediate === "function") { - schedulePerformWorkUntilDeadline = function() { - localSetImmediate(performWorkUntilDeadline); - }; - } else if (typeof MessageChannel !== "undefined") { - var channel = new MessageChannel(); - var port = channel.port2; - channel.port1.onmessage = performWorkUntilDeadline; - schedulePerformWorkUntilDeadline = function() { - port.postMessage(null); - }; - } else { - schedulePerformWorkUntilDeadline = function() { - localSetTimeout(performWorkUntilDeadline, 0); - }; - } - function requestHostCallback(callback) { - scheduledHostCallback = callback; - if (!isMessageLoopRunning) { - isMessageLoopRunning = true; - schedulePerformWorkUntilDeadline(); - } - } - function requestHostTimeout(callback, ms) { - taskTimeoutID = localSetTimeout(function() { - callback(exports.unstable_now()); - }, ms); - } - function cancelHostTimeout() { - localClearTimeout(taskTimeoutID); - taskTimeoutID = -1; - } - var unstable_requestPaint = requestPaint; - var unstable_Profiling = null; - exports.unstable_IdlePriority = IdlePriority; - exports.unstable_ImmediatePriority = ImmediatePriority; - exports.unstable_LowPriority = LowPriority; - exports.unstable_NormalPriority = NormalPriority; - exports.unstable_Profiling = unstable_Profiling; - exports.unstable_UserBlockingPriority = UserBlockingPriority; - exports.unstable_cancelCallback = unstable_cancelCallback; - exports.unstable_continueExecution = unstable_continueExecution; - exports.unstable_forceFrameRate = forceFrameRate; - exports.unstable_getCurrentPriorityLevel = unstable_getCurrentPriorityLevel; - exports.unstable_getFirstCallbackNode = unstable_getFirstCallbackNode; - exports.unstable_next = unstable_next; - exports.unstable_pauseExecution = unstable_pauseExecution; - exports.unstable_requestPaint = unstable_requestPaint; - exports.unstable_runWithPriority = unstable_runWithPriority; - exports.unstable_scheduleCallback = unstable_scheduleCallback; - exports.unstable_shouldYield = shouldYieldToHost; - exports.unstable_wrapCallback = unstable_wrapCallback; - if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop === "function") { - __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); - } - })(); - } - } -}); - -// node_modules/scheduler/index.js -var require_scheduler = __commonJS({ - "node_modules/scheduler/index.js"(exports, module) { - "use strict"; - if (false) { - module.exports = null; - } else { - module.exports = require_scheduler_development(); - } - } -}); - -// node_modules/react-dom/cjs/react-dom.development.js -var require_react_dom_development = __commonJS({ - "node_modules/react-dom/cjs/react-dom.development.js"(exports) { - "use strict"; - if (true) { - (function() { - "use strict"; - if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart === "function") { - __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error()); - } - var React = require_react(); - var Scheduler = require_scheduler(); - var ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; - var suppressWarning = false; - function setSuppressWarning(newSuppressWarning) { - { - suppressWarning = newSuppressWarning; - } - } - function warn(format) { - { - if (!suppressWarning) { - for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } - printWarning("warn", format, args); - } - } - } - function error(format) { - { - if (!suppressWarning) { - for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { - args[_key2 - 1] = arguments[_key2]; - } - printWarning("error", format, args); - } - } - } - function printWarning(level, format, args) { - { - var ReactDebugCurrentFrame2 = ReactSharedInternals.ReactDebugCurrentFrame; - var stack = ReactDebugCurrentFrame2.getStackAddendum(); - if (stack !== "") { - format += "%s"; - args = args.concat([stack]); - } - var argsWithFormat = args.map(function(item) { - return String(item); - }); - argsWithFormat.unshift("Warning: " + format); - Function.prototype.apply.call(console[level], console, argsWithFormat); - } - } - var FunctionComponent = 0; - var ClassComponent = 1; - var IndeterminateComponent = 2; - var HostRoot = 3; - var HostPortal = 4; - var HostComponent = 5; - var HostText = 6; - var Fragment = 7; - var Mode = 8; - var ContextConsumer = 9; - var ContextProvider = 10; - var ForwardRef = 11; - var Profiler = 12; - var SuspenseComponent = 13; - var MemoComponent = 14; - var SimpleMemoComponent = 15; - var LazyComponent = 16; - var IncompleteClassComponent = 17; - var DehydratedFragment = 18; - var SuspenseListComponent = 19; - var ScopeComponent = 21; - var OffscreenComponent = 22; - var LegacyHiddenComponent = 23; - var CacheComponent = 24; - var TracingMarkerComponent = 25; - var enableClientRenderFallbackOnTextMismatch = true; - var enableNewReconciler = false; - var enableLazyContextPropagation = false; - var enableLegacyHidden = false; - var enableSuspenseAvoidThisFallback = false; - var disableCommentsAsDOMContainers = true; - var enableCustomElementPropertySupport = false; - var warnAboutStringRefs = true; - var enableSchedulingProfiler = true; - var enableProfilerTimer = true; - var enableProfilerCommitHooks = true; - var allNativeEvents = /* @__PURE__ */ new Set(); - var registrationNameDependencies = {}; - var possibleRegistrationNames = {}; - function registerTwoPhaseEvent(registrationName, dependencies) { - registerDirectEvent(registrationName, dependencies); - registerDirectEvent(registrationName + "Capture", dependencies); - } - function registerDirectEvent(registrationName, dependencies) { - { - if (registrationNameDependencies[registrationName]) { - error("EventRegistry: More than one plugin attempted to publish the same registration name, `%s`.", registrationName); - } - } - registrationNameDependencies[registrationName] = dependencies; - { - var lowerCasedName = registrationName.toLowerCase(); - possibleRegistrationNames[lowerCasedName] = registrationName; - if (registrationName === "onDoubleClick") { - possibleRegistrationNames.ondblclick = registrationName; - } - } - for (var i = 0; i < dependencies.length; i++) { - allNativeEvents.add(dependencies[i]); - } - } - var canUseDOM = !!(typeof window !== "undefined" && typeof window.document !== "undefined" && typeof window.document.createElement !== "undefined"); - var hasOwnProperty = Object.prototype.hasOwnProperty; - function typeName(value) { - { - var hasToStringTag = typeof Symbol === "function" && Symbol.toStringTag; - var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || "Object"; - return type; - } - } - function willCoercionThrow(value) { - { - try { - testStringCoercion(value); - return false; - } catch (e) { - return true; - } - } - } - function testStringCoercion(value) { - return "" + value; - } - function checkAttributeStringCoercion(value, attributeName) { - { - if (willCoercionThrow(value)) { - error("The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before before using it here.", attributeName, typeName(value)); - return testStringCoercion(value); - } - } - } - function checkKeyStringCoercion(value) { - { - if (willCoercionThrow(value)) { - error("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", typeName(value)); - return testStringCoercion(value); - } - } - } - function checkPropStringCoercion(value, propName) { - { - if (willCoercionThrow(value)) { - error("The provided `%s` prop is an unsupported type %s. This value must be coerced to a string before before using it here.", propName, typeName(value)); - return testStringCoercion(value); - } - } - } - function checkCSSPropertyStringCoercion(value, propName) { - { - if (willCoercionThrow(value)) { - error("The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before before using it here.", propName, typeName(value)); - return testStringCoercion(value); - } - } - } - function checkHtmlStringCoercion(value) { - { - if (willCoercionThrow(value)) { - error("The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before before using it here.", typeName(value)); - return testStringCoercion(value); - } - } - } - function checkFormFieldValueStringCoercion(value) { - { - if (willCoercionThrow(value)) { - error("Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before before using it here.", typeName(value)); - return testStringCoercion(value); - } - } - } - var RESERVED = 0; - var STRING = 1; - var BOOLEANISH_STRING = 2; - var BOOLEAN = 3; - var OVERLOADED_BOOLEAN = 4; - var NUMERIC = 5; - var POSITIVE_NUMERIC = 6; - var ATTRIBUTE_NAME_START_CHAR = ":A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD"; - var ATTRIBUTE_NAME_CHAR = ATTRIBUTE_NAME_START_CHAR + "\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040"; - var VALID_ATTRIBUTE_NAME_REGEX = new RegExp("^[" + ATTRIBUTE_NAME_START_CHAR + "][" + ATTRIBUTE_NAME_CHAR + "]*$"); - var illegalAttributeNameCache = {}; - var validatedAttributeNameCache = {}; - function isAttributeNameSafe(attributeName) { - if (hasOwnProperty.call(validatedAttributeNameCache, attributeName)) { - return true; - } - if (hasOwnProperty.call(illegalAttributeNameCache, attributeName)) { - return false; - } - if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName)) { - validatedAttributeNameCache[attributeName] = true; - return true; - } - illegalAttributeNameCache[attributeName] = true; - { - error("Invalid attribute name: `%s`", attributeName); - } - return false; - } - function shouldIgnoreAttribute(name, propertyInfo, isCustomComponentTag) { - if (propertyInfo !== null) { - return propertyInfo.type === RESERVED; - } - if (isCustomComponentTag) { - return false; - } - if (name.length > 2 && (name[0] === "o" || name[0] === "O") && (name[1] === "n" || name[1] === "N")) { - return true; - } - return false; - } - function shouldRemoveAttributeWithWarning(name, value, propertyInfo, isCustomComponentTag) { - if (propertyInfo !== null && propertyInfo.type === RESERVED) { - return false; - } - switch (typeof value) { - case "function": - case "symbol": - return true; - case "boolean": { - if (isCustomComponentTag) { - return false; - } - if (propertyInfo !== null) { - return !propertyInfo.acceptsBooleans; - } else { - var prefix2 = name.toLowerCase().slice(0, 5); - return prefix2 !== "data-" && prefix2 !== "aria-"; - } - } - default: - return false; - } - } - function shouldRemoveAttribute(name, value, propertyInfo, isCustomComponentTag) { - if (value === null || typeof value === "undefined") { - return true; - } - if (shouldRemoveAttributeWithWarning(name, value, propertyInfo, isCustomComponentTag)) { - return true; - } - if (isCustomComponentTag) { - return false; - } - if (propertyInfo !== null) { - switch (propertyInfo.type) { - case BOOLEAN: - return !value; - case OVERLOADED_BOOLEAN: - return value === false; - case NUMERIC: - return isNaN(value); - case POSITIVE_NUMERIC: - return isNaN(value) || value < 1; - } - } - return false; - } - function getPropertyInfo(name) { - return properties.hasOwnProperty(name) ? properties[name] : null; - } - function PropertyInfoRecord(name, type, mustUseProperty, attributeName, attributeNamespace, sanitizeURL2, removeEmptyString) { - this.acceptsBooleans = type === BOOLEANISH_STRING || type === BOOLEAN || type === OVERLOADED_BOOLEAN; - this.attributeName = attributeName; - this.attributeNamespace = attributeNamespace; - this.mustUseProperty = mustUseProperty; - this.propertyName = name; - this.type = type; - this.sanitizeURL = sanitizeURL2; - this.removeEmptyString = removeEmptyString; - } - var properties = {}; - var reservedProps = [ - "children", - "dangerouslySetInnerHTML", - // TODO: This prevents the assignment of defaultValue to regular - // elements (not just inputs). Now that ReactDOMInput assigns to the - // defaultValue property -- do we need this? - "defaultValue", - "defaultChecked", - "innerHTML", - "suppressContentEditableWarning", - "suppressHydrationWarning", - "style" - ]; - reservedProps.forEach(function(name) { - properties[name] = new PropertyInfoRecord( - name, - RESERVED, - false, - // mustUseProperty - name, - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - [["acceptCharset", "accept-charset"], ["className", "class"], ["htmlFor", "for"], ["httpEquiv", "http-equiv"]].forEach(function(_ref) { - var name = _ref[0], attributeName = _ref[1]; - properties[name] = new PropertyInfoRecord( - name, - STRING, - false, - // mustUseProperty - attributeName, - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - ["contentEditable", "draggable", "spellCheck", "value"].forEach(function(name) { - properties[name] = new PropertyInfoRecord( - name, - BOOLEANISH_STRING, - false, - // mustUseProperty - name.toLowerCase(), - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - ["autoReverse", "externalResourcesRequired", "focusable", "preserveAlpha"].forEach(function(name) { - properties[name] = new PropertyInfoRecord( - name, - BOOLEANISH_STRING, - false, - // mustUseProperty - name, - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - [ - "allowFullScreen", - "async", - // Note: there is a special case that prevents it from being written to the DOM - // on the client side because the browsers are inconsistent. Instead we call focus(). - "autoFocus", - "autoPlay", - "controls", - "default", - "defer", - "disabled", - "disablePictureInPicture", - "disableRemotePlayback", - "formNoValidate", - "hidden", - "loop", - "noModule", - "noValidate", - "open", - "playsInline", - "readOnly", - "required", - "reversed", - "scoped", - "seamless", - // Microdata - "itemScope" - ].forEach(function(name) { - properties[name] = new PropertyInfoRecord( - name, - BOOLEAN, - false, - // mustUseProperty - name.toLowerCase(), - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - [ - "checked", - // Note: `option.selected` is not updated if `select.multiple` is - // disabled with `removeAttribute`. We have special logic for handling this. - "multiple", - "muted", - "selected" - // NOTE: if you add a camelCased prop to this list, - // you'll need to set attributeName to name.toLowerCase() - // instead in the assignment below. - ].forEach(function(name) { - properties[name] = new PropertyInfoRecord( - name, - BOOLEAN, - true, - // mustUseProperty - name, - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - [ - "capture", - "download" - // NOTE: if you add a camelCased prop to this list, - // you'll need to set attributeName to name.toLowerCase() - // instead in the assignment below. - ].forEach(function(name) { - properties[name] = new PropertyInfoRecord( - name, - OVERLOADED_BOOLEAN, - false, - // mustUseProperty - name, - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - [ - "cols", - "rows", - "size", - "span" - // NOTE: if you add a camelCased prop to this list, - // you'll need to set attributeName to name.toLowerCase() - // instead in the assignment below. - ].forEach(function(name) { - properties[name] = new PropertyInfoRecord( - name, - POSITIVE_NUMERIC, - false, - // mustUseProperty - name, - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - ["rowSpan", "start"].forEach(function(name) { - properties[name] = new PropertyInfoRecord( - name, - NUMERIC, - false, - // mustUseProperty - name.toLowerCase(), - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - var CAMELIZE = /[\-\:]([a-z])/g; - var capitalize = function(token) { - return token[1].toUpperCase(); - }; - [ - "accent-height", - "alignment-baseline", - "arabic-form", - "baseline-shift", - "cap-height", - "clip-path", - "clip-rule", - "color-interpolation", - "color-interpolation-filters", - "color-profile", - "color-rendering", - "dominant-baseline", - "enable-background", - "fill-opacity", - "fill-rule", - "flood-color", - "flood-opacity", - "font-family", - "font-size", - "font-size-adjust", - "font-stretch", - "font-style", - "font-variant", - "font-weight", - "glyph-name", - "glyph-orientation-horizontal", - "glyph-orientation-vertical", - "horiz-adv-x", - "horiz-origin-x", - "image-rendering", - "letter-spacing", - "lighting-color", - "marker-end", - "marker-mid", - "marker-start", - "overline-position", - "overline-thickness", - "paint-order", - "panose-1", - "pointer-events", - "rendering-intent", - "shape-rendering", - "stop-color", - "stop-opacity", - "strikethrough-position", - "strikethrough-thickness", - "stroke-dasharray", - "stroke-dashoffset", - "stroke-linecap", - "stroke-linejoin", - "stroke-miterlimit", - "stroke-opacity", - "stroke-width", - "text-anchor", - "text-decoration", - "text-rendering", - "underline-position", - "underline-thickness", - "unicode-bidi", - "unicode-range", - "units-per-em", - "v-alphabetic", - "v-hanging", - "v-ideographic", - "v-mathematical", - "vector-effect", - "vert-adv-y", - "vert-origin-x", - "vert-origin-y", - "word-spacing", - "writing-mode", - "xmlns:xlink", - "x-height" - // NOTE: if you add a camelCased prop to this list, - // you'll need to set attributeName to name.toLowerCase() - // instead in the assignment below. - ].forEach(function(attributeName) { - var name = attributeName.replace(CAMELIZE, capitalize); - properties[name] = new PropertyInfoRecord( - name, - STRING, - false, - // mustUseProperty - attributeName, - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - [ - "xlink:actuate", - "xlink:arcrole", - "xlink:role", - "xlink:show", - "xlink:title", - "xlink:type" - // NOTE: if you add a camelCased prop to this list, - // you'll need to set attributeName to name.toLowerCase() - // instead in the assignment below. - ].forEach(function(attributeName) { - var name = attributeName.replace(CAMELIZE, capitalize); - properties[name] = new PropertyInfoRecord( - name, - STRING, - false, - // mustUseProperty - attributeName, - "http://www.w3.org/1999/xlink", - false, - // sanitizeURL - false - ); - }); - [ - "xml:base", - "xml:lang", - "xml:space" - // NOTE: if you add a camelCased prop to this list, - // you'll need to set attributeName to name.toLowerCase() - // instead in the assignment below. - ].forEach(function(attributeName) { - var name = attributeName.replace(CAMELIZE, capitalize); - properties[name] = new PropertyInfoRecord( - name, - STRING, - false, - // mustUseProperty - attributeName, - "http://www.w3.org/XML/1998/namespace", - false, - // sanitizeURL - false - ); - }); - ["tabIndex", "crossOrigin"].forEach(function(attributeName) { - properties[attributeName] = new PropertyInfoRecord( - attributeName, - STRING, - false, - // mustUseProperty - attributeName.toLowerCase(), - // attributeName - null, - // attributeNamespace - false, - // sanitizeURL - false - ); - }); - var xlinkHref = "xlinkHref"; - properties[xlinkHref] = new PropertyInfoRecord( - "xlinkHref", - STRING, - false, - // mustUseProperty - "xlink:href", - "http://www.w3.org/1999/xlink", - true, - // sanitizeURL - false - ); - ["src", "href", "action", "formAction"].forEach(function(attributeName) { - properties[attributeName] = new PropertyInfoRecord( - attributeName, - STRING, - false, - // mustUseProperty - attributeName.toLowerCase(), - // attributeName - null, - // attributeNamespace - true, - // sanitizeURL - true - ); - }); - var isJavaScriptProtocol = /^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*\:/i; - var didWarn = false; - function sanitizeURL(url) { - { - if (!didWarn && isJavaScriptProtocol.test(url)) { - didWarn = true; - error("A future version of React will block javascript: URLs as a security precaution. Use event handlers instead if you can. If you need to generate unsafe HTML try using dangerouslySetInnerHTML instead. React was passed %s.", JSON.stringify(url)); - } - } - } - function getValueForProperty(node, name, expected, propertyInfo) { - { - if (propertyInfo.mustUseProperty) { - var propertyName = propertyInfo.propertyName; - return node[propertyName]; - } else { - { - checkAttributeStringCoercion(expected, name); - } - if (propertyInfo.sanitizeURL) { - sanitizeURL("" + expected); - } - var attributeName = propertyInfo.attributeName; - var stringValue = null; - if (propertyInfo.type === OVERLOADED_BOOLEAN) { - if (node.hasAttribute(attributeName)) { - var value = node.getAttribute(attributeName); - if (value === "") { - return true; - } - if (shouldRemoveAttribute(name, expected, propertyInfo, false)) { - return value; - } - if (value === "" + expected) { - return expected; - } - return value; - } - } else if (node.hasAttribute(attributeName)) { - if (shouldRemoveAttribute(name, expected, propertyInfo, false)) { - return node.getAttribute(attributeName); - } - if (propertyInfo.type === BOOLEAN) { - return expected; - } - stringValue = node.getAttribute(attributeName); - } - if (shouldRemoveAttribute(name, expected, propertyInfo, false)) { - return stringValue === null ? expected : stringValue; - } else if (stringValue === "" + expected) { - return expected; - } else { - return stringValue; - } - } - } - } - function getValueForAttribute(node, name, expected, isCustomComponentTag) { - { - if (!isAttributeNameSafe(name)) { - return; - } - if (!node.hasAttribute(name)) { - return expected === void 0 ? void 0 : null; - } - var value = node.getAttribute(name); - { - checkAttributeStringCoercion(expected, name); - } - if (value === "" + expected) { - return expected; - } - return value; - } - } - function setValueForProperty(node, name, value, isCustomComponentTag) { - var propertyInfo = getPropertyInfo(name); - if (shouldIgnoreAttribute(name, propertyInfo, isCustomComponentTag)) { - return; - } - if (shouldRemoveAttribute(name, value, propertyInfo, isCustomComponentTag)) { - value = null; - } - if (isCustomComponentTag || propertyInfo === null) { - if (isAttributeNameSafe(name)) { - var _attributeName = name; - if (value === null) { - node.removeAttribute(_attributeName); - } else { - { - checkAttributeStringCoercion(value, name); - } - node.setAttribute(_attributeName, "" + value); - } - } - return; - } - var mustUseProperty = propertyInfo.mustUseProperty; - if (mustUseProperty) { - var propertyName = propertyInfo.propertyName; - if (value === null) { - var type = propertyInfo.type; - node[propertyName] = type === BOOLEAN ? false : ""; - } else { - node[propertyName] = value; - } - return; - } - var attributeName = propertyInfo.attributeName, attributeNamespace = propertyInfo.attributeNamespace; - if (value === null) { - node.removeAttribute(attributeName); - } else { - var _type = propertyInfo.type; - var attributeValue; - if (_type === BOOLEAN || _type === OVERLOADED_BOOLEAN && value === true) { - attributeValue = ""; - } else { - { - { - checkAttributeStringCoercion(value, attributeName); - } - attributeValue = "" + value; - } - if (propertyInfo.sanitizeURL) { - sanitizeURL(attributeValue.toString()); - } - } - if (attributeNamespace) { - node.setAttributeNS(attributeNamespace, attributeName, attributeValue); - } else { - node.setAttribute(attributeName, attributeValue); - } - } - } - var REACT_ELEMENT_TYPE = Symbol.for("react.element"); - var REACT_PORTAL_TYPE = Symbol.for("react.portal"); - var REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"); - var REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"); - var REACT_PROFILER_TYPE = Symbol.for("react.profiler"); - var REACT_PROVIDER_TYPE = Symbol.for("react.provider"); - var REACT_CONTEXT_TYPE = Symbol.for("react.context"); - var REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"); - var REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"); - var REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"); - var REACT_MEMO_TYPE = Symbol.for("react.memo"); - var REACT_LAZY_TYPE = Symbol.for("react.lazy"); - var REACT_SCOPE_TYPE = Symbol.for("react.scope"); - var REACT_DEBUG_TRACING_MODE_TYPE = Symbol.for("react.debug_trace_mode"); - var REACT_OFFSCREEN_TYPE = Symbol.for("react.offscreen"); - var REACT_LEGACY_HIDDEN_TYPE = Symbol.for("react.legacy_hidden"); - var REACT_CACHE_TYPE = Symbol.for("react.cache"); - var REACT_TRACING_MARKER_TYPE = Symbol.for("react.tracing_marker"); - var MAYBE_ITERATOR_SYMBOL = Symbol.iterator; - var FAUX_ITERATOR_SYMBOL = "@@iterator"; - function getIteratorFn(maybeIterable) { - if (maybeIterable === null || typeof maybeIterable !== "object") { - return null; - } - var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]; - if (typeof maybeIterator === "function") { - return maybeIterator; - } - return null; - } - var assign = Object.assign; - var disabledDepth = 0; - var prevLog; - var prevInfo; - var prevWarn; - var prevError; - var prevGroup; - var prevGroupCollapsed; - var prevGroupEnd; - function disabledLog() { - } - disabledLog.__reactDisabledLog = true; - function disableLogs() { - { - if (disabledDepth === 0) { - prevLog = console.log; - prevInfo = console.info; - prevWarn = console.warn; - prevError = console.error; - prevGroup = console.group; - prevGroupCollapsed = console.groupCollapsed; - prevGroupEnd = console.groupEnd; - var props = { - configurable: true, - enumerable: true, - value: disabledLog, - writable: true - }; - Object.defineProperties(console, { - info: props, - log: props, - warn: props, - error: props, - group: props, - groupCollapsed: props, - groupEnd: props - }); - } - disabledDepth++; - } - } - function reenableLogs() { - { - disabledDepth--; - if (disabledDepth === 0) { - var props = { - configurable: true, - enumerable: true, - writable: true - }; - Object.defineProperties(console, { - log: assign({}, props, { - value: prevLog - }), - info: assign({}, props, { - value: prevInfo - }), - warn: assign({}, props, { - value: prevWarn - }), - error: assign({}, props, { - value: prevError - }), - group: assign({}, props, { - value: prevGroup - }), - groupCollapsed: assign({}, props, { - value: prevGroupCollapsed - }), - groupEnd: assign({}, props, { - value: prevGroupEnd - }) - }); - } - if (disabledDepth < 0) { - error("disabledDepth fell below zero. This is a bug in React. Please file an issue."); - } - } - } - var ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher; - var prefix; - function describeBuiltInComponentFrame(name, source, ownerFn) { - { - if (prefix === void 0) { - try { - throw Error(); - } catch (x) { - var match = x.stack.trim().match(/\n( *(at )?)/); - prefix = match && match[1] || ""; - } - } - return "\n" + prefix + name; - } - } - var reentry = false; - var componentFrameCache; - { - var PossiblyWeakMap = typeof WeakMap === "function" ? WeakMap : Map; - componentFrameCache = new PossiblyWeakMap(); - } - function describeNativeComponentFrame(fn, construct) { - if (!fn || reentry) { - return ""; - } - { - var frame = componentFrameCache.get(fn); - if (frame !== void 0) { - return frame; - } - } - var control; - reentry = true; - var previousPrepareStackTrace = Error.prepareStackTrace; - Error.prepareStackTrace = void 0; - var previousDispatcher; - { - previousDispatcher = ReactCurrentDispatcher.current; - ReactCurrentDispatcher.current = null; - disableLogs(); - } - try { - if (construct) { - var Fake = function() { - throw Error(); - }; - Object.defineProperty(Fake.prototype, "props", { - set: function() { - throw Error(); - } - }); - if (typeof Reflect === "object" && Reflect.construct) { - try { - Reflect.construct(Fake, []); - } catch (x) { - control = x; - } - Reflect.construct(fn, [], Fake); - } else { - try { - Fake.call(); - } catch (x) { - control = x; - } - fn.call(Fake.prototype); - } - } else { - try { - throw Error(); - } catch (x) { - control = x; - } - fn(); - } - } catch (sample) { - if (sample && control && typeof sample.stack === "string") { - var sampleLines = sample.stack.split("\n"); - var controlLines = control.stack.split("\n"); - var s = sampleLines.length - 1; - var c = controlLines.length - 1; - while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) { - c--; - } - for (; s >= 1 && c >= 0; s--, c--) { - if (sampleLines[s] !== controlLines[c]) { - if (s !== 1 || c !== 1) { - do { - s--; - c--; - if (c < 0 || sampleLines[s] !== controlLines[c]) { - var _frame = "\n" + sampleLines[s].replace(" at new ", " at "); - if (fn.displayName && _frame.includes("")) { - _frame = _frame.replace("", fn.displayName); - } - { - if (typeof fn === "function") { - componentFrameCache.set(fn, _frame); - } - } - return _frame; - } - } while (s >= 1 && c >= 0); - } - break; - } - } - } - } finally { - reentry = false; - { - ReactCurrentDispatcher.current = previousDispatcher; - reenableLogs(); - } - Error.prepareStackTrace = previousPrepareStackTrace; - } - var name = fn ? fn.displayName || fn.name : ""; - var syntheticFrame = name ? describeBuiltInComponentFrame(name) : ""; - { - if (typeof fn === "function") { - componentFrameCache.set(fn, syntheticFrame); - } - } - return syntheticFrame; - } - function describeClassComponentFrame(ctor, source, ownerFn) { - { - return describeNativeComponentFrame(ctor, true); - } - } - function describeFunctionComponentFrame(fn, source, ownerFn) { - { - return describeNativeComponentFrame(fn, false); - } - } - function shouldConstruct(Component) { - var prototype = Component.prototype; - return !!(prototype && prototype.isReactComponent); - } - function describeUnknownElementTypeFrameInDEV(type, source, ownerFn) { - if (type == null) { - return ""; - } - if (typeof type === "function") { - { - return describeNativeComponentFrame(type, shouldConstruct(type)); - } - } - if (typeof type === "string") { - return describeBuiltInComponentFrame(type); - } - switch (type) { - case REACT_SUSPENSE_TYPE: - return describeBuiltInComponentFrame("Suspense"); - case REACT_SUSPENSE_LIST_TYPE: - return describeBuiltInComponentFrame("SuspenseList"); - } - if (typeof type === "object") { - switch (type.$$typeof) { - case REACT_FORWARD_REF_TYPE: - return describeFunctionComponentFrame(type.render); - case REACT_MEMO_TYPE: - return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn); - case REACT_LAZY_TYPE: { - var lazyComponent = type; - var payload = lazyComponent._payload; - var init = lazyComponent._init; - try { - return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn); - } catch (x) { - } - } - } - } - return ""; - } - function describeFiber(fiber) { - var owner = fiber._debugOwner ? fiber._debugOwner.type : null; - var source = fiber._debugSource; - switch (fiber.tag) { - case HostComponent: - return describeBuiltInComponentFrame(fiber.type); - case LazyComponent: - return describeBuiltInComponentFrame("Lazy"); - case SuspenseComponent: - return describeBuiltInComponentFrame("Suspense"); - case SuspenseListComponent: - return describeBuiltInComponentFrame("SuspenseList"); - case FunctionComponent: - case IndeterminateComponent: - case SimpleMemoComponent: - return describeFunctionComponentFrame(fiber.type); - case ForwardRef: - return describeFunctionComponentFrame(fiber.type.render); - case ClassComponent: - return describeClassComponentFrame(fiber.type); - default: - return ""; - } - } - function getStackByFiberInDevAndProd(workInProgress2) { - try { - var info = ""; - var node = workInProgress2; - do { - info += describeFiber(node); - node = node.return; - } while (node); - return info; - } catch (x) { - return "\nError generating stack: " + x.message + "\n" + x.stack; - } - } - function getWrappedName(outerType, innerType, wrapperName) { - var displayName = outerType.displayName; - if (displayName) { - return displayName; - } - var functionName = innerType.displayName || innerType.name || ""; - return functionName !== "" ? wrapperName + "(" + functionName + ")" : wrapperName; - } - function getContextName(type) { - return type.displayName || "Context"; - } - function getComponentNameFromType(type) { - if (type == null) { - return null; - } - { - if (typeof type.tag === "number") { - error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."); - } - } - if (typeof type === "function") { - return type.displayName || type.name || null; - } - if (typeof type === "string") { - return type; - } - switch (type) { - case REACT_FRAGMENT_TYPE: - return "Fragment"; - case REACT_PORTAL_TYPE: - return "Portal"; - case REACT_PROFILER_TYPE: - return "Profiler"; - case REACT_STRICT_MODE_TYPE: - return "StrictMode"; - case REACT_SUSPENSE_TYPE: - return "Suspense"; - case REACT_SUSPENSE_LIST_TYPE: - return "SuspenseList"; - } - if (typeof type === "object") { - switch (type.$$typeof) { - case REACT_CONTEXT_TYPE: - var context = type; - return getContextName(context) + ".Consumer"; - case REACT_PROVIDER_TYPE: - var provider = type; - return getContextName(provider._context) + ".Provider"; - case REACT_FORWARD_REF_TYPE: - return getWrappedName(type, type.render, "ForwardRef"); - case REACT_MEMO_TYPE: - var outerName = type.displayName || null; - if (outerName !== null) { - return outerName; - } - return getComponentNameFromType(type.type) || "Memo"; - case REACT_LAZY_TYPE: { - var lazyComponent = type; - var payload = lazyComponent._payload; - var init = lazyComponent._init; - try { - return getComponentNameFromType(init(payload)); - } catch (x) { - return null; - } - } - } - } - return null; - } - function getWrappedName$1(outerType, innerType, wrapperName) { - var functionName = innerType.displayName || innerType.name || ""; - return outerType.displayName || (functionName !== "" ? wrapperName + "(" + functionName + ")" : wrapperName); - } - function getContextName$1(type) { - return type.displayName || "Context"; - } - function getComponentNameFromFiber(fiber) { - var tag = fiber.tag, type = fiber.type; - switch (tag) { - case CacheComponent: - return "Cache"; - case ContextConsumer: - var context = type; - return getContextName$1(context) + ".Consumer"; - case ContextProvider: - var provider = type; - return getContextName$1(provider._context) + ".Provider"; - case DehydratedFragment: - return "DehydratedFragment"; - case ForwardRef: - return getWrappedName$1(type, type.render, "ForwardRef"); - case Fragment: - return "Fragment"; - case HostComponent: - return type; - case HostPortal: - return "Portal"; - case HostRoot: - return "Root"; - case HostText: - return "Text"; - case LazyComponent: - return getComponentNameFromType(type); - case Mode: - if (type === REACT_STRICT_MODE_TYPE) { - return "StrictMode"; - } - return "Mode"; - case OffscreenComponent: - return "Offscreen"; - case Profiler: - return "Profiler"; - case ScopeComponent: - return "Scope"; - case SuspenseComponent: - return "Suspense"; - case SuspenseListComponent: - return "SuspenseList"; - case TracingMarkerComponent: - return "TracingMarker"; - case ClassComponent: - case FunctionComponent: - case IncompleteClassComponent: - case IndeterminateComponent: - case MemoComponent: - case SimpleMemoComponent: - if (typeof type === "function") { - return type.displayName || type.name || null; - } - if (typeof type === "string") { - return type; - } - break; - } - return null; - } - var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame; - var current = null; - var isRendering = false; - function getCurrentFiberOwnerNameInDevOrNull() { - { - if (current === null) { - return null; - } - var owner = current._debugOwner; - if (owner !== null && typeof owner !== "undefined") { - return getComponentNameFromFiber(owner); - } - } - return null; - } - function getCurrentFiberStackInDev() { - { - if (current === null) { - return ""; - } - return getStackByFiberInDevAndProd(current); - } - } - function resetCurrentFiber() { - { - ReactDebugCurrentFrame.getCurrentStack = null; - current = null; - isRendering = false; - } - } - function setCurrentFiber(fiber) { - { - ReactDebugCurrentFrame.getCurrentStack = fiber === null ? null : getCurrentFiberStackInDev; - current = fiber; - isRendering = false; - } - } - function getCurrentFiber() { - { - return current; - } - } - function setIsRendering(rendering) { - { - isRendering = rendering; - } - } - function toString(value) { - return "" + value; - } - function getToStringValue(value) { - switch (typeof value) { - case "boolean": - case "number": - case "string": - case "undefined": - return value; - case "object": - { - checkFormFieldValueStringCoercion(value); - } - return value; - default: - return ""; - } - } - var hasReadOnlyValue = { - button: true, - checkbox: true, - image: true, - hidden: true, - radio: true, - reset: true, - submit: true - }; - function checkControlledValueProps(tagName, props) { - { - if (!(hasReadOnlyValue[props.type] || props.onChange || props.onInput || props.readOnly || props.disabled || props.value == null)) { - error("You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`."); - } - if (!(props.onChange || props.readOnly || props.disabled || props.checked == null)) { - error("You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`."); - } - } - } - function isCheckable(elem) { - var type = elem.type; - var nodeName = elem.nodeName; - return nodeName && nodeName.toLowerCase() === "input" && (type === "checkbox" || type === "radio"); - } - function getTracker(node) { - return node._valueTracker; - } - function detachTracker(node) { - node._valueTracker = null; - } - function getValueFromNode(node) { - var value = ""; - if (!node) { - return value; - } - if (isCheckable(node)) { - value = node.checked ? "true" : "false"; - } else { - value = node.value; - } - return value; - } - function trackValueOnNode(node) { - var valueField = isCheckable(node) ? "checked" : "value"; - var descriptor = Object.getOwnPropertyDescriptor(node.constructor.prototype, valueField); - { - checkFormFieldValueStringCoercion(node[valueField]); - } - var currentValue = "" + node[valueField]; - if (node.hasOwnProperty(valueField) || typeof descriptor === "undefined" || typeof descriptor.get !== "function" || typeof descriptor.set !== "function") { - return; - } - var get2 = descriptor.get, set2 = descriptor.set; - Object.defineProperty(node, valueField, { - configurable: true, - get: function() { - return get2.call(this); - }, - set: function(value) { - { - checkFormFieldValueStringCoercion(value); - } - currentValue = "" + value; - set2.call(this, value); - } - }); - Object.defineProperty(node, valueField, { - enumerable: descriptor.enumerable - }); - var tracker = { - getValue: function() { - return currentValue; - }, - setValue: function(value) { - { - checkFormFieldValueStringCoercion(value); - } - currentValue = "" + value; - }, - stopTracking: function() { - detachTracker(node); - delete node[valueField]; - } - }; - return tracker; - } - function track(node) { - if (getTracker(node)) { - return; - } - node._valueTracker = trackValueOnNode(node); - } - function updateValueIfChanged(node) { - if (!node) { - return false; - } - var tracker = getTracker(node); - if (!tracker) { - return true; - } - var lastValue = tracker.getValue(); - var nextValue = getValueFromNode(node); - if (nextValue !== lastValue) { - tracker.setValue(nextValue); - return true; - } - return false; - } - function getActiveElement(doc) { - doc = doc || (typeof document !== "undefined" ? document : void 0); - if (typeof doc === "undefined") { - return null; - } - try { - return doc.activeElement || doc.body; - } catch (e) { - return doc.body; - } - } - var didWarnValueDefaultValue = false; - var didWarnCheckedDefaultChecked = false; - var didWarnControlledToUncontrolled = false; - var didWarnUncontrolledToControlled = false; - function isControlled(props) { - var usesChecked = props.type === "checkbox" || props.type === "radio"; - return usesChecked ? props.checked != null : props.value != null; - } - function getHostProps(element, props) { - var node = element; - var checked = props.checked; - var hostProps = assign({}, props, { - defaultChecked: void 0, - defaultValue: void 0, - value: void 0, - checked: checked != null ? checked : node._wrapperState.initialChecked - }); - return hostProps; - } - function initWrapperState(element, props) { - { - checkControlledValueProps("input", props); - if (props.checked !== void 0 && props.defaultChecked !== void 0 && !didWarnCheckedDefaultChecked) { - error("%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://reactjs.org/link/controlled-components", getCurrentFiberOwnerNameInDevOrNull() || "A component", props.type); - didWarnCheckedDefaultChecked = true; - } - if (props.value !== void 0 && props.defaultValue !== void 0 && !didWarnValueDefaultValue) { - error("%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://reactjs.org/link/controlled-components", getCurrentFiberOwnerNameInDevOrNull() || "A component", props.type); - didWarnValueDefaultValue = true; - } - } - var node = element; - var defaultValue = props.defaultValue == null ? "" : props.defaultValue; - node._wrapperState = { - initialChecked: props.checked != null ? props.checked : props.defaultChecked, - initialValue: getToStringValue(props.value != null ? props.value : defaultValue), - controlled: isControlled(props) - }; - } - function updateChecked(element, props) { - var node = element; - var checked = props.checked; - if (checked != null) { - setValueForProperty(node, "checked", checked, false); - } - } - function updateWrapper(element, props) { - var node = element; - { - var controlled = isControlled(props); - if (!node._wrapperState.controlled && controlled && !didWarnUncontrolledToControlled) { - error("A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components"); - didWarnUncontrolledToControlled = true; - } - if (node._wrapperState.controlled && !controlled && !didWarnControlledToUncontrolled) { - error("A component is changing a controlled input to be uncontrolled. This is likely caused by the value changing from a defined to undefined, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components"); - didWarnControlledToUncontrolled = true; - } - } - updateChecked(element, props); - var value = getToStringValue(props.value); - var type = props.type; - if (value != null) { - if (type === "number") { - if (value === 0 && node.value === "" || // We explicitly want to coerce to number here if possible. - // eslint-disable-next-line - node.value != value) { - node.value = toString(value); - } - } else if (node.value !== toString(value)) { - node.value = toString(value); - } - } else if (type === "submit" || type === "reset") { - node.removeAttribute("value"); - return; - } - { - if (props.hasOwnProperty("value")) { - setDefaultValue(node, props.type, value); - } else if (props.hasOwnProperty("defaultValue")) { - setDefaultValue(node, props.type, getToStringValue(props.defaultValue)); - } - } - { - if (props.checked == null && props.defaultChecked != null) { - node.defaultChecked = !!props.defaultChecked; - } - } - } - function postMountWrapper(element, props, isHydrating2) { - var node = element; - if (props.hasOwnProperty("value") || props.hasOwnProperty("defaultValue")) { - var type = props.type; - var isButton = type === "submit" || type === "reset"; - if (isButton && (props.value === void 0 || props.value === null)) { - return; - } - var initialValue = toString(node._wrapperState.initialValue); - if (!isHydrating2) { - { - if (initialValue !== node.value) { - node.value = initialValue; - } - } - } - { - node.defaultValue = initialValue; - } - } - var name = node.name; - if (name !== "") { - node.name = ""; - } - { - node.defaultChecked = !node.defaultChecked; - node.defaultChecked = !!node._wrapperState.initialChecked; - } - if (name !== "") { - node.name = name; - } - } - function restoreControlledState(element, props) { - var node = element; - updateWrapper(node, props); - updateNamedCousins(node, props); - } - function updateNamedCousins(rootNode, props) { - var name = props.name; - if (props.type === "radio" && name != null) { - var queryRoot = rootNode; - while (queryRoot.parentNode) { - queryRoot = queryRoot.parentNode; - } - { - checkAttributeStringCoercion(name, "name"); - } - var group = queryRoot.querySelectorAll("input[name=" + JSON.stringify("" + name) + '][type="radio"]'); - for (var i = 0; i < group.length; i++) { - var otherNode = group[i]; - if (otherNode === rootNode || otherNode.form !== rootNode.form) { - continue; - } - var otherProps = getFiberCurrentPropsFromNode(otherNode); - if (!otherProps) { - throw new Error("ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported."); - } - updateValueIfChanged(otherNode); - updateWrapper(otherNode, otherProps); - } - } - } - function setDefaultValue(node, type, value) { - if ( - // Focused number inputs synchronize on blur. See ChangeEventPlugin.js - type !== "number" || getActiveElement(node.ownerDocument) !== node - ) { - if (value == null) { - node.defaultValue = toString(node._wrapperState.initialValue); - } else if (node.defaultValue !== toString(value)) { - node.defaultValue = toString(value); - } - } - } - var didWarnSelectedSetOnOption = false; - var didWarnInvalidChild = false; - var didWarnInvalidInnerHTML = false; - function validateProps(element, props) { - { - if (props.value == null) { - if (typeof props.children === "object" && props.children !== null) { - React.Children.forEach(props.children, function(child) { - if (child == null) { - return; - } - if (typeof child === "string" || typeof child === "number") { - return; - } - if (!didWarnInvalidChild) { - didWarnInvalidChild = true; - error("Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to